Weird issue with Timers

I’m trying to set a few timers during a loop, so that a series of the same function can be triggered after varying amounts of time, but I’m having a weird thing happen where all of the timers get set to the final input time.

Here is the basic setup:

So based on an array of start times (the input ‘Spawn Times’), I am looping through and running this function:

So this function sets a timer based on the input, to run the function which actually spawns the star. I haven’t included the spawn star function because it’s pretty big, and doesn’t seem to be the issue here.

I’ve put some debug printing in there, and here is the output:


LogBlueprintUserMessages: [Star_Birther_C_0] Triggering Star Timer
LogBlueprintUserMessages: [Star_Birther_C_0] Star Birth Time 0.01
LogBlueprintUserMessages: [Star_Birther_C_0] Triggering Star Timer
LogBlueprintUserMessages: [Star_Birther_C_0] Star Birth Time 3.34
LogBlueprintUserMessages: [Star_Birther_C_0] Triggering Star Timer
LogBlueprintUserMessages: [Star_Birther_C_0] Star Birth Time 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_0: 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_1: 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_2: 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_0: 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_1: 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_2: 6.3
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_0: 6.289
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_1: 6.289
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_2: 6.289
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_0: 6.275
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_1: 6.275
LogBlueprintUserMessages: [Star_Birther_C_0] Timer_2: 6.275

As you can see, at the point the timers are set, they are being set with the correct, and unique, times (0.01, 3.34, 6.3)
However, once the timers start running, you can see that they are all starting from 6.3, the final time in the array.

At first I thought that I was just ending up with one timer, but as you can see, I end up with three timers in my array of timers, they just all have the same start time once it starts running.

What’s going on here?!