changeset 13532:6386a541e470 draft

(svn r18053) -Codechange: remove the manual pause/unpause limitation with min_active_clients
author rubidium <rubidium@openttd.org>
date Thu, 12 Nov 2009 20:38:52 +0000
parents c6de6864e65f
children 5ab8386b02bc
files src/console_cmds.cpp
diffstat 1 files changed, 8 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/src/console_cmds.cpp
+++ b/src/console_cmds.cpp
@@ -491,16 +491,9 @@
 		return true;
 	}
 
-#ifdef ENABLE_NETWORK
-	if (_network_dedicated && _settings_client.network.min_active_clients != 0) {
-		IConsolePrint(CC_WARNING, "Manual pausing is disabled. Set network.min_active_clients to 0 (disable autopausing) to enable manual pausing.");
-		return true;
-	}
-#endif /* ENABLE_NETWORK */
-
-	if (_pause_mode == PM_UNPAUSED) {
+	if ((_pause_mode & PM_PAUSED_NORMAL) == PM_UNPAUSED) {
 		DoCommandP(0, PM_PAUSED_NORMAL, 1, CMD_PAUSE);
-		IConsolePrint(CC_DEFAULT, "Game paused.");
+		if (!_networking) IConsolePrint(CC_DEFAULT, "Game paused.");
 	} else {
 		IConsolePrint(CC_DEFAULT, "Game is already paused.");
 	}
@@ -515,16 +508,13 @@
 		return true;
 	}
 
-#ifdef ENABLE_NETWORK
-	if (_network_dedicated && _settings_client.network.min_active_clients != 0) {
-		IConsolePrint(CC_WARNING, "Manual unpausing is disabled. Set network.min_active_clients to 0 (disable autopausing) to enable manual unpausing.");
-		return true;
-	}
-#endif /* ENABLE_NETWORK */
-
-	if (_pause_mode != PM_UNPAUSED) {
+	if ((_pause_mode & PM_PAUSED_NORMAL) != PM_UNPAUSED) {
 		DoCommandP(0, PM_PAUSED_NORMAL, 0, CMD_PAUSE);
-		IConsolePrint(CC_DEFAULT, "Game unpaused.");
+		if (!_networking) IConsolePrint(CC_DEFAULT, "Game unpaused.");
+	} else if ((_pause_mode & PM_PAUSED_ERROR) != PM_UNPAUSED) {
+		IConsolePrint(CC_DEFAULT, "Game is in error state and cannot be unpaused via console.");
+	} else if (_pause_mode != PM_UNPAUSED) {
+		IConsolePrint(CC_DEFAULT, "Game cannot be unpaused manually; disable pause_on_join/min_active_clients.");
 	} else {
 		IConsolePrint(CC_DEFAULT, "Game is already unpaused.");
 	}