From e3c090a2018c8ce92fd4364c7cda3d12e35e9ced Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sat, 15 Jan 2011 13:56:52 +1300 Subject: [PATCH] More drop messages. --- OpenRA.Game/Server/Server.cs | 5 ++++- OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/OpenRA.Game/Server/Server.cs b/OpenRA.Game/Server/Server.cs index d62af107a9..fb75f0d2c9 100644 --- a/OpenRA.Game/Server/Server.cs +++ b/OpenRA.Game/Server/Server.cs @@ -185,6 +185,8 @@ namespace OpenRA.Server { Log.Write("server", "Rejected connection from {0}; game is already started.", newConn.socket.RemoteEndPoint); + + SendOrderTo(newConn, "ServerError", "The game has already started"); DropClient(newConn); return; } @@ -194,7 +196,6 @@ namespace OpenRA.Server var mods = handshake.Mods; // Check that the client has compatable mods - var valid = mods.All( m => m.Contains('@')) && //valid format mods.Count() == Game.CurrentMods.Count() && //same number mods.Select( m => Pair.New(m.Split('@')[0], m.Split('@')[1])).All(kv => Game.CurrentMods.ContainsKey(kv.First) && @@ -203,6 +204,8 @@ namespace OpenRA.Server { Log.Write("server", "Rejected connection from {0}; mods do not match.", newConn.socket.RemoteEndPoint); + + SendOrderTo(newConn, "ServerError", "Your mods don't match the server"); DropClient(newConn); return; } diff --git a/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs b/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs index 06de8007cb..f3fde35d54 100644 --- a/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs +++ b/OpenRA.Mods.RA/ServerTraits/LobbyCommands.cs @@ -129,7 +129,10 @@ namespace OpenRA.Mods.RA.Server { var occupantConn = server.conns.FirstOrDefault( c => c.PlayerIndex == occupant.Index ); if (occupantConn != null) + { + server.SendOrderTo(occupantConn, "ServerError", "Your slot was closed by the host"); server.DropClient(occupantConn); + } } server.SyncLobbyInfo();