XDargu / broken-puppet

Juego Broken Puppet del Máster en Creación de Videojuegos de la UPF
0 stars 0 forks source link

Error al caer en grietas #4

Open XDargu opened 9 years ago

XDargu commented 9 years ago

Cuando el player salta y cae de forma que el rayo que detecta el suelo no detecte colisión pero la cápsula sí lo haga (por ejemplo, en una grieta), el personaje se queda eternamente cayendo.

XDargu commented 9 years ago

Sugerencia: ¿y si hacemos que, cuando la velocidad lineal sea casi 0, el estado se cambie a Idle? Haciendo también que solo se llegue al estado de Falling si la velocidad lineal es menor que ese margen. Es decir, añadir un threshold.

Añadir en donde se comprueba la colisión con el suelo:

float threshold = 0.1f;
if (lineal_velocity < -threshold) { groundCheck(); }

Y en Falling:

if (lineal_velocity > -threshold) { ChangeState("Idle"); }
XDargu commented 9 years ago

Se ha añadido EvaluateMovement a Fall y WrongFall, de forma que se podrá mover aunque se quede atascado. Lo único que dará será un fallo de animación.