Prev: 62264 Up: Map Next: 62297
62278: Control a character who is knocking on or opening a door (1)
The address of this interruptible subcommand routine is placed into bytes 14 and 15 of a character's buffer by the routine at 62264. It makes the character open the door if he can, or knock and begin waiting for an answer.
Input
H Character number (215-229)
62278 CALL 62120 Check whether the character can open the door, and open it if so
62281 LD L,16 Point HL at byte 16 of the character's buffer
62283 JR NC,62325 Jump if the character has opened the door
62285 JR Z,62325 Jump if the character has no keys (only policemen have no keys)
This character (who is not a policeman) has knocked on the door.
62287 LD (HL),E Store the LSB of the address of the door knock status flags (see 32682) for the door in byte 16 of the character's buffer
62288 INC L Initialise the counter in byte 17 of the character's buffer to 30; this determines how long the character will wait for someone to open the door before giving up
62289 LD (HL),30
62291 LD L,14 Change the address of the interruptible subcommand routine in bytes 14 and 15 of the character's buffer to 62297
62293 LD (HL),89
62295 JR 62331 Lower the character's arm
Prev: 62264 Up: Map Next: 62297