4つの引数を持つ UnityEvent
ジェネリックの UnityEvent 型を使用したい場合は、クラスをオーバーライドする必要があります
#pragma strict
class My4ArgEvent extends UnityEvent.<int, int, int, int> {}
var m_MyEvent : My4ArgEvent;
function Start () { if (m_MyEvent == null) m_MyEvent = new My4ArgEvent ();
m_MyEvent.AddListener (Ping); }
function Update () { if (Input.anyKeyDown && m_MyEvent != null) { m_MyEvent.Invoke (5, 6, 7, -5); } }
function Ping (i0: int, i1: int, i2: int, i3: int) { Debug.Log (i0 + i1 + i2 + i3); }
using UnityEngine; using UnityEngine.Events;
[System.Serializable] public class MyIntEvent : UnityEvent<int, int, int, int> { }
public class ExampleClass : MonoBehaviour { public MyIntEvent m_MyEvent;
void Start () { if (m_MyEvent == null) m_MyEvent = new MyIntEvent();
m_MyEvent.AddListener (Ping); }
void Update () { if (Input.anyKeyDown && m_MyEvent != null) { m_MyEvent.Invoke (5, 6, 7, 8); } }
void Ping (int i, int j, int k, int l) { Debug.Log ("Ping" + i+j+k+l); } }
GetPersistentEventCount | 登録されている永続的なリスナーの数を取得します |
GetPersistentMethodName | インデックスから対象のリスナーのメソッド名を取得します |
GetPersistentTarget | インデックスから対象のリスナーのコンポーネントを取得します |
RemoveAllListeners | イベントからすべての非永続的なリスナーを削除します |
SetPersistentListenerState | 永続的なリスナーの実行状態を変更します |
GetValidMethodInfo | オブジェクト、メソッド名、引数の型のリストからマッチするメソッドを探します |