diff options
-rw-r--r-- | sky/control.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sky/control.cpp b/sky/control.cpp index e0a7a96de8..fa442c8577 100644 --- a/sky/control.cpp +++ b/sky/control.cpp @@ -1325,9 +1325,11 @@ uint16 SkyControl::parseSaveData(uint8 *srcBuf) { if (saveRev >= 3) { LODSD(srcPos, gameVersion); if (gameVersion != SkyState::_systemVars.gameVersion) { - printf("This savegame was created by Beneath a Steel Sky v0.0%03d\n", gameVersion); - printf("It cannot be loaded by this version (v0.0%3d)\n", SkyState::_systemVars.gameVersion); - return RESTORE_FAILED; + if (SkyState::isCDVersion() && (gameVersion >= 365)) { // cd versions are compatible + printf("This savegame was created by Beneath a Steel Sky v0.0%03d\n", gameVersion); + printf("It cannot be loaded by this version (v0.0%3d)\n", SkyState::_systemVars.gameVersion); + return RESTORE_FAILED; + } } LODSW(srcPos, _skySound->_saveSounds[0]); LODSW(srcPos, _skySound->_saveSounds[1]); |