using System.Collections; using System.Collections.Generic; using UnityEngine; namespace KairoEngine { public class EventData { public GameObject obj; public EventData(GameObject obj = null) { this.obj = obj; } } public class InteractionEvents { public static Dictionary> list = new Dictionary>(); public static void StartListening(string title, System.Action listener) { System.Action action = null; if (list.TryGetValue(title, out action)) { action += listener; list[title] = action; } else { action += listener; list.Add(title, action); } } public static void StopListening(string title, System.Action listener) { System.Action action = null; if (list.TryGetValue(title, out action)) { action -= listener; list[title] = action; } } public static void Trigger(string title, EventData eventData) { System.Action action = null; if (list.TryGetValue(title, out action)) { if(action != null) action(eventData); } } } }