diff options
author | Paul Gilbert | 2013-10-07 17:30:25 -0400 |
---|---|---|
committer | Paul Gilbert | 2013-10-07 17:30:25 -0400 |
commit | b21534b5d11db2022c3dbdf94000f9f035a66853 (patch) | |
tree | dfae28c638311e6794dc721e5589fa9716ada891 /engines/tsage | |
parent | a7055e75d12c041c9b6e94887b753f652d3e604c (diff) | |
download | scummvm-rg350-b21534b5d11db2022c3dbdf94000f9f035a66853.tar.gz scummvm-rg350-b21534b5d11db2022c3dbdf94000f9f035a66853.tar.bz2 scummvm-rg350-b21534b5d11db2022c3dbdf94000f9f035a66853.zip |
TSAGE: Fixes for not allowing walk cursor to be selected when walking disabled
Diffstat (limited to 'engines/tsage')
-rw-r--r-- | engines/tsage/core.cpp | 4 | ||||
-rw-r--r-- | engines/tsage/ringworld2/ringworld2_dialogs.cpp | 2 | ||||
-rw-r--r-- | engines/tsage/ringworld2/ringworld2_scenes0.cpp | 8 |
3 files changed, 8 insertions, 6 deletions
diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp index 22c7e32492..488eacceab 100644 --- a/engines/tsage/core.cpp +++ b/engines/tsage/core.cpp @@ -4259,11 +4259,11 @@ void SceneHandler::process(Event &event) { g_vm->_debugger->onFrame(); } - if ((event.eventType == EVENT_KEYPRESS) && g_globals->_player._enabled && g_globals->_player._canWalk) { + if ((event.eventType == EVENT_KEYPRESS) && g_globals->_player._enabled) { // Keyboard shortcuts for different actions switch (event.kbd.keycode) { case Common::KEYCODE_w: - g_globals->_events.setCursor(CURSOR_WALK); + g_globals->_events.setCursor(GLOBALS._player._canWalk ? CURSOR_WALK : CURSOR_USE); event.handled = true; break; case Common::KEYCODE_l: diff --git a/engines/tsage/ringworld2/ringworld2_dialogs.cpp b/engines/tsage/ringworld2/ringworld2_dialogs.cpp index 057d91a46e..4ebbdd602d 100644 --- a/engines/tsage/ringworld2/ringworld2_dialogs.cpp +++ b/engines/tsage/ringworld2/ringworld2_dialogs.cpp @@ -165,7 +165,7 @@ void RightClickDialog::execute() { break; case 1: // Walk action - cursorNum = CURSOR_WALK; + cursorNum = R2_GLOBALS._player._canWalk ? CURSOR_WALK : CURSOR_USE; break; case 2: // Use action diff --git a/engines/tsage/ringworld2/ringworld2_scenes0.cpp b/engines/tsage/ringworld2/ringworld2_scenes0.cpp index fb67c9e181..fb7e42f643 100644 --- a/engines/tsage/ringworld2/ringworld2_scenes0.cpp +++ b/engines/tsage/ringworld2/ringworld2_scenes0.cpp @@ -3281,7 +3281,7 @@ void Scene300::postInit(SceneObjectList *OwnerList) { _mirandaWorkstation1.setDetails(Rect(4, 128, 69, 167), 300, 33, 31, 35, 1, NULL); switch (R2_GLOBALS._player._characterIndex) { - case 1: + case R2_QUINN: _miranda.postInit(); _miranda.setup(302, 2, 1); _miranda.setPosition(Common::Point(47, 128)); @@ -3303,7 +3303,7 @@ void Scene300::postInit(SceneObjectList *OwnerList) { R2_GLOBALS._player.disableControl(); break; - case 2: + case R2_SEEKER: _miranda.postInit(); _miranda.setup(302, 2, 1); _miranda.setPosition(Common::Point(47, 128)); @@ -3323,9 +3323,10 @@ void Scene300::postInit(SceneObjectList *OwnerList) { R2_GLOBALS._player.setPosition(Common::Point(158, 108)); R2_GLOBALS._player.fixPriority(130); R2_GLOBALS._player.enableControl(CURSOR_USE); + R2_GLOBALS._player._canWalk = false; break; - case 3: + case R2_MIRANDA: if ((R2_GLOBALS._player._characterScene[R2_SEEKER] == 300) || (R2_GLOBALS._player._characterScene[R2_SEEKER] == 325)) { _seeker.postInit(); _seeker.setVisage(302); @@ -3347,6 +3348,7 @@ void Scene300::postInit(SceneObjectList *OwnerList) { R2_GLOBALS._player.setup(302, 2, 1); R2_GLOBALS._player.setPosition(Common::Point(47, 128)); R2_GLOBALS._player.enableControl(CURSOR_USE); + R2_GLOBALS._player._canWalk = false; break; default: |