i think you just need to add an 'else' before is player_right.
see, on the check, if player_right is false, it shoots the bullet, and then sets player_right to true.
... and then it checks if player_right is true.. which it now is..
an else will stop it from running that event until next check.