if文(条件分岐)って何?
if文(条件分岐)とは、「もし〇〇だったら、△△する」という考え方をプログラムで表現する方法です。
Robloxでは、プレイヤーの動きやゲームのルールを変えるために、if文をとてもよく使います。
身近な例で考えてみよう
まずはプログラミング以外の例で考えてみましょう。
- もし 雨が降っていたら → 傘を持っていく
- もし 宿題が終わっていたら → ゲームをしていい
- もし 体力が0になったら → ゲームオーバー
この「もし〇〇だったら」という部分が、if文の考え方です。
Robloxのif文の基本形
Roblox(Lua)でのif文の基本形は次のようになります。
if 条件 then
実行したい処理
end
条件が正しい(true)ときだけ、中の処理が実行されます。
例1:パーツに触れたらメッセージを出す
まずはシンプルな例です。パーツに触れた「相手」がプレイヤーだった場合だけ、メッセージを出します。
script.Parent.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") then
print("プレイヤーが触れました!")
end
end)
このif文の意味
hit.Parent:触れた相手Humanoid:プレイヤーかどうかを判断する目印- Humanoidがあったら → プレイヤー
「もし触れた相手がプレイヤーだったら、メッセージを表示する」という処理です。
例2:条件によって動きを変える
次は、条件によって動きが変わる例です。
「プレイヤーが触れたら、そのパーツが上に動く」ようにしてみます。
script.Parent.Touched:Connect(function(hit)
if hit.Parent:FindFirstChild("Humanoid") then
script.Parent.Position = script.Parent.Position + Vector3.new(0, 5, 0)
end
end)
プレイヤーが触れたときだけ、パーツが上に移動します。
if文がないとどうなる?
もしif文がなかったらどうなるでしょうか。
- プレイヤー以外が触れても動く
- 落ちてきたパーツや床に触れても反応する
if文を使うことで、「反応してほしい条件だけを選ぶ」ことができます。
よくある間違い
endを書き忘れる- 条件の書き方を間違える
- if文の中に入れる処理がずれている(インデント)
エラーが出たら、if ~ then ~ end の形になっているかを確認しましょう。
まとめ
- if文は「もし〇〇だったら△△する」という考え方
- ゲームの動きを切り替えるために必須
- プレイヤーかどうかの判定でよく使われる
if文が使えるようになると、ゲームらしい動きが一気に作れるようになります。
次は、else(それ以外の場合)や、複数の条件にも挑戦してみましょう。

