制御文「if」はプログラミングになくてはならないものです。条件分岐を行います。
登場する英単語
英単語 | 読み方 | 英訳 |
---|---|---|
if | イフ | 「もし」 |
then | ゼン | 「その時」 |
else | エルス | 「そうでなければ」 |
elseif | エルスイフ | 「それ以外の場合」 |
Fire | ファイヤ | 「火」 火を演出するエフェクト |
Size | サイズ | 「大きさ」 炎の大きさ |
Heat | ヒート | 「熱」 この値を大きくすると火柱が上がる |
チェックポイント
- キーワード「if」に続き、条件式を指定
- 条件式の後ろは「then」
- 条件が一致したときのプログラムを記述
- 最後に「end」で終了
- 「elseif」を使うと、複数の条件式で異なった処理ができる
local heat = 0
script.Parent.Fire.Size = 2
script.Parent.Fire.Heat = heat
for size=2,20 do
script.Parent.Fire.Size = size
if size > 9 then
script.Parent.Fire.Heat = heat
heat = heat + 1
end
wait(0.5)
end
- プレイヤーが火に入ってもダメージは受けない
- ダメージを受けるようにするにはさらにプログラムが必要
4 thoughts on “第11回 ~制御文 if~”
コメントを残す
コメントを投稿するにはログインしてください。
第11回の話では、変数はsizeとheatがありますがなぜ、最初に変数の宣言をするのはheatだけなのですか?
local size =2と入力しなくていいのはなぜですか?
逆に、local heat =0 と宣言する必要はあるのですか?これなしで、すぐに
script.Parent.Fire.size =2
script.Parent.Fire.Heat =0
とスクリプトしていくとうまくいかないのはなぜですか?
「local size = 2」としなくて良いのは for の仕様です。
for 変数名=初期値,終了値 do
end
と記述します。変数名の前にlocalを付けません。
「script.Parent.Fire.size = 2」ですとエラーになります。
ここで指定するのはプロパティのSizeになります。プロパティは必ず頭が大文字から始まります。
第12回の説明を聞いてわかりました。オブジェクトそのものには変数宣言はできるが、プロパティは変数宣言ができないとうことですか?
そうです。
例えば、
local FireSize = script.Parent.Fire.Size
と記述すると、FireSize には Fire.Size の値が代入されることになります。