Prev: F68C Up: Map Next: F79D
F71B: Action: Enter
Go into the farmhouse, the hut, the forge, the hovel or the boat.
Action_Enter F71B CALL Parser_ValidateDirectObject Call Parser_ValidateDirectObject.
F71E RET C Return if the direct object is malformed.
Was the player trying to enter ... the farmhouse?
F71F LD HL,$E8EC Call Parser_AdvanceToSeparator with E8EC.
F722 CALL Parser_AdvanceToSeparator
F725 JR NZ,Enter_CheckHut Jump to Enter_CheckHut if the token isn't for the farmhouse.
The player is attempting to enter the farmhouse.
F727 LD A,($BA9B) Jump to Response_YoureInsideAlready if *CurrentRoom isn't room 03: " At a large Farmhouse".
F72A CP $03
F72C JP NZ,Response_YoureInsideAlready
F72F LD A,$35 Jump to Response_YouCant_GameLoop if "An open door" isn't in the current room.
F731 CALL ValidateItemPresent
F734 JP NZ,Response_YouCant_GameLoop
F737 LD A,$02 Call Handler_InjuryCheck with room 02: " Inside the Farmhouse".
F739 CALL Handler_InjuryCheck
F73C RET Return.
Was the player trying to enter ... the hut?
Enter_CheckHut F73D LD HL,$E8EE Call Parser_AdvanceToSeparator with E8EE.
F740 CALL Parser_AdvanceToSeparator
F743 JR NZ,Enter_CheckHovel Jump to Enter_CheckHovel if the token isn't for the hut.
The player is attempting to enter the hut.
F745 LD A,($BA9B) Jump to Response_YoureInsideAlready if *CurrentRoom isn't room 0F: " At the Woodman's Hut".
F748 CP $0F
F74A JP NZ,Response_YoureInsideAlready
F74D LD A,$39 Jump to Response_YouCant_GameLoop if "An open door" isn't in the current room.
F74F CALL ValidateItemPresent
F752 JP NZ,Response_YouCant_GameLoop
F755 LD A,$10 Call Handler_InjuryCheck with room 10: " Inside the Woodman's Hut".
F757 CALL Handler_InjuryCheck
F75A RET Return.
Was the player trying to enter ... the hovel?
Enter_CheckHovel F75B LD HL,$E8F0 Call Parser_AdvanceToSeparator with E8F0.
F75E CALL Parser_AdvanceToSeparator
F761 JR NZ,Enter_CheckForge Jump to Enter_CheckForge if the token isn't for the hovel.
The player is attempting to enter the hovel.
F763 LD A,($BA9B) Jump to Response_YoureInsideAlready if *CurrentRoom isn't room 3C: " At the Witch's Hovel".
F766 CP $3C
F768 JP NZ,Response_YoureInsideAlready
F76B LD A,$3D Jump to Response_YouCant_GameLoop if "An open door" isn't in the current room.
F76D CALL ValidateItemPresent
F770 JP NZ,Response_YouCant_GameLoop
F773 LD A,$3D Call Handler_InjuryCheck with room 3D: " Inside the Witch's Hovel".
F775 CALL Handler_InjuryCheck
F778 RET Return.
Was the player trying to enter ... the forge?
Enter_CheckForge F779 LD HL,$E8F2 Call Parser_AdvanceToSeparator with E8F2.
F77C CALL Parser_AdvanceToSeparator
F77F JR NZ,Enter_CheckBoat Jump to Enter_CheckBoat if the token isn't for the forge.
The player is attempting to enter the forge.
F781 LD A,($BA9B) Jump to Response_YoureInsideAlready if *CurrentRoom isn't room 42: " At the Blacksmith's Forge".
F784 CP $42
F786 JP NZ,Response_YoureInsideAlready
F789 LD A,$43 Call Handler_InjuryCheck with room 43: " Inside the Forge".
F78B CALL Handler_InjuryCheck
F78E RET Return.
Was the player trying to enter ... the boat?
Enter_CheckBoat F78F LD HL,$E8F4 Call Parser_AdvanceToSeparator with E8F4.
F792 CALL Parser_AdvanceToSeparator
F795 JR NZ,Enter_YouCant Jump to Enter_YouCant if the token isn't for the boat.
Either way, it's a bad outcome.
F797 JP Response_PleaseRephraseThat_EnterTheBoat Jump to Response_PleaseRephraseThat_EnterTheBoat if the token is for the boat.
Nothing else is able to be entered, so provide a generic response.
Enter_YouCant F79A JP Response_YouCant_GameLoop Jump to Response_YouCant_GameLoop.
Prev: F68C Up: Map Next: F79D