Example #1
0
    public void GenerateEnemies()
    {
        gm = FindObjectOfType <GameManager>();
        if (gm)
        {
            if (gm.GetJugadoresEnemigos().Count == 0)
            {
                GenerateRandomEnemies(); // enemigos aleatorios para el solo play
            }
            else
            {
                // enemigos escogidos en multiplayer
                int n = 0;
                foreach (Personaje p in gm.GetJugadoresEnemigos())
                {
                    gestor.SetEnemigo(Instantiate(p), n);
                    int z;
                    do
                    {
                        z = Random.Range(0, tablero.GetColumnas());
                    } while (tablero.GetCasilla(0, z).EstaOcupada());

                    tablero.GetCasilla(0, z).Ocupar(gestor.GetEnemigo(n));

                    gestor.GetEnemigo(n).SetPos(0, z);
                    gestor.GetEnemigo(n).Girar();
                    gestor.GetEnemigo(n).SetEnemigo();
                    gestor.GetEnemigo(n).SetColor(rojoEnemigo);
                    n++;
                }
            }
        }
    }
Example #2
0
 protected override void RestauraEspecial()
 {
     if (retirada)
     {
         Terreno tablero = FindObjectOfType <Terreno>();
         int     fila    = tablero.GetFilas() - 1;
         if (!aliado)
         {
             fila = 0;
         }
         for (int i = 0; i < tablero.GetColumnas() - 1; i++)
         {
             if (!tablero.GetCasilla(fila, i).EstaOcupada())
             {
                 tablero.GetCasilla(casillaX, casillaZ).Desocupar();
                 tablero.GetCasilla(fila, i).Ocupar(this);
                 SetPos(fila, i);
                 break;
             }
         }
         log.LanzaLog("A Yaiza se le ha pasado el cabreo por fin.");
         retirada = false;
         hombroDch.eulerAngles = initialHombroDchRot;
         hombroIzq.eulerAngles = initialHombroIzqRot;
         codoDch.eulerAngles   = initialCodoDchRot;
         codoIzq.eulerAngles   = initialCodoIzqRot;
     }
 }
Example #3
0
    private void IrALaCama()
    {
        Terreno tablero = FindObjectOfType <Terreno>();
        int     fila    = tablero.GetFilas() - 1;

        if (!aliado)
        {
            fila = 0;
        }
        for (int i = 0; i < tablero.GetColumnas() - 1; i++)
        {
            if (!tablero.GetCasilla(fila, i).EstaOcupada() &&
                !tablero.GetCasilla(fila, i + 1).EstaOcupada())
            {
                tablero.GetCasilla(casillaX, casillaZ).Desocupar();
                tablero.GetCasilla(fila, i).Ocupar(this);
                tablero.GetCasilla(fila, i + 1).Ocupar(this);
                SetPos(fila, i);
                FindObjectOfType <Camara>().EnfocaCamaraAE(transform.position + new Vector3(0, -0.5f, 1.5f), aliado);
                break;
            }
        }
    }