aboutsummaryrefslogtreecommitdiff
path: root/engines/fullpipe
diff options
context:
space:
mode:
authorEugene Sandulenko2016-09-27 18:29:05 +0200
committerEugene Sandulenko2016-09-27 18:29:05 +0200
commit37f4b36f7f0f855103962c169d9753df988c1c82 (patch)
tree56c4d1f13cdf6e1e02808b0685b1fe0897907b04 /engines/fullpipe
parent95ad63e9922976c1d2ecd97d1fce03bdc023189c (diff)
downloadscummvm-rg350-37f4b36f7f0f855103962c169d9753df988c1c82.tar.gz
scummvm-rg350-37f4b36f7f0f855103962c169d9753df988c1c82.tar.bz2
scummvm-rg350-37f4b36f7f0f855103962c169d9753df988c1c82.zip
FULLPIPE: Add support for loading from launcher
Diffstat (limited to 'engines/fullpipe')
-rw-r--r--engines/fullpipe/fullpipe.cpp7
-rw-r--r--engines/fullpipe/stateloader.cpp3
2 files changed, 10 insertions, 0 deletions
diff --git a/engines/fullpipe/fullpipe.cpp b/engines/fullpipe/fullpipe.cpp
index c2d4106d3f..37c7699ce7 100644
--- a/engines/fullpipe/fullpipe.cpp
+++ b/engines/fullpipe/fullpipe.cpp
@@ -275,9 +275,16 @@ Common::Error FullpipeEngine::run() {
if (ConfMan.hasKey("boot_param"))
scene = convertScene(ConfMan.getInt("boot_param"));
+ if (ConfMan.hasKey("save_slot"))
+ scene = -1;
+
if (!loadGam("fullpipe.gam", scene))
return Common::kNoGameDataFoundError;
+ if (ConfMan.hasKey("save_slot")) {
+ _gameLoader->readSavegame(getSavegameFile(ConfMan.getInt("save_slot")));
+ }
+
#if 0
loadAllScenes();
#endif
diff --git a/engines/fullpipe/stateloader.cpp b/engines/fullpipe/stateloader.cpp
index 30c7bc87a9..78674d1fe9 100644
--- a/engines/fullpipe/stateloader.cpp
+++ b/engines/fullpipe/stateloader.cpp
@@ -317,6 +317,9 @@ bool FullpipeEngine::loadGam(const char *fname, int scene) {
setMusicAllowed(_gameLoader->_gameVar->getSubVarAsInt("MUSIC_ALLOWED"));
+ if (scene == -1)
+ return true;
+
if (scene) {
_gameLoader->loadScene(726);
_gameLoader->gotoScene(726, TrubaLeft);