Prev: 26217 Up: Map Next: 26267
26241: Handle Monster Throwing
State 3 of the monster; it waits for the timer to run out and then turns into something else. If the monster has been hit by a flour shot (and so is white) it is removed. Otherwise it becomes the pike (ID 26) or the tin can (ID 28), depending on bit 1 of the number of ingredients needed, and a sound is started.
Input
IX Actor
HandleMonster_Throwing 26241 DEC (IX+7) Decrease the timer in byte 7 of the actor by one.
26244 RET NZ Return if the timer is not zero.
26245 LD A,(IX+3) Fetch the colour of the monster.
26248 CP 71 Is the monster white (INK:WHITE, PAPER:BLACK (BRIGHT)), which means it has been hit?
26250 LD A,0 Set the actor ID to 0 (the actor will be removed).
26252 JR Z,HandleMonster_SetID Jump to HandleMonster_SetID if the monster has been hit.
26254 LD A,(24367) Fetch the number of ingredients needed.
26257 AND %00000010 Keep only bit 1.
26259 ADD A,26 Add 26 to choose between the pike and the tin can.
HandleMonster_SetID 26261 LD (IX+0),A Set the actor ID to the new nasty.
26264 JP StartFallingSlide Jump to StartFallingSlide.
Prev: 26217 Up: Map Next: 26267