ROBLOX-如果语句不在while循环内运行?

时间:2018-10-12 11:24:44

标签: lua roblox

我遇到了非常奇怪的事情。我最初试图制作音乐脚本(更像是system,tbh),但它有相同的问题。现在,我将其简化为一个简单的测试:

while true do
    if script.Parent.musicstate.Value == true then
        print("Play")
    elseif script.Parent.musicstate.Value == false then
        print("Stop")
    end
    wait()
end

当我运行它时,它将仅打印“停止”或仅打印“播放”。当游戏启动时,它将打印的字符串将取决于布尔值的值,因为在其中不会根据当前值更改打印的内容。所有帮助将不胜感激,谢谢!

正在运行的结构SongScript:
enter image description here

1 个答案:

答案 0 :(得分:0)

永远都不会使整个系统崩溃!有很多更有效的方法。由于脚本会自动中断,因此不会破坏整个系统,因此您遇到了问题。

    script.Parent.musicstate.Changed:Connect(function()
    if script.Parent.musicstate.Value == true then
    print("Play")
elseif script.Parent.musicstate.Value == false then
    print("Stop")
    end
    end)