methodName | 呼び出すメソッド名 |
value | 呼び出すメソッドに引数として渡すパラメーター |
options | 目的のオブジェクトにメソッドが存在しない場合、エラーを発生させるかどうか |
ゲームオブジェクトと親(の親、さらに親 ... )にアタッチされているすべての MonoBehaviour にある methodName
と名付けたメソッドを呼び出します
メソッドの実行時に引数の数を 0 にすることによって渡される引数の値を無視することができます。
options
パラメーターに、SendMessageOptions.RequireReceiver を設定した場合、該当するコンポーネントが存在しない場合はエラーメッセージが発生します。
このメッセージは非アクティブのオブジェクトには送信されないことに気をつけてください(すなわち、エディターや GameObject.SetActive 関数で非アクティブにしている場合です)
// Calls the function ApplyDamage with a value of 5 SendMessageUpwards ("ApplyDamage", 5.0); // Every script attached to the game object // that has a ApplyDamage function will be called. function ApplyDamage (damage : float) { print (damage); }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { void ApplyDamage(float damage) { print(damage); } void Example() { SendMessageUpwards("ApplyDamage", 5.0F); } }