クリックしてね
CoddyのLuaジャーニー「Robloxゲームのスクリプティング」セクションの一部。レッスン 20/25。
パーツ内にClickDetectorを置くと、そのパーツをクリックできるようになります。パーツの上にマウスカーソルを合わせると手の形に変わり、クリックしたプレイヤーを引数としてMouseClickイベントが発生します。プレイヤーは最大32スタッド離れた場所からクリックできます。
local bell = script.Parent
bell.ClickDetector.MouseClick:Connect(function(player)
print(player.Name .. " rang the bell")
end)スイッチには、オンかどうかを記憶させる必要があります。その状態を関数の外側にある変数に保存し、notで切り替えます。not trueはfalse、not falseはtrueです。
local open = false
open = not open -- 今はtrue
open = not open -- 再びfalseチャレンジ
中級丸いランプをスイッチにして、クリックするたびにオンとオフが切り替わるようにしましょう。
- クリック関数の中で、
onを反対の値に切り替えます。 - 次に、
onならランプのMaterialをNeonに設定し、そうでなければPlasticに設定します。最初はオフです。
「プレイ」を押してランプを数回クリックします。光って、消えて、また光ります。その後、「確認」を押します。
自分で試してみよう
local lamp = script.Parent
local on = false
lamp.ClickDetector.MouseClick:Connect(function(player)
-- on の状態を切り替え、ランプが点灯しているときは Neon、消灯しているときは Plastic にする
end)
Robloxゲームのスクリプティングのすべてのレッスン
自分で練習してみよう: Luaオンラインコンパイラ