From 80fd81f275b50bc9ba39d48352052278ce60a53c Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Wed, 14 Sep 2005 09:37:17 +0000 Subject: Selection screen in C64 maniac works. svn-id: r18819 --- scumm/object.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/scumm/object.cpp b/scumm/object.cpp index 9c6cadfd7b..949541414e 100644 --- a/scumm/object.cpp +++ b/scumm/object.cpp @@ -333,8 +333,15 @@ int ScummEngine::findObject(int x, int y) { for (i = 1; i < _numLocalObjects; i++) { if ((_objs[i].obj_nr < 1) || getClass(_objs[i].obj_nr, kObjectClassUntouchable)) continue; - if ((_version <= 2) && _objs[i].state & 0x2) - continue; + + if (_platform == Common::kPlatformC64 && _gameId == GID_MANIAC) { + if (_objs[i].flags == 0 && _objs[i].state & 0x2) + continue; + } else { + if (_version <= 2 && _objs[i].state & 0x2) + continue; + } + b = i; do { a = _objs[b].parentstate; @@ -698,6 +705,7 @@ void ScummEngine_c64::setupRoomObject(ObjectData *od, const byte *room, const by ptr -= 2; od->obj_nr = *(ptr + 6); + od->flags = *(ptr + 7); od->x_pos = *(ptr + 8) * 8; od->y_pos = ((*(ptr + 9)) & 0x7F) * 8; -- cgit v1.2.3