![]()  | 
Routines | 
| Prev: 61135 | Up: Map | Next: 61193 | 
| 
 | 
||||
| 
 
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 |