protected void HandleNodeStatusResponce(NodeStatusResponce responce) { if (responce == null) { return; } Utilization = responce.Utilization; lock (HostedGames) { HostedGames.Clear(); foreach (var g in responce.ActiveNodes) { GameInfo info = new GameInfo(); info.ID = g.ID; info.Name = g.Name; info.NodeController = this; info.Map = g.Map; info.Host = NodeHost; info.Port = g.Port; info.Description = g.Description; HostedGames.Add(info); } } HostedGamesListUpdated?.Invoke(this, EventArgs.Empty); }
private static NodeStatusResponce BuildNodeStatus() { NodeStatusResponce msg = new NodeStatusResponce(); lock (Nodes) { foreach (RunningNode node in Nodes) { if (node.Alive) { msg.ActiveNodes.Add(node.Info); } } } return(msg); }