![]()  | 
Routines | 
| Prev: 62766 | Up: Map | Next: 62843 | 
| 
 | 
||||
| 
 
The player is trying to capture the Roman, check which version of the Roman is in the current room.
 
 | 
||||
| Process_CaptureRoman | 62788 | LD HL,58177 | Call CheckItemGroupPresent with Data_ItemGroup_Roman. | |
| 62791 | CALL CheckItemGroupPresent | |||
| 
 
The player wants to capture the Roman but is he already captured?
 
Print "You've done that already." if the Roman is already captured.
 
 | 
||||
| 62794 | CP 11 | Jump to Response_YouveDoneThatAlready if item 11: "The captured Roman" is in the current room. | ||
| 62796 | JP Z,Response_YouveDoneThatAlready | |||
| 
 
The player wants to capture the Roman but is he even here?
 
Print "You can't." if the Roman isn't present in the room.
 
 | 
||||
| 62799 | CP 10 | Jump to Response_YouCant_Duplicate if item 10: "The Roman,camped" isn't in the current room. | ||
| 62801 | JP NZ,Response_YouCant_Duplicate | |||
| 
 
Can the player even capture the Roman? Do they have the rope?
 
 | 
||||
| 62804 | LD A,81 | Call ValidateItemPresent with item 81: "A piece of rope". | ||
| 62806 | CALL ValidateItemPresent | |||
| 62809 | JP NZ,Response_YouveNothingToTieHimWith | Jump to Response_YouveNothingToTieHimWith if item 81: "A piece of rope" isn't present in the current room or the players inventory. | ||
| 
 
The Roman is here, and the player has the rope! Let's capture a Roman:
 
Change the Roman state!
 
 | 
||||
| 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 | |||
| 
 
The rope as a separate item is no longer needed.
 
 | 
||||
| 62823 | LD A,81 | Call Handler_DestroyItemEvent with item 81: "A piece of rope". | ||
| 62825 | CALL Handler_DestroyItemEvent | |||
| 
 
The rope has been used so handle the inventory count.
 
 | 
||||
| 62828 | LD HL,42896 | Decrease *Count_InventoryItems by one. | ||
| 62831 | DEC (HL) | |||
| 
 
Flag to the game that this has occurred.
 
 | 
||||
| 62832 | LD HL,42887 | Set bit 0 of *Flag_EventStates which relates to the roman being captured. | ||
| 62835 | SET 0,(HL) | |||
| 
 
Print "You capture the unsuspecting
Roman,securing his hands with
the rope.".
 
 | 
||||
| 62837 | LD HL,56408 | HL=Messaging_CaptureTheUnsuspectingRoman. | ||
| 62840 | JP PrintStringAndNewline_Duplicate | Jump to PrintStringAndNewline_Duplicate. | ||
| Prev: 62766 | Up: Map | Next: 62843 |