public bool dispatchEvent(CustomEvent evt)
{
string eventType = evt.type;
if (!checkForEvent(eventType)) {
if (allowWarningOutputs) {
Debug.LogWarning("Event Manager: Event \"" + eventType + "\" triggered has no listeners!");
}
return false;
}
ArrayList listenerList = _listeners[eventType] as ArrayList;
if (allowDebugOutputs) {
Debug.Log("Event Manager: Event " + eventType + " dispatched to " + listenerList.Count + ((listenerList.Count == 1) ? " listener." : " listeners."));
}
foreach (EventListener callback in listenerList) {
if (callback.listener && callback.listener.activeSelf) {
callback.listener.SendMessage(callback.function, evt, SendMessageOptions.DontRequireReceiver);
}
}
return false;
}