diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/lure/luredefs.h | 5 | ||||
-rw-r--r-- | engines/lure/room.cpp | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/engines/lure/luredefs.h b/engines/lure/luredefs.h index 2d6d56228b..ae9ce636c6 100644 --- a/engines/lure/luredefs.h +++ b/engines/lure/luredefs.h @@ -253,6 +253,11 @@ enum Action { // Pixel record flags #define PIXELFLAG_HAS_TABLE 4 +// Hotspot flags +#define HOTSPOTFLAG_HIGHLIGHTED 0x80 +#define HOTSPOTFLAG_SKIP 0x40 +#define HOTSPOTFLAG_20 0x20 + // Constants used to reference entries in the reworked support data entry lists #define RETURN_SUPPORT_ID 0x400 #define EXIT_BLOCKED_SUPPORT_ID 0x800 diff --git a/engines/lure/room.cpp b/engines/lure/room.cpp index 77a1ff7d71..224cbd8f79 100644 --- a/engines/lure/room.cpp +++ b/engines/lure/room.cpp @@ -166,9 +166,9 @@ void Room::checkRoomHotspots() { bool skipFlag = (entry->roomNumber != _roomNumber); if (!skipFlag) { - skipFlag = (((entry->flags & 0x80) == 0) && - ((entry->flags & 0x40) != 0)) || - ((entry->flags & 0x20) != 0); + skipFlag = (((entry->flags & HOTSPOTFLAG_HIGHLIGHTED) == 0) && + ((entry->flags & HOTSPOTFLAG_SKIP) != 0)) || + ((entry->flags & HOTSPOTFLAG_20) != 0); } if ((!skipFlag) && (entry->hotspotId < 0x409)) @@ -218,6 +218,7 @@ void Room::checkRoomHotspots() { _hotspot = entry; _hotspotId = entry->hotspotId; _isExit = false; + entry->flags |= HOTSPOTFLAG_HIGHLIGHTED; } } |