Prev: 29861 Up: Map Next: 30018
29980: Draw Sprite
Used by the routines at AnimateExplosion, UpdateLeaf and DrawFlower.
Draws a sprite without erasing anything, or erases a sprite without drawing anything.
Input
DE Sprite data
IX Actor object
DrawSprite 29980 CALL SetUpSprite_Address Set up the sprite using SetUpSprite_Address.
29983 JR DrawSprite_ClearPrevious Jump to DrawSprite_ClearPrevious.
This entry point is used by the routines at RemoveStreamer and RemoveObject.
Erases the sprite at DE from the previous position.
RemoveEntity_Address 29985 CALL SetUpPreviousSprite_Address Set up the previous sprite using SetUpPreviousSprite_Address.
29988 JR RemoveEntity_ClearNew Jump to RemoveEntity_ClearNew.
This entry point is used by the routines at AnimateExplosion, RemoveWeapon and CollectBonusItem.
Remove Entity. Erases the previous sprite of an actor.
RemoveEntity 29990 CALL SetUpPreviousSprite Set up the previous sprite using SetUpPreviousSprite.
This entry point is used by the routine at AnimateExplosion.
Clears the height of the new sprite so that nothing is drawn.
RemoveEntity_ClearNew 29993 EXX Switch to the shadow registers.
29994 XOR A Set A to 0.
29995 LD C,A Set the row count in C to 0.
29996 LD (24081),A Write 0 to 24081.
29999 LD (24078),A Write 0 to 24078.
30002 EXX Switch to the shadow registers.
30003 JP MaskSprite Jump to MaskSprite.
Draw Entity. This entry point is not used.
DrawEntity 30006 CALL SetUpSprite Set up the sprite of the actor in IX using SetUpSprite.
This entry point is used by the routine at DrawCubbyHoleItem.
Clears the height of the previous sprite so that nothing is erased.
DrawSprite_ClearPrevious 30009 EXX Switch to the shadow registers.
30010 XOR A Set A to 0.
30011 LD (24080),A Write 0 to 24080.
30014 LD C,A Set the row count in C to 0.
30015 JP MaskSprite Jump to MaskSprite.
Prev: 29861 Up: Map Next: 30018