| Routines

27748: Deal with a character who's been dethroned (2)

The address of this uninterruptible subcommand routine is placed into bytes 111 and 112 of a character's buffer by the routine at 27733.
Input
H | Dethroned character's number (152-169)
27748 | LD L,113 | Byte 113 holds the delay counter
27750 | DEC (HL) | Is it time to stand up yet?
27751 | RET NZ | Return if not
27752 | LD L,111 | Replace the address of this routine in bytes 111 and 112 of the character's buffer with that of 27772
27754 | LD (HL),124
27756 | CALL 25108 | Update the SRB for the character's current animatory state
27759 | AND 248 | C=animatory state of the character standing up
27761 | LD C,A
27762 | LD A,H | A=number of the dethroned character
27763 | CP 169 | Was EINSTEIN knocked out of his chair?
27765 | JR Z,27768 | Jump if so
27767 | DEC E | Anyone but EINSTEIN will look for another chair to the left
27768 | LD A,C | A=animatory state of the character standing up
27769 | JP 25008 | Update the character's animatory state and location and update the SRB