Right now SDL events stay active because we never release them. For example if you do a mouse left-click down press then you need to follow it with a mouse left-click up release.
You can test this by just calling the function to click the mouse down once, and you will notice the player fires until no more ammo is available despite only calling it once.
Right now SDL events stay active because we never release them. For example if you do a mouse left-click down press then you need to follow it with a mouse left-click up release.