It’s 3am here, I may call it a night soon.
Some thing I noticed, the enemy node you have is still moving, if I add in an update function like this:
function update(self, dt)
print("My position is: " .. tostring( go.get_position() ))
end
You can see the position changing as it moves across the screen. Stranger still, is that when you change the timer in the main script from repeat = true to repeat = false. The character just seems to vanish.
I figured it out, kinda. When I change this line from within the character script from
local newPosition = vmath.vector3(path[i].x, path[i].y, 1)
to:
local newPosition = vmath.vector3(path[i].x, path[i].y, 0)
The node is visible and will travel around the screen properly. It existed the entire time but was somehow being rendered out, with the new node spawning every second, and the old node waiting a full second to move, it gave the appearance of it not moving while it was moving just above or bellow the render area. I am fully lost on why this happens between version 12 and 13, but it is still working, which I think is a good thing.