diff options
-rw-r--r-- | engines/supernova/game-manager.cpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/engines/supernova/game-manager.cpp b/engines/supernova/game-manager.cpp index 2672a6fbca..cb4d81be65 100644 --- a/engines/supernova/game-manager.cpp +++ b/engines/supernova/game-manager.cpp @@ -293,6 +293,52 @@ void GameManager::processInput(Common::KeyState &state) { default: break; } + if (_vm->_improved && _guiEnabled) { + switch (state.keycode) { + case Common::KEYCODE_1: + resetInputState(); + _inputVerb = ACTION_WALK; + break; + case Common::KEYCODE_2: + resetInputState(); + _inputVerb = ACTION_LOOK; + break; + case Common::KEYCODE_3: + resetInputState(); + _inputVerb = ACTION_TAKE; + break; + case Common::KEYCODE_4: + resetInputState(); + _inputVerb = ACTION_OPEN; + break; + case Common::KEYCODE_5: + resetInputState(); + _inputVerb = ACTION_CLOSE; + break; + case Common::KEYCODE_6: + resetInputState(); + _inputVerb = ACTION_PRESS; + break; + case Common::KEYCODE_7: + resetInputState(); + _inputVerb = ACTION_PULL; + break; + case Common::KEYCODE_8: + resetInputState(); + _inputVerb = ACTION_USE; + break; + case Common::KEYCODE_9: + resetInputState(); + _inputVerb = ACTION_TALK; + break; + case Common::KEYCODE_0: + resetInputState(); + _inputVerb = ACTION_GIVE; + break; + default: + break; + } + } } void GameManager::resetInputState() { |