GDScriptのループ処理
GDScriptでのループ処理は、forループまたはwhileループを使用して行います。
Forループ
forループは、数値の範囲や配列、辞書などのオブジェクトを反復処理するために使用します。
範囲関数(range)
range
関数を使用すると、整数の範囲を定義できます。開始番号はデフォルトで0です。終了番号は、指定した最大値の1つ上の値になります。これはインデックスが通常0から始まるための伝統的な仕様です。また、ステップ値(増加量または減少量)を指定することもできます。デフォルトは1です。ステップ値は正の値も負の値も使用可能です。
文の記述
forループの本体はインデントして記述します。
特殊な制御
break
ステートメント
ループを途中で終了させることができます。例えば、コレクションやテキストドキュメント内で特定のアイテムを検索するループで使用されることがあります。continue
ステートメント
ループの本体の残りをスキップして次の反復に進みます。
forループのコード例
以下は、forループをさまざまな方法で実装した例です:
gdscriptコードをコピーする# 0から7までのループfor n in 8: print(n)
# rangeを使用for n in range(8): print(n)
# 10から12までのループfor n in range(10, 13): print(n)
# 10から1までカウントダウンfor n in range(10, 0, -1): print(n)
# 2から8まで2ステップずつのループfor n in range(2, 9, 2): print(n)
# 文字列(文字の配列)を反復処理for ch in "Hello": print(ch)
# 数値の配列を反復処理for x in [3, 6, 8, 9]: print(x)
# 辞書のアイテムを反復処理var dict = { "x": 1, "y": 2, "z": 3 }for key in dict: # キーと値をテキスト文字列に挿入 print("index: %s, value: %d" % [key, dict[key]])
# continueとbreakステートメントを使用for n in 9: # 3未満の数値をスキップ if n < 3: continue # 5より大きい数値でループを終了 if n > 5: break print(n)
Whileループ
whileループは、ブール式を評価し、条件が真である間はループを続けます。ループを途中で終了するには
break
ステートメントを使用し、本体の残りをスキップして次の反復に進むにはcontinue
ステートメントを使用します。
whileループのコード例
以下は、whileループの例です:
gdscriptコードをコピーするvar fuel = 1000var speed = 0
while fuel > 0: speed += 0.12 fuel -= 1
print("Top speed = ", speed)
このチュートリアルでは、GDScriptにおけるループ処理の基礎を学びました。
for
ループとwhile
ループはどちらも多くのシナリオで使用される重要な機能です。