for some reason, I think I might be missing a simpler solution but
first off, I'm assuming the random(1000) milliseconds might have been a logic error? that would make the spawn take place between 0 and 999 milliseconds apart, but have no effect on which object spawned it. you need to use conditions to get construct to refer to a specific object
Also, for this example I assumed you only wanted 1 spawn to take place at a time.
unfortunately, as awkward as this solution is, I can't provide an explanation now, I'm going to be late if I don't leave to work now, but please ask questions if you have any, I'll be back later, plus, the other board members might be able to help: