private void pintarCasillaApuntada()
    {
        RaycastHit hit;

        tablero.pintarCasillas();

        if (Physics.Raycast(fpsCam.transform.position, fpsCam.transform.forward, out hit, weaponRange))
        {
            if (hit.collider.CompareTag("Casilla"))
            {
                if (hit.collider.GetComponent <Casilla>().existePieza())
                {
                    Pieza pieza = hit.collider.GetComponent <Casilla>().getPieza();
                    if (pieza.GetComponent <Pieza>().esBlanca)
                    {
                        hit.collider.GetComponent <Renderer>().material.color = new Color(0.1f, 0.7f, 0.1f);
                        //Debug.Log(hit2.collider);
                        //Debug.Log(hit2.collider.GetComponent<Casilla>().getx());
                    }
                }
                else
                {
                    hit.collider.GetComponent <Renderer>().material.color = new Color(0.8f, 0, 0);
                }
            }
        }
    }
Exemple #2
0
    /** Coloca la pieza pasada en su posicion en el tablero
     * Tratar como si el tablero fuese en 2D
     */
    public void moverPieza(Pieza pieza, int posX, int posY)
    {
        //Obtener la altura del tablero
        float altura = casillas[posX, posY].transform.position.y + 0.5f;

        //Colocar la pieza visualmente
        pieza.transform.position = new Vector3(casillas[posX, posY].transform.position.x,
                                               altura,
                                               casillas[posX, posY].transform.position.z);

        //Colocar pieza en clase Casilla
        casillas[posX, posY].GetComponent <Casilla>().setPieza(pieza);

        //Quitar pieza de la casilla anterior
        int posxAnterior = pieza.posx;
        int posyAnterior = pieza.posy;

        casillas[posxAnterior, posyAnterior].setPieza(null);

        //Actualizar la posicion xy de la pieza
        pieza.GetComponent <Pieza>().setx(posX);
        pieza.GetComponent <Pieza>().sety(posY);
    }