Yeah, just for reference, here's what's going on here. If you have something like
+ Sprite Health < 0
-> Sprite: Destroy
-> Create 'explosion' at Sprite
If by chance two or more Sprites have Health < 0 at the same time (eg. a button to destroy them all), then multiple objects will be picked by the 'Health < 0' condition. The 'Destroy' action is called once per picked instance, but system actions have no regard for picked objects, and only run once. So you only get one explosion. Adding the for-each forces it to run the actions repeatedly for each instance, so you get enough explosions as well. This is true of any system action.