![]() |
Routines |
Prev: 44817 | Up: Map | Next: 44849 |
Used by the routines at Process_PreEnterCauseway, Process_GetCloak, Process_DropTorc, Process_DropHelmet, Process_DropCloak, Process_BuyMeatFromTraderWithIron, Process_GiveRomanToDruid, Process_TakeSwordFromSlab, Process_GiveHelmetToTrader, Process_GiveHelmetToGuardOrDruid, Process_FreeOx, Process_FreeRoman, Process_WearTorc, Process_WearHelmet, Process_WearAmulet, Process_DropAmulet, Process_ThrowUrnIntoFire, Process_WearCloak, Process_CaptureRoman, Process_PlaceSwordOnSlab, Process_KillRomanWithSword, Process_KillFomorian, Process_KillHareWithSword, Process_KillBear, Process_KillPigWithSword and Process_KillOxWithSword.
Rather than use item properties, the game just has separate objects that don't exist until an action is performed.
An example is:
|
||||||||||||||||
TransformItem | 44830 | LD A,B | Call ItemLocator with the source item ID. | |||||||||||||
44831 | CALL ItemLocator | |||||||||||||||
A now contains the location of the source ID.
|
||||||||||||||||
44834 | PUSH BC | Stash the item IDs and source item room ID on the stack. | ||||||||||||||
44835 | PUSH AF | |||||||||||||||
44836 | LD C,0 | Call Handler_UpdateItemLocation and disable the source item. | ||||||||||||||
44838 | CALL Handler_UpdateItemLocation | |||||||||||||||
44841 | POP AF | Restore the source item room ID and item IDs from the stack. | ||||||||||||||
44842 | POP BC | |||||||||||||||
Activate the destination item in the same room.
|
||||||||||||||||
44843 | LD B,C | Load the destination item ID into B. | ||||||||||||||
44844 | LD C,A | Load the source room ID into C. | ||||||||||||||
44845 | CALL Handler_UpdateItemLocation | Call Handler_UpdateItemLocation. | ||||||||||||||
44848 | RET | Return. | ||||||||||||||
View the equivalent code in The Jewels Of Babylon.
|
Prev: 44817 | Up: Map | Next: 44849 |