2016-11-13 40 views

回答

0

首先不使用循環,使用活動!

要等待event發生,你可以使用wait方法,像這樣:

print("Starting to wait for touch") 
workspace.Part.Touched:Wait() 
print("Touched!") 

這將等待部分繼續腳本之前被感動。 但是當然,其他腳本仍然會運行,遊戲不會「暫停」,只是該腳本的執行被暫停,直到事件被觸發。

您還可以自定義「等電話」通過使用例如BoolValue像這樣:

local WaitObject = Instance.new("BoolValue") 

function WaitOn() 
    WaitObject.Changed:Wait() 
end 

function StopWait() 
    WaitObject.Value = not WaitObject.Value 
end 

您也可以將BoolValue在遊戲中做的等待和停止等待中分離腳本。 如果你使用同一個腳本,請記得使用不同的threads

+0

其實我正在考慮像重複等待(),直到函數f1或其他任何東西 – arthurgps2

+0

@ arthurgps2不要使用循環。如果你追蹤你真正在等待什麼,你應該找到一個你可以使用「:wait()」的事件。如果你找不到這樣的事件,看看我的答案中提到的「BoolValue」,如果它不是你想要的,你需要更清楚地解釋你的特定問題。 – ZombieSpy

相關問題