aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorTravis Howell2009-02-11 23:22:52 +0000
committerTravis Howell2009-02-11 23:22:52 +0000
commit248d9db3b18623c8e31b18cab1feb8967d882f93 (patch)
tree1e5b5556f9c7e83942c01d63816cc377d959890a /engines/scumm
parent4942ce18f1c43a6af4f8010505dff3434a240f4a (diff)
downloadscummvm-rg350-248d9db3b18623c8e31b18cab1feb8967d882f93.tar.gz
scummvm-rg350-248d9db3b18623c8e31b18cab1feb8967d882f93.tar.bz2
scummvm-rg350-248d9db3b18623c8e31b18cab1feb8967d882f93.zip
Restore correct camera values for old saves games of FT, Dig, and COMI.
svn-id: r36274
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/saveload.cpp11
-rw-r--r--engines/scumm/saveload.h2
2 files changed, 12 insertions, 1 deletions
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index 577e338384..577c465bdd 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -362,6 +362,17 @@ bool ScummEngine::loadState(int slot, bool compat) {
_scummVars[VAR_CAMERA_ACCEL_Y] = _scummVars[110];
}
+ // For a long time, we used incorrect values for some camera related
+ // scumm vars. We now know the proper values. To be able to properly use
+ // old save games, we update the old (bad) values to the new (correct)
+ // ones.
+ if (hdr.ver < VER(77) && _game.version >= 7) {
+ _scummVars[VAR_CAMERA_THRESHOLD_X] = 100;
+ _scummVars[VAR_CAMERA_THRESHOLD_Y] = 70;
+ _scummVars[VAR_CAMERA_ACCEL_X] = 100;
+ _scummVars[VAR_CAMERA_ACCEL_Y] = 100;
+ }
+
// With version 22, we replaced the scale items with scale slots. So when
// loading such an old save game, try to upgrade the old to new format.
if (hdr.ver < VER(22)) {
diff --git a/engines/scumm/saveload.h b/engines/scumm/saveload.h
index 8ed1ba1307..29184ad023 100644
--- a/engines/scumm/saveload.h
+++ b/engines/scumm/saveload.h
@@ -50,7 +50,7 @@ namespace Scumm {
* only saves/loads those which are valid for the version of the savegame
* which is being loaded/saved currently.
*/
-#define CURRENT_VER 76
+#define CURRENT_VER 77
/**
* An auxillary macro, used to specify savegame versions. We use this instead