![]() |
Routines |
Prev: 28807 | Up: Map | Next: 28829 |
Used by the routine at ObjectPlacement_SpecialTerrain.
|
||||||||||||
ContextualRandomNumber | 28808 | CALL GetRandomNumber | E=random number between 0-255. | |||||||||
28811 | LD E,A | |||||||||||
28812 | LD A,H | Get the seed number. | ||||||||||
CheckSeedNumber | 28813 | CP 159 | Jump to ReturnFullValue if the seed number in H is lower than 159. | |||||||||
28815 | JR C,ReturnFullValue | |||||||||||
28817 | JR Z,ReturnBoolean | Jump to ReturnBoolean if the seed number in H is equal to 159. | ||||||||||
Else, subtract 5 and loop back to try again.
|
||||||||||||
28819 | SUB 5 | Subtract 5 from the seed number. | ||||||||||
28821 | JR CheckSeedNumber | Jump back to CheckSeedNumber. | ||||||||||
Return either 0 or 1 using bit 0 of the random number.
|
||||||||||||
ReturnBoolean | 28823 | LD A,E | A=bit 0 of the random number stored in E (ensure it is either 0 or 1). | |||||||||
28824 | AND %00000001 | |||||||||||
28826 | RET | Return. | ||||||||||
Just return the full random number between 0-255.
|
||||||||||||
ReturnFullValue | 28827 | LD A,E | A=the random number stored in E. | |||||||||
28828 | RET | Return. |
Prev: 28807 | Up: Map | Next: 28829 |