Prev: 62969 Up: Map Next: 63424
63008: Routine at F620
63008 LD HL,43045 HL=UserInput_Token_2.
63011 LD BC,9 BC=0009.
63014 LD A,60 A=60.
63016 CPIR CPIR.
63018 RET Return.
63019 LD HL,58258 HL=Data_ItemGroup_Sword.
63022 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
63025 CALL CheckObjectInInventory Call CheckObjectInInventory.
63028 RET Z Return if A is equal to 60.
63029 POP HL Restore HL from the stack.
63030 CALL 63008 Call 63008.
63033 LD A,E A=E.
63034 CALL Z,IsPlayerCarryingItem Call IsPlayerCarryingItem if ?? is equal to 60.
63037 LD HL,56549 HL=Messaging_DontHaveAWeopon.
63040 JP 60781 Jump to 60781.
63043 LD HL,58177 HL=Data_ItemGroup_Roman.
63046 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
63049 CP 12 Jump to Response_YouveDoneThatAlready if A is equal to 12.
63051 JP Z,Response_YouveDoneThatAlready
63054 CP 85 Jump to Response_YouveDoneThatAlready if A is equal to 85.
63056 JP Z,Response_YouveDoneThatAlready
63059 LD (42867),A Write A to *42867.
63062 CALL 63019 Call 63019.
63065 LD A,(42867) Jump to 63099 if *42867 is greater than or equal to 4.
63068 CP 4
63070 JR NC,63099
63072 LD A,2 A=2.
63074 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
63077 LD A,3 A=3.
63079 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
63082 LD A,8 A=8.
63084 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
63087 LD BC,1802 Call TransformItem to transform item 7 ( N/A) into item 10 ("The Roman,camped").
63090 CALL TransformItem
63093 LD HL,56574 HL=Messaging_RomanIsUnnerved.
63096 JP 60781 Jump to 60781.
63099 CP 10 Jump to 63115 if A is not equal to 10.
63101 JR NZ,63115
63103 LD BC,2572 Call TransformItem to transform item 10 ("The Roman,camped") into item 12 ("The body of the Roman").
63106 CALL TransformItem
63109 LD HL,56650 HL=Messaging_BlowStrikesTrue.
63112 JP 60781 Jump to 60781.
63115 LD BC,2901 Call TransformItem to transform item 11 ("The captured Roman") into item 85 ("The body of the Roman").
63118 CALL TransformItem
63121 LD HL,42887 HL=42887.
63124 RES 0,(HL) Reset bit 0 of *HL.
63126 CALL 63109 Call 63109.
63129 LD HL,56686 HL=Messaging_VeryCowardly.
63132 JP 60781 Jump to 60781.
63135 LD HL,58184 HL=Data_ItemGroup_Fomorian.
63138 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
63141 LD HL,64650 HL=64650.
63144 LD BC,3 BC=0003.
63147 CPIR CPIR.
63149 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 10.
63152 LD (42867),A Write A to *42867.
63155 CALL 63019 Call 63019.
63158 LD A,(42867) Jump to 63175 if *42867 is not equal to 15.
63161 CP 15
63163 JR NZ,63175
63165 LD HL,59826 HL=GameOver.
63168 EX (SP),HL Exchange the *SP with the HL register.
63169 LD HL,56710 HL=Messaging_AttackInVain.
63172 JP 60781 Jump to 60781.
63175 LD A,57 A=57.
63177 CALL ValidateItemPresent Call ValidateItemPresent.
63180 JR Z,63188 Jump to 63188 if A is equal to 57.
63182 LD HL,56757 HL=Messaging_FomorianUnaffected.
63185 JP 60781 Jump to 60781.
63188 LD A,(42867) A=*42867.
63191 LD B,A B=A.
63192 ADD A,9 A+=9.
63194 LD C,A C=A.
63195 CALL TransformItem Call TransformItem.
63198 JP 63109 Jump to 63109.
63201 LD A,38 A=38.
63203 CALL ValidateItemPresent Call ValidateItemPresent.
63206 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 38.
63209 CALL 63008 Call 63008.
63212 JR NZ,63223 Jump to 63223 if A is not equal to 38.
63214 LD HL,58258 HL=Data_ItemGroup_Sword.
63217 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
63220 CALL IsPlayerCarryingItem Call IsPlayerCarryingItem.
63223 LD BC,4902 Call TransformItem to transform item 19 ("A hare,caught by the leg,in a trap") into item 38 ("A dead hare,caught in a trap").
63226 CALL TransformItem
63229 LD HL,56799 HL=Messaging_NoLongerSuffers.
63232 JP 60781 Jump to 60781.
63235 LD (42866),HL Write HL to *42866.
63238 CALL 63019 Call 63019.
63241 LD HL,59826 HL=GameOver.
63244 EX (SP),HL Exchange the *SP with the HL register.
63245 LD HL,(42866) HL=*42866.
63248 JP 60781 Jump to 60781.
63251 CALL 63019 Call 63019.
63254 CALL 63109 Call 63109.
63257 LD HL,56826 HL=Messaging_MobbedByAngryVillagers.
63260 JP 63235 Jump to 63235.
63263 LD HL,58231 HL=Data_ItemGroup_Warrior.
63266 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
63269 CP 39 Jump to 63135 if A is not equal to 39.
63271 JP NZ,63135
63274 LD HL,56549 HL=Messaging_DontHaveAWeopon.
63277 JP 60781 Jump to 60781.
63280 CALL 63019 Call 63019.
63283 LD HL,56881 HL=Messaging_YouCantTooManyOfThem.
63286 JP 60781 Jump to 60781.
63289 LD A,69 A=69.
63291 CALL ValidateItemPresent Call ValidateItemPresent.
63294 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 69.
63297 CALL 63019 Call 63019.
63300 LD A,86 A=86.
63302 CALL CheckObjectInInventory Call CheckObjectInInventory.
63305 LD HL,56919 HL=Messaging_AttackBoldly.
63308 JP NZ,63235 Jump to 63235 if A is not equal to 86.
63311 LD BC,17477 Call TransformItem to transform item 68 ("A bear") into item 69 ("A dead bear").
63314 CALL TransformItem
63317 LD A,44 Write 44 to *59469.
63319 LD (59469),A
63322 LD A,53 Write 53 to *59470.
63324 LD (59470),A
63327 LD A,4 Call AddToScore to add 4 points to the score.
63329 CALL AddToScore
63332 LD HL,56990 HL=Messaging_YourBlowStrikesTrue.
63335 JP 60781 Jump to 60781.
63338 CALL 63019 Call 63019.
63341 CALL 63109 Call 63109.
63344 LD HL,57026 HL=Messaging_GuardOnTheRampartAbove.
63347 JP 63235 Jump to 63235.
63350 CALL 63019 Call 63019.
63353 LD HL,57072 HL=Messaging_DruidAvoidsBlow.
63356 JP 63235 Jump to 63235.
63359 LD A,80 A=80.
63361 CALL ValidateItemPresent Call ValidateItemPresent.
63364 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 80.
63367 CALL 63019 Call 63019.
63370 LD BC,20304 Call TransformItem to transform item 79 ("A pig") into item 80 ("A dead pig").
63373 CALL TransformItem
63376 JP 63332 Jump to 63332.
63379 LD A,82 A=82.
63381 CALL ValidateItemPresent Call ValidateItemPresent.
63384 JP NZ,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is not equal to 82.
63387 CALL 63019 Call 63019.
63390 LD BC,21075 Call TransformItem to transform item 82 ("A wild ox,tethered to the pen by a length of rope") into item 83 ("A dead ox,tethered by a piece of rope").
63393 CALL TransformItem
63396 LD A,4 Call AddToScore to add 4 points to the score.
63398 CALL AddToScore
63401 JP 63332 Jump to 63332.
This entry point is used by the routines at 62207 and 62237.
63404 LD A,25 A=25.
63406 CALL CheckObjectInInventory Call CheckObjectInInventory.
63409 RET NZ Return if A is not equal to 25.
63410 LD A,E A=E.
63411 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
63414 LD HL,42896 Decrease *Count_InventoryItems by one.
63417 DEC (HL)
63418 LD HL,57440 HL=Messaging_SaltHasDissolved.
63421 JP 60781 Jump to 60781.
Prev: 62969 Up: Map Next: 63424