public override void OnEffectStart() { IDispersible dispersible = (IDispersible)gameObject.GetComponent(typeof(IDispersible)); if (dispersible != null) { dispersible.Disperse(ParentSkill.EffectTime); if (dispersible.IsDispersed) { Finish(); } } else { Finish(); } }
/// <summary> /// Creates a new list with the separator interposed between elements.Dispatches to the `intersperse` method of the second argument, if present. /// <para /> /// sig: a -> [a] -> [a] /// </summary> /// <param name="separator">The element to add to the list.</param> /// <param name="list">The list to be interposed.</param> /// <returns>The new list.</returns> public static dynamic Intersperse <TResult, TSeperator>(RamdaPlaceholder separator, IDispersible <TSeperator, TResult> list) { return(Currying.Intersperse(separator, list)); }