void OnEffectRemoved(Unit unit, EffectOverTimeType effectType) { var targetPanel = unit is Hero ? effectType.IsNegative ? heroNegativeEffects : heroPositiveEffects : effectType.IsNegative ? enemyNegativeEffects : enemyPositiveEffects; targetPanel.RemoveCell(effectType); }
void OnEffectApplied(Unit unit, EffectOverTimeType effectType) { if (effectType.procAnimationPrefab != null) { var parent = unit is Hero ? heroTransform : enemyTransform; var effectAnimHandler = effectType.procAnimationPrefab.InstantiateAndGetComp <AnimatorHandler>(parent); busyAnimators.Add(effectAnimHandler.animator); AnimationHandlerEventSubscription(effectAnimHandler); } else { mis.NextAction(); } }
void OnEffectAdded(Unit unit, EffectOverTimeType effectType) { var targetPanel = unit is Hero ? effectType.IsNegative ? heroNegativeEffects : heroPositiveEffects : effectType.IsNegative ? enemyNegativeEffects : enemyPositiveEffects; if (!targetPanel.HasObject(effectType)) { var effectObj = new GameObject(); var effectImage = effectObj.AddComponent <Image>(); effectImage.sprite = effectType.icon; targetPanel.AddCell(effectType, effectObj); } }
internal EffectOverTime(EffectOverTimeData data) { type = data.type; }