Hello, I was hoping to get some guidance/assistance with this problem I am having in Godot.
I started a project where I want to create 8 way movement for my character.
The scene I’ve created consists of: CharacterBody2D, Camera2D, Area2D (with CollisionShape), CollisionShape2D (2 total), and an AnimatedSprite2D.
The issue:
When I stop moving my character doesn’t idle, he does transition to run, and can use the attack animation, but he won’t idle if I attach more than two animations I can do two, but then the third seems to be left out.
I tried several ways of fixing the movement the way I wanted and the solution I’ve come up with so far is to use get_vector with the four arguments being the four inputs (move_forward/backward, left/right)
Here is what I wrote currently:
I tried initially putting everything in _physics_process, but it becomes an if soup (and already is).
I also tried saving Input.get_vector to a variable named direction, and then making velocity = direction * speed, but this didn’t work for some reason?
I believe the issue is because idle is taking place in a delta process it is being constantly updated, so it cancels my attack move. Should I create an attack entirely separately even though its animated through my player character?