![]() |
Routines |
| Prev: 667F | Up: Map |
|
||||||||||
| 6697 | LD L,$00 | Byte 0x00 holds the character's animatory state | ||||||||
| 6699 | BIT 0,(HL) | Is the character midstride? | ||||||||
| 669B | JP NZ,$63FD | Finish the stride if so | ||||||||
| 669E | CALL $65D4 | Is the character standing beside a chair? | ||||||||
| 66A1 | AND A | |||||||||
| 66A2 | JR NZ,$66B5 | Jump if not | ||||||||
| 66A4 | CALL $663F | Knock anybody who's sitting here out of the way | ||||||||
| 66A7 | CALL $61B4 | Update the SRB for the character's current animatory state and location | ||||||||
| 66AA | AND $F8 | |||||||||
| 66AC | ADD A,$04 | A=animatory state of the character (as if sitting in a chair) | ||||||||
| 66AE | LD L,$12 | Remove the address of this routine from bytes 0x11 and 0x12 of the character's buffer | ||||||||
| 66B0 | LD (HL),$00 | |||||||||
| 66B2 | JP $6130 | Update the character's animatory state and update the SRB | ||||||||
| 66B5 | CP $04 | A=0x00 if the character must walk back to the rightmost chair in the room, or 0xFF if there is one in front of him | ||||||||
| 66B7 | SBC A,A | |||||||||
| 66B8 | LD L,$00 | Byte 0x00 holds the character's animatory state | ||||||||
| 66BA | XOR (HL) | Reset the carry flag if the character must turn round | ||||||||
| 66BB | RLCA | |||||||||
| 66BC | JP $642E | Update the character's animatory state and update the SRB | ||||||||
| Prev: 667F | Up: Map |