Prev: 64168 Up: Map Next: 64369
64278: Action: Shout
Action_Shout 64278 CALL Parser_CountItems Call Parser_CountItems.
64281 JP NZ,Response_PleaseRephraseThat_Duplicate Jump to Response_PleaseRephraseThat_Duplicate if A is not equal to 50.
Was the player trying to shout/ shout loud?
64284 LD HL,60103 Call MatchPhraseTokens with PhraseTokens_Shout.
64287 CALL MatchPhraseTokens
64290 JR NZ,Shout_Invalid Jump to Shout_Invalid if the token isn't for shouting.
The player was trying to shout, but are they in the room with the boulder?
64292 LD A,57 Call Handler_Objects with "A boulder on the brink of a ledge".
64294 CALL Handler_Objects
64297 JP NZ,Response_OK_Duplicate Jump to Response_OK_Duplicate if "A boulder on the brink of a ledge" isn't in the current room.
The player is in the room with the boulder, but is the crab also here?
64300 LD A,41 Call Handler_Objects with "A giant crab".
64302 CALL Handler_Objects
64305 JR Z,Shout_Crab Jump to Shout_Crab if the crab is in the current room.
Bad luck!
64307 LD HL,60887 Switch GameOver onto the stack so the next return actions a "game over".
64310 EX (SP),HL
Print "The whole canyon vibrates. The boulder is dislodged...".
64311 LD HL,58163 HL=58163.
64314 CALL PrintStringAndNewline Call PrintStringAndNewline.
Print "It falls and crushes you.".
64317 LD HL,58218 HL=58218.
64320 JP PausePrintStringAndScroll_Alias Jump to PausePrintStringAndScroll_Alias.
Both the boulder and the crab are in the room.
Shout_Crab 64323 LD HL,48239 Reset bit 0 of *Flag_EventState which relates to the crab being active.
64326 RES 0,(HL)
Make the crab inactive.
64328 LD A,41 Call Handler_DestroyItemEvent with item 41: "A giant crab".
64330 CALL Handler_DestroyItemEvent
Change the boulder state!
64333 LD BC,14650 Call TransformItem to transform item 57 ("A boulder on the brink of a ledge") into item 58 ("A boulder").
64336 CALL TransformItem
Now the crab is gone, this opens up various routes.
64339 LD A,47 Write 47 to *60455 to open up westbound access to The Secluded Beach from The Canyon.
64341 LD (60455),A
64344 LD A,48 Write 48 to *60458 to open up northbound access to The Rockpool from The Secluded Beach.
64346 LD (60458),A
64349 LD A,49 Write 49 to *60464 to open up northbound access to Wreckers' Cove from The Rockpool.
64351 LD (60464),A
Print "The whole canyon vibrates. The boulder is dislodged...".
64354 LD HL,58163 HL=58163.
64357 CALL PrintStringAndNewline Call PrintStringAndNewline.
Print "It falls and crushes the crab.".
64360 LD HL,58244 HL=58244.
64363 JP PausePrintStringAndScroll_Alias Jump to PausePrintStringAndScroll_Alias.
Nothing else is valid.
Shout_Invalid 64366 JP Response_PleaseRephraseThat_Duplicate Jump to Response_PleaseRephraseThat_Duplicate.
Prev: 64168 Up: Map Next: 64369