/// <summary> /// Stops all actions and clear all action lists. /// </summary> public void StopAllActions() { ActionsOverTime.ForEach((ActionOverTime item) => item.Stop()); ActionsOverTime.Clear(); ActionsOverTimeToActivate.Clear(); ActionsOverTimeToRemove.Clear(); }
private void ActivateAction() { int size = ActionsOverTimeToActivate.Count; for (int i = size - 1; i >= 0; i--) { ActionsOverTime.Add(ActionsOverTimeToActivate[i]); // Set the target. ActionsOverTimeToActivate[i].Target = this; ActionsOverTimeToActivate[i].Ready(); // Start the action. ActionsOverTimeToActivate[i].Start(); } ActionsOverTimeToActivate.RemoveRange(0, size); }
/// <summary> /// Performs the action. /// </summary> /// <param name="action">Action.</param> public virtual void PerformAction(ActionOverTime action) { ActionsOverTimeToActivate.Add(action); }