diff options
author | Paul Gilbert | 2017-10-10 19:26:47 -0400 |
---|---|---|
committer | Paul Gilbert | 2017-10-10 19:26:47 -0400 |
commit | 567556a5c111953e09490f3f3257b6449c398117 (patch) | |
tree | 4c78b7c7534267755bc118b878422ad649c25491 /engines/titanic/game/sgt | |
parent | 3fd2cf29b14f92015052fc85aee9299de57360e7 (diff) | |
download | scummvm-rg350-567556a5c111953e09490f3f3257b6449c398117.tar.gz scummvm-rg350-567556a5c111953e09490f3f3257b6449c398117.tar.bz2 scummvm-rg350-567556a5c111953e09490f3f3257b6449c398117.zip |
TITANIC: Show SGT furniture in stateroom even after upgrading
Diffstat (limited to 'engines/titanic/game/sgt')
-rw-r--r-- | engines/titanic/game/sgt/sgt_state_room.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/engines/titanic/game/sgt/sgt_state_room.cpp b/engines/titanic/game/sgt/sgt_state_room.cpp index ca6acaef16..b4927e6828 100644 --- a/engines/titanic/game/sgt/sgt_state_room.cpp +++ b/engines/titanic/game/sgt/sgt_state_room.cpp @@ -125,10 +125,10 @@ bool CSGTStateRoom::VisibleMsg(CVisibleMsg *msg) { bool CSGTStateRoom::EnterRoomMsg(CEnterRoomMsg *msg) { CPetControl *pet = getPetControl(); - uint roomFlags = pet->getRoomFlags(); - uint assignedRoom = pet->getAssignedRoomFlags(); - if (roomFlags == assignedRoom) { + // WORKAROUND: Correctly show SGT furniture states in assigned stateroom + // even when the user has already upgraded to 2nd or 1st class + if (pet->isInAssignedRoom()) { loadFrame(_savedFrame); _isClosed = _savedIsClosed; setVisible(_savedVisible); @@ -139,7 +139,7 @@ bool CSGTStateRoom::EnterRoomMsg(CEnterRoomMsg *msg) { if (isEquals("Drawer")) { petSetArea(PET_REMOTE); - if (roomFlags == assignedRoom && getPassengerClass() == 3 + if (pet->isInAssignedRoom() && getPassengerClass() == 3 && _statics->_announcementFlag) { // Congratulations, you may have won an upgrade playSound(TRANSLATE("b#21.wav", "b#2.wav")); @@ -149,7 +149,7 @@ bool CSGTStateRoom::EnterRoomMsg(CEnterRoomMsg *msg) { _statics->_drawer = "Closed"; setVisible(false); _isClosed = true; - } else if (roomFlags != assignedRoom) { + } else if (!pet->isInAssignedRoom()) { loadFrame(0); if (_displayFlag) { setVisible(true); |