Beispiel #1
0
 public Carta(NAIPE naipe, int pontos, int identificador, int rank)
 {
     this.identificador = identificador;
     this.pontos = pontos;
     this.naipe = naipe;
     this.rank = rank;
 }
Beispiel #2
0
 private void CriaCartasDe(NAIPE naipe)
 {
     for (int i = 1; i < 14; i++)
     {
         cartas.Add(new Carta(i, naipe));
     }
 }
Beispiel #3
0
 private static void CriaStringDo(NAIPE naipe, StringBuilder retorno)
 {
     for (int valor = 1; valor < 14; valor++)
     {
         retorno.Append(CartasNomes.NomeCartaPor(valor) +
                        " de " + CartasNomes.NomeCartaPor(naipe) + "\n");
     }
 }
Beispiel #4
0
 public static String NomeCartaPor(NAIPE naipe)
 {
     return(naipe.ToString());
 }
Beispiel #5
0
 public Carta(int valor, NAIPE naipe)
 {
     this.valor = valor;
     this.naipe = naipe;
 }
Beispiel #6
0
        private IPlayer VazaWin(Vaza vaza, NAIPE trunfo)
        {
            if (VazaComplete())
            {
                NAIPE naipeVaza = vaza.jogadas[0].carta.naipe;
                Jogada jogadaMaior = vaza.jogadas[0];
                int pontos = 0;
                foreach (Jogada jogada in vaza.jogadas)
                {
                    pontos += jogada.carta.pontos;

                    if (jogada.carta.naipe == trunfo)
                    {
                        naipeVaza = trunfo;
                    }
                    if (jogadaMaior.carta.naipe != naipeVaza)
                        jogadaMaior = null;

                    if (jogadaMaior == null || (jogada.carta.identificador > jogadaMaior.carta.identificador && naipeVaza == jogada.carta.naipe))
                    {
                        jogadaMaior = jogada;
                    }
                }
                int equipa = 0;
                equipa = (jogadaMaior.jogador.ID == 0 || jogadaMaior.jogador.ID == 1) ? 0 : 1;
                this.equipas[equipa].pontosPartida += pontos;
                if (ChangePoints != null)
                {
                    ChangePoints(equipa, this.equipas[equipa].pontosPartida);
                }
                return jogadaMaior.jogador;
            }
            return null;
        }