GDScriptのmatch文は、特定の値や条件に基づいてコードを分岐させるための制御構造で、他のプログラミング言語ではswitch文に該当します。
目次
match文の書き方
match expression:
value1:
# value1にマッチした場合の処理
value2:
# value2にマッチした場合の処理
value3:
# value3にマッチした場合の処理
...
_:
# どの値にもマッチしない場合の処理expressionには、比較対象となる値や式を指定します。
その下に記述された各ブロックは、指定された値にマッチした場合に実行されます。いずれの値にもマッチしない場合、最後の_:ブロックが実行されます。
match文を使った例
enum Direction { UP, DOWN, LEFT, RIGHT }
func move_character(direction: Direction) -> void:
match direction:
Direction.UP:
print("Character is moving UP.")
Direction.DOWN:
print("Character is moving DOWN.")
Direction.LEFT:
print("Character is moving LEFT.")
Direction.RIGHT:
print("Character is moving RIGHT.")
_:
print("Invalid direction.")この例では、move_character関数はDirection列挙型の値を受け取り、その値に応じてキャラクターを移動させます。
match文は、渡された方向に応じて適切なメッセージを表示します。もしDirection列挙型に定義されていない方向が渡された場合は、「Invalid direction.」というメッセージが表示されます。


Comment