If I understand it correct, you hold down for instant W and you want the character to move 32 pixel forward?
If that's the case you should use "On key pressed" If you want to make it so the player can hold down the button and then it moves. You should add a small delay on how many times it can happen every cycle. You can do that by adding a every X second or every X ticks.
And you don't really need a "on released", you can just add an else to the keys.
So:
If W is down
Set character move forward = true
Else
Set character move forward = false
There shouldn't be any need for the part where you move at 0 and 0 angle.