スクリプト効果
2 つのスクリプトがあります。
1 つ目は、GD スクリプト内で発生するイベントを VS 状態機械に通知するために「条件:SignalDetected」を使用する方法を示しています。
2 つ目は、VS 状態機械内で「アクション:SendSignal」を使用して GD スクリプトのロジックをトリガーする方法を示しています。
重要なポイント
playerは実際のゲームオブジェクトを指す必要があります。- このスニペットは、Godot のネイティブな
is_on_floorメソッドを使用して、ゲームオブジェクトにレスポンスさせる機能の概要を示しています。 - ゲームオブジェクトで「SignalDetected」を使用し、ターゲットシグナル名を
on_floor_eventに変更し、パラメータは指定しません。 - ビジュアルスクリプトで「SendSignal」アクションを使用した後、シグナルリストに動的にシグナルが追加され、そのまま使用できます。これを GD スクリプトの関数に接続します。
コア
条件 - SignalDetected の使用方法
extends Node
signal agm_send_signal(signal_name,parameter)
@onready var player: GameObject = $\"..\"\nvar was_in_air = false
func _ready() -> void:\n\tagm_send_signal.connect(Callable(player,\"receive_signal\"))
func _physics_process(_delta):\n\tif player.is_on_floor():\n\t\tagm_send_signal.emit(\"on_floor_event\",null)\n\t\tpass
アクション - SendSignal の使用方法
このアクションを作成すると、VS が動的に新しいシグナルを登録し、GDScript スクリプトでそれを受信できるようになります。

