Ejemplo n.º 1
0
 /// <summary>
 /// Adiciona um jogador a lista de jogadores deste jogo 
 /// </summary>
 /// <param name="jogador"></param>
 public void AdicionaJogador(Jogador jogador)
 {
     _lstJogadores.Add(jogador);
      return;
 }
Ejemplo n.º 2
0
        public static RoomDesc JuntarJogo(string idJogo, string nickJogador, ref int salasComGas)
        {
            //Avisa na consola
             Configuration.Debug("O cliente " + nickJogador + " quer-se juntar ao jogo " + idJogo, Configuration.PRI_MED);

             //Busca o jogo pretendido
             Jogo jogo = Jogo.GetJogo(idJogo, ServerMain._lstJogos);

             //Cria o jogador
             Jogador jogador = new Jogador(nickJogador);

             //adicionar este jogador ao jogo
             jogo.AdicionaJogador(jogador);

             //vai buscar a sala inicial
             int inicial = jogo.Mapa.Config.SalaInicial;

             //Avisa todos os Outros Servidores que existe mais um jogador
             MensagemServidor msg = MensagemServidor.EntraNovoJogadorNumJogo(nickJogador, ServerMain._minhaIdentificacao, Mensagem.IPBROADCAST, idJogo);
             ComunicacaoServidor.MeteMensagemParaEnviar(msg);

             if (inicial == 0)
             {
            Random a = new Random();
            //Este menos um foi pk o random pode ser zero
            inicial = a.Next(jogo.Mapa.NumeroDeSalas() - 1);
            //Compenso o -1 que pus antes
            inicial++;
             }

             //calcula o numero de salas com gas á volta
             salasComGas = jogo.Mapa.ContaSalasVenenoRodear(inicial);

             //Retorna a sala inicial
             return jogo.Mapa.GetSala(inicial);
        }