diff --git a/engines/trecision/trecision.cpp b/engines/trecision/trecision.cpp index 869e0b496b7..ebd7f32b77c 100644 --- a/engines/trecision/trecision.cpp +++ b/engines/trecision/trecision.cpp @@ -339,6 +339,15 @@ void TrecisionEngine::setObjectVisible(uint16 objectId, bool visible) { } void TrecisionEngine::refreshObject(uint16 objectId) { + for (int i = 0; i < MAXOBJINROOM; ++i) { + if (!_room[_curRoom]._object[i]) + return; // reached the end of the list, object not found + + if (objectId == _room[_curRoom]._object[i]) { + break; // object found in room objects, continue + } + } + if (_obj[objectId].isModeMask() || _obj[objectId].isModeFull()) { SSortTable entry; entry._objectId = objectId;