[Scummvm-git-logs] scummvm master -> 001f2434c6c09a2121fc60f5fa4bd54f6303d75f

dreammaster dreammaster at scummvm.org
Thu Mar 22 02:05:39 CET 2018


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:
001f2434c6 XEEN: Don't allow GMM load/save on the main menus or intro/end cutscenes


Commit: 001f2434c6c09a2121fc60f5fa4bd54f6303d75f
    https://github.com/scummvm/scummvm/commit/001f2434c6c09a2121fc60f5fa4bd54f6303d75f
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2018-03-21T21:05:33-04:00

Commit Message:
XEEN: Don't allow GMM load/save on the main menus or intro/end cutscenes

Changed paths:
    engines/xeen/dialogs/dialogs_control_panel.cpp
    engines/xeen/saves.cpp
    engines/xeen/xeen.cpp


diff --git a/engines/xeen/dialogs/dialogs_control_panel.cpp b/engines/xeen/dialogs/dialogs_control_panel.cpp
index 177c778..17c86ad 100644
--- a/engines/xeen/dialogs/dialogs_control_panel.cpp
+++ b/engines/xeen/dialogs/dialogs_control_panel.cpp
@@ -169,9 +169,11 @@ int ControlPanel::execute() {
 	intf.drawParty(true);
 
 	if (result == 3) {
-		saves.loadGame();
+		if (g_vm->canLoadGameStateCurrently())
+			saves.loadGame();
 	} else if (result == 4) {
-		saves.saveGame();
+		if (g_vm->canSaveGameStateCurrently())
+			saves.saveGame();
 	}
 
 	return result;
diff --git a/engines/xeen/saves.cpp b/engines/xeen/saves.cpp
index 0d47176..e2944d3 100644
--- a/engines/xeen/saves.cpp
+++ b/engines/xeen/saves.cpp
@@ -245,9 +245,6 @@ void SavesManager::newGame() {
 }
 
 bool SavesManager::loadGame() {
-	if (!g_vm->canLoadGameStateCurrently())
-		return false;
-
 	GUI::SaveLoadChooser *dialog = new GUI::SaveLoadChooser(_("Load game:"), _("Load"), false);
 	int slotNum = dialog->runModalWithCurrentTarget();
 	delete dialog;
diff --git a/engines/xeen/xeen.cpp b/engines/xeen/xeen.cpp
index 1c5fe4a..eeace13 100644
--- a/engines/xeen/xeen.cpp
+++ b/engines/xeen/xeen.cpp
@@ -183,11 +183,11 @@ Common::Error XeenEngine::loadGameState(int slot) {
 }
 
 bool XeenEngine::canLoadGameStateCurrently() {
-	return _mode != MODE_COMBAT;
+	return _mode != MODE_COMBAT && _mode != MODE_STARTUP;
 }
 
 bool XeenEngine::canSaveGameStateCurrently() {
-	return _mode != MODE_COMBAT;
+	return _mode != MODE_COMBAT && _mode != MODE_STARTUP;
 }
 
 void XeenEngine::playGame() {





More information about the Scummvm-git-logs mailing list