シグナルの接続について
2024/05/14
Godot Engine version 4.2 stable
作成者:ダイギイン(アクシオン管理人)

目次

シグナルの接続

別のスクリプトのシグナルをメソッドに接続する場合、次のようなスクリプト(script.1)を書くと思います。

※ sample_script1.gd

script.1 あるシグナルをスクリプトのメソッドに接続する

例えば、ゲームオーバーなどでまた同じゲームを繰り返すとき、シーンを変更せずスクリプト内の初期化処理メソッドを使うとします。
script.2のような処理を再び通るとき、ゲームの実行は続きますが下記のようなエラーが出る場合があります。(fig.1)
※ sample_script2.gd

script.2 シグナルの再接続

fig.1 重ねて接続しようとするときのエラー


シグナルの再接続

このエラーを回避するためには、シグナルが既にそのメソッドへ接続されているかをチェックし、まだ接続されていない場合のみ接続を行います。(script.3)

※ sample_script3.gd

script.3 シグナルの再接続

<bool> is_connected(メソッド名)

用途:
シグナルがそのメソッドに接続されているかをチェックします。
既に接続されている場合は true 、接続されていない場合は false を返します。
シグナルに引数がある場合は「メソッド名.bind()」で指定します。

今回は以上となります。
最後までお読みいただきありがとうございました。


参考資料

Godot Engine 4.2の日本語のドキュメント Variant types -> signal
https://docs.godotengine.org/ja/4.x/classes/class_signal.html

ページトップ