![]() |
Routines |
| Prev: C7C4 | Up: Map | Next: C7FE |
|
Used by the routine at HandleNearArch.
Flags the player and the special objects that are close to an arch, and are flagged to be adjusted near arches, as being near an arch.
|
||||||||||||
|
Flag each nearby object as being near an arch.
|
||||||||||||
| FlagObjectsNearArch | C7DB | LD IY,$5C08 | Point IY at the player, ObjectsTable. | |||||||||
| C7DF | LD DE,$0020 | Set DE to the size of an object. | ||||||||||
| C7E2 | LD B,$04 | Set the number of objects to 04, which is the player and the special objects. | ||||||||||
| FlagObjectsNearArch_Next | C7E4 | LD A,(IY+$00) | Fetch the graphic number of the object. | |||||||||
| C7E7 | AND A | Test whether there is an object. | ||||||||||
| C7E8 | JR Z,FlagObjectsNearArch_Advance | Jump to FlagObjectsNearArch_Advance if there is not. | ||||||||||
| C7EA | BIT 3,(IY+$07) | Jump to FlagObjectsNearArch_Advance if the object is not flagged to be adjusted near arches. | ||||||||||
| C7EE | JR Z,FlagObjectsNearArch_Advance | |||||||||||
| C7F0 | CALL TestNearTo | Test whether the object is near the arch. | ||||||||||
| C7F3 | JR NC,FlagObjectsNearArch_Advance | Jump to FlagObjectsNearArch_Advance if it is not. | ||||||||||
| C7F5 | SET 0,(IY+$07) | Flag the object as being near an arch. | ||||||||||
| FlagObjectsNearArch_Advance | C7F9 | ADD IY,DE | Point IY at the next object. | |||||||||
| C7FB | DJNZ FlagObjectsNearArch_Next | Jump to FlagObjectsNearArch_Next until all of the objects have been done. | ||||||||||
| C7FD | RET | Return. | ||||||||||
| Prev: C7C4 | Up: Map | Next: C7FE |