public void FirstQueryToConnect(int sessionId, int playerNumber) { var curSession = SM.FindSessionById(sessionId); PlayerOwner = curSession.Players.Find(a => a.PlayerNumber == playerNumber); //если один игрок уже есть в сессии, то цвет и состояние второго подбирается на основе первого. if (SessionServer.SessionInfo.Players.Count == 2) { if (SessionServer.SessionInfo.Players.FirstOrDefault().Side == Side.White) { PlayerOwner.Side = Side.Black; } else { PlayerOwner.Side = Side.White; } if (SessionServer.SessionInfo.Players.FirstOrDefault().PlayerState == PlayerStates.ActiveLeading) { PlayerOwner.PlayerState = PlayerStates.ActiveWaiting; } else { PlayerOwner.PlayerState = PlayerStates.ActiveLeading; } } else if (SessionServer.SessionInfo.Players.Count == 1) { PlayerOwner.Side = Side.White; PlayerOwner.PlayerState = PlayerStates.ActiveLeading; } ParsedWSRequest["Side"] = PlayerOwner.Side.ToString(); }