diff options
author | Paul Gilbert | 2011-05-16 21:09:05 +1000 |
---|---|---|
committer | Paul Gilbert | 2011-05-16 21:09:05 +1000 |
commit | 2f79090e46582bb41e036c19f06456a966436927 (patch) | |
tree | 605b1ec07bba0b0cf996f4596824b6aa8bc64239 /engines/tsage/ringworld_logic.cpp | |
parent | f1e3bb92b904fc79484c198354b750749577426b (diff) | |
download | scummvm-rg350-2f79090e46582bb41e036c19f06456a966436927.tar.gz scummvm-rg350-2f79090e46582bb41e036c19f06456a966436927.tar.bz2 scummvm-rg350-2f79090e46582bb41e036c19f06456a966436927.zip |
TSAGE: Added support for handling keypresses in the Game classes. Separated logic for full game versus demo into the respective Game classes.
Diffstat (limited to 'engines/tsage/ringworld_logic.cpp')
-rw-r--r-- | engines/tsage/ringworld_logic.cpp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/engines/tsage/ringworld_logic.cpp b/engines/tsage/ringworld_logic.cpp index a03c4081da..2141fcce5a 100644 --- a/engines/tsage/ringworld_logic.cpp +++ b/engines/tsage/ringworld_logic.cpp @@ -1421,4 +1421,52 @@ void RingworldGame::endGame(int resNum, int lineNum) { _globals->_events.setCursorFromFlag(); } +void RingworldGame::processEvent(Event &event) { + if (event.eventType == EVENT_KEYPRESS) { + switch (event.kbd.keycode) { + case Common::KEYCODE_F1: + // F1 - Help + MessageDialog::show(HELP_MSG, OK_BTN_STRING); + break; + + case Common::KEYCODE_F2: { + // F2 - Sound Options + ConfigDialog *dlg = new ConfigDialog(); + dlg->runModal(); + delete dlg; + _globals->_events.setCursorFromFlag(); + break; + } + + case Common::KEYCODE_F3: + // F3 - Quit + quitGame(); + event.handled = false; + break; + + case Common::KEYCODE_F4: + // F4 - Restart + restartGame(); + _globals->_events.setCursorFromFlag(); + break; + + case Common::KEYCODE_F7: + // F7 - Restore + restoreGame(); + _globals->_events.setCursorFromFlag(); + break; + + case Common::KEYCODE_F10: + // F10 - Pause + GfxDialog::setPalette(); + MessageDialog::show(GAME_PAUSED_MSG, OK_BTN_STRING); + _globals->_events.setCursorFromFlag(); + break; + + default: + break; + } + } +} + } // End of namespace tSage |