![]() |
Routines |
| Prev: $26EF | Up: Map | Next: $2745 |
| $270D | LDA $26 | Pick up ANGELFACE's animatory state from $26. | ||
| $270F | LSR A | Is ANGELFACE midstride? | ||
| $2710 | BCS $2744 | Return if so. | ||
| $2712 | LDA $FD | Pick up the LSB of the lesson clock from $FD. | ||
| $2714 | LSR A | Is bit 1 set? | ||
| $2715 | LSR A | |||
| $2716 | BCS $2744 | Return if so. | ||
| $2718 | JSR $1C8E | Is ANGELFACE on a staircase? | ||
| $271B | BCS $2744 | Return if so. | ||
| $271D | JSR $0E59 | Can ANGELFACE be seen by a teacher at this moment? | ||
| $2720 | BCS $2744 | Return if so. | ||
|
ANGELFACE is not on a staircase, and there are no teachers nearby. Are there any potential victims nearby?
|
||||
| $2722 | LDY $FB | Pick up ANGELFACE's y-coordinate from $FB. | ||
| $2724 | LDA $26 | Pick up ANGELFACE's animatory state from $26. | ||
| $2726 | ASL A | Is ANGELFACE facing right? | ||
| $2727 | BCS $2731 | Branch if so. | ||
| $2729 | LDA $FC | Pick up ANGELFACE's x-coordinate from $FC. | ||
| $272B | SEC | Subtract 3 to get the target x-coordinate of a potential victim. | ||
| $272C | SBC #$03 | |||
| $272E | JMP $2736 | Jump forward. | ||
| $2731 | LDA $FC | Pick up ANGELFACE's x-coordinate from $FC. | ||
| $2733 | CLC | Add 3 to get the target x-coordinate of a potential victim. | ||
| $2734 | ADC #$03 | |||
| $2736 | TAX | Transfer the target x-coordinate to X. | ||
| $2737 | JSR $27D2 | Is there anyone at the target coordinates? | ||
| $273A | BCC $2744 | Return if not. | ||
| $273C | LDA #$26 | Place the address of the uninterruptible subcommand routine at $267A into ANGELFACE's buffer to make him throw a punch. | ||
| $273E | STA $B1 | |||
| $2740 | LDA #$7A | |||
| $2742 | STA $B0 | |||
| $2744 | RTS | Return to the character-handling routine at $3B5E, which then has the opportunity of moving ANGELFACE midstride before he begins the punch. This is a bug. | ||
| Prev: $26EF | Up: Map | Next: $2745 |