Prev: FC24 Up: Map Next: FC98
FC61: Action: Enter
Action_Enter FC61 CALL Parser_ValidateDirectObject Call Parser_ValidateDirectObject.
FC64 RET C Return if the direct object is malformed.
FC65 CP $02 Jump to Response_PleaseRephraseThat_Duplicate if A is greater than 02.
FC67 JP NC,Response_PleaseRephraseThat_Duplicate
Was the player trying to enter ... the cave?
FC6A LD HL,$EACD Call MatchPhraseTokens with PhraseTokens_Cave.
FC6D CALL MatchPhraseTokens
FC70 JR NZ,Enter_CheckBoat Jump to Enter_CheckBoat if the token isn't for the cave.
The player is attempting to enter the cave.
Validate that the player isn't already inside the cave.
FC72 LD A,($BCCB) Jump to Response_YouveDoneThatAlready if *CurrentRoom is either room 52: " The Vast Cavern" or room 3F: " The Cave".
FC75 CP $52
FC77 JP Z,Response_YouveDoneThatAlready
FC7A CP $3F
FC7C JP Z,Response_YouveDoneThatAlready
Default to the player entering the cave if they're in " The Cave Mouth".
FC7F LD B,$3F Load room 3F: " The Cave" into B as the destination room.
FC81 CP $3E Jump to Enter_SetDestinationRoom if *CurrentRoom is room 3E: " The Cave Mouth".
FC83 JR Z,Enter_SetDestinationRoom
Else take the player to The Vast Cavern.
FC85 LD B,$52 Load room 52: " The Vast Cavern" into B as the destination room.
Enter_SetDestinationRoom FC87 LD A,B Copy B into the A register and call EF54.
FC88 CALL $EF54
FC8B RET Return.
Was the player trying to enter ... the boat?
Enter_CheckBoat FC8C LD HL,$EACF Call MatchPhraseTokens with PhraseTokens_Boat.
FC8F CALL MatchPhraseTokens
Either way, it's a bad outcome.
FC92 JP Z,Response_PleaseRephraseThat_Duplicate Jump to Response_PleaseRephraseThat_Duplicate if the token is for the boat.
Nothing else is able to be entered, so provide a generic response.
FC95 JP Response_YouCant_Duplicate Jump to Response_YouCant_Duplicate.
Prev: FC24 Up: Map Next: FC98