![]() |
Routines |
| Prev: F81D | Up: Map | Next: F869 |
|
Tie the rope to the rock above the volcano.
|
||||
| Action_Tie | F824 | CALL Parser_ValidateInputTokens | Return if the words after the verb are not valid for this command. | |
| F827 | RET C | |||
| F828 | LD HL,$E90B | Jump to Action_Tie_YouCant unless the player named the demons. | ||
| F82B | CALL Parser_AdvanceToSeparator | |||
| F82E | JR NZ,Action_Tie_YouCant | |||
| F830 | LD A,$23 | Jump to Action_Tie_Next if object 23 (the rope on the overhang) is not here. | ||
| F832 | CALL IsObjectInCurrentRoom | |||
| F835 | JR NZ,Action_Tie_Next | |||
|
Reply with "The rope is already tied.".
|
||||
| F837 | LD HL,$E2F0 | Print "The rope is already tied." and return to the game loop. | ||
| F83A | JP PrintResponse | |||
| Action_Tie_Next | F83D | LD A,($BA9B) | Jump to Response_IDontSeeThePoint unless the player is in room 47 (The Top of the Volcano). | |
| F840 | CP $47 | |||
| F842 | JP NZ,Response_IDontSeeThePoint | |||
| F845 | LD A,$08 | Jump to Action_Tie_DestroyRope if the player is not carrying object 08 (the rope). | ||
| F847 | CALL IsObjectCarried | |||
| F84A | JR NZ,Action_Tie_DestroyRope | |||
| F84C | LD HL,$BA68 | Count one fewer thing carried and put the rope down here. | ||
| F84F | DEC (HL) | |||
| F850 | LD A,$08 | |||
| F852 | CALL Handler_UpdateItemForTheCurrentRoom | |||
| Action_Tie_DestroyRope | F855 | LD A,$08 | Destroy object 08 (the rope). | |
| F857 | CALL Handler_DestroyItem | |||
| F85A | LD BC,$2223 | Replace object 22 (the rock overhang) with object 23 (the rope on the overhang). | ||
| F85D | CALL TransformItem | |||
|
Reply with "O.K.
The rope dangles down,
into the volcano.".
|
||||
| F860 | LD HL,$E2C2 | Print "O.K. The rope dangles down, into the volcano." and return to the game loop. | ||
| F863 | JP PrintResponse | |||
| Action_Tie_YouCant | F866 | JP Response_YouCant_GameLoop | Tell the player the command is impossible. | |
| Prev: F81D | Up: Map | Next: F869 |