43 template <
typename Container>
44 void GetTargetList(
Container& targetContainer)
const;
46 template <
typename Container>
47 void GetApplicationList(
Container& applicationContainer)
const;
59 void SetAmount(
int32 amount) { _amount = amount; m_canBeRecalculated =
false; }
65 void CalculatePeriodic(
Unit* caster,
bool resetPeriodicTimer =
true,
bool load =
false);
66 void CalculateSpellMod();
67 void ChangeAmount(
int32 newAmount,
bool mark =
true,
bool onStackOrReapply =
false);
68 void RecalculateAmount() {
if (!CanBeRecalculated())
return; ChangeAmount(CalculateAmount(GetCaster()),
false); }
69 void RecalculateAmount(
Unit* caster) {
if (!CanBeRecalculated())
return; ChangeAmount(CalculateAmount(caster),
false); }
73 void HandleEffect(
Unit* target,
uint8 mode,
bool apply);
74 void ApplySpellMod(
Unit* target,
bool apply);
80 uint32 GetTotalTicks()
const;
81 void ResetPeriodic(
bool resetPeriodicTimer =
false);
85 void SetPeriodic(
bool isPeriodic) { m_isPeriodic = isPeriodic; }
86 bool IsAffectingSpell(
SpellInfo const* spell)
const;
89 void SendTickImmune(
Unit* target,
Unit* caster)
const;
95 void CleanupTriggeredSpells(
Unit* target);
98 void HandleShapeshiftBoosts(
Unit* target,
bool apply)
const;
121 float GetCritChanceFor(
Unit const* caster,
Unit const* target)
const;
158 void HandleAuraModPacifyAndSilence(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
167 void HandleAuraModPetTalentsPoints(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
196 void HandleAuraModIncreaseMountedSpeed(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
197 void HandleAuraModIncreaseFlightSpeed(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
198 void HandleAuraModIncreaseSwimSpeed(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
202 void HandleModMechanicImmunityMask(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
211 void HandleAuraModResistanceExclusive(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
213 void HandleAuraModBaseResistancePCT(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
220 void HandleModSpellDamagePercentFromStat(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
221 void HandleModSpellHealingPercentFromStat(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
222 void HandleModSpellDamagePercentFromAttackPower(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
223 void HandleModSpellHealingPercentFromAttackPower(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
226 void HandleAuraModResistenceOfStatPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
233 void HandleAuraModIncreaseMaxHealth(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
235 void HandleAuraModIncreaseEnergyPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
236 void HandleAuraModIncreaseHealthPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
237 void HandleAuraIncreaseBaseHealthPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
243 void HandleAuraModWeaponCritPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
246 void HandleModSpellCritChanceShool(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
261 void HandleAuraModRangedAttackPower(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
262 void HandleAuraModAttackPowerPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
263 void HandleAuraModRangedAttackPowerPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
264 void HandleAuraModRangedAttackPowerOfStatPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
265 void HandleAuraModAttackPowerOfStatPercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
269 void HandleModOffhandDamagePercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
271 void HandleShieldBlockValuePercent(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
291 void HandleAuraPreventRegeneratePower(
AuraApplication const* aurApp,
uint8 mode,
bool apply)
const;
296 void HandlePeriodicTriggerSpellAuraTick(
Unit* target,
Unit* caster)
const;
297 void HandlePeriodicTriggerSpellWithValueAuraTick(
Unit* target,
Unit* caster)
const;
298 void HandlePeriodicDamageAurasTick(
Unit* target,
Unit* caster)
const;
299 void HandlePeriodicHealthLeechAuraTick(
Unit* target,
Unit* caster)
const;
300 void HandlePeriodicHealthFunnelAuraTick(
Unit* target,
Unit* caster)
const;
301 void HandlePeriodicHealAurasTick(
Unit* target,
Unit* caster)
const;
302 void HandlePeriodicManaLeechAuraTick(
Unit* target,
Unit* caster)
const;
303 void HandleObsModPowerAuraTick(
Unit* target,
Unit* caster)
const;
304 void HandlePeriodicEnergizeAuraTick(
Unit* target,
Unit* caster)
const;
305 void HandlePeriodicPowerBurnAuraTick(
Unit* target,
Unit* caster)
const;
306 void HandleModAttackPowerOfArmorAuraTick(
Unit* target,
Unit* caster)
const;