![]() |
Routines |
| Prev: 57060 | Up: Map | Next: 57290 |
|
Used by the routines at CombineCharacterRoom, SetHeldMark_OtherObject and LookupAndPrintDisplayText.
Prints the description text for an object specified by the room display parameter. If the object has custom description text, that is printed; otherwise a default description is used. Additional object information is then printed followed by a period.
|
||||
| PrintObjectDescriptionText | 57179 | LD A,(41012) | Read the room display parameter and call FetchObjectDataPointer to look up the object. | |
| 57182 | CALL FetchObjectDataPointer | |||
| 57185 | SET 6,(IX+6) | Set bit 6 of the object's byte at offset 6. | ||
| 57189 | LD L,(IX+13) | Load the object's description text pointer from offsets 13/14. | ||
| 57192 | LD H,(IX+14) | |||
| 57195 | LD A,H | Jump to PrintTextAndHandleControlCharacters if the description pointer is not zero. | ||
| 57196 | OR L | |||
| 57197 | JP NZ,PrintTextAndHandleControlCharacters | |||
| 57200 | LD HL,26849 | Take the default object message, then call PrintTextAndHandleControlCharacters to print the default object message. | ||
| 57203 | CALL PrintTextAndHandleControlCharacters | |||
| 57206 | CALL TakeTheFoundObject | Call TakeTheFoundObject, take a full stop and print it through Print_Character. | ||
| 57209 | LD A,46 | |||
| 57211 | JP Print_Character | |||
| 57214 | DEFB 136,0 | Display record read by ProcessDisplayRecord: flags 136 value 0. | ||
| 57216 | DEFB 7,193,220,253,255 | Refresh the room from the text at 56513, using the low byte of the location, 255. | ||
| 57221 | DEFB 7,139,223,253,255 | Refresh the room from the text at 57227, using the low byte of the location, 255. | ||
| 57226 | DEFB 11 | Run the nested character script. | ||
| 57227 | DEFB 8,0 | Display record read by ProcessDisplayRecord: flags 8 value 0. | ||
|
Run by 51812 after the display record at 57227.
|
||||
| 57229 | LD A,(40097) | Jump to SpecialCaseObject_LooksBasilPhipps_1 if Basil Phipps's state is clear. | ||
| 57232 | AND A | |||
| 57233 | JR Z,SpecialCaseObject_LooksBasilPhipps_1 | |||
| 57235 | LD A,255 | Mark Basil Phipps's state as finished. | ||
| 57237 | LD (40097),A | |||
| 57240 | LD IX,(40979) | Read the current object. | ||
| 57244 | LD HL,2005 | Store the low byte of the text pointer. | ||
| 57247 | LD (IX+9),L | |||
| 57250 | LD (IX+10),H | Store the high byte of the text pointer. | ||
| 57253 | JR SpecialCaseObject_LooksBasilPhipps_1 | Jump ahead to SpecialCaseObject_LooksBasilPhipps_1 to return non-zero. | ||
| 57255 | DEFB 200,0,28,224 | Display record read by ProcessDisplayRecord: flags 200 value 0 handler 57372. | ||
| 57259 | DEFB 7,182,223,253,255 | Refresh the room from the text at 57270, using the low byte of the location, 255. | ||
| 57264 | DEFB 7,157,222,253,255 | Refresh the room from the text at 56989, using the low byte of the location, 255. | ||
| 57269 | DEFB 11 | Run the nested character script. | ||
| 57270 | DEFB 7,240 | Display record read by ProcessDisplayRecord: flags 7 value 240. | ||
| 57272 | LD A,(41012) | Jump to SpecialCaseObject_LooksBasilPhipps_1 if the room display parameter is not 89. | ||
| 57275 | CP 89 | |||
| 57277 | JP NZ,SpecialCaseObject_LooksBasilPhipps_1 | |||
| 57280 | LD A,(40929) | Jump to SpecialCaseObject_LooksBasilPhipps_1 if the day of the week is not zero. | ||
| 57283 | CP 0 | |||
| 57285 | JP NZ,SpecialCaseObject_LooksBasilPhipps_1 | |||
| 57288 | JR SpecialCaseObject_LooksBasilPhipps | Jump to SpecialCaseObject_LooksBasilPhipps, the special case object 6. | ||
| Prev: 57060 | Up: Map | Next: 57290 |