![]() |
Routines |
Prev: 26146 | Up: Map |
Used by the routine at 26146.
|
||||||||
26173 | LD A,(28094) | Pick up the guard's return delay counter. | ||||||
26176 | AND A | Has this guard been thrown out of the park? | ||||||
26177 | JR Z,26184 | Jump if not. | ||||||
26179 | DEC A | Decrement the guard's return delay counter. | ||||||
26180 | LD (28094),A | |||||||
26183 | RET NZ | Return unless it's zero now. | ||||||
26184 | LD HL,(28092) | Update the guard's current location. | ||||||
26187 | LD (28088),HL | |||||||
26190 | LD BC,(28078) | Pick up the guard panic timer. | ||||||
26194 | LD A,B | Are the guards panicking? | ||||||
26195 | OR C | |||||||
26196 | JR Z,26227 | Jump if not. | ||||||
26198 | DEC BC | Decrement the guard panic timer. | ||||||
26199 | LD (28078),BC | |||||||
26203 | LD DE,32455 | Point HL at the graphic data for a panicked guard (frame 0). | ||||||
26206 | EX DE,HL | |||||||
26207 | LD A,(28091) | Increment the guard's animation frame timer. | ||||||
26210 | INC A | |||||||
26211 | LD (28091),A | |||||||
26214 | AND 8 | Is bit 3 set now? | ||||||
26216 | CP 0 | |||||||
26218 | JR Z,26224 | Jump if not. | ||||||
26220 | LD BC,32 | Point DE at the graphic data for a panicked guard (frame 1), and restore the guard's location to HL. | ||||||
26223 | ADD HL,BC | |||||||
26224 | EX DE,HL | |||||||
26225 | JR 26267 | Jump forward to draw the guard now. | ||||||
26227 | EX DE,HL | Transfer the guard's location to DE. | ||||||
26228 | LD A,(28091) | Increment the guard's animation frame timer. | ||||||
26231 | INC A | |||||||
26232 | LD (28091),A | |||||||
26235 | AND 32 | Is bit 5 set now? | ||||||
26237 | CP 0 | |||||||
26239 | JR NZ,26246 | Jump if so. | ||||||
26241 | LD HL,32327 | Point HL at the graphic data for a regular guard (frame 4). | ||||||
26244 | JR 26249 | |||||||
26246 | LD HL,32199 | Point HL at the graphic data for a regular guard (frame 0). | ||||||
26249 | LD A,(28090) | Pick up the guard's animation frame. | ||||||
26252 | RLC A | Point DE at the corresponding graphic data for the guard sprite, and restore the guard's location to HL. | ||||||
26254 | RLC A | |||||||
26256 | RLC A | |||||||
26258 | RLC A | |||||||
26260 | RLC A | |||||||
26262 | LD B,0 | |||||||
26264 | LD C,A | |||||||
26265 | ADD HL,BC | |||||||
26266 | EX DE,HL | |||||||
26267 | CALL 27663 | Set HL' to the attribute file address of the guard's location. | ||||||
26270 | LD C,59 | This is the guard's attribute byte (INK 3: PAPER 7). | ||||||
26272 | CALL 27606 | Draw the guard. | ||||||
26275 | RET |
Prev: 26146 | Up: Map |