Yeah I see the problem...I think it has something to do with the runtime not deleting objects in loops or something. If you need a quick work around for now, you can add a private variable to bullet 'isdestroyed' and compare it to 0 (and set it to 1 when your destroying an object) on loop 'move'. This will make your game behave as you expect.
btw nice use of lights
Oh and nice use of an action point to move your object in the direction it's facing