Menu
CoddyTech

消える橋

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

点滅するライトは1つのパーツを変えました。橋にはたくさんのステップがあり、すべてを一緒に変える必要があります。

GetChildren()は、オブジェクトの直接の子をテーブルとして返すので、forループですぐに使えます。GetChildrenのように、オブジェクトに属する関数はコロンを使って呼び出します。

for _, child in workspace.Bridge:GetChildren() do
	print(child.Name)
end

フォルダーにはScriptも入れることができますが、ScriptにはTransparencyがありません。child:IsA("BasePart")は、あらゆる種類のパーツに対してtrueを返し、Scriptに対してはfalseを返します。if condition then ... endは、条件がtrueのときに限り、内部の行を実行します。

if child:IsA("BasePart") then
	child.Transparency = 0.8
end

透けて見えるパーツでも、固体のままにできます。プレイヤーがすり抜けられるようにするのは、CanCollide = falseです。

challenge icon

チャレンジ

簡単

その橋は空間に架かる4段のステップでできており、このスクリプトは橋のフォルダー内にあります。スクリプトはステップを一度だけ消します。橋が永遠に繰り返すようにしましょう。

  • 開始から2秒後にステップが消えます: Transparency 0.8、CanCollide false
  • その2秒後にステップが戻ります: Transparency 0、CanCollide true
  • これが4秒ごとに永遠に繰り返されます

Playを押して、渡りきるタイミングを計ってから、Checkを押しましょう。

自分で試してみよう

local bridge = script.Parent

-- これにより、2秒後に足場が一度だけ消えます。
-- さらに2秒後に足場を元に戻し、それを永遠に繰り返してください。
task.wait(2)
for _, step in bridge:GetChildren() do
	if step:IsA("BasePart") then
		step.Transparency = 0.8
		step.CanCollide = false
	end
end
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

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

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