I solved it!
The problem was that every time I used a dash it would set the boolean to false which in turn would trigger the check for if it was false to turn it to true. However because I didn't use "System>Trigger Once" as a condition it would stack on top of each other causing it to remain true even when it was supposed to be false.
I don't know, but maybe this will be helpful for someone who might have similar problems in the future.