示例#1
0
        /// <summary>
        /// Abre cartas comunitárias e reordena a lista de jogadores
        /// </summary>
        /// <param name="quantidadeCartasComunitarias">Quantidade de cartas comunitárias abertas na mesa</param>
        /// <returns>Retorna true caso haja jogadores suficientes para realizar a rodada. Caso contrário, false</returns>
        private bool RenovarRodadaDeApostas(int quantidadeCartasComunitarias)
        {
            if (JogadoresAtivos.Count < _quantidadeMinimaDeJogadoresPermitidos)
            {
                return(false);
            }

            foreach (var jogador in JogadoresAtivos)
            {
                if (jogador.FichasApostadasNaRodada < ApostaAtual)
                {
                    throw new Exception(Ressource.MesaMsgNaoPermitidoIniciarNovaRodadaSemApostasMinimas);
                }
                else
                {
                    jogador.ZerarFichasApostadasNaRodada();
                }
            }

            OrdenarJogadores(IdJogadorSmallBlind);

            //Queimar Carta
            Baralho.DistribuirCarta();

            //Adicionar cartas na mesa
            for (int i = 0; i < quantidadeCartasComunitarias; i++)
            {
                Cartas.Add(Baralho.DistribuirCarta());
            }

            ApostaAtual = 0;

            return(true);
        }
示例#2
0
 public Mao(Baralho baralho, int maoInicial)
 {
     for (int i = 0; i < maoInicial; i++)
     {
         Cartas.Add(baralho.RemoveTop());
     }
     selec        = -1;
     Visibilidade = true;
     Trincas      = 0;
     Sequencias   = 0;
 }
示例#3
0
        public List <Carta> repatirCartasIniciales()
        {
            var C = Repartir();

            Cartas = C;

            C = Repartir();

            Cartas.Add(C[0]);

            return(Cartas);
        }
示例#4
0
        /*public void ConstruirMazo(int NumMazos)
         * {
         *  for (int i = 1; i < 14; i++)
         *  {
         *      var test = new Carta();
         *
         *      if (i==1)
         *      {
         *          test.Numero = 11;
         *      }
         *      else
         *      {
         *          test.Numero = i;
         *      }
         *      test.Cantidad = 4 * NumMazos;
         *
         *      if (i > 1 && i < 7)
         *      {
         *          test.Valor = 1;
         *      }
         *      else if (i == 1 || i > 9)
         *      {
         *          test.Valor = -1;
         *      }
         *      else
         *      {
         *          test.Valor = 0;
         *      }
         *      Cartas.Add(test);
         *  }
         * }*/

        public void ConstruirMazo(int NumMazos)
        {
            for (int i = 1; i < 11; i++)
            {
                var test = new Carta();

                if (i == 1)
                {
                    test.Numero   = 11;
                    test.Cantidad = 4 * NumMazos;
                }
                else if (i == 10)
                {
                    test.Numero   = i;
                    test.Cantidad = 16 * NumMazos;
                }
                else
                {
                    test.Numero   = i;
                    test.Cantidad = 4 * NumMazos;
                }

                if (i > 1 && i < 7)
                {
                    test.Valor = 1;
                }
                else if (i == 1 || i > 9)
                {
                    test.Valor = -1;
                }
                else
                {
                    test.Valor = 0;
                }
                Cartas.Add(test);
            }
        }
示例#5
0
 public void AgregarCartaAlMazo(Carta carta)
 {
     Cartas.Add(carta);
     return;
 }