![]() |
Routines |
Prev: 64587 | Up: Map | Next: 64718 |
|
||||
Action_Swim | 64653 | CALL Parser_ValidateAnyDirectObject | Call Parser_ValidateAnyDirectObject. | |
64656 | RET C | Return if there is no direct object in the user input (so the command is malformed). | ||
64657 | CP 1 | Jump to Response_PleaseRephraseThat_Duplicate if there was more than 1 direct object referenced in the user input (so the command is malformed). | ||
64659 | JP NC,Response_PleaseRephraseThat_Duplicate | |||
64662 | LD A,(42947) | A=*CurrentRoom. | ||
64665 | LD HL,64715 | HL=Table_ActionSwim_Rooms. | ||
64668 | LD BC,3 | BC=0003. | ||
64671 | CPIR | Search for the current room in the table. | ||
64673 | JP NZ,Response_YoureNotInWater | Jump to Response_YoureNotInWater if none of the rooms in the table match the current room ID. | ||
The player is in one of the rooms, so process the action.
|
||||
64676 | LD HL,64691 | HL=Table_ActionSwim_TokenGroup. | ||
64679 | LD DE,64703 | DE=Table_ActionSwim. | ||
64682 | LD BC,6 | BC=0006. | ||
64685 | CALL 45278 | Call 45278. | ||
Print "You can't.".
|
||||
64688 | JP Response_YouCant_Duplicate | Jump to Response_YouCant_Duplicate. | ||
The token table for the action "swim":
|
||||
Table_ActionSwim_TokenGroup | 64691 | DEFW PhraseTokens_North | Token group 1. | |
64693 | DEFW PhraseTokens_South | Token group 2. | ||
64695 | DEFW PhraseTokens_East | Token group 3. | ||
64697 | DEFW PhraseTokens_West | Token group 4. | ||
64699 | DEFW PhraseTokens_Up | Token group 5. | ||
64701 | DEFW PhraseTokens_Down | Token group 6. | ||
The actions table for "swim":
|
||||
Table_ActionSwim | 64703 | DEFW RemoveUserInput_Token_1 | Action routine 1. | |
64705 | DEFW RemoveUserInput_Token_1 | Action routine 2. | ||
64707 | DEFW RemoveUserInput_Token_1 | Action routine 3. | ||
64709 | DEFW RemoveUserInput_Token_1 | Action routine 4. | ||
64711 | DEFW RemoveUserInput_Token_1 | Action routine 5. | ||
64713 | DEFW RemoveUserInput_Token_1 | Action routine 6. | ||
Table containing rooms where this action can be done.
|
||||
Table_ActionSwim_Rooms | 64715 | DEFB 12 | Room 12: In A Deep Pool Of Water. Inside The Sea Cavern. | |
64716 | DEFB 13 | Room 13: A Narrow Underwater Passage. | ||
64717 | DEFB 21 | Room 21: In A Deep Pool. Inside Lug's Cavern. |
Prev: 64587 | Up: Map | Next: 64718 |