Menu
CoddyTech

点滅するライト

CoddyのLuaジャーニー「Robloxゲームのスクリプティング」セクションの一部。レッスン 9/25。

連続して同じ部分を2回変更すると、2回目の変更しか見えません。スクリプトは両方の行を一瞬で実行するからです。task.wait(seconds)を使うと、その間スクリプトを一時停止できます。その間もゲームは動き続けます。

print("Ready")
task.wait(3)
print("Go!")

Go!はReadyの3秒後に表示されます。

何かを永遠に繰り返すには、while true doループを使います。ループ本体を実行してから、最初に戻ります。

local sign = script.Parent
while true do
	sign.Color = Color3.fromRGB(255, 0, 0)
	task.wait(0.5)
	sign.Color = Color3.fromRGB(0, 0, 255)
	task.wait(0.5)
end

この看板は、0.5秒ごとに赤と青に点滅します。while trueループには必ずtask.waitを含める必要があります。これがないとゲームを続行させることができず、Robloxはタイムアウトエラーでスクリプトを停止します。

challenge icon

チャレンジ

簡単

ランプを点滅させましょう。スクリプトの切り替えが速すぎて、光っているのが見えません。

  1. Neonの行の後と、Plasticの行の後にtask.wait(1)を追加します。
  2. 4行すべてをwhile true do ... endで囲みます。

「プレイ」を押すと、ランプは1秒間光り、その後1秒間消え、これを繰り返します。次に「確認」を押します。

自分で試してみよう

local lamp = script.Parent

lamp.Material = Enum.Material.Neon
lamp.Material = Enum.Material.Plastic

Robloxゲームのスクリプティングのすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ