Prev: 46632 Up: Map Next: 46854
46828: Test Shot Hits Ground
Used by the routines at UpdateShot and UpdateLeftShot.
Tests whether a shot has hit the ground or an object, using NudgeObject with a box that is 24 wide and 12 high (16 high if entered at TestShotHitsGround_Wide). A sound is made if the shot is not a special one.
Input
IX Address of the shot
Output
F The zero flag is set if nothing was hit
TestShotHitsGround 46828 LD B,12 B=12.
46830 JR TestShotHitsGround_Check Jump to TestShotHitsGround_Check.
This entry point is used by the routine at UpdateSpecialShot.
TestShotHitsGround_Wide 46832 LD B,16 B=16.
TestShotHitsGround_Check 46834 LD C,24 C=24.
46836 CALL NudgeObject Call NudgeObject.
46839 LD A,(23580) The hit flag.
46842 AND A Return if A is zero.
46843 RET Z
46844 BIT 7,(IX+21) Call PlayShortCrashSound if bit 7 of offset 21 of IX is clear.
46848 CALL Z,PlayShortCrashSound
46851 OR %00000001 Set the bits of A that are set in 1.
46853 RET Return.
Prev: 46632 Up: Map Next: 46854