Or trow you capx, i (or some one else will modify it), or try to understand.
When the animation frame = frame 8, you want it to spawn an arrow. But.
Your animation will not change a frame each tick. Because the speed of the animation is lower than the speed of ticks / second. A tick is the time it takes for al events to run once. On a fast computer that happens 120 times in 1 second. But if your animation is set to 20 frame changes (animation speed) in 1 second, each frame will be on screen for 6 ticks. (120 / 20)
Meaning, frame 8 will be on screen for 6 ticks. Or, that condition frame = 8 will be true for 6 ticks. Or, that event will be true 6 times in a row. So it spawns 6 arrows.
Solve it this way. Right click on that event containing that condition frame = 8, choose "add another condtion' from the list that pops up. Double click 'system'. Look for 'Trigger once while true'.
Now you have an event with two conditions. The 'Trigger once while true' will fire the arrow only the first time frame = 8. All other 5 times it will not fire, hence only one time when it is true.