ROBLOX - Если оператор не будет выполняться внутри цикла while? - PullRequest
0 голосов
/ 12 октября 2018

Я столкнулся с чем-то действительно странным.Первоначально я пытался сделать музыкальный сценарий (больше похоже на 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

Когда я запустил его, он либо напечатает только «Стоп», либо только «Воспроизведение».Строка, которую она напечатает, будет зависеть от значения значения bool, когда игра запускается, , так как она не меняет то, что печатает, в зависимости от текущего значения.Спасибо за помощь, спасибо!

Структура, SongScript - это то, что работает:
enter image description here

1 Ответ

0 голосов
/ 13 октября 2018

Никогда не делайте такой бесконечный цикл, разбивающий всю вашу систему!Есть намного более эффективный способ сделать.У вас возникла проблема из-за того, что сценарий автоматически ломался, поэтому он не разрушал всю вашу систему.

    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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...