diff options
author | Paul Gilbert | 2016-08-20 15:11:07 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-08-20 15:11:07 -0400 |
commit | 04242118ca7bca31aa9659ffceaf80702bc90fb8 (patch) | |
tree | 05b9afd600f97f1d20c2774121512bd4e8f990a4 /engines/titanic/moves/enter_exit_first_class_state.cpp | |
parent | 1dc8ae58e40c08e1e50cfe8c892b3dac27abdafd (diff) | |
download | scummvm-rg350-04242118ca7bca31aa9659ffceaf80702bc90fb8.tar.gz scummvm-rg350-04242118ca7bca31aa9659ffceaf80702bc90fb8.tar.bz2 scummvm-rg350-04242118ca7bca31aa9659ffceaf80702bc90fb8.zip |
TITANIC: Implemented more game classes
Diffstat (limited to 'engines/titanic/moves/enter_exit_first_class_state.cpp')
-rw-r--r-- | engines/titanic/moves/enter_exit_first_class_state.cpp | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/engines/titanic/moves/enter_exit_first_class_state.cpp b/engines/titanic/moves/enter_exit_first_class_state.cpp index 0e2c6c0b6c..34e9984aa7 100644 --- a/engines/titanic/moves/enter_exit_first_class_state.cpp +++ b/engines/titanic/moves/enter_exit_first_class_state.cpp @@ -24,26 +24,44 @@ namespace Titanic { -CString *CEnterExitFirstClassState::_v1; - -void CEnterExitFirstClassState::init() { - _v1 = new CString(); -} - -void CEnterExitFirstClassState::deinit() { - delete _v1; -} +BEGIN_MESSAGE_MAP(CEnterExitFirstClassState, CGameObject) + ON_MESSAGE(MouseButtonDownMsg) +END_MESSAGE_MAP() void CEnterExitFirstClassState::save(SimpleFile *file, int indent) { file->writeNumberLine(1, indent); - file->writeQuotedLine(*_v1, indent); + file->writeQuotedLine(_viewName, indent); CGameObject::save(file, indent); } void CEnterExitFirstClassState::load(SimpleFile *file) { file->readNumber(); - *_v1 = file->readString(); + _viewName = file->readString(); CGameObject::load(file); } +bool CEnterExitFirstClassState::MouseButtonDownMsg(CMouseButtonDownMsg *msg) { + switch (getPassengerClass()) { + case 1: + if (compareRoomNameTo("1stClassLobby")) { + _viewName = getRoomNodeName() + ".E"; + changeView(_viewName); + } else if (compareRoomNameTo("1stClassState")) { + changeView(_viewName); + } + break; + + case 2: + petDisplayMessage(1, "This room is reserved for the exclusive use of first class passengeres." + " That does not currently include you"); + break; + + default: + petDisplayMessage("No losers."); + break; + } + + return true; +} + } // End of namespace Titanic |