![]() |
Routines |
Prev: 30211 | Up: Map |
Used by the routine at 60347. On entry, the bit set in A indicates the direction in which the character is going to move next:
Also on entry, the zero flag is set if the character is indoors. If the character is Sam, we also check whether he's entering a house other than no. 19 without a key.
|
||||||||||||||||||||||||||||||
30396 | JR NZ,30402 | Jump unless the character is indoors | ||||||||||||||||||||||||||||
30398 | AND B | Is the character going to leave the building? | ||||||||||||||||||||||||||||
30399 | RET NZ | Return if not | ||||||||||||||||||||||||||||
30400 | INC (HL) | Set the character's z-coordinate to 2 | ||||||||||||||||||||||||||||
30401 | RET | |||||||||||||||||||||||||||||
30402 | AND B | Is the character going to enter the building? | ||||||||||||||||||||||||||||
30403 | JR Z,30400 | Jump if not | ||||||||||||||||||||||||||||
30405 | LD A,H | A=character number | ||||||||||||||||||||||||||||
30406 | CP 230 | Is this Sam? | ||||||||||||||||||||||||||||
30408 | RET NZ | Return if not | ||||||||||||||||||||||||||||
30409 | BIT 0,B | Does the entrance have a door? | ||||||||||||||||||||||||||||
30411 | RET Z | Return if not | ||||||||||||||||||||||||||||
30412 | CALL 62099 | Point HL at the status flags for the door that Sam is standing next to (see 32752) | ||||||||||||||||||||||||||||
30415 | LD A,L | A=LSB of the address of the door status flags (240-249) | ||||||||||||||||||||||||||||
30416 | CP 245 | Is Sam standing in the doorway of no. 19? | ||||||||||||||||||||||||||||
30418 | JR Z,30423 | Jump if so | ||||||||||||||||||||||||||||
30420 | LD A,(HL) | Pick up the door status flags for the doorway Sam is standing in | ||||||||||||||||||||||||||||
30421 | AND 248 | Set the zero flag if the door requires no key to unlock it | ||||||||||||||||||||||||||||
30423 | LD H,230 | 230=Sam | ||||||||||||||||||||||||||||
30425 | RET Z | Return if the door requires no key to unlock it | ||||||||||||||||||||||||||||
30426 | JP 31289 | Check whether Sam has entered a house through the front door without a key |
Prev: 30211 | Up: Map |