diff options
-rw-r--r-- | scumm/actor.cpp | 6 | ||||
-rw-r--r-- | scumm/object.cpp | 4 |
2 files changed, 3 insertions, 7 deletions
diff --git a/scumm/actor.cpp b/scumm/actor.cpp index 4d8f08ceb7..7ec823e3dc 100644 --- a/scumm/actor.cpp +++ b/scumm/actor.cpp @@ -859,12 +859,6 @@ void Actor::drawActorCostume() if (!needRedraw) return; - // FIXME: ugly fix for samnmax inventory (otherwise actors get drawn over the - // inventory). We make an exception for room 66 (the Car Bomb game), for otherwise - // that will be drawn incorrectly. Oh well.... - if (_vm->_gameId == GID_SAMNMAX && _vm->getState(995) && _vm->_currentRoom != 66) - return; - needRedraw = false; setupActorScale(); diff --git a/scumm/object.cpp b/scumm/object.cpp index 641793acd3..e05a1e16ba 100644 --- a/scumm/object.cpp +++ b/scumm/object.cpp @@ -375,7 +375,9 @@ void Scumm::drawObject(int obj, int arg) if (numstrip != 0) { byte flags = Gdi::dbAllowMaskOr; - if (_features & GF_AFTER_V7 && getClass(od->obj_nr, 22)) + // Sam & Max needs this to fix object-layering problems with + // the inventory and conversation icons. + if ((_features & GF_AFTER_V7 || _gameId == GID_SAMNMAX) && getClass(od->obj_nr, 22)) flags |= Gdi::dbDrawMaskOnBoth; gdi.drawBitmap(ptr, _curVirtScreen, x, ypos, height, x - xpos, numstrip, flags); } |