目次
シグナルの接続
別のスクリプトのシグナルをメソッドに接続する場合、次のようなスクリプト(script.1)を書くと思います。
※ sample_script1.gd
script.1 あるシグナルをスクリプトのメソッドに接続する
script.1 あるシグナルをスクリプトのメソッドに接続する
例えば、ゲームオーバーなどでまた同じゲームを繰り返すとき、シーンを変更せずスクリプト内の初期化処理メソッドを使うとします。
script.2のような処理を再び通るとき、ゲームの実行は続きますが下記のようなエラーが出る場合があります。(fig.1)
※ sample_script2.gd
script.2 シグナルの再接続
script.2 シグナルの再接続
シグナルの再接続
このエラーを回避するためには、シグナルが既にそのメソッドへ接続されているかをチェックし、まだ接続されていない場合のみ接続を行います。(script.3)
※ sample_script3.gd
script.3 シグナルの再接続
script.3 シグナルの再接続
<bool> is_connected(メソッド名)
用途:
シグナルがそのメソッドに接続されているかをチェックします。
既に接続されている場合は true 、接続されていない場合は false を返します。
シグナルに引数がある場合は「メソッド名.bind()」で指定します。
用途:
シグナルがそのメソッドに接続されているかをチェックします。
既に接続されている場合は true 、接続されていない場合は false を返します。
シグナルに引数がある場合は「メソッド名.bind()」で指定します。
今回は以上となります。
最後までお読みいただきありがとうございました。
参考資料
Godot Engine 4.2の日本語のドキュメント Variant types -> signal
https://docs.godotengine.org/ja/4.x/classes/class_signal.html