So I’m using a coroutine with a while loop inside and I’ve found that adding the most random things will cause the while loop to break or only run once.
This code is okay: (‘check will print as normal’)
local Thread1 = coroutine.create(function()
while true do
print("check")
for _, tycoon in pairs(game.Workspace.GameContent:GetChildren()) do
end
wait()
end
end)
coroutine.resume(Thread1)
This code is NOT okay: (‘check’ only prints once and never again)
local Thread1 = coroutine.create(function()
while true do
print("check")
for _, tycoon in pairs(game.Workspace.GameContent:GetChildren()) do
for _, npc in pairs(tycoon.Pathfinding.Npcs:GetChildren()) do
print(npc)
end
end
wait()
end
end)
coroutine.resume(Thread1)
For clarification, there are no parts in the ‘npc’ folder but there will be when instanced into the game. That’s the reason why I have the loop, to constantly check. I have no idea why something so little or normal could break the loop.
I also found that doing a simple print will break the while loop. (print is below)
print(#tycoon.Pathfinding.Npcs:GetChildren())
There are no errors in the output. Could someone please tell me why this is happening?