public void EnterQueue() // Добавляет игрока в очередь { var name = ContextPlayerName; if (name == null) { return; } var user = PendingPlayers.FirstOrDefault(x => x.Name != name); if (user != null) { var session = new Session(hubContext, new Player() { Name = name }, user); Sessions.Add(session); PendingPlayers.Remove(user); } else if (!PendingPlayers.Any(x => x.Name == name) && !Sessions.Any(x => x.Player1.Name == name || x.Player2.Name == name)) { PendingPlayers.Add(new Player() { Name = name }); } else { return; } }
public void EscapeQueue() { var name = ContextPlayerName; var escPlayer = PendingPlayers.FirstOrDefault(x => x.Name == name); if (escPlayer != null) { PendingPlayers.Remove(escPlayer); } }
public PreConnectUnturnedPlayer GetPendingPlayerByName(string displayName) { return(PendingPlayers.FirstOrDefault(c => c.User.DisplayName.Equals(displayName, StringComparison.OrdinalIgnoreCase))); }
public PreConnectUnturnedPlayer GetPendingPlayer(string uniqueID) { return(PendingPlayers.FirstOrDefault(c => c.User.Id.Equals(uniqueID))); }