protected void RefreshPrefabs() { /* * public List<Restoration> Restorations ; */ foreach (var auraEffect in Character.AuraEffects) { DestroyHelper destroyCondition; Character.AddEffectPrefabs(auraEffect.PassiveEffect, out destroyCondition); if (destroyCondition != null) { destroyCondition.Init(DestroyCondition.AuraEffectNotActive, Controller, auraEffect.SkillId); } } foreach (var friendlyAuraEffect in Character.FriendlyAuras) { DestroyHelper destroyCondition; Character.AddEffectPrefabs(friendlyAuraEffect.AuraEffect.PassiveEffect, out destroyCondition); if (destroyCondition != null) { destroyCondition.Init(DestroyCondition.FriendlyAuraNotAvailable, Controller, friendlyAuraEffect.AuraEffect.SkillId); } } foreach (var timedPassiveEffect in Character.TimedPassiveEffects) { DestroyHelper destroyCondition; Character.AddEffectPrefabs(timedPassiveEffect, out destroyCondition); if (destroyCondition != null) { destroyCondition.Init(DestroyCondition.TimedPassiveNotActive, Controller, timedPassiveEffect.ID); } } foreach (var statusEffect in Character.StatusEffects) { DestroyHelper destroyCondition; Character.AddEffectPrefabs(statusEffect.Effect, out destroyCondition); if (destroyCondition != null) { destroyCondition.Init(DestroyCondition.StatusEffectNotActive, Controller, statusEffect.ID); } } foreach (var damageOverTime in Character.CurrentDoTs) { if (!string.IsNullOrEmpty(damageOverTime.ActivePrefab)) { var o = Character.SpawnPrefab(damageOverTime.ActivePrefab, transform.position, Quaternion.identity, transform); o.GetComponent <DestroyHelper>().Init(DestroyCondition.Time, damageOverTime.Duration); var secondCondition = o.AddComponent <DestroyHelper>(); secondCondition.Init(DestroyCondition.DoTNotActive, Controller, damageOverTime.InstanceID); } } }