Prev: 61165 Up: Map Next: 61498
61180: Action: Examine Item
Used by the routine at Action_Take.
Describe, and sometimes change, the one thing the player is examining.
Action_ExamineItem 61180 LD HL,59410 Jump to Action_ExamineItem_Next unless the player named Mara's body.
61183 CALL Parser_AdvanceToSeparator
61186 JR NZ,Action_ExamineItem_Next
61188 LD A,10 Stop if object 10 (the sword) is already carried, or if the player is holding 6 things.
61190 CALL Handler_AlreadyCarrying
61193 LD BC,13118 Put object 51 (the glowing rock) in room 62 (A Rock Wall).
61196 CALL UpdateObjectLocation
61199 LD B,10 Jump back to Handler_PickUpItem to pick the object up.
61201 JP Handler_PickUpItem
Action_ExamineItem_Next 61204 LD HL,59412 Jump to Action_ExamineItem_RopeOverhang unless the player named the witch.
61207 CALL Parser_AdvanceToSeparator
61210 JR NZ,Action_ExamineItem_RopeOverhang
61212 LD HL,59135 Call Parser_SkipToken to skip to the object named by this phrase.
61215 CALL Parser_SkipToken
61218 CALL Handler_AlreadyCarrying Call Handler_AlreadyCarrying to stop if that object is already carried, or if six things are already held.
61221 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_RopeOverhang 61224 LD HL,59414 Jump to Action_ExamineItem_SilverCoin unless the player named the rope on the overhang.
61227 CALL Parser_AdvanceToSeparator
61230 JR NZ,Action_ExamineItem_SilverCoin
61232 LD A,0 Stop if object 0 (the food) is already carried, or if the player is holding 6 things.
61234 CALL Handler_AlreadyCarrying
61237 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_SilverCoin 61240 LD HL,59416 Jump to Action_ExamineItem_Bow unless the player named the blacksmith.
61243 CALL Parser_AdvanceToSeparator
61246 JR NZ,Action_ExamineItem_Bow
61248 LD A,2 Stop if object 2 (the silver coin) is already carried, or if the player is holding 6 things.
61250 CALL Handler_AlreadyCarrying
61253 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_Bow 61256 LD HL,59421 Jump to Action_ExamineItem_Arrows unless the player named the blacksmith.
61259 CALL Parser_AdvanceToSeparator
61262 JR NZ,Action_ExamineItem_Arrows
61264 LD A,3 Stop if object 3 (the bow) is already carried, or if the player is holding 6 things.
61266 CALL Handler_AlreadyCarrying
61269 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_Arrows 61272 LD HL,59423 Jump to Action_ExamineItem_Furnace unless the player named the dead blacksmith.
61275 CALL Parser_AdvanceToSeparator
61278 JR NZ,Action_ExamineItem_Furnace
61280 LD A,4 Stop if object 4 (the arrows) is already carried, or if the player is holding 6 things.
61282 CALL Handler_AlreadyCarrying
61285 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_Furnace 61288 LD HL,59425 Jump to Action_ExamineItem_Continue unless the player named the furnace.
61291 CALL Parser_AdvanceToSeparator
61294 JR NZ,Action_ExamineItem_Continue
61296 LD HL,59119 Call Parser_SkipToken to skip to the object named by this phrase.
61299 CALL Parser_SkipToken
61302 CALL Handler_AlreadyCarrying Call Handler_AlreadyCarrying to stop if that object is already carried, or if six things are already held.
61305 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_Continue 61308 JR Action_ExamineItem_Zarn Carry on with the next object.
Action_ExamineItem_Zarn 61310 LD HL,59429 Jump to Action_ExamineItem_PrincessMara unless the player named Zarn.
61313 CALL Parser_AdvanceToSeparator
61316 JR NZ,Action_ExamineItem_PrincessMara
61318 LD A,68 Stop if object 68 (the log) is already carried, or if the player is holding 6 things.
61320 CALL Handler_AlreadyCarrying
61323 LD A,69 Destroy object 69 (the log bridge).
61325 CALL Handler_DestroyItem
61328 LD A,70 Destroy object 70 (the log bridge).
61330 CALL Handler_DestroyItem
61333 LD BC,4373 Put object 17 (the chasm) in room 21 (The Western Edge of a Chasm).
61336 CALL UpdateObjectLocation
61339 LD BC,4630 Put object 18 (the chasm) in room 22 (The Eastern Edge of a Chasm).
61342 CALL UpdateObjectLocation
61345 XOR A Jump back to Handler_PickUpItem to pick the object up.
61346 LD (59828),A
61349 LD (59835),A
61352 LD B,68
61354 JP Handler_PickUpItem
Action_ExamineItem_PrincessMara 61357 LD HL,59431 Jump to Action_ExamineItem_OldMan unless the player named Princess Mara.
61360 CALL Parser_AdvanceToSeparator
61363 JR NZ,Action_ExamineItem_OldMan
61365 LD A,9 Stop if object 9 (the horn) is already carried, or if the player is holding 6 things.
61367 CALL Handler_AlreadyCarrying
61370 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_OldMan 61373 LD HL,59433 Jump to Action_ExamineItem_Key unless the player named the old man.
61376 CALL Parser_AdvanceToSeparator
61379 JR NZ,Action_ExamineItem_Key
61381 LD HL,59142 Call Parser_SkipToken to skip to the object named by this phrase.
61384 CALL Parser_SkipToken
61387 CALL IsObjectCarried Jump to Action_ExamineItem_TakeChest when the object is not being carried.
61390 JR NZ,Action_ExamineItem_TakeChest
61392 LD E,15 Jump back to Handler_PrintCarrying to finish the carrying sentence.
61394 JP Handler_PrintCarrying
Action_ExamineItem_TakeChest 61397 CALL Handler_InventoryFull Call Handler_InventoryFull to refuse the object when six things are already carried.
61400 LD A,E Jump to Action_ExamineItem_PickUp when the value 15 matches.
61401 CP 15
61403 JR Z,Action_ExamineItem_PickUp
61405 LD BC,3342 Replace object 13 (the open chest) with object 14 (the empty chest).
61408 CALL TransformItem
Action_ExamineItem_PickUp 61411 LD B,15 Jump back to Handler_PickUpItem to pick the object up.
61413 JP Handler_PickUpItem
Action_ExamineItem_Key 61416 LD HL,59439 Jump to Action_ExamineItem_DeadSpider unless the player named the key.
61419 CALL Parser_AdvanceToSeparator
61422 JR NZ,Action_ExamineItem_DeadSpider
61424 LD A,16 Stop if object 16 (the key) is already carried, or if the player is holding 6 things.
61426 CALL Handler_AlreadyCarrying
61429 JP Handler_PickUpItem Jump back to Handler_PickUpItem to pick the object up.
Action_ExamineItem_DeadSpider 61432 LD HL,59441 Jump to Action_ExamineItem_TakeRingOff unless the player named the dead spider.
61435 CALL Parser_AdvanceToSeparator
61438 JR NZ,Action_ExamineItem_TakeRingOff
Reply with "They are not removable.".
61440 LD HL,56419 Print "They are not removable." and return to the game loop.
61443 JP PrintResponse
Action_ExamineItem_TakeRingOff 61446 LD HL,59443 Jump to Action_ExamineItem_Demons unless the player named taking the ring off.
61449 CALL Parser_AdvanceToSeparator
61452 JR NZ,Action_ExamineItem_Demons
61454 JP Response_PleaseRephraseThat_GameLoop Jump back to Response_PleaseRephraseThat_GameLoop to ask for a rephrase.
Action_ExamineItem_Demons 61457 LD HL,59427 Jump to Action_ExamineItem_YouCant unless the player named the demons.
61460 CALL Parser_AdvanceToSeparator
61463 JR NZ,Action_ExamineItem_YouCant
61465 LD A,(47771) Jump to Action_ExamineItem_YouCant when the player is in room 72 (Inside the Volcano).
61468 CP 72
61470 JR Z,Action_ExamineItem_YouCant
61472 LD A,8 Stop if object 8 (the rope) is already carried, or if the player is holding 6 things.
61474 CALL Handler_AlreadyCarrying
61477 LD A,35 Jump to Action_ExamineItem_TakeRope if object 35 (the rope on the overhang) is not here.
61479 CALL IsObjectInCurrentRoom
61482 JR NZ,Action_ExamineItem_TakeRope
61484 LD BC,8994 Replace object 35 (the rope on the overhang) with object 34 (the rock overhang).
61487 CALL TransformItem
Action_ExamineItem_TakeRope 61490 LD B,8 Jump back to Handler_PickUpItem to pick the object up.
61492 JP Handler_PickUpItem
Action_ExamineItem_YouCant 61495 JP Response_YouCant_GameLoop Tell the player the command is impossible.
Prev: 61165 Up: Map Next: 61498