Prev: 28405 Up: Map Next: 28473
28438: Remove Fallen Actor
Removes an actor which has hit the bottom of the play area, somewhere other than the mixing bowl. An ingredient makes the falling notes sound. A nasty which has been hit (it is white) is worth 336 points, and makes the rising notes sound.
Input
IX Actor
RemoveFallenActor 28438 CALL StartFallingNotes Start the falling notes using StartFallingNotes.
RemoveFallenActor_Remove 28441 LD (IX+0),0 Make the actor ID 0 which removes the actor.
28445 RET Return.
This entry point is used by the routines at LandHitActor and TestFallenActor.
An actor which is over a dustbin comes here.
RemoveFallenActor_Pillar 28446 LD A,(IX+0) Fetch the actor ID.
28449 AND %00111111 Keep only bits 0-5.
28451 CP 24 Jump to RemoveFallenActor if the actor is an ingredient.
28453 JR C,RemoveFallenActor
28455 LD A,(IX+3) Fetch the actor colour.
28458 CP 71 Jump to RemoveFallenActor_Notes if the nasty has not been hit.
28460 JR NZ,RemoveFallenActor_Notes
28462 LD BC,336 Set the points for a nasty which has been hit to 336 (in BCD).
28465 CALL AddPointsToScore Add the points to the score using AddPointsToScore.
RemoveFallenActor_Notes 28468 CALL StartRisingNotes Start the rising notes using StartRisingNotes.
28471 JR RemoveFallenActor_Remove Jump to RemoveFallenActor_Remove.
Prev: 28405 Up: Map Next: 28473