Lo primero de todo, faltan algunos sprites (tienen calidad mala y tienen que ser actualizados y resubidos). Estos sprites son los de recibir daño y los de salto.
Por otro lado, el personaje debe ser capaz de realizar los siguientes movimientos:
Moverse horizontalmente, pasando del reposo a correr en una dirección u otra. De igual manera al estar corriendo y detenerse el personaje deberá quedarse en reposo mirando en esa misma dirección (actualmente mira siempre hacia la derecha con el float en valor 0).
Realizar saltos diagonales, siendo capaz de elegir la dirección solo en el momento del salto.
Pulsar un botón para agacharse, así como soltarlo para levantarse, al haberse agachado tardará un poco en levantarse sin importar que suelte el botón automáticamente (por la animación).
Pulsar un botón que active una booleana que le diga si tiene que utilizar el arma buena o la mala.
Disparar en cada dirección dependiendo de hacia donde esté mirando (derecha/izquierda), siempre y cuando el jugador esté pisando el suelo (booleana isgrounded activa).
No se me ocurre nada más, pero seguro que se me van a ocurrir mazo de cosas. Ya iré añadiendo comentarios a la issue.
He realilzado un commit con una escena de pruebas. Comentarios:
Al final es cierto que animar con Blend Tree supone un problema para determinar hacia que lado mira, así que he optado por crear una booleana que determina si mira hacia la izquierda, y a partir de ahí crear animaciones distintas para la derecha y para la izquierda (IMPORTANTE: si miráis el código, veréis que al determinar si es "true" ignora el valor 0, eso permite que al dejar el joystick en reposo se quede en la última posición conocida)
Los parámetros de velocidad de movimiento, impulso de salto, y salto lateral se tienen que ajustar, jugando con la masa del personaje, su resistencia al aire e incluso con la fricción del material (eso no lo he añadido de momento)
Para el disparo, he preferido usar el RT en lugar del RB, ya que es un Button y no un Axis, y no quería tocar la configuración de los Input. Luego lo cambiamos en clase si acaso.
He puesto un texto en pantalla indicando el arma. Supongo que lo suyo será indicarlo con una imagen, ¿correcto? Tenemos una UI para eso?
He creado una plataforma usando los "Effectores" que nos permite que solo detecte colisión por arriba
He añadido un enemigo, que al detectar al personaje cambia su animación
Queda instanciar los proyectiles. Luego en clase lo comentamos.
Lo primero de todo, faltan algunos sprites (tienen calidad mala y tienen que ser actualizados y resubidos). Estos sprites son los de recibir daño y los de salto. Por otro lado, el personaje debe ser capaz de realizar los siguientes movimientos: