[Scummvm-git-logs] scummvm master -> 51b34c33e4160e326252579c79e778caf2ae513e
AndywinXp
noreply at scummvm.org
Sun Aug 11 18:05:04 UTC 2024
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
51b34c33e4 SCUMM: Explicitly disable autosaving when original GUI is active
Commit: 51b34c33e4160e326252579c79e778caf2ae513e
https://github.com/scummvm/scummvm/commit/51b34c33e4160e326252579c79e778caf2ae513e
Author: AndywinXp (andywinxp at gmail.com)
Date: 2024-08-11T20:04:59+02:00
Commit Message:
SCUMM: Explicitly disable autosaving when original GUI is active
This addresses #15063:
"SCUMM: Autosave warnings still pop up when classic menus are used"
The implemented solution was proposed by antoniou79.
Changed paths:
engines/scumm/metaengine.cpp
engines/scumm/saveload.cpp
engines/scumm/scumm.h
diff --git a/engines/scumm/metaengine.cpp b/engines/scumm/metaengine.cpp
index 132373a19e4..f73c450ca89 100644
--- a/engines/scumm/metaengine.cpp
+++ b/engines/scumm/metaengine.cpp
@@ -715,7 +715,8 @@ static const ExtraGuiOption audioOverride {
static const ExtraGuiOption enableOriginalGUI = {
_s("Enable the original GUI and Menu"),
_s("Allow the game to use the in-engine graphical interface and the original save/load menu. \
- Use it together with the \"Ask for confirmation on exit\" for a more complete experience."),
+ Use it together with the \"Ask for confirmation on exit\" for a more complete experience. \
+ Autosaving is disabled when this mode is active."),
"original_gui",
true,
0,
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index 478f01720b7..61f4a1a93a1 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -219,6 +219,9 @@ bool ScummEngine::canSaveGameStateCurrently(Common::U32String *msg) {
return (VAR_MAINMENU_KEY == 0xFF || (VAR(VAR_MAINMENU_KEY) != 0 && _currentRoom != 0)) && !isOriginalMenuActive;
}
+bool ScummEngine::canSaveAutosaveCurrently() {
+ return !isUsingOriginalGUI();
+}
void ScummEngine::requestSave(int slot, const Common::String &name) {
_saveLoadSlot = slot;
diff --git a/engines/scumm/scumm.h b/engines/scumm/scumm.h
index ceeac4b88f8..13b92cbb3db 100644
--- a/engines/scumm/scumm.h
+++ b/engines/scumm/scumm.h
@@ -592,6 +592,7 @@ public:
bool canLoadGameStateCurrently(Common::U32String *msg = nullptr) override;
Common::Error saveGameState(int slot, const Common::String &desc, bool isAutosave = false) override;
bool canSaveGameStateCurrently(Common::U32String *msg = nullptr) override;
+ bool canSaveAutosaveCurrently() override;
void pauseEngineIntern(bool pause) override;
More information about the Scummvm-git-logs
mailing list