経験では、よく多くの原因と結果の関係があります。たとえば:
- プレイヤーが 10 ポイントを得点すると、ゲームに勝ちます。
- プレイヤーがパワーアップを持っている場合、超速で走ることができます。
- プレイヤーがチャットで「誕生日おめでとう」と言えば、紙吹雪が降ります。
スクリプトは条件付き文を使用して、この種の状況を処理します。 条件付き文は 、特定の条件が真実である場合にのみ実行されるコードの行です。1つの条件文の種類は、 条件文/然後文 です。Luau では、if 文の構文パターンは次のようになります:
if その後の構文
if "something happens" then-- 別のことを起こす Make something else happenend
条件を使用したコードチャンクは コントロール構造です。: コントロール構造は、コードフォームのフローダイアグラムと同じように、複数の条件文があることができます。
文の練習を行う場合
これらのステップでは、文が真である場合にパーツの色を変更するスクリプトを作成する方法を示します。
In ServerScriptService で、新しいスクリプトを作成し、名前を TruthChecker とします。スクリプトに適切なコメントを追加します。
-- 条件が真である場合、パーツを変更する新しい部品「LieDetector」を作成します。
文を格式化する if 文
条件 はさまざまな形式で登場する可能性がありますが、しばしば数学方程式のような単純な文言です。たとえば、1+1が 2 で等しい場合、コードを実行します。普通の数学方程式と同様、条件付きはプラス()またはマイナス()などの オペレーター を使用して、文を評価できます。
注意したい特定のオペレーターは == です;それは「等しい」という意味です。つまり、ステートメント 2 + 2 == 4 は「2 プラス 2 は 4 で等しい」として読むことができます。変数のようなオブジェクトに新しい値を割り当てる = と混同しないように注意してください。
空の条件を設定します。スクリプトでは、if then を入力し、Enter を押して条件を自動完了させます。キーワード then はコードが未完了なために強調されます。
if then-- 空のコードendキーワード if の後、3 + 3 == 6 のような真の文を入力します。
if 3 + 3 == 6 then-- 空のコードend条件付き内で、「LieDetector」という名前のパーツを参照し、パーツの Color プロパティを緑に変更します。
if 3 + 3 == 6 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)endテスト コード。三加三が六に等しい場合、パーツは緑に変わります。
偽の条件をチェック
次に、故意に文を変更して、数学方程式が偽いときに何が起こるかを見ます。
if 文では、3 + 3 >= 10 などの不正確な式に変更します。
if 3 + 3 >= 10 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)end今コードをテストします。パーツは偽の文で緑になるべきではありません。
数学演算子
以下の表は、一般的な Luau オペレータをいくつか列挙しています。オペレータに関する詳細情報は、Luau オペレーター で見つけることができます。
シンボル | 意味 |
---|---|
+ | 追加 |
- | 減算 |
* | 乗算 |
/ | 分割 |
比較演算子
- == : 同等です。
- ~= : は等しくありません。
- < または > は、それぞれに対して少なく或いは多く使用されます。
- <= または >= は、それぞれ少なく/大きく、または同等で使用されます。
変数とプロパティ
条件付き文は、プロパティと変数の状態を評価するのにも使用されます。次のステップでは、変数に値が正常に割り当てられたかどうかをチェックします。
コードをすべて削除し、次のスニペットをスクリプトにコピーします。テストして、出力に新しいエラーが表示されます。
local mysteryPart = workspace.MysteryPart-- MysteryPart が成功して割り当てられた場合は真と評価されますif mysteryPart thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)end新しいパーツを「ミステリーパーツ」というワークスペースに挿入します。再度テストし、LieDetector は緑色に変わるはずです。
条件付きでプロパティを評価する方法を探索します。MysteryPart を維持しますが、再びコードを削除し、以下のコードボックスをコピーします。
local mysteryPart = workspace.MysteryPart-- ミステリーパーツが完全に不透明であると評価します if MysteryPart is fully opaqueif mysteryPart.Transparency == 0 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)mysteryPart.Transparency = .2endコードをテストし、MysteryPart にデフォルトの透明度 0 がある場合、LieDetector が緑色になると、幽霊化します。
概要
条件付き文は、文が正確かどうかをチェックし、正確であれば、コードを実行します。文が非常に一般的な条件文の種類である場合。パターン「これが真実であれば、それを行う」を使用します。
条件文を使用したコードチャンクは、コントロール構造と呼ばれます。コントロール構造は、複数の条件文を保持できます。
単純な数学ステートメントが事実かどうかを評価することに加えて、条件付きも変数とプロパティの状態をチェックするために使用されます。