![]() |
Routines |
Prev: 61257 | Up: Map | Next: 61308 |
|
||||
The player wants to pick up the rope, check which version of it is in the current room.
|
||||
Process_GetRope | 61274 | LD HL,58288 | Call CheckItemGroupPresent with Data_ItemGroup_Rope. | |
61277 | CALL CheckItemGroupPresent | |||
Print "You can't." if the player is trying to pick up a version of the rope where the rope is "in-use" (e.g. "A wild ox,tethered to the pen by a length of rope").
|
||||
61280 | CP 81 | Jump to Response_YouCant_Duplicate if the rope state in the current room is not "A piece of rope". | ||
61282 | JP NZ,Response_YouCant_Duplicate | |||
The player wants to pick up the rope, check if there are any issues with allowing this (if the inventory is full, or the player is already carrying it).
|
||||
61285 | CALL Check_PlayerInventory | Call Check_PlayerInventory. | ||
Is this the first time the player has picked up the rope?
|
||||
61288 | LD HL,42860 | Jump to Handler_PickUpItem if bit 2 of *Flag_GameStates_01 is set, which relates to carrying the rope. | ||
61291 | BIT 2,(HL) | |||
61293 | JP NZ,Handler_PickUpItem | |||
61296 | SET 2,(HL) | Set bit 2 of *Flag_GameStates_01 to signify that the rope has been picked up. This is to prevent the points from being awarded more than one time. | ||
61298 | LD A,4 | Call AddToScore to add 4 points to the score. | ||
61300 | CALL AddToScore | |||
61303 | LD B,81 | Jump to Handler_PickUpItem with item 81: "A piece of rope". | ||
61305 | JP Handler_PickUpItem |
Prev: 61257 | Up: Map | Next: 61308 |