![]() |
Routines |
Prev: 7087 | Up: Map | Next: 709D |
Used by the routine at ObjectPlacement_SpecialTerrain.
|
||||||||||||
ContextualRandomNumber | 7088 | CALL GetRandomNumber | E=random number between 00-FF. | |||||||||
708B | LD E,A | |||||||||||
708C | LD A,H | Get the seed number. | ||||||||||
CheckSeedNumber | 708D | CP $9F | Jump to ReturnFullValue if the seed number in H is lower than 9F. | |||||||||
708F | JR C,ReturnFullValue | |||||||||||
7091 | JR Z,ReturnBoolean | Jump to ReturnBoolean if the seed number in H is equal to 9F. | ||||||||||
Else, subtract 05 and loop back to try again.
|
||||||||||||
7093 | SUB $05 | Subtract 05 from the seed number. | ||||||||||
7095 | JR CheckSeedNumber | Jump back to CheckSeedNumber. | ||||||||||
Return either 00 or 01 using bit 0 of the random number.
|
||||||||||||
ReturnBoolean | 7097 | LD A,E | A=bit 0 of the random number stored in E (ensure it is either 00 or 01). | |||||||||
7098 | AND %00000001 | |||||||||||
709A | RET | Return. | ||||||||||
Just return the full random number between 00-FF.
|
||||||||||||
ReturnFullValue | 709B | LD A,E | A=the random number stored in E. | |||||||||
709C | RET | Return. |
Prev: 7087 | Up: Map | Next: 709D |