I can see what's gone wrong here but it's getting a little messy. You should really override everything that happens with the ship's state as primary comparison.
Space pressed > if ship anim=2 then spawn a laser and set laser state to 0
> if ship anim=0 then spawn a laser and set laser state to 1
At the moment every time a laser spawns its state is 2 (default). You have the set state of the laser action under the change ship state event, this is before a laser has been spawned so will not affect anything.