So in the minigame you must activate all the "candles" in order to win before the time is out, it works out fine until more than 1 person joins and the script scripts picking a map and goes straight for the countdown till the minigame is over and once it hits 1 the script breaks, ive spent a few hours trying to fix it but i seem to break it more?

minigames = game.Lighting.Minigames:GetChildren()
h = Instance.new("Hint",game.Workspace)
while true do
    if game.Players.NumPlayers > 0 then
        h.Text = "Picking random map..."
        wait(3)
        ranGame = math.random (1, #minigames)
        gameChosen = minigames[ranGame]
        h.Text = "Minigames Chosen:" .. gameChosen.Name
        wait(3)
        gameChosenClone = gameChosen:Clone()
        gameChosenClone.Parent = game.Workspace

	
wait(2)
end

plrs = game.Players:GetChildren()
    for i = 1, #plrs do
            plrs[i].Character:MoveTo(gameChosen.Spawn.Position)
        for i = 15, 1, -1 do
            h.Text = "Time left: " .. i
            wait(1)
        end
        h.Text = "Time is up..."
        wait (1)

		candles  = gameChosenClone.Candles:GetChildren()

        
        for _, v in pairs(candles) do -- Loop through the children
            if v.Part.Fire.Enabled == true then
                islit = true
				else islit = false
                break
            end
        end

        if islit then
            h.Text = "All the candles have been lit!, the Demon has decided not to come!"
        else 
            h.Text = "Not all of the candles were lit!, you have failed"
        end

print(islit)
        wait(3)
        gameChosenClone:Destroy()
    end
    wait(1)

end

1 comment

0

try organizing your code into functions that might help you debug it