![]()  | 
Routines | 
| Prev: F259 | Up: Map | Next: F293 | 
| 
 
Used by the routine at Process_FreeRope.
 
 | 
||||
| 
 
The player wants to free the ox, check which version of the ox is in the current room.
 
 | 
||||
| Process_FreeOx | F26C | LD HL,$E3B6 | Call CheckItemGroupPresent with Data_ItemGroup_Ox. | |
| F26F | CALL CheckItemGroupPresent | |||
| F272 | CP $54 | Jump to Response_ItIsntTied if the item present is "A dead ox". | ||
| F274 | JP Z,Response_ItIsntTied | |||
| F277 | CP $52 | Jump to FreeDeadOx if the item present is not "A wild ox,tethered to the pen by a length of rope". | ||
| F279 | JR NZ,FreeDeadOx | |||
| 
 
Bad luck!
 
 | 
||||
| F27B | LD HL,$E9B2 | Switch GameOver onto the stack so the next return actions a "game over". | ||
| F27E | EX (SP),HL | |||
| 
 
Print "Now free,the ox becomes enraged
and impales you on its horns.".
 
Print "O.K.".
 
 | 
||||
| F27F | LD HL,$D778 | HL=Messaging_OxBecomesEnraged. | ||
| F282 | JP PrintStringAndNewline_Duplicate | Jump to PrintStringAndNewline_Duplicate. | ||
| 
 
Change the dead ox state!
 
 | 
||||
| FreeDeadOx | F285 | LD BC,$5354 | Call TransformItem to transform item 53 ("A dead ox,tethered by a piece of rope") into item 54 ("A dead ox"). | |
| F288 | CALL TransformItem | |||
| F28B | LD A,$51 | Call Handler_UpdateItemEventCurrentRoom with item 51: "A piece of rope". | ||
| F28D | CALL Handler_UpdateItemEventCurrentRoom | |||
| F290 | JP Response_OK_Duplicate | Jump to Response_OK_Duplicate. | ||
| Prev: F259 | Up: Map | Next: F293 |