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++; } } } }
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; } }
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; } } }