Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Por ultimo si controlamos los movimientos de nuestro enemigo de acuerdo a la maquina de estados finitos
characterEnemigo.SetFloat ("MoverseEnemigo", distanciaDelEnemigoAlCharacterPrincipal.sqrMagnitude * speedEnemigo);
Movimiento del
enemigo es un
parámetro tipo
Float el cual
permite saber si
me estoy
moviendo o no
Calcular el Angulo de Rotación en sentido del
Forward para personaje y enemigos (Juegos2.5D)
Nuestro código completo quedaría estructurado así
public Vector3 distanciaDelEnemigoAlCharacterPrincipal;
public Animator characterEnemigo;
distanciaDelEnemigoAlCharacterPrincipal = characterprincipal.position - transform.position;
transform.rotation = Quaternion.LookRotation(distanciaDelEnemigoAlCharacterPrincipal, transform.up);
if (distanciaDelEnemigoAlCharacterPrincipal.sqrMagnitude <0.8f) {
characterEnemigo.SetFloat ("MoverseEnemigo", distanciaDelEnemigoAlCharacterPrincipal.sqrMagnitude * speedEnemigo);
if (distanciaDelEnemigoAlCharacterPrincipal.sqrMagnitude <0.56f) {
characterEnemigo.SetFloat ("MoverseEnemigo", -0,2f);
characterEnemigo.SetBool ("Atacar", true);
}else{
characterEnemigo.SetBool ("Atacar", false);
}
}
Calcular el Angulo de Rotación en sentido del
Forward para personaje y enemigos (Juegos2.5D)