aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/moves/enter_exit_first_class_state.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2016-12-16 21:27:43 -0500
committerPaul Gilbert2016-12-16 21:27:43 -0500
commit13932b68a51ef2b8326e9980b428ee5382e6cf0f (patch)
tree2077cfe429a9cf66a198e2114216e9ea9738978b /engines/titanic/moves/enter_exit_first_class_state.cpp
parente21b38df666621ee057b6ba25f9756408693ccdc (diff)
downloadscummvm-rg350-13932b68a51ef2b8326e9980b428ee5382e6cf0f.tar.gz
scummvm-rg350-13932b68a51ef2b8326e9980b428ee5382e6cf0f.tar.bz2
scummvm-rg350-13932b68a51ef2b8326e9980b428ee5382e6cf0f.zip
TITANIC: Fix entering & exiting first class suites
Diffstat (limited to 'engines/titanic/moves/enter_exit_first_class_state.cpp')
-rw-r--r--engines/titanic/moves/enter_exit_first_class_state.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/engines/titanic/moves/enter_exit_first_class_state.cpp b/engines/titanic/moves/enter_exit_first_class_state.cpp
index efdead533a..4b58c1b86d 100644
--- a/engines/titanic/moves/enter_exit_first_class_state.cpp
+++ b/engines/titanic/moves/enter_exit_first_class_state.cpp
@@ -21,6 +21,7 @@
*/
#include "titanic/moves/enter_exit_first_class_state.h"
+#include "titanic/titanic.h"
namespace Titanic {
@@ -30,13 +31,13 @@ END_MESSAGE_MAP()
void CEnterExitFirstClassState::save(SimpleFile *file, int indent) {
file->writeNumberLine(1, indent);
- file->writeQuotedLine(_viewName, indent);
+ file->writeQuotedLine(g_vm->_stateRoomExitView, indent);
CGameObject::save(file, indent);
}
void CEnterExitFirstClassState::load(SimpleFile *file) {
file->readNumber();
- _viewName = file->readString();
+ g_vm->_stateRoomExitView = file->readString();
CGameObject::load(file);
}
@@ -44,10 +45,12 @@ bool CEnterExitFirstClassState::MouseButtonDownMsg(CMouseButtonDownMsg *msg) {
switch (getPassengerClass()) {
case 1:
if (compareRoomNameTo("1stClassLobby")) {
- _viewName = getRoomNodeName() + ".E";
- changeView(_viewName);
+ // Entering room, so save where you were and change to stateroom
+ g_vm->_stateRoomExitView = getRoomNodeName() + ".E";
+ changeView("1stClassState.Node 1.S");
} else if (compareRoomNameTo("1stClassState")) {
- changeView(_viewName);
+ // Return to where you entered room from
+ changeView(g_vm->_stateRoomExitView);
}
break;