Prev: 61840 Up: Map Next: 62061
61974: Action: Give
Give the chest or the crystals to the blacksmith.
Action_Give 61974 CALL Parser_ValidateInputTokens Return if the words after the verb are not valid for this command.
61977 RET C
61978 LD HL,59459 Jump to Action_Give_YouCant unless the player named the old man.
61981 CALL Parser_AdvanceToSeparator
61984 JR NZ,Action_Give_YouCant
61986 LD A,37 Jump to Action_Give_Next when object 37 (the blacksmith) is here.
61988 CALL IsObjectInCurrentRoom
61991 JR Z,Action_Give_Next
Reply with "You can't.He's dead.".
61993 LD HL,56632 Print "You can't.He's dead." and return to the game loop.
61996 JP PrintResponse
Action_Give_Next 61999 LD A,13 Jump to Action_Give_CheckCrystals if object 13 (the open chest) is not here.
62001 CALL IsObjectInCurrentRoom
62004 JR NZ,Action_Give_CheckCrystals
62006 LD BC,3342 Replace object 13 (the open chest) with object 14 (the empty chest).
62009 CALL TransformItem
62012 JR Action_Give_HandOver Jump to Action_Give_HandOver to hand the crystals over.
Action_Give_CheckCrystals 62014 LD A,15 Jump to Action_Give_HandOver if the player is not carrying object 15 (the Crystals of Vulcan).
62016 CALL IsObjectCarried
62019 JR NZ,Action_Give_HandOver
62021 LD HL,47720 Count one fewer thing carried.
62024 DEC (HL)
Action_Give_HandOver 62025 LD A,15 Destroy object 15 (the Crystals of Vulcan).
62027 CALL Handler_DestroyItem
62030 LD BC,9510 Replace object 37 (the blacksmith) with object 38 (the blacksmith).
62033 CALL TransformItem
62036 LD A,136 Destroy object 136 (the old man's quest).
62038 CALL Handler_DestroyItem
62041 LD A,10 Move object 10 (the sword) into the current room.
62043 CALL Handler_UpdateItemForTheCurrentRoom
62046 LD HL,56653 Print "You give him the crystals. He puts them in the flames.".
62049 CALL PrintStringAndANewline
Reply with "After some time, he shapes a piece of metal from the fire,on the anvil. He produces a fine sword.".
62052 LD HL,56708 Print "After some time, he shapes a piece of metal from the fire,on the anvil. He produces a fine sword." and return to the game loop.
62055 JP PauseAndPrintResponse
Action_Give_YouCant 62058 JP Response_YouCant_GameLoop Tell the player the command is impossible.
Prev: 61840 Up: Map Next: 62061