diff options
-rw-r--r-- | engines/hugo/parser_v1d.cpp | 6 | ||||
-rw-r--r-- | engines/hugo/parser_v2d.cpp | 8 | ||||
-rw-r--r-- | engines/hugo/parser_v3d.cpp | 7 |
3 files changed, 21 insertions, 0 deletions
diff --git a/engines/hugo/parser_v1d.cpp b/engines/hugo/parser_v1d.cpp index 0a319fd2c1..9514f88178 100644 --- a/engines/hugo/parser_v1d.cpp +++ b/engines/hugo/parser_v1d.cpp @@ -322,12 +322,18 @@ void Parser_v1d::lineHandler() { else // _vm->_file->saveOrRestore(true); warning("STUB: saveOrRestore()"); + // HACK: Currently use Win code + _vm->_file->saveGame(gameStatus.saveSlot, "Current game"); return; } if (!strcmp("restore", _line)) { // _vm->_file->saveOrRestore(false); warning("STUB: saveOrRestore()"); + // HACK: Currently use Win code + _vm->_file->restoreGame(gameStatus.saveSlot); + _vm->_scheduler->restoreScreen(*_vm->_screen_p); + gameStatus.viewState = V_PLAY; return; } diff --git a/engines/hugo/parser_v2d.cpp b/engines/hugo/parser_v2d.cpp index bbec03b8a8..802f69056b 100644 --- a/engines/hugo/parser_v2d.cpp +++ b/engines/hugo/parser_v2d.cpp @@ -36,6 +36,8 @@ #include "hugo/hugo.h" #include "hugo/parser.h" +#include "hugo/file.h" +#include "hugo/schedule.h" #include "hugo/util.h" #include "hugo/object.h" @@ -75,6 +77,8 @@ void Parser_v2d::lineHandler() { else // _vm->_file->saveOrRestore(true); warning("STUB: saveOrRestore()"); + // HACK: Currently use Win code + _vm->_file->saveGame(gameStatus.saveSlot, "Current game"); return; } @@ -82,6 +86,10 @@ void Parser_v2d::lineHandler() { _config.soundFl = false; // _vm->_file->saveOrRestore(false); warning("STUB: saveOrRestore()"); + // HACK: Currently use Win code + _vm->_file->restoreGame(gameStatus.saveSlot); + _vm->_scheduler->restoreScreen(*_vm->_screen_p); + gameStatus.viewState = V_PLAY; return; } diff --git a/engines/hugo/parser_v3d.cpp b/engines/hugo/parser_v3d.cpp index 6a12252600..54c3e830ce 100644 --- a/engines/hugo/parser_v3d.cpp +++ b/engines/hugo/parser_v3d.cpp @@ -36,6 +36,7 @@ #include "hugo/hugo.h" #include "hugo/parser.h" +#include "hugo/file.h" #include "hugo/schedule.h" #include "hugo/util.h" #include "hugo/sound.h" @@ -128,6 +129,8 @@ void Parser_v3d::lineHandler() { else // _vm->_file->saveOrRestore(true); warning("STUB: saveOrRestore()"); + // HACK: Currently use Win code + _vm->_file->saveGame(gameStatus.saveSlot, "Current game"); return; } @@ -135,6 +138,10 @@ void Parser_v3d::lineHandler() { _config.soundFl = false; // _vm->_file->saveOrRestore(false); warning("STUB: saveOrRestore()"); + // HACK: Currently use Win code + _vm->_file->restoreGame(gameStatus.saveSlot); + _vm->_scheduler->restoreScreen(*_vm->_screen_p); + gameStatus.viewState = V_PLAY; return; } |