Prev: 62766 Up: Map Next: 62955
62788: Routine at F544
62788 LD HL,58177 HL=Data_ItemGroup_Roman.
62791 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
62794 CP 11 Jump to Response_YouveDoneThatAlready if A is equal to 11.
62796 JP Z,Response_YouveDoneThatAlready
62799 CP 10 Jump to Response_YouCant_Duplicate if A is not equal to 10.
62801 JP NZ,Response_YouCant_Duplicate
62804 LD A,81 A=81.
62806 CALL ValidateItemPresent Call ValidateItemPresent.
62809 JP NZ,Response_YouveNothingToTieHimWith Jump to Response_YouveNothingToTieHimWith if A is not equal to 81.
62812 LD BC,2571 Call TransformItem to transform item 10 ("The Roman,camped") into item 11 ("The captured Roman").
62815 CALL TransformItem
62818 LD A,4 Call AddToScore to add 4 points to the score.
62820 CALL AddToScore
62823 LD A,81 A=81.
62825 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
62828 LD HL,42896 HL=Count_InventoryItems.
62831 DEC (HL) Decrease *HL by one.
62832 LD HL,42887 HL=42887.
62835 SET 0,(HL) Set bit 0 of *HL.
62837 LD HL,56408 HL=Messaging_CaptureTheUnsuspectingRoman.
62840 JP 60781 Jump to 60781.
62843 LD HL,58309 HL=Data_ItemGroup_Ladder.
62846 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
62849 CP 94 Compare A with 94.
62851 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 94.
62854 CP 92 Compare A with 92.
62856 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 92.
62859 CALL IsPlayerCarryingItem Call IsPlayerCarryingItem.
62862 LD A,90 A=90.
62864 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
62867 LD A,94 A=94.
62869 CALL Handler_UpdateItemEventCurrentRoom Call Handler_UpdateItemEventCurrentRoom.
62872 LD HL,42896 HL=Count_InventoryItems.
62875 DEC (HL) Decrease *HL by one.
62876 LD A,96 Write 96 to *59754.
62878 LD (59754),A
62881 LD A,99 Write 99 to *59737.
62883 LD (59737),A
62886 LD HL,42860 HL=42860.
62889 BIT 6,(HL) Test bit 6 of *HL.
62891 JP NZ,Response_OK_Duplicate Jump to Response_OK_Duplicate if *HL is not equal to 99.
62894 SET 6,(HL) Set bit 6 of *HL.
62896 LD A,4 Call AddToScore to add 4 points to the score.
62898 CALL AddToScore
62901 JP Response_OK_Duplicate Jump to Response_OK_Duplicate.
62904 LD HL,58258 HL=Data_ItemGroup_Sword.
62907 CALL CheckItemGroupPresent Call CheckItemGroupPresent.
62910 CP 89 Compare A with 89.
62912 JP Z,Response_YouveDoneThatAlready Jump to Response_YouveDoneThatAlready if A is equal to 89.
62915 CP 57 Compare A with 57.
62917 JP Z,Response_IDontSeeThePoint Jump to Response_IDontSeeThePoint if A is equal to 57.
62920 CALL IsPlayerCarryingItem Call IsPlayerCarryingItem.
62923 LD A,E A=E.
62924 CALL Handler_DestroyItemEvent Call Handler_DestroyItemEvent.
62927 LD BC,22617 Call TransformItem to transform item 88 ("A stone slab") into item 89 ("A shimmering stone slab with a sword laying upon it").
62930 CALL TransformItem
62933 LD HL,42896 HL=Count_InventoryItems.
62936 DEC (HL) Decrease *HL by one.
62937 LD HL,42861 HL=42861.
62940 BIT 4,(HL) Test bit 4 of *HL.
62942 JP NZ,Response_OK_Duplicate Jump to Response_OK_Duplicate if *HL is not equal to 57.
62945 SET 4,(HL) Set bit 4 of *HL.
62947 LD A,4 Call AddToScore to add 4 points to the score.
62949 CALL AddToScore
62952 JP Response_OK_Duplicate Jump to Response_OK_Duplicate.
Prev: 62766 Up: Map Next: 62955