Prev: 937B Up: Map Next: 93E4
93A1: Action: Enter
Go into the open airlock or the alien commander's chamber.
ActionEnter 93A1 CALL Parser_ValidateDirectObject Return if the command does not name a single object.
93A4 RET C
93A5 JR ActionEnter_Step1 Continue at ActionEnter_Step1 to match the place the player named.
Print "You can't.".
ActionEnter_Loop1 93A7 LD HL,$645B HL=Messaging_YouCanT.
ActionEnter_Loop2 93AA CALL PrintStringAndANewline Call PrintStringAndANewline.
93AD RET Return.
ActionEnter_Loop3 93AE CALL MovePlayerToRoom Call MovePlayerToRoom to move the player.
93B1 RET Return.
Was the player trying to enter the airlock?
ActionEnter_Step1 93B2 LD HL,$89B3 Point at the phrase at 89B3 and call Parser_AdvanceToSeparator to match it against the command.
93B5 CALL Parser_AdvanceToSeparator
93B8 JR NZ,ActionEnter_Step2 Jump to ActionEnter_Step2 if it doesn't match.
93BA LD A,$11 Jump to ActionEnter_Loop1 when The airlock is open. (11) is not here or being carried.
93BC CALL IsObjectInCurrentRoom
93BF JP NZ,ActionEnter_Loop1
93C2 LD A,$04 The open airlock leads into In the Galaxy at rest.
93C4 JP ActionEnter_Loop3 Continue at ActionEnter_Loop3 to go through the airlock.
Was the player trying to enter the alien commander's chamber?
ActionEnter_Step2 93C7 LD HL,$894B Jump to ActionEnter_Step4 unless the command matches the phrase at 894B (The alien commander, in space armour. (27)).
93CA CALL Parser_AdvanceToSeparator
93CD JR NZ,ActionEnter_Step4
93CF LD A,$27
93D1 CALL IsObjectInCurrentRoom
93D4 JR NZ,ActionEnter_Step3
Print "The commander blocks your way.".
93D6 LD HL,$7D6B HL=Messaging_TheCommanderBlocksYourWay.
93D9 JP ActionEnter_Loop2 Jump to ActionEnter_Loop2.
ActionEnter_Step3 93DC LD A,$3E The commander is reached through Inside a Teleport.
93DE JP ActionEnter_Loop3 Continue at ActionEnter_Loop3 to go to the alien commander.
ActionEnter_Step4 93E1 JP ActionEnter_Loop1 Continue at ActionEnter_Loop1 to say the player can't.
View the equivalent code in;
Prev: 937B Up: Map Next: 93E4