Rule Making

回転するバー

棒がぐるぐる回って、ジャンプのタイミングを試すギミック

o

中心にある長い棒が、時計の針のように回る。

このギミックのルール

ずっと角度を変え続けると、バーが回転する。

Studioで作るもの

SpinningBarScript
  1. 長いPartを1つ置いて、名前を SpinningBar にする。
  2. Anchoredをオンにする。
  3. バーの中にScriptを入れる。
  4. 当たると押されるように、CanCollideはオンのままにする。

考え方の図解

1

バーを見つける

2

少しだけ回す

3

少し待つ

4

何度もくり返す

Typing Time

手で書いてみよう

黄色の行は、コードの道案内です。声に出して読んでから、その下の命令をゆっくり手打ちしてみよう。

1行ずつ写す黄色の説明を読む数字を変えて実験する
-- 1. 回転させるバーをつかまえるlocal bar = script.Parent -- 2. 回転の速さを決めるlocal spinSpeed = 3 -- 3. ずっと回し続けるwhile true do    -- Y方向に少しだけ回す    bar.CFrame = bar.CFrame * CFrame.Angles(0, math.rad(spinSpeed), 0)    task.wait()end
CFrameは「場所と向き」をあわせて持っているもの。
CFrame.Anglesは、パーツを回転させるための命令。
math.radは、角度をRobloxが使いやすい形に変える命令。
spinSpeedを大きくすると、回転が速くなる。

Remix Missions

改造ミッション

Power Up Code

改造ミッションのコード

できたギミックに少し足すだけで、ステージのルールが変わります。まず1つ選んで、黄色の説明を読みながら書いてみよう。

逆向きに回す

数字をマイナスにすると、回る向きが反対になります。

-- 反対向きに回るlocal spinSpeed = -3

ゆっくり回る安全バーにする

小さい数字にすると、見てからジャンプしやすくなります。

-- はじめてでも避けやすい速さlocal spinSpeed = 1

当たったらダメージを受けるバーにする

回転コードの下に追加します。触れたら体力を少し減らします。

-- バーに当たったらダメージbar.Touched:Connect(function(hit)    local humanoid = hit.Parent:FindFirstChild("Humanoid")     if humanoid then        humanoid.Health = humanoid.Health - 10    endend)