In the end I just changed everything considering I gave up on it, it was taking me too long.
I opted for the LaunchCharacter function and I changed everything to this:
void ATBO02Character::Dash(bool IsMoving)
{
FVector LastInputVector = GetLastMovementInputVector();
FVector MeshForwardVector = GetActorForwardVector();
if (IsMoving)
LaunchCharacter(LastInputVector * DashSpeed, true, true);
else
LaunchCharacter(MeshForwardVector * DashSpeed, true, true);
}
The function is called when I press SpaceBar and it receives through blueprint the DashSpeed, and by calling the Input_Action_Move I set CanDash as true if the IA is triggered and false if the IA is completed.
I really didn’t understand if it was an override or what, considering that I was actually printing the Velocity in the Tick function , and it wouldn’t change even after 1 minute of not pressing anything.
Thank you all for the kind suggestions, tomorrow I will try to do what @ShawnDaGeek and @BadScientist89 were talking about. Will update in case something positive comes out.