![]()  | 
Routines | 
| Prev: 62051 | Up: Map | Next: 62676 | 
| 
 | 
||||
| Action_Get | 62593 | CALL Parser_ValidateDirectObject | Call Parser_ValidateDirectObject. | |
| 62596 | RET C | Return if the direct object is malformed. | ||
| 
 
Confirm if the player intended to "GET INTO BOAT" (or similar).
 
 | 
||||
| 62597 | LD HL,59917 | Call MatchPhraseTokens with PhraseTokens_IntoBoat. | ||
| 62600 | CALL MatchPhraseTokens | |||
| 62603 | JR NZ,GetOutOfBoat_Check | Jump to GetOutOfBoat_Check if the token isn't for getting into the boat. | ||
| 
 
This entry point is used by the routine at Action_Climb.
 
The player has typed any variation of wanting to get into the boat.
 
 | 
||||
| Validate_GetIntoBoat | 62605 | LD A,(48331) | Jump to AlreadyInTheBoat if the *CurrentRoom is room 4: " In A Rowing Boat". So the player is already in the boat. | |
| 62608 | CP 4 | |||
| 62610 | JR Z,AlreadyInTheBoat | |||
| 62612 | CP 107 | Jump to Action_GetIntoBoat if the *CurrentRoom is not room 107: " In A Rowing Boat" (a room variation, but the player being in the boat). | ||
| 62614 | JR NZ,Action_GetIntoBoat | |||
| 
 
The player is definitely already in the boat, so tell them this.
 
Print "You're in it already.".
 
 | 
||||
| AlreadyInTheBoat | 62616 | LD HL,56353 | HL=Messaging_YoureInItAlready. | |
| 62619 | JP PrintStringAndNewline_Alias | Jump to PrintStringAndNewline_Alias. | ||
| 
 
The player can only get into the boat from room 3: "
Your Ship".
 
 | 
||||
| Action_GetIntoBoat | 62622 | CP 3 | Jump to WhereIsTheBoat if the *CurrentRoom is not room 3: " Your Ship" | |
| 62624 | JR NZ,WhereIsTheBoat | |||
| 62626 | LD A,4 | Jump to SetBoatDestination using room 4: In A Rowing Boat as the destination. | ||
| 62628 | JR SetBoatDestination | |||
| WhereIsTheBoat | 62630 | LD A,107 | Load room 107: In A Rowing Boat into A. | |
| SetBoatDestination | 62632 | CALL ChangeRoom | Call ChangeRoom to set the room destination from A. | |
| 62635 | RET | Return. | ||
| 
 
Confirm if the player intended to "GET OUT OF BOAT" (or similar).
 
 | 
||||
| GetOutOfBoat_Check | 62636 | LD HL,59933 | Call MatchPhraseTokens with PhraseTokens_OutOfBoat. | |
| 62639 | CALL MatchPhraseTokens | |||
| 62642 | JR NZ,Synonym_Take | Jump to Synonym_Take if the token isn't for the getting out of the boat. | ||
| 
 
This entry point is used by the routine at Action_Climb.
 
 | 
||||
| IsPlayerInRowingBoat_1 | 62644 | LD A,(48331) | Jump to IsPlayerInRowingBoat_2 if the *CurrentRoom is not room 4: " In A Rowing Boat". | |
| 62647 | CP 4 | |||
| 62649 | JR NZ,IsPlayerInRowingBoat_2 | |||
| 62651 | LD A,3 | Call ChangeRoom to room 3: Your Ship. | ||
| 62653 | CALL ChangeRoom | |||
| 62656 | RET | Return. | ||
| 
 
Also check the room variation, as the player is in the boat in both.
 
 | 
||||
| IsPlayerInRowingBoat_2 | 62657 | CP 107 | Jump to NotInTheBoat if the *CurrentRoom is not room 107: " In A Rowing Boat". | |
| 62659 | JR NZ,NotInTheBoat | |||
| 62661 | LD A,6 | Call ChangeRoom to room 6: Long Sandy Beach. | ||
| 62663 | CALL ChangeRoom | |||
| 62666 | RET | Return. | ||
| 
 
Print "You're not in the boat.".
 
 | 
||||
| NotInTheBoat | 62667 | LD HL,56375 | HL=Messaging_YoureNotInTheBoat. | |
| 62670 | JP PrintStringAndNewline_Alias | Jump to PrintStringAndNewline_Alias. | ||
| 
 
Pivot to "TAKE" as a synonym.
 
 | 
||||
| Synonym_Take | 62673 | JP Action_Take | Jump to Action_Take. | |
| Prev: 62051 | Up: Map | Next: 62676 |