Prev: 61135 Up: Map Next: 61193
61161: Process: Get Urn
The player wants to pick up the urn, check if there are any issues with allowing this (if the inventory is full, or the player is already carrying it).
Process_GetUrn 61161 LD A,28 Call Check_PlayerInventory with item 28: "An urn".
61163 CALL Check_PlayerInventory
All is good, but check if "A bronze helmet (worn)" is present.
61166 LD A,32 Call ValidateItemPresent with item 32: "A bronze helmet (worn)".
61168 CALL ValidateItemPresent
Print "You cannot move it." if the player isn't wearing the helmet.
61171 JP NZ,Response_YouCannotMoveIt Jump to Response_YouCannotMoveIt if "A bronze helmet (worn)" isn't present in the room or in the players inventory (note, it can only be in the "worn" state in the players inventory).
Is this the first time the player has picked up the urn?
61174 LD HL,42860 Jump to GetUrn if bit 4 of *Flag_GameStates_01 is set, which relates to carrying the urn.
61177 BIT 4,(HL)
61179 JR NZ,GetUrn
61181 SET 4,(HL) Set bit 4 of *HL to signify that the urn has been picked up. This is to prevent the points from being awarded more than one time.
61183 LD A,4 Call AddToScore to add 4 points to the score.
61185 CALL AddToScore
GetUrn 61188 LD B,28 Jump to Handler_PickUpItem with item 28: "An urn".
61190 JP Handler_PickUpItem
Prev: 61135 Up: Map Next: 61193