Prev: EB9B Up: Map Next: EBAE
EBA0: Make a character move down
Used by the routines at ECD7, F5AC and F600 to attempt to move a character in the following ways, in the given order, depending on the directions that are available at the character's current location:
Move Condition
Down There is a step going down in the direction the character is facing
Turn round There is a step going down in the other direction
Forwards There is no step going down
Up The character can only step up from his current location
Input
H Character number (0xD7-0xE6)
EBA0 LD DE,$A418 Point DE at the direction indicator table at A418
This entry point is used by the routine at EB9B with DE=A218.
EBA3 CALL $EB85 Make the character stand up if he's lying down
EBA6 RET C Return if the character was lying down
EBA7 BIT 7,(HL) Is the character facing left?
EBA9 JR Z,$EBD0 Jump if so
EBAB INC D DE=A318 or A518
EBAC JR $EBD0 Move the character and update the SRB accordingly
Prev: EB9B Up: Map Next: EBAE