From 930f8ab2079887590dbc3e63b5e3f8b45a5c15d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 6 Sep 2020 14:03:46 +0200 Subject: [PATCH] Reset lobby ready state when options change server side. --- OpenRA.Game/Network/UnitOrders.cs | 3 --- OpenRA.Mods.Common/ServerTraits/LobbyCommands.cs | 5 +++++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/OpenRA.Game/Network/UnitOrders.cs b/OpenRA.Game/Network/UnitOrders.cs index 450dfaef98..82b7fe8a65 100644 --- a/OpenRA.Game/Network/UnitOrders.cs +++ b/OpenRA.Game/Network/UnitOrders.cs @@ -295,10 +295,7 @@ namespace OpenRA.Network { var strings = node.Key.Split('@'); if (strings[0] == "GlobalSettings") - { orderManager.LobbyInfo.GlobalSettings = Session.Global.Deserialize(node.Value); - orderManager.IssueOrder(Order.Command("state {0}".F(Session.ClientState.NotReady))); - } } SetOrderLag(orderManager); diff --git a/OpenRA.Mods.Common/ServerTraits/LobbyCommands.cs b/OpenRA.Mods.Common/ServerTraits/LobbyCommands.cs index c26df4882b..b9575a3906 100644 --- a/OpenRA.Mods.Common/ServerTraits/LobbyCommands.cs +++ b/OpenRA.Mods.Common/ServerTraits/LobbyCommands.cs @@ -523,6 +523,11 @@ namespace OpenRA.Mods.Common.Server server.SyncLobbyGlobalSettings(); server.SendMessage(option.ValueChangedMessage(client.Name, split[1])); + foreach (var c in server.LobbyInfo.Clients) + c.State = Session.ClientState.NotReady; + + server.SyncLobbyClients(); + return true; }