Prev: B5E5 Up: Map Next: B5FD
B5EC: Check Active Scenic Events
Used by the routines at FindActiveScenicEvent and Handler_ChangeRoom.
Check Active Scenic Events.
Input
HL Pointer to scenic data
Output
A The listed item that is here, or FF if there is none
F The zero flag is set when an item on the list is here or carried
CheckActiveScenicEvents B5EC JR CheckActiveScenicEvents_Next Check the first scenic item at CheckActiveScenicEvents_Next.
CheckActiveScenicEvents_Loop B5EE INC HL Advance HL to the next byte.
CheckActiveScenicEvents_Next B5EF LD A,(HL) Read the next scenic item.
B5F0 CP $FF Stop at the end of the scenic list.
B5F2 JR Z,Check_ActiveScenicEvents_Done
B5F4 CALL Get_ObjectLocation Call Get_ObjectLocation to find where the object is.
B5F7 JR NZ,CheckActiveScenicEvents_Loop Try the next entry when this one is not here or carried.
B5F9 LD A,(HL) Return the scenic item that is here.
B5FA RET
Check_ActiveScenicEvents_Done B5FB AND A Clear the zero flag (A holds the FF end marker) to report that nothing on the list is here.
B5FC RET Return.
View the equivalent code in;
Prev: B5E5 Up: Map Next: B5FD