the code:
stop holding button(primary fire, event player)
wait(.001) [increased and decreased wait, no effect]
loop if(holding button(event player, primary fire))
According to the inspector, this loop runs MULTIPLE TIMES. Plus, according to the inspector, there’s no other code which is telling primary fire to hold down the button between loops.