From ee9d7ee9c74366384306ddcebfb039bbc6bbb9d1 Mon Sep 17 00:00:00 2001 From: Jaromir Wysoglad Date: Thu, 11 Jul 2019 15:35:38 +0200 Subject: SUPERNOVA: Implement choosing verbs by keyboard. Only in improved mode. --- engines/supernova/game-manager.cpp | 46 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'engines') 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() { -- cgit v1.2.3