![]() |
Routines |
| Prev: 62098 | Up: Map | Next: 62902 |
|
Fight the opponent the player named.
|
||||
| Action_Kill | 62119 | CALL Parser_ValidateTwoDirectObjects | Call Parser_ValidateTwoDirectObjects. | |
| 62122 | RET C | Return if the direct object is malformed. | ||
| 62123 | JP Validate_Kill_ElfSword | Jump to Validate_Kill_ElfSword. | ||
|
Does the player hold the bow and some arrows?
|
||||
| Kill_CheckBowAndArrows | 62126 | LD A,3 | Call IsObjectCarried with item 3: "A bow". | |
| 62128 | CALL IsObjectCarried | |||
| 62131 | JR NZ,Kill_NoBow | Jump to Kill_NoBow if "A bow" isn't held. | ||
| 62133 | LD A,4 | Call IsObjectCarried with item 4: "Some arrows". | ||
| 62135 | CALL IsObjectCarried | |||
| 62138 | RET Z | Return if "Some arrows" is held. | ||
|
Print "You have no arrows.".
|
||||
| 62139 | LD HL,57041 | HL=Messaging_YouHaveNoArrows. | ||
| 62142 | JR Kill_WeaponReply | Jump to Kill_WeaponReply. | ||
|
Print "You're not carrying a bow.".
|
||||
| Kill_NoBow | 62144 | LD HL,57129 | HL=Messaging_YoureNotCarryingABow. | |
| Kill_WeaponReply | 62147 | POP DE | Restore DE from the stack. | |
| 62148 | JP PrintResponse | Jump to PrintResponse. | ||
|
Does the player hold the sword?
|
||||
| Kill_CheckSword | 62151 | LD A,10 | Call IsObjectCarried with item 10: "A sword". | |
| 62153 | CALL IsObjectCarried | |||
| 62156 | RET Z | Return if "A sword" is held. | ||
|
Print "You're not carrying the sword.".
|
||||
| 62157 | LD HL,57202 | HL=Messaging_YoureNotCarryingTheSword. | ||
| 62160 | POP DE | Restore DE from the stack. | ||
| 62161 | JP PrintResponse | Jump to PrintResponse. | ||
|
Print "You fire an arrow:-".
|
||||
| Kill_AnnounceArrow | 62164 | PUSH AF | Stash AF on the stack. | |
| 62165 | LD HL,57061 | HL=Messaging_YouFireAnArrow. | ||
| 62168 | JR Kill_ResolveAttack_Print | Jump to Kill_ResolveAttack_Print. | ||
|
Print "You swing the sword:-".
|
||||
| Kill_ResolveAttack | 62170 | PUSH AF | Stash AF on the stack. | |
| 62171 | LD HL,57180 | HL=Messaging_YouSwingTheSword. | ||
| Kill_ResolveAttack_Print | 62174 | CALL PrintStringAndNewline | Call PrintStringAndNewline. | |
| 62177 | POP AF | Restore AF from the stack. | ||
| 62178 | AND A | Return if this attack cannot miss. | ||
| 62179 | RET Z | |||
| 62180 | CALL GenerateRandomNumber | Call GenerateRandomNumber. | ||
| 62183 | RET NZ | Return if the blow lands. | ||
|
Print "Bad luck.You missed.".
|
||||
| 62184 | LD HL,57081 | HL=Messaging_BadLuckYouMissed. | ||
| 62187 | POP DE | Restore DE from the stack. | ||
| 62188 | JP PauseAndPrintResponse | Jump to PauseAndPrintResponse. | ||
|
Turn the defeated scenic event into its corpse.
|
||||
| Kill_ApplyCombatResult | 62191 | LD HL,47949 | Call TransformItem to turn the defeated scenic event into its corpse. | |
| 62194 | LD A,(HL) | |||
| 62195 | SUB 128 | |||
| 62197 | ADD A,19 | |||
| 62199 | LD B,(HL) | |||
| 62200 | LD C,A | |||
| 62201 | CALL TransformItem | |||
| 62204 | RET | Return. | ||
|
Turn the second defeated scenic event into its corpse.
|
||||
| Kill_ApplySecondCombatResult | 62205 | LD HL,47949 | Call TransformItem to turn the second defeated scenic event into its corpse. | |
| 62208 | LD A,(HL) | |||
| 62209 | SUB 131 | |||
| 62211 | ADD A,24 | |||
| 62213 | LD B,(HL) | |||
| 62214 | LD C,A | |||
| 62215 | CALL TransformItem | |||
| 62218 | RET | Return. | ||
|
Was the player trying to kill ... the elf with the sword?
|
||||
| Validate_Kill_ElfSword | 62219 | LD HL,59517 | Jump to Validate_Kill_ElfBow unless the player named the elf with the sword. | |
| 62222 | CALL Parser_AdvanceToSeparator | |||
| 62225 | JR NZ,Validate_Kill_ElfBow | |||
| 62227 | LD HL,59153 | Call Parser_SkipToken to skip to the object named by this phrase. | ||
| 62230 | CALL Parser_SkipToken | |||
| 62233 | BIT 7,A | Jump back to Response_HesAlreadyDead when the named opponent is already dead. | ||
| 62235 | JP Z,Response_HesAlreadyDead | |||
| 62238 | LD (47949),A | Call Kill_CheckSword. | ||
| 62241 | CALL Kill_CheckSword | |||
| 62244 | LD A,10 | Call Kill_ResolveAttack. | ||
| 62246 | CALL Kill_ResolveAttack | |||
| 62249 | CALL Kill_ApplyCombatResult | Call Kill_ApplyCombatResult. | ||
| 62252 | LD A,(47949) | Jump to Kill_ElfSword_Done unless the value 130 matches. | ||
| 62255 | CP 130 | |||
| 62257 | JR NZ,Kill_ElfSword_Done | |||
| 62259 | LD A,134 | Remove object 134 (the centaur) from the game. | ||
| 62261 | CALL Handler_RemoveItemFromPlay | |||
| Kill_ElfSword_Done | 62264 | LD HL,57156 | Print "Your blow strikes true.". | |
| 62267 | CALL PausePrintStringAndScroll | |||
|
Print "The Elf is dead.".
|
||||
| 62270 | LD HL,57251 | HL=Messaging_TheElfIsDead. | ||
| 62273 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the elf with the bow?
|
||||
| Validate_Kill_ElfBow | 62276 | LD HL,59521 | Jump to Validate_Kill_WarriorSword unless the player named the elf with the bow. | |
| 62279 | CALL Parser_AdvanceToSeparator | |||
| 62282 | JR NZ,Validate_Kill_WarriorSword | |||
| 62284 | LD HL,59153 | Call Parser_SkipToken to skip to the object named by this phrase. | ||
| 62287 | CALL Parser_SkipToken | |||
| 62290 | BIT 7,A | Jump back to Response_HesAlreadyDead when the named opponent is already dead. | ||
| 62292 | JP Z,Response_HesAlreadyDead | |||
| 62295 | LD (47949),A | Call Kill_CheckBowAndArrows. | ||
| 62298 | CALL Kill_CheckBowAndArrows | |||
| 62301 | LD A,5 | Call Kill_AnnounceArrow. | ||
| 62303 | CALL Kill_AnnounceArrow | |||
| 62306 | CALL Kill_ApplyCombatResult | Call Kill_ApplyCombatResult. | ||
| 62309 | LD A,(47949) | Jump to Kill_ElfBow_Done unless the value 130 matches. | ||
| 62312 | CP 130 | |||
| 62314 | JR NZ,Kill_ElfBow_Done | |||
| 62316 | LD A,134 | Remove object 134 (the centaur) from the game. | ||
| 62318 | CALL Handler_RemoveItemFromPlay | |||
| Kill_ElfBow_Done | 62321 | LD HL,57102 | Print "Well done! A perfect shot.". | |
| 62324 | CALL PausePrintStringAndScroll | |||
|
Print "The Elf is dead.".
|
||||
| 62327 | LD HL,57251 | HL=Messaging_TheElfIsDead. | ||
| 62330 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the warrior with the sword?
|
||||
| Validate_Kill_WarriorSword | 62333 | LD HL,59525 | Jump to Validate_Kill_WarriorBow unless the player named the dead warrior. | |
| 62336 | CALL Parser_AdvanceToSeparator | |||
| 62339 | JR NZ,Validate_Kill_WarriorBow | |||
| 62341 | LD HL,59167 | Call Parser_SkipToken to skip to the object named by this phrase. | ||
| 62344 | CALL Parser_SkipToken | |||
| 62347 | BIT 7,A | Jump back to Response_ItsAlreadyDead when the named opponent is already dead. | ||
| 62349 | JP Z,Response_ItsAlreadyDead | |||
| 62352 | LD (47949),A | Call Kill_CheckSword. | ||
| 62355 | CALL Kill_CheckSword | |||
| 62358 | LD A,1 | Call Kill_ResolveAttack. | ||
| 62360 | CALL Kill_ResolveAttack | |||
| 62363 | CALL Kill_ApplySecondCombatResult | Call Kill_ApplySecondCombatResult. | ||
| 62366 | LD HL,57156 | Print "Your blow strikes true.". | ||
| 62369 | CALL PausePrintStringAndScroll | |||
|
Print "The lizard falls to the ground.
It is dead.".
|
||||
| 62372 | LD HL,57268 | HL=Messaging_TheLizardFallsToTheGround. | ||
| 62375 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the warrior with the bow?
|
||||
| Validate_Kill_WarriorBow | 62378 | LD HL,59534 | Jump to Validate_Kill_MonsterBow unless the player named the dead warrior. | |
| 62381 | CALL Parser_AdvanceToSeparator | |||
| 62384 | JR NZ,Validate_Kill_MonsterBow | |||
| 62386 | LD HL,59167 | Call Parser_SkipToken to skip to the object named by this phrase. | ||
| 62389 | CALL Parser_SkipToken | |||
| 62392 | BIT 7,A | Jump back to Response_ItsAlreadyDead when the named opponent is already dead. | ||
| 62394 | JP Z,Response_ItsAlreadyDead | |||
| 62397 | LD (47949),A | Call Kill_CheckBowAndArrows. | ||
| 62400 | CALL Kill_CheckBowAndArrows | |||
| 62403 | LD A,5 | Call Kill_AnnounceArrow. | ||
| 62405 | CALL Kill_AnnounceArrow | |||
| 62408 | CALL Kill_ApplySecondCombatResult | Call Kill_ApplySecondCombatResult. | ||
| 62411 | LD HL,57102 | Print "Well done! A perfect shot.". | ||
| 62414 | CALL PausePrintStringAndScroll | |||
|
Print "The lizard falls to the ground.
It is dead.".
|
||||
| 62417 | LD HL,57268 | HL=Messaging_TheLizardFallsToTheGround. | ||
| 62420 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the slime monster with the bow?
|
||||
| Validate_Kill_MonsterBow | 62423 | LD HL,59556 | Jump to Validate_Kill_Dragon unless the player named the monster with the bow. | |
| 62426 | CALL Parser_AdvanceToSeparator | |||
| 62429 | JR NZ,Validate_Kill_Dragon | |||
| 62431 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62434 | LD A,5 | Call Kill_AnnounceArrow. | ||
| 62436 | CALL Kill_AnnounceArrow | |||
| 62439 | LD A,30 | Destroy "A monster from the slime". | ||
| 62441 | CALL Handler_DestroyItem | |||
| 62444 | LD HL,57102 | Print "Well done! A perfect shot.". | ||
| 62447 | CALL PausePrintStringAndScroll | |||
|
Print "The stricken monster slides
back into the oozing slime.".
|
||||
| 62450 | LD HL,57353 | HL=Messaging_TheStrickenMonsterSlides. | ||
| 62453 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the dragon?
|
||||
| Validate_Kill_Dragon | 62456 | LD HL,59543 | Jump to Validate_Kill_WoodNymph unless the player named the glowing rock. | |
| 62459 | CALL Parser_AdvanceToSeparator | |||
| 62462 | JR NZ,Validate_Kill_WoodNymph | |||
| 62464 | LD A,22 | Jump to Response_ItsAlreadyDead if "A dragon. It is watching you" is not here. | ||
| 62466 | CALL ValidateItemPresent | |||
| 62469 | JP NZ,Response_ItsAlreadyDead | |||
| 62472 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62475 | XOR A | Call Kill_AnnounceArrow. | ||
| 62476 | CALL Kill_AnnounceArrow | |||
| 62479 | LD BC,5655 | Call TransformItem to transform "A dragon. It is watching you" into "A dead dragon". | ||
| 62482 | CALL TransformItem | |||
|
Print "You have killed it.".
|
||||
| 62485 | LD HL,57312 | HL=Messaging_YouHaveKilledIt. | ||
| 62488 | JP PauseAndPrintResponse | Jump to PauseAndPrintResponse. | ||
|
Was the player trying to kill ... the wood nymph?
|
||||
| Validate_Kill_WoodNymph | 62491 | LD HL,59547 | Jump to Validate_Kill_DemonsSword unless the player named a closed door. | |
| 62494 | CALL Parser_AdvanceToSeparator | |||
| 62497 | JR NZ,Validate_Kill_DemonsSword | |||
| 62499 | LD A,138 | Jump to Response_ShesAlreadyDead if object 138 (the wood nymph) is not here. | ||
| 62501 | CALL ValidateItemPresent | |||
| 62504 | JP NZ,Response_ShesAlreadyDead | |||
| 62507 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62510 | XOR A | Call Kill_AnnounceArrow. | ||
| 62511 | CALL Kill_AnnounceArrow | |||
| 62514 | LD BC,35356 | Call TransformItem to transform 138 into "The body of a wood nymph". | ||
| 62517 | CALL TransformItem | |||
| 62520 | LD A,137 | Destroy object 137 (the nymph's glimpse). | ||
| 62522 | CALL Handler_DestroyItem | |||
|
Print "You have killed her.".
|
||||
| 62525 | LD HL,57332 | HL=Messaging_YouHaveKilledHer. | ||
| 62528 | JP PauseAndPrintResponse | Jump to PauseAndPrintResponse. | ||
|
Was the player trying to kill ... the demons with the sword?
|
||||
| Validate_Kill_DemonsSword | 62531 | LD HL,59560 | Jump to Validate_Kill_DemonsBow unless the player named the log bridge. | |
| 62534 | CALL Parser_AdvanceToSeparator | |||
| 62537 | JR NZ,Validate_Kill_DemonsBow | |||
| 62539 | CALL Kill_CheckSword | Call Kill_CheckSword. | ||
| 62542 | LD A,10 | Call Kill_ResolveAttack. | ||
| 62544 | CALL Kill_ResolveAttack | |||
| 62547 | LD A,41 | Destroy "Some demons are attacking you. They scream and jab at you with vicious tridents". | ||
| 62549 | CALL Handler_DestroyItem | |||
|
This action changes the map:
|
||||
| 62552 | LD A,73 | Write 73 to *Exit_CavernEast to open up eastbound access to In a Rock Passage from The Cavern of Silence. | ||
| 62554 | LD (60122),A | |||
|
Print "The demons scream with panic,
then fade away.".
|
||||
| 62557 | LD HL,57409 | HL=Messaging_TheDemonsScreamWithPanic. | ||
| 62560 | JP PauseAndPrintResponse | Jump to PauseAndPrintResponse. | ||
|
Was the player trying to kill ... the demons with the bow?
|
||||
| Validate_Kill_DemonsBow | 62563 | LD HL,59564 | Jump to Validate_Kill_BlacksmithSword unless the player named the log bridge. | |
| 62566 | CALL Parser_AdvanceToSeparator | |||
| 62569 | JR NZ,Validate_Kill_BlacksmithSword | |||
| 62571 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
|
Print "Arrows have no effect.".
|
||||
| 62574 | LD HL,57455 | HL=Messaging_ArrowsHaveNoEffect. | ||
| 62577 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the blacksmith with the sword?
|
||||
| Validate_Kill_BlacksmithSword | 62580 | LD HL,59568 | Jump to Validate_Kill_BlacksmithBow unless the player named the ring being worn. | |
| 62583 | CALL Parser_AdvanceToSeparator | |||
| 62586 | JR NZ,Validate_Kill_BlacksmithBow | |||
| 62588 | LD A,39 | Jump to Response_HesAlreadyDead when "The body of the blacksmith" is here. | ||
| 62590 | CALL ValidateItemPresent | |||
| 62593 | JP Z,Response_HesAlreadyDead | |||
| 62596 | CALL Kill_CheckSword | Call Kill_CheckSword. | ||
| 62599 | XOR A | Call Kill_ResolveAttack. | ||
| 62600 | CALL Kill_ResolveAttack | |||
|
Fight the Korl warrior.
|
||||
| Kill_BlacksmithBody | 62603 | LD HL,59258 | Call Parser_SkipToken to skip to the object named by this phrase. | |
| 62606 | CALL Parser_SkipToken | |||
| 62609 | LD B,A | Call TransformItem to turn the warrior into the dead blacksmith. | ||
| 62610 | LD C,39 | |||
| 62612 | CALL TransformItem | |||
|
Print "You have killed him.".
|
||||
| 62615 | LD HL,57478 | HL=Messaging_YouHaveKilledHim. | ||
| 62618 | JP PauseAndPrintResponse | Jump to PauseAndPrintResponse. | ||
|
Was the player trying to kill ... the blacksmith with the bow?
|
||||
| Validate_Kill_BlacksmithBow | 62621 | LD HL,59572 | Jump to Validate_Kill_ZarnSword unless the player named the ring being worn. | |
| 62624 | CALL Parser_AdvanceToSeparator | |||
| 62627 | JR NZ,Validate_Kill_ZarnSword | |||
| 62629 | LD A,39 | Jump to Response_HesAlreadyDead when "The body of the blacksmith" is here. | ||
| 62631 | CALL ValidateItemPresent | |||
| 62634 | JP Z,Response_HesAlreadyDead | |||
| 62637 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62640 | XOR A | Call Kill_AnnounceArrow. | ||
| 62641 | CALL Kill_AnnounceArrow | |||
| 62644 | JP Kill_BlacksmithBody | Jump back to Kill_BlacksmithBody to finish off the warrior. | ||
|
Was the player trying to kill ... Zarn with the sword?
|
||||
| Validate_Kill_ZarnSword | 62647 | LD HL,59576 | Jump to Validate_Kill_ZarnBow unless the player named the log bridge. | |
| 62650 | CALL Parser_AdvanceToSeparator | |||
| 62653 | JR NZ,Validate_Kill_ZarnBow | |||
| 62655 | LD A,42 | Jump to Response_HesAlreadyDead if "The Wizard,Zarn. He prepares to cast a spell over you" is not here. | ||
| 62657 | CALL ValidateItemPresent | |||
| 62660 | JP NZ,Response_HesAlreadyDead | |||
| 62663 | CALL Kill_CheckSword | Call Kill_CheckSword. | ||
| 62666 | LD A,5 | Call Kill_ResolveAttack. | ||
| 62668 | CALL Kill_ResolveAttack | |||
| 62671 | LD BC,10795 | Call TransformItem to transform "The Wizard,Zarn. He prepares to cast a spell over you" into "The body of the Wizard". | ||
| 62674 | CALL TransformItem | |||
| 62677 | LD HL,47679 | Arm Princess Mara's arrival, then pause and print "Your blow strikes true." and start a new line. | ||
| 62680 | SET 0,(HL) | |||
| 62682 | LD HL,57156 | |||
| 62685 | CALL PausePrintStringAndScroll | |||
|
Print "The Wizard falls to the floor.
He is dead.
The Princess says:-
"My brave warrior,let us leave.
Lead and I will follow."".
|
||||
| 62688 | LD HL,57499 | HL=Messaging_TheWizardFallsToTheFloor. | ||
| 62691 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... Zarn with the bow?
|
||||
| Validate_Kill_ZarnBow | 62694 | LD HL,59580 | Jump to Validate_Kill_PrincessSword unless the player named the log bridge. | |
| 62697 | CALL Parser_AdvanceToSeparator | |||
| 62700 | JR NZ,Validate_Kill_PrincessSword | |||
| 62702 | LD A,42 | Jump to Response_HesAlreadyDead if "The Wizard,Zarn. He prepares to cast a spell over you" is not here. | ||
| 62704 | CALL ValidateItemPresent | |||
| 62707 | JP NZ,Response_HesAlreadyDead | |||
| 62710 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
|
Print "Arrows have no effect.".
|
||||
| 62713 | LD HL,57455 | HL=Messaging_ArrowsHaveNoEffect. | ||
| 62716 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... Princess Mara with the sword?
|
||||
| Validate_Kill_PrincessSword | 62719 | LD HL,59584 | Jump to Validate_Kill_PrincessBow unless the player named the princess with the sword. | |
| 62722 | CALL Parser_AdvanceToSeparator | |||
| 62725 | JR NZ,Validate_Kill_PrincessBow | |||
| 62727 | LD A,44 | Jump to Response_ShesAlreadyDead if "The Princess,Mara" is not here. | ||
| 62729 | CALL ValidateItemPresent | |||
| 62732 | JP NZ,Response_ShesAlreadyDead | |||
| 62735 | CALL Kill_CheckSword | Call Kill_CheckSword. | ||
| 62738 | XOR A | Call Kill_ResolveAttack. | ||
| 62739 | CALL Kill_ResolveAttack | |||
|
Fight the witch.
|
||||
| Kill_PrincessBody | 62742 | LD BC,11309 | Call TransformItem to transform "The Princess,Mara" into "The body of the Princess". | |
| 62745 | CALL TransformItem | |||
| 62748 | LD HL,47679 | Stop Princess Mara appearing, then pause and print "You have killed her." and return to the game loop. | ||
| 62751 | RES 0,(HL) | |||
| 62753 | LD HL,57332 | |||
| 62756 | JP PauseAndPrintResponse | |||
|
Was the player trying to kill ... Princess Mara with the bow?
|
||||
| Validate_Kill_PrincessBow | 62759 | LD HL,59588 | Jump to Validate_Kill_WarriorSword2 unless the player named the princess with the bow. | |
| 62762 | CALL Parser_AdvanceToSeparator | |||
| 62765 | JR NZ,Validate_Kill_WarriorSword2 | |||
| 62767 | LD A,44 | Jump to Response_ShesAlreadyDead if "The Princess,Mara" is not here. | ||
| 62769 | CALL ValidateItemPresent | |||
| 62772 | JP NZ,Response_ShesAlreadyDead | |||
| 62775 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62778 | XOR A | Call Kill_AnnounceArrow. | ||
| 62779 | CALL Kill_AnnounceArrow | |||
| 62782 | JP Kill_PrincessBody | Jump back to Kill_PrincessBody to finish off the witch. | ||
|
Was the player trying to kill ... the warrior with the sword?
|
||||
| Validate_Kill_WarriorSword2 | 62785 | LD HL,59592 | Jump to Validate_Kill_WarriorBow2 unless the player named the warrior with the sword. | |
| 62788 | CALL Parser_AdvanceToSeparator | |||
| 62791 | JR NZ,Validate_Kill_WarriorBow2 | |||
| 62793 | LD A,140 | Jump to Response_HesAlreadyDead if object 140 is not here. | ||
| 62795 | CALL ValidateItemPresent | |||
| 62798 | JP NZ,Response_HesAlreadyDead | |||
| 62801 | CALL Kill_CheckSword | Call Kill_CheckSword. | ||
| 62804 | LD A,5 | Call Kill_ResolveAttack. | ||
| 62806 | CALL Kill_ResolveAttack | |||
| 62809 | LD HL,57156 | The sword lands, with "Your blow strikes true.". | ||
|
Fight the blacksmith.
|
||||
| Kill_WarriorBody | 62812 | CALL PausePrintStringAndScroll | Call PausePrintStringAndScroll to pause, then print that message and start a new line. | |
| 62815 | LD BC,35892 | Call TransformItem to transform 140 into "A dead warrior". | ||
| 62818 | CALL TransformItem | |||
|
Print "You have killed him.".
|
||||
| 62821 | LD HL,57478 | HL=Messaging_YouHaveKilledHim. | ||
| 62824 | JP PrintResponse | Jump to PrintResponse. | ||
|
Was the player trying to kill ... the warrior with the bow?
|
||||
| Validate_Kill_WarriorBow2 | 62827 | LD HL,59601 | Jump to Validate_Kill_SpiderBow unless the player named the warrior with the bow. | |
| 62830 | CALL Parser_AdvanceToSeparator | |||
| 62833 | JR NZ,Validate_Kill_SpiderBow | |||
| 62835 | LD A,140 | Jump to Response_HesAlreadyDead if object 140 is not here. | ||
| 62837 | CALL ValidateItemPresent | |||
| 62840 | JP NZ,Response_HesAlreadyDead | |||
| 62843 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62846 | LD A,5 | Call Kill_AnnounceArrow. | ||
| 62848 | CALL Kill_AnnounceArrow | |||
| 62851 | LD HL,57102 | Print "Well done! A perfect shot." and strike the blacksmith. | ||
| 62854 | JP Kill_WarriorBody | |||
|
Was the player trying to kill ... the giant spider with the bow?
|
||||
| Validate_Kill_SpiderBow | 62857 | LD HL,59610 | Jump to Kill_YouCant unless the player named the spider with the bow. | |
| 62860 | CALL Parser_AdvanceToSeparator | |||
| 62863 | JR NZ,Kill_YouCant | |||
| 62865 | LD A,65 | Jump to Response_ItsAlreadyDead if "A giant spider. It advances toward you" is not here. | ||
| 62867 | CALL ValidateItemPresent | |||
| 62870 | JP NZ,Response_ItsAlreadyDead | |||
| 62873 | CALL Kill_CheckBowAndArrows | Call Kill_CheckBowAndArrows. | ||
| 62876 | LD A,5 | Call Kill_AnnounceArrow. | ||
| 62878 | CALL Kill_AnnounceArrow | |||
| 62881 | LD BC,16706 | Call TransformItem to transform "A giant spider. It advances toward you" into "The body of a giant spider". | ||
| 62884 | CALL TransformItem | |||
| 62887 | LD HL,57102 | Print "Well done! A perfect shot.". | ||
| 62890 | CALL PausePrintStringAndScroll | |||
|
Print "You have killed it.".
|
||||
| 62893 | LD HL,57312 | HL=Messaging_YouHaveKilledIt. | ||
| 62896 | JP PrintResponse | Jump to PrintResponse. | ||
|
Nothing else is valid.
|
||||
| Kill_YouCant | 62899 | JP Response_YouCant_GameLoop | Jump to Response_YouCant_GameLoop. | |
|
View the equivalent code in;
|
||||
| Prev: 62098 | Up: Map | Next: 62902 |