network_client.c
changeset 5432 5940d6a253c5
parent 5413 21f75917d589
--- a/network_client.c	Sat Dec 30 01:17:53 2006 +0000
+++ b/network_client.c	Sat Dec 30 01:52:09 2006 +0000
@@ -497,6 +497,8 @@
 			_switch_mode_errorstr = STR_NETWORK_ERR_SAVEGAMEERROR;
 			return NETWORK_RECV_STATUS_SAVEGAME;
 		}
+		/* If the savegame has successfully loaded, ALL windows have been removed,
+		 * only toolbar/statusbar and gamefield are visible */
 
 		_opt_ptr = &_opt; // during a network game you are always in-game
 
@@ -510,18 +512,16 @@
 
 			SetLocalPlayer(PLAYER_SPECTATOR);
 
-			if (_network_playas == PLAYER_SPECTATOR) {
-				// The client wants to be a spectator..
-				DeleteWindowById(WC_NETWORK_STATUS_WINDOW, 0);
-			} else {
+			if (_network_playas != PLAYER_SPECTATOR) {
 				/* We have arrived and ready to start playing; send a command to make a new player;
 				 * the server will give us a client-id and let us in */
+				_network_join_status = NETWORK_JOIN_STATUS_REGISTERING;
+				ShowJoinStatusWindow();
 				NetworkSend_Command(0, 0, 0, CMD_PLAYER_CTRL, NULL);
 			}
 		} else {
 			// take control over an existing company
 			SetLocalPlayer(_network_playas);
-			DeleteWindowById(WC_NETWORK_STATUS_WINDOW, 0);
 		}
 	}