![]() |
Routines |
| Prev: 36596 | Up: Map | Next: 36627 |
|
Try to leave downwards.
|
||||
| ActionDown | 36600 | LD C,5 | Set C to "DOWN" (5). | |
|
This entry point is used by the routines at Action_North, Action_South, Action_East, Action_West and Action_Up.
The movement commands share this common exit handler.
|
||||
| ActionDown_Step1 | 36602 | CALL Parser_ValidateNoDirectObject | Call Parser_ValidateNoDirectObject; return if the command names an object. | |
| 36605 | RET C | |||
| 36606 | LD B,0 | Read the exit byte for the chosen direction. | ||
| 36608 | CALL GetRoomPointer | |||
| 36611 | ADD HL,BC | |||
| 36612 | LD A,(HL) | |||
| 36613 | OR A | Jump to ActionDown_Step2 if that direction is closed. | ||
| 36614 | JR Z,ActionDown_Step2 | |||
| 36616 | CALL MovePlayerToRoom | Call MovePlayerToRoom. | ||
| 36619 | RET | Return. | ||
|
Print "You can't go in that direction.".
|
||||
| ActionDown_Step2 | 36620 | LD HL,30769 | HL=Messaging_YouCanTGoInThatDirection. | |
| 36623 | CALL PrintStringAndANewline | Call PrintStringAndANewline. | ||
| 36626 | RET | Return. | ||
|
Continue on to ActionDown_Step1.
View the equivalent code in;
|
||||
| Prev: 36596 | Up: Map | Next: 36627 |