Beispiel #1
0
        public void CrearPieza(string piezaAcrear, string pos)
        {
            Juego.Casilla casilla = BuscarCasilla(pos);
            Pieza         pieza   = new Pieza();

            pieza.CrearPieza(piezaAcrear, casilla.posicion);
            pieza.PiezaPrincipal.transform.SetParent(Piezas.transform);
        }
Beispiel #2
0
 public static void DesmarcarCasillas(Juego.Casilla[] casillas)
 {
     for (int i = 0; i < casillas.Length; i++)
     {
         Juego.Casilla c = casillas[i];
         DesmarcarCasilla(c);
     }
 }
Beispiel #3
0
 public static void MarcarCasilla(Juego.Casilla cas)
 {
     if (cas.Ocupable)
     {
         Transform efec = cas.transform.GetChild(1);
         efec.gameObject.SetActive(true);
     }
     else
     {
         Transform efec = cas.transform.GetChild(0);
         efec.gameObject.SetActive(true);
     }
 }
Beispiel #4
0
 static void DesmarcarCasilla(Juego.Casilla cas)
 {
     if (cas.Ocupable)
     {
         Transform efec = cas.transform.GetChild(1);
         efec.gameObject.SetActive(false);
     }
     else
     {
         Transform efec = cas.transform.GetChild(0);
         efec.gameObject.SetActive(false);
     }
     cas.Ocupable = false;
 }
Beispiel #5
0
        public void CrearPieza(string piezaAcrear, string pos1, string color)
        {
            Juego.Casilla casilla = BuscarCasilla(pos1);

            Pieza pieza = new Pieza();

            Juego.Pieza piezaJuego = pieza.CrearPieza(piezaAcrear, casilla.posicion);
            pieza.PonerColor(color);

            pieza.PiezaPrincipal.transform.SetParent(Piezas.transform);

            ListaDePiezas.Add(piezaJuego);
            ListaDePiezas[ListaDePiezas.Count - 1].id = ListaDePiezas.Count - 1;
            //piezas = ListaDePiezas.ToArray ();
        }
Beispiel #6
0
        public static Juego.Casilla BuscarCasilla(string casilla)
        {
            Juego.Casilla cas = null;
            if (casilla != null)
            {
                string     textoAbuscar = casilla;
                GameObject casGO        = GameObject.Find(textoAbuscar);
                if (casGO == null)
                {
                    Debug.Log("Se busco = " + textoAbuscar);
                }
                cas = casGO.GetComponent <Juego.Casilla> ();
            }

            return(cas);
        }
Beispiel #7
0
        public void CrearDosPiezas(string piezaAcrear, string pos1, string pos2)
        {
            Juego.Casilla casilla     = BuscarCasilla(pos1);
            Pieza         piezaBlanca = new Pieza();
            Pieza         piezaOscura = new Pieza();

            Juego.Pieza pieza1 = piezaBlanca.CrearPieza(piezaAcrear, casilla.posicion);
            piezaBlanca.PonerColor("Claro");
            casilla = BuscarCasilla(pos2);
            Juego.Pieza pieza2 = piezaOscura.CrearPieza(piezaAcrear, casilla.posicion);
            piezaOscura.PonerColor("Oscuro");
            piezaOscura.PiezaPrincipal.transform.SetParent(Piezas.transform);
            piezaBlanca.PiezaPrincipal.transform.SetParent(Piezas.transform);

            ListaDePiezas.Add(pieza1);
            ListaDePiezas[ListaDePiezas.Count - 1].id = ListaDePiezas.Count - 1;
            ListaDePiezas.Add(pieza2);
            ListaDePiezas[ListaDePiezas.Count - 1].id = ListaDePiezas.Count - 1;
            //piezas = ListaDePiezas.ToArray ();
        }
Beispiel #8
0
        public static string[] CasillasHasta(Juego.Pieza pieza, string[] Casillas)
        {
            int cantidad = 0;

            foreach (string casBus in Casillas)
            {
                Juego.Casilla cas = BuscarCasilla(casBus);
                if (!cas.Ocupada)
                {
                    cantidad++;
                    break;
                }
                else
                {
                    if (pieza.name != "Peon")
                    {
                        if (cas.pieza.ColorPieza != pieza.ColorPieza)
                        {
                            cantidad++;
                            //cas.Ocupable = true;
                        }
                        else                             //pieza mismo color
                        {
                            if (cantidad >= 1)
                            {
                                cantidad--;
                            }
                        }
                    }
                    break;
                }
            }

            string[] posibles = new string[cantidad];
            for (int i = 0; i < posibles.Length; i++)
            {
                posibles[i] = Casillas[i];
            }

            return(posibles);
        }
Beispiel #9
0
        /// <summary>
        /// No marca si la cacilla esta ocupada o amenazada
        /// </summary>
        /// <param name="pieza"></param>
        /// <param name="Casillas"></param>
        /// <returns></returns>
        public static Juego.Casilla[] CacillaOcupada(Juego.Pieza pieza, Juego.Casilla[] Casillas)
        {
            List <Juego.Casilla> listacasillas = new List <Juego.Casilla> ();

            foreach (Juego.Casilla casilla in Casillas)
            {
                Juego.Casilla cas = casilla;
                listacasillas.Add(cas);
                if (cas.Ocupada)
                {
                    listacasillas.Remove(cas);
                    if (pieza.name == "Caballo")
                    {
                        if (cas.pieza.ColorPieza != pieza.ColorPieza)
                        {
                            listacasillas.Add(cas);
                            cas.Ocupable = true;
                        }
                    }
                    if (pieza.name == "Rey")
                    {
                        if (cas.pieza.ColorPieza != pieza.ColorPieza)
                        {
                            if (pieza.ColorPieza == Juego.color.Claro)
                            {
                                if (cas.AmenazadaPorOscuros.Count < 1)
                                {
                                    cas.Ocupable = false;
                                    listacasillas.Add(cas);
                                }
                                else
                                {
                                    listacasillas.Remove(cas);
                                }
                            }
                            else
                            {
                                if (cas.AmenazadaPorClaros.Count < 1)
                                {
                                    cas.Ocupable = false;
                                    listacasillas.Add(cas);
                                }
                                else
                                {
                                    listacasillas.Remove(cas);
                                }
                            }
                        }
                        else
                        {
                            listacasillas.Remove(cas);
                        }
                    }
                    if (pieza.name == "Peon")
                    {
                        if (cas.pieza.ColorPieza != pieza.ColorPieza)
                        {
                            if (cas.marcar)
                            {
                                listacasillas.Add(cas);
                                cas.Ocupable = true;
                            }
                        }
                        else
                        {
                            listacasillas.Remove(cas);
                        }
                    }
                }
            }

            return(listacasillas.ToArray());
        }
Beispiel #10
0
 void AgregarAlistaDeCasillas(int i, int x)
 {
     Juego.Casilla casilla = casillas[i][x].casilla.GetComponent <Juego.Casilla> ();
     Partida.ListaDeCasillas.Add(casilla);
 }