![]() |
Routines |
| Prev: 6A11 | Up: Map | Next: 6A2F |
|
Writes a new location for the object. A value of 1 for an object numbered 46 or higher is stored as zero. If the new location is the current room, the room is marked changed.
|
||||
| SetObjectLocation | 6A16 | CALL ObjectAddress | Point at the object's location. C is the new one. | |
| 6A19 | LD C,A | |||
| 6A1A | LD A,B | An index below 46 is stored as given. | ||
| 6A1B | CP $46 | |||
| 6A1D | JR C,SetObject_Write | |||
| 6A1F | LD A,C | Location 1 on an object numbered 46 or above is stored as 0. | ||
| 6A20 | CP $01 | |||
| 6A22 | JR Z,SetObject_Write | |||
| 6A24 | LD C,$00 | |||
| SetObject_Write | 6A26 | LD (HL),C | Write the location. | |
|
This entry point is used by the routine at CopyObjectLocation.
|
||||
| SetObject_Here | 6A27 | LD HL,$5D87 | The current room means the picture and the description change. | |
| 6A2A | CP (HL) | |||
| 6A2B | JP Z,RoomHasChanged | |||
| 6A2E | RET | Return. | ||
| Prev: 6A11 | Up: Map | Next: 6A2F |