Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How do I stop this While True Do loop?

Asked by 4 years ago

There are the proper variables in place btw

Anyways, this script is supposed to make a block strobe and stuff, but I can't get it to stop. I try to break the loop but it does nothing and keep strobing. What am I missing here?

function strobe()
    s:Play()
    local parts = a:GetChildren()
    for i,v in pairs(parts) do
        if v.name == "Strobe" then
            spawn(function(f)
                while true do --Setting up a loop to cycle through 
                    v.Material = "Neon"
                    v.PointLight.Brightness = v.PointLight.Brightness == 0 and 5 or 0;
                    wait(0.03)
                        if t.Screen.SurfaceGui.MainFrame.GrayThing.ImageLabel.ImageButtonOff.MouseButton1Down == true then
                            break
                        end
                    end

            end)
       end   
   end
end

t.Screen.SurfaceGui.MainFrame.GrayThing.ImageLabel.ImageButtonOn.MouseButton1Down:Connect(function()
    strobe()
end)

c.MouseClick:Connect(function(clicker) --Linking a function to the click of the handle
    strobe()
end)

Thanks!

0
.MouseButton1Down isnt a boolean, its an event theking48989987 2147 — 4y
0
But how would I stop the loop and return the blocks to being static? MustangHeart 67 — 4y

1 answer

Log in to vote
1
Answered by
174gb 290 Moderation Voter
4 years ago
Edited 3 years ago
--You can stop while true do making a variable true and changing to false
local loop = true

--Example using click
script.Parent.MouseButton1Click:connect(function()
   loop = false
end)

while loop do
    wait()
    print("Hello")
end

0
i dont see the point of setting loop to false in the actual while loop itself, it just stops it after one iteration theking48989987 2147 — 4y
0
lol totally forgot that was a feature. Thanks dude! MustangHeart 67 — 4y
0
and place the event above the loop, anything under an infinite loop wont run theking48989987 2147 — 4y
Ad

Answer this question