Exemplo n.º 1
0
 /// <summary>
 /// Constructor de Room.
 /// </summary>
 /// <param name="idRoom">Número de la sala.</param>
 /// <param name="name">Nombre del host.</param>
 /// <param name="host">Host de la sala.</param>
 public Room(int idRoom, string name, Client host)
 {
     IdRoom = idRoom;
     WaitingRoomFinished = false;
     GameFinished        = false;
     Clients.Add(name, host);
     PlayersNames.Add(name);
     HostName = name;
 }
Exemplo n.º 2
0
 public bool IsRoomFull()
 {
     if (PlayersNames.Count() == 2)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 3
0
 /// <summary>
 /// Borra un jugador de la sala.
 /// </summary>
 /// <param name="name">Jugador a borrar.</param>
 public void deletePlayer(string name)
 {
     Clients.Remove(name);
     PlayersNames.Remove(name);
     if (Match != null)
     {
         Match.PlayersDeck.Remove(name);
         if (Match.Turn == name)
         {
             Match.Turn = PlayersNames.IndexOf(name) + 1 >= PlayersNames.Count ? PlayersNames[0] : PlayersNames[PlayersNames.IndexOf(name) + 1];
         }
     }
 }
Exemplo n.º 4
0
        public int AddPlayer(string name, string databaseId)
        {
            if (IsRoomFull())
            {
                throw new InvalidOperationException("Room is full");
            }

            PlayersNames.Add(name);
            PlayerDatabaseId.Add(databaseId);

            Random random          = new System.Random();
            int    playerSecretKey = random.GetHashCode();

            RoomPlayersKeys.Add(playerSecretKey);

            return(playerSecretKey);
        }
Exemplo n.º 5
0
 /// <summary>
 /// Añade un jugador a la sala.
 /// </summary>
 /// <param name="name">Nombre del jugador.</param>
 /// <param name="client">Cliente del jugador.</param>
 public void addCliente(string name, Client client)
 {
     PlayersNames.Add(name);
     Clients.Add(name, client);
 }
Exemplo n.º 6
0
 /// <summary>
 /// Avanza el turno de la sala.
 /// </summary>
 public void nextTurn()
 {
     Match.Turn = PlayersNames.IndexOf(Match.Turn) + 1 >= PlayersNames.Count ? PlayersNames[0] : PlayersNames[PlayersNames.IndexOf(Match.Turn) + 1];
 }