Prev: 64609 Up: Map Next: 64717
64664: Action: Move
Action_Move 64664 CALL Parser_ValidateDirectObject Call Parser_ValidateDirectObject.
64667 RET C Return if the direct object is malformed.
Was the player trying to move the stone?
64668 LD HL,60120 Call MatchPhraseTokens with PhraseTokens_Stone.
64671 CALL MatchPhraseTokens
64674 JR NZ,Move_StoneWithCrowbar Jump to Move_StoneWithCrowbar if the token isn't for the stone.
The player is asking to move the stone.
Print "It's much too heavy.".
64676 LD HL,58117 HL=58117.
64679 JP PrintStringAndNewline_Alias Jump to PrintStringAndNewline_Alias.
Was the player trying to move the stone with the crowbar?
Move_StoneWithCrowbar 64682 LD HL,60125 Call MatchPhraseTokens with PhraseTokens_StoneWithCrowbar.
64685 CALL MatchPhraseTokens
64688 JR NZ,Move_Invalid Jump to Move_Invalid if the token isn't asking to move the stone with the crowbar.
The player is asking to move the stone with the crowbar.
But ... have they done this already?
64690 LD A,74 Jump to Response_YouveDoneThatAlready if ValidateItemPresent reports that "Moved stone (placeholder)" is in the same room as the player.
64692 CALL ValidateItemPresent
64695 JP Z,Response_YouveDoneThatAlready
Handle moving the stone with the crowbar.
This brings items "Moved stone (placeholder)" and "A ring in the floor" into the current room.
64698 LD A,74 Call Handler_UpdateItemEventCurrentRoom with item 74: "Moved stone (placeholder)".
64700 CALL Handler_UpdateItemEventCurrentRoom
64703 LD A,59 Call Handler_UpdateItemEventCurrentRoom with item 59: "A ring in the floor".
64705 CALL Handler_UpdateItemEventCurrentRoom
Print "Using the crowbar as a lever, You slowly move the stone and uncover a ring set into the floor.".
64708 LD HL,58632 HL=Messaging_UsingTheCrowbarAsALever.
64711 JP PrintStringAndNewline_Alias Jump to PrintStringAndNewline_Alias.
Nothing else is valid.
Move_Invalid 64714 JP Response_PleaseRephraseThat_Duplicate Jump to Response_PleaseRephraseThat_Duplicate.
Prev: 64609 Up: Map Next: 64717