From 988d5a20511adc5aa5551ea599e0ee56d2699dd5 Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Sat, 20 Feb 2016 14:26:20 +0200 Subject: SCI: Add a better explanation of the visibility code used in GK1 --- engines/sci/graphics/screen_item32.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'engines') diff --git a/engines/sci/graphics/screen_item32.cpp b/engines/sci/graphics/screen_item32.cpp index 98d65406a6..58e0a1348a 100644 --- a/engines/sci/graphics/screen_item32.cpp +++ b/engines/sci/graphics/screen_item32.cpp @@ -202,8 +202,11 @@ void ScreenItem::setFromObject(SegManager *segMan, const reg_t object, const boo writeSelectorValue(segMan, object, SELECTOR(priority), _position.y); } - // Check if the entry should be hidden - // TODO: Verify this against disassembly! + // Check if the entry should be hidden (used in GK1, for the inventory items) + // TODO/FIXME: Verify this against disassembly! Check if GK1 checks this selector + // like we do here. The following bit of code is guesswork, but for now it fixes + // the inventory in GK1, and it's really only used in that game (the "visible" + // selector isn't present in any other SCI32 game) if (lookupSelector(segMan, object, SELECTOR(visible), NULL, NULL) != kSelectorNone) { if (readSelectorValue(segMan, object, SELECTOR(visible)) == 0) { _fixPriority = true; -- cgit v1.2.3