スクリプトの効果
2 つのスクリプトに分かれています。
1 つ目は、条件:信号の検出 を利用して、GD スクリプト内で発生したことを VS 状態機械内部に通知する方法をデモします。
もう 1 つは、VS 状態機械内部で発生した動作:信号の送信 を利用して、GD スクリプト内のロジックがそれに応答する方法をデモします。
ポイント
playerは実際のゲームオブジェクトを指す必要があります。- このスニペットは、Godot 原生の
is_on_floorメソッドを利用してゲームオブジェクトに応答させる機能の簡易デモです。 - ゲームオブジェクト内で
信号の検出を使用し、ターゲット信号の名前をon_floor_eventに変更し、パラメータを「なし」に設定します。 - 可視化スクリプトで
信号の送信動作を使用すると、信号リストに動的に新しい信号が追加され、これを直接使用できます。GD スクリプト内の関数に接続するだけです。
コア
条件-信号の検出の使用方法
extends Node
signal agm_send_signal(signal_name,parameter)
@onready var player: GameObject = $"..""
var was_in_air = false
func _ready() -> void:
\tagm_send_signal.connect(Callable(player,"receive_signal"))
func _physics_process(_delta):
\tif player.is_on_floor():
\t\tagm_send_signal.emit("on_floor_event",null)
\t\tpass
動作-信号の送信の使用方法
この動作を使用すると、VS 状態機械は動的に新しい信号を登録します。
その後、GDScript スクリプトでそれを受け取ることができます。

