/* * static List<Timer> TimerFinishedInvokers = new List<Timer>(); * static List<UnityAction> TimerFinishedListeners = new List<UnityAction>(); * * public static void AddTimerFinishedInvoker(Timer invoker) * { * TimerFinishedInvokers.Add(invoker); * foreach (UnityAction listener in TimerFinishedListeners) * { * invoker.AddTimerFinishedListener(listener); * } * } * public static void AddTimerFinishedListener(UnityAction listener) * { * TimerFinishedListeners.Add(listener); * foreach (Timer invoker in TimerFinishedInvokers) * { * invoker.AddTimerFinishedListener(listener); * } * } */ public static void AddLastBallLostInvoker(HUD invoker) { LastBallLostInvokers.Add(invoker); foreach (UnityAction listener in LastBallLostListeners) { invoker.AddLastBallLostListener(listener); } }
/// <summary> /// Adds the invoker to the last ball lost event /// </summary> /// <param name="invoker"></param> public static void LastBallLostInvoker(HUD invoker) { lastBallLostInvoker = invoker; if (lastBallLostListener != null) { lastBallLostInvoker.AddLastBallLostListener(lastBallLostListener); } }
/// <summary> /// Adds the listener to the last ball lost event /// </summary> /// <param name="listener"></param> public static void LastBallLostListener(UnityAction listener) { lastBallLostListener = listener; if (lastBallLostInvoker != null) { lastBallLostInvoker.AddLastBallLostListener(lastBallLostListener); } }
/// <summary> /// Adds the given script as a last ball lost invoker /// </summary> /// <param name="invoker">invoker</param> public static void AddLastBallLostInvoker(HUD invoker) { // add invoker to list and add all listeners to invoker lastBallLostInvokers.Add(invoker); foreach (UnityAction listener in lastBallLostListeners) { invoker.AddLastBallLostListener(listener); } }