![]() |
Routines |
| Prev: B963 | Up: Map | Next: B99B |
|
Used by the routines at TAKE_OR_LEAVE, BOLT, HOMER, PUSHABLE, BOBBER, SPIDER, WELL, ROAMER and SKY_WALKER.
Takes one off dZ -- the pull of gravity -- then lets ADJ_FOR_OUT_OF_BOUNDS cut the step down to what fits, and adds what is left to the position. Most update routines come in at CLIP_AND_MOVE, to move without falling; the player's legs come in at ADD_DUVZ, having cut the move themselves (MOVE_PLAYER).
|
||||||||
| DEC_DZ_AND_UPDATE_UVZ | B979 | DEC (IX+$0B) | gravity | |||||
|
This entry point is used by the routines at COLLECTABLE, SINKING_BLOCK, LIFT, BOBBER, DEADLY_PACER_U, DEADLY_PACER_V, PENTAGRAM_PIECE, QUEST_ITEM, WELL, BUCKET, CRUMBLING_BLOCK, CONVEYOR_PLUS_U, CONVEYOR_MINUS_U, CONVEYOR_PLUS_V and CONVEYOR_MINUS_V.
|
||||||||
| CLIP_AND_MOVE | B97C | CALL ADJ_FOR_OUT_OF_BOUNDS | cut the move short where it has to be | |||||
|
This entry point is used by the routine at MOVE_PLAYER.
|
||||||||
| ADD_DUVZ | B97F | LD A,(IX+$01) | U, V and Z (+$01 to +$03) plus the step in each (+$09 to +$0B) | |||||
| B982 | ADD A,(IX+$09) | |||||||
| B985 | LD (IX+$01),A | |||||||
| B988 | LD A,(IX+$02) | |||||||
| B98B | ADD A,(IX+$0A) | |||||||
| B98E | LD (IX+$02),A | |||||||
| B991 | LD A,(IX+$03) | |||||||
| B994 | ADD A,(IX+$0B) | |||||||
| B997 | LD (IX+$03),A | |||||||
| B99A | RET | |||||||
| Prev: B963 | Up: Map | Next: B99B |