Back to Skool Routines
30739: Deal with ANGELFACE when he is hitting
The address of this routine is placed into bytes 17 and 18 of ANGELFACE's buffer by the routine at 30706 to make him throw a punch.
H 207 (ANGELFACE)
30739 CALL 25012 Update SRB for ANGELFACE's current animatory state and location
30742 LD L,20 Store ANGELFACE's current animatory state in byte 20 of his buffer temporarily
30744 LD (HL),A
30745 AND 240
30747 ADD A,8 A=40 or 168: ANGELFACE raising arm
30749 CALL 30534 Update SRB and return to 30752 (below) next time
This entry point is used by the routine at 24263 to check whether ERIC has hit anyone:
30752 LD B,2 Is there anyone 2 spaces in front of ANGELFACE and facing him?
30754 CALL 30664
30757 JR C,30778 Jump if not
30759 CALL 29987 Knock the punched character over
30762 EX DE,HL H=puncher's character number, D=victim's character number
30763 LD A,H A=puncher's character number
30764 CP 210 Was ERIC the assailant?
30766 JR NZ,30778 Jump if not
30768 LD A,D D=victim's character number
30769 CP 207 Did ERIC knock ANGELFACE over?
30771 JR NZ,30778 Jump if not
30773 LD A,3 ERIC has punched ANGELFACE; add 30 to the score and print it
30775 CALL 29621
30778 CALL 25012 Update SRB for the punching character's current animatory state
30781 INC A A=animatory state of punching character with fist fully raised
30782 JP 30647 Update SRB for the punching character's new animatory state, then lower the puncher's arm (if it was ANGELFACE)