From 4b8c174c41cf5227868f59f00dc639c0f53b2d86 Mon Sep 17 00:00:00 2001
From: jsalmon3 <>
Date: Sat, 1 Jun 2002 22:04:53 +0000
Subject: [PATCH] Fixed bug #562548: Number of opponents doesn't matter

---
 doc/ChangeLog.html    | 10 ++++++----
 src/stratagus/pud.cpp |  3 +++
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/doc/ChangeLog.html b/doc/ChangeLog.html
index 7e51c3c99..1f50ecd80 100644
--- a/doc/ChangeLog.html
+++ b/doc/ChangeLog.html
@@ -826,18 +826,20 @@
 	(from Josef Spillner).
     <LI>MacOS compile fixed and project builder project added (from Ben Hines).
     <LI>Fixed bug: Server now sends the map path relative to the data 
-        directory (from Jimmy Salmon).
+	directory (from Jimmy Salmon).
     <LI>Fixed bug #561203: Who is speaking in 3 player game (from Jimmy Salmon).
     <LI>Fixed bug: Chat messages that are too wide are wrapped (from
-        Jimmy Salmon).
+	Jimmy Salmon).
     <LI>Fixed bug: Right clicking a wall will attack it now (from Jimmy Salmon).
     <LI>Fixed bug #562444: Disable fog of war in menus in net game (from
-        Jimmy Salmon).
+	Jimmy Salmon).
     <LI>Implemented task #38320: Making screen shots (from Jimmy Salmon).
     <LI>Fixed bug #528207: Fog of war is not correct (from Jimmy Salmon).
     <LI>Fixed bug in server menu where the Start Game button was deactivated
-        (from Jimmy Salmon).
+	(from Jimmy Salmon).
     <LI>Added ALT+CTRL+S to save the current level as pud "freecraft.pud.gz".
+    <LI>Fixed bug #562548: Number of opponents doesn't matter (from
+	Jimmy Salmon).
     </UL>
 </UL>
 
diff --git a/src/stratagus/pud.cpp b/src/stratagus/pud.cpp
index f9db4ab14..b2d1918d6 100644
--- a/src/stratagus/pud.cpp
+++ b/src/stratagus/pud.cpp
@@ -852,6 +852,9 @@ global void LoadPud(const char* pud,WorldMap* map)
 		    // Single player games only:
 		    // ARI: FIXME: convert to a preset array to share with network game code
 		    if (GameSettings.Opponents != SettingsPresetMapDefault) {
+			if (p == PlayerPerson && ThisPlayer != NULL) {
+			    p = PlayerComputer;
+			}
 			if (p == PlayerComputer) {
 			    if (aiopps < GameSettings.Opponents) {
 				aiopps++;