Prev: 40098 Up: Map Next: 40169
40142: Check Object In Character Location
Sets the zero flag when the object in C is in the current character's location. A non-zero return means it is not.
Input
C Object ID to check
Output
F Zero flag set if object is in character's location
CheckObjectInCharacterLocation 40142 LD IX,(40983) Read the current character record.
40146 LD B,(IX+15)
40149 LD A,C Call FetchObjectDataPointer to look up that object.
40150 CALL FetchObjectDataPointer
40153 LD A,(IX+15) Read offset 15 of the object.
40156 CP B See whether the two values match.
40157 RET NZ Return if they differ.
40158 LD A,C Go to CheckObjectInCharacterLocation_Next if the object is not in this location.
40159 CALL CheckObjectLocationMatch
40162 JR Z,CheckObjectInCharacterLocation_Next
40164 XOR A Clear A.
40165 RET Return.
CheckObjectInCharacterLocation_Next 40166 OR %00000001 Reset the zero flag.
40168 RET Return.
Prev: 40098 Up: Map Next: 40169