aboutsummaryrefslogtreecommitdiff
path: root/engines/hugo/parser.cpp
diff options
context:
space:
mode:
authorArnaud Boutonné2010-11-27 23:09:19 +0000
committerArnaud Boutonné2010-11-27 23:09:19 +0000
commit5f7ac43a24094ce3fa87e3fc01d8f9f333233631 (patch)
treed148af152eb5accc27ff0ce0e29907c4d36381e8 /engines/hugo/parser.cpp
parent3d4ca8e405aa8693f78e2638742170c0a3d9d246 (diff)
downloadscummvm-rg350-5f7ac43a24094ce3fa87e3fc01d8f9f333233631.tar.gz
scummvm-rg350-5f7ac43a24094ce3fa87e3fc01d8f9f333233631.tar.bz2
scummvm-rg350-5f7ac43a24094ce3fa87e3fc01d8f9f333233631.zip
HUGO: Add F4/F5 keys to save/restoreGame
Currently, it only saves/restores slot #0, no selection screen is displayed svn-id: r54515
Diffstat (limited to 'engines/hugo/parser.cpp')
-rw-r--r--engines/hugo/parser.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/hugo/parser.cpp b/engines/hugo/parser.cpp
index ff182a1aee..e6f88fd556 100644
--- a/engines/hugo/parser.cpp
+++ b/engines/hugo/parser.cpp
@@ -36,6 +36,7 @@
#include "hugo/parser.h"
#include "hugo/file.h"
#include "hugo/display.h"
+#include "hugo/schedule.h"
#include "hugo/route.h"
#include "hugo/util.h"
#include "hugo/sound.h"
@@ -99,7 +100,16 @@ void Parser::keyHandler(uint16 nChar, uint16 nFlags) {
gameStatus.recallFl = true;
break;
case Common::KEYCODE_F4: // Save game
+ // TODO: Add a proper screen to select saveslot
+ if (gameStatus.viewState == V_PLAY)
+ _vm->_file->saveGame(gameStatus.saveSlot, "Current game");
+ break;
case Common::KEYCODE_F5: // Restore game
+ // TODO: Add a proper screen to specify saveslot and description
+ _vm->_file->restoreGame(gameStatus.saveSlot);
+ _vm->_scheduler->restoreScreen(*_vm->_screen_p);
+ gameStatus.viewState = V_PLAY;
+ break;
case Common::KEYCODE_F9: // Boss button
warning("STUB: KeyHandler() - F4-F5-F9 (DOS)");
break;