示例#1
0
        private void btnDescartar_Click(object sender, EventArgs e)
        {
            BE.Carta carta = (BE.Carta)listMano.SelectedItem;

            jugadorAction.descartarCarta(descarte, turno.JUGADORATUAL, carta);
            turnoAction.SiguienteTurno(turno);

            enlazar();
            changeBtnEnable();
        }
示例#2
0
文件: Mazo.cs 项目: fclarat/Chinchon
        public List <BE.Carta> PruebaFuncionamiento()
        {
            List <BE.Carta> cartas = new List <BE.Carta>();
            int             id     = 1;

            for (int i = 1; i < 13; i++)
            {
                BE.Carta carta = new BE.Carta();
                carta.ID     = id;
                carta.PALO   = "Copa";
                carta.NUMERO = i;

                id++;
                cartas.Add(carta);
            }
            for (int i = 1; i < 13; i++)
            {
                BE.Carta carta = new BE.Carta();
                carta.ID     = id;
                carta.PALO   = "Basto";
                carta.NUMERO = i;

                id++;
                cartas.Add(carta);
            }
            for (int i = 1; i < 13; i++)
            {
                BE.Carta carta = new BE.Carta();
                carta.ID     = id;
                carta.PALO   = "Espada";
                carta.NUMERO = i;

                id++;
                cartas.Add(carta);
            }
            for (int i = 1; i < 13; i++)
            {
                BE.Carta carta = new BE.Carta();
                carta.ID     = id;
                carta.PALO   = "Oro";
                carta.NUMERO = i;

                id++;
                cartas.Add(carta);
            }



            cartas = this.ShuffleDeck(cartas);
            return(cartas);
        }
示例#3
0
        private void btnCortar_Click(object sender, EventArgs e)
        {
            //Carta con la que corta
            BE.Carta carta = (BE.Carta)listMano.SelectedItem;

            if (jugadorAction.cortar(turno.JUGADORATUAL, carta))
            {
                MessageBox.Show("CORTASTE");
                puntoAction.cortarPartida(turno);
                FinalizarPartida();
            }
            else
            {
                MessageBox.Show("No seas pillo, no podes cortar");
            }
        }
示例#4
0
        public bool cortar(BE.Jugador jug, BE.Carta carta)
        {
            bool cortarValido = false;


            List <BE.Carta> manoAux  = new List <BE.Carta>(jug.MANO.CARTAS);
            List <BE.Carta> manoAux1 = new List <BE.Carta>(jug.MANO.CARTAS);
            List <BE.Carta> manoAux2 = new List <BE.Carta>(jug.MANO.CARTAS);
            List <BE.Carta> manoAux3 = new List <BE.Carta>(jug.MANO.CARTAS);

            //Remuevo la carta con la que corto
            manoAux.Remove(carta);

            manoAux = this.Pierna(manoAux);

            //Si la pierna tiene 4 cartas verifico si las 3 subpiernas
            // tambien pueden realizar el corte
            if (manoAux.Count() == 3)
            {
                manoAux1 = this.SubPierna(manoAux1, 0);
                manoAux1 = this.Escalera(manoAux1);

                manoAux2 = this.SubPierna(manoAux2, 1);
                manoAux2 = this.Escalera(manoAux2);

                manoAux3 = this.SubPierna(manoAux3, 2);
                manoAux3 = this.Escalera(manoAux3);

                if (manoAux1.Count() <= 1 || manoAux2.Count() <= 1 || manoAux3.Count() <= 1)
                {
                    cortarValido = true;
                }
            }

            manoAux = this.Escalera(manoAux);

            if (manoAux.Count() <= 1)
            {
                cortarValido = true;
            }

            return(cortarValido);
        }
示例#5
0
        public List <BE.Carta> Listar()
        {
            List <BE.Carta> cartas = new List <BE.Carta>();

            acceso.Abrir();
            DataTable tabla = acceso.Leer("ListarCartas", null);

            acceso.Cerrar();
            foreach (DataRow registro in tabla.Rows)
            {
                BE.Carta carta = new BE.Carta();
                carta.ID     = int.Parse(registro["id"].ToString());
                carta.NUMERO = int.Parse(registro["numero"].ToString());
                carta.PALO   = registro["paloNombre"].ToString();
                cartas.Add(carta);
            }


            return(cartas);
        }
示例#6
0
 public void descartarCarta(BE.Descarte des, BE.Jugador jug, BE.Carta carta)
 {
     jug.MANO.CARTAS.Remove(carta);
     des.CARTAS.Insert(0, carta);
 }