The event sheet is read from top to bottom every tick (frame) of execution.
And the actions of an event are executed when their condition is true.
So 1 second after the start of execution a variable is set to a certain value, and every tick C2 testes if this variable is equal to this value.
As it is, it positions the bullet to 0,0, stopping the movement when actually the sprite is moved and repositioned every tick.
Add a condition "System: Trigger once while true" to your event 2 and it works as you intended it.
Nevertheless I'd strongly suggest you to go through some tutorials like my asteroid clone in less than 100 events which should introduce you to a lot of elements of C2 like that.
This issue is not a C2 bug though.