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 |