[Scummvm-git-logs] scummvm master -> 2925d2ef2fde54a86fe65d79f9e15c01f08f3f49
bgK
bastien.bouclet at gmail.com
Sat May 26 09:02:05 CEST 2018
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
0500096703 MOHAWK: MYST: Do not autosave over saves from the original
6041e4aca1 MOHAWK: Allow non-autosaves in autosave slot to be deletable
0d88be5e05 README: Redo Autosave section and note newly supported autosave games
2925d2ef2f Merge pull request #1198 from dafioram/mohawk10536
Commit: 0500096703dba668e56b5ebb37c7ba5a58c32f0d
https://github.com/scummvm/scummvm/commit/0500096703dba668e56b5ebb37c7ba5a58c32f0d
Author: David Fioramonti (dafioram at gmail.com)
Date: 2018-05-22T19:47:00-07:00
Commit Message:
MOHAWK: MYST: Do not autosave over saves from the original
The previous logic was enabling autosaving if the metadata
file was not present, but saves from the original
don't have metadata. Now it checks if the non-metadata
file can be loaded to determine if the slot is empty.
Changed paths:
engines/mohawk/myst_state.cpp
diff --git a/engines/mohawk/myst_state.cpp b/engines/mohawk/myst_state.cpp
index efc5025..a1077a7 100644
--- a/engines/mohawk/myst_state.cpp
+++ b/engines/mohawk/myst_state.cpp
@@ -259,12 +259,19 @@ bool MystGameState::saveMetadata(int slot) {
bool MystGameState::isAutoSaveAllowed() {
// Open autosave slot and see if it an autosave
// Autosaving will be enabled if it is an autosave or if there is no save in that slot
- Common::String filename = buildMetadataFilename(kAutoSaveSlot);
- Common::ScopedPtr<Common::InSaveFile> metadataFile(g_system->getSavefileManager()->openForLoading(filename));
- if (!metadataFile) { // There is no save in the autosave slot, enable autosave
+
+ Common::String dataFilename = buildSaveFilename(kAutoSaveSlot);
+ Common::ScopedPtr<Common::InSaveFile> dataFile(g_system->getSavefileManager()->openForLoading(dataFilename));
+ if (!dataFile) { // Cannot load non-meta file, enable autosave
return true;
}
+ Common::String metaFilename = buildMetadataFilename(kAutoSaveSlot);
+ Common::ScopedPtr<Common::InSaveFile> metadataFile(g_system->getSavefileManager()->openForLoading(metaFilename));
+ if (!metadataFile) { // Can load non-meta file, but not metafile, could be a save from the original, disable autosave
+ return false;
+ }
+
Common::Serializer m(metadataFile.get(), nullptr);
// Read the metadata file
Commit: 6041e4aca1466098cd903ed7a2eac4f2282d86a5
https://github.com/scummvm/scummvm/commit/6041e4aca1466098cd903ed7a2eac4f2282d86a5
Author: David Fioramonti (dafioram at gmail.com)
Date: 2018-05-22T19:47:00-07:00
Commit Message:
MOHAWK: Allow non-autosaves in autosave slot to be deletable
With the addition of autosaving support, deleting saves
(via the gui) to slot 0 was disabled, but for saves that
have been previousl created by the user it make sense
that they should be allowed to delete a save in slot 0.
Fixes Trac#10536.
Changed paths:
engines/mohawk/myst_state.cpp
engines/mohawk/riven_saveload.cpp
diff --git a/engines/mohawk/myst_state.cpp b/engines/mohawk/myst_state.cpp
index a1077a7..c65ece5 100644
--- a/engines/mohawk/myst_state.cpp
+++ b/engines/mohawk/myst_state.cpp
@@ -309,7 +309,8 @@ SaveStateDescriptor MystGameState::querySaveMetaInfos(int slot) {
desc.setSaveDate(metadata.saveYear, metadata.saveMonth, metadata.saveDay);
desc.setSaveTime(metadata.saveHour, metadata.saveMinute);
desc.setPlayTime(metadata.totalPlayTime);
- desc.setDeletableFlag(slot != kAutoSaveSlot);
+ if (metadata.autoSave) // Allow non-saves to be deleted, but not autosaves
+ desc.setDeletableFlag(slot != kAutoSaveSlot);
Graphics::Surface *thumbnail;
if (!Graphics::loadThumbnail(*metadataFile, thumbnail)) {
diff --git a/engines/mohawk/riven_saveload.cpp b/engines/mohawk/riven_saveload.cpp
index 5ba0e51..e8d29a0 100644
--- a/engines/mohawk/riven_saveload.cpp
+++ b/engines/mohawk/riven_saveload.cpp
@@ -142,7 +142,8 @@ SaveStateDescriptor RivenSaveLoad::querySaveMetaInfos(const int slot) {
descriptor.setPlayTime(metadata.totalPlayTime);
descriptor.setSaveDate(metadata.saveYear, metadata.saveMonth, metadata.saveDay);
descriptor.setSaveTime(metadata.saveHour, metadata.saveMinute);
- descriptor.setDeletableFlag(slot != kAutoSaveSlot);
+ if (metadata.autoSave) // Allow non-saves to be deleted, but not autosaves
+ descriptor.setDeletableFlag(slot != kAutoSaveSlot);
delete metaStream;
Commit: 0d88be5e05ffc5d00e88f735d538042694e7f2f6
https://github.com/scummvm/scummvm/commit/0d88be5e05ffc5d00e88f735d538042694e7f2f6
Author: David Fioramonti (dafioram at gmail.com)
Date: 2018-05-22T19:47:00-07:00
Commit Message:
README: Redo Autosave section and note newly supported autosave games
Made the autosave section more of a list.
Added tucker, myst, riven, zvision, and composer to the list.
Noted when riven and myst will autosave in their notes.
Changed paths:
README
diff --git a/README b/README
index b89b981..7008118 100644
--- a/README
+++ b/README
@@ -964,6 +964,9 @@ Space: Pause the game
Esc: Skip cutscene
F5: Menu
+Myst will autosave to slot 0 if no save or an autosave is present in
+slot 0.
+
3.17) Nippon Safes Inc. Amiga notes:
----- ------------------------------
@@ -1010,6 +1013,9 @@ F5: Menu
Ctrl-o: Load game
Ctrl-s: Save game
+Riven will autosave to slot 0 if no save or an autosave is present in
+slot 0.
+
3.20) Simon the Sorcerer games notes:
----- -------------------------------
@@ -1985,11 +1991,24 @@ saved games from the old default location, to the new default location.
6.1) Autosaves:
---- ----------
-For some games (namely "Beneath a Steel Sky", "Flight of the Amazon
-Queen", all AGI games, and all SCUMM games), ScummVM will by default
-automatically save the current state every five minutes (adjustable via
-the "autosave_period" config setting). For the AGI and SCUMM engines, it
-will save in Slot 0. For the SCUMM engine, this saved game can then be
+For some games ScummVM will by default automatically save the current state
+every five minutes (adjustable via the "autosave_period" config setting).
+The default autosave slot for many engines is slot 0.
+
+The games/engines listed below have autosave support.
+
+AGI games
+Beneath a Steel Sky
+Bud Tucker in Double Trouble
+COMPOSER games
+Flight of the Amazon Queen
+Myst
+Riven
+SCUMM games
+The Legend of Kyrandia I (slot 999)
+ZVISION games
+
+For the SCUMM engine, this saved game can then be
loaded again via Ctrl-0, or the F5 menu.
Commit: 2925d2ef2fde54a86fe65d79f9e15c01f08f3f49
https://github.com/scummvm/scummvm/commit/2925d2ef2fde54a86fe65d79f9e15c01f08f3f49
Author: Bastien Bouclet (bastien.bouclet at gmail.com)
Date: 2018-05-26T09:01:57+02:00
Commit Message:
Merge pull request #1198 from dafioram/mohawk10536
MOHAWK: README: Minor autosave changes and notes for autosaving
Changed paths:
README
engines/mohawk/myst_state.cpp
engines/mohawk/riven_saveload.cpp
More information about the Scummvm-git-logs
mailing list