Four argument version of UnityEvent.
If you wish to use a generic UnityEvent type you must override the class type.
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 | Get the number of registered persistent listeners. |
GetPersistentMethodName | Get the target method name of the listener at index index. |
GetPersistentTarget | Get the target component of the listener at index index. |
RemoveAllListeners | Remove all non-persisent (ie created from script) listeners from the event. |
SetPersistentListenerState | Modify the execution state of a persistent listener. |
GetValidMethodInfo | Given an object, function name, and a list of argument types; find the method that matches. |