aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Spells/Auras/SpellAuraDefines.h18
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp71
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.h1
3 files changed, 17 insertions, 73 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraDefines.h b/src/server/game/Spells/Auras/SpellAuraDefines.h
index b5260c70961..9f959c776a3 100644
--- a/src/server/game/Spells/Auras/SpellAuraDefines.h
+++ b/src/server/game/Spells/Auras/SpellAuraDefines.h
@@ -120,7 +120,7 @@ enum AuraType
SPELL_AURA_MOD_PACIFY_SILENCE = 60,
SPELL_AURA_MOD_SCALE = 61,
SPELL_AURA_PERIODIC_HEALTH_FUNNEL = 62,
- SPELL_AURA_63 = 63, // old SPELL_AURA_PERIODIC_MANA_FUNNEL
+ SPELL_AURA_MOD_ADDITIONAL_POWER_COST = 63, // NYI
SPELL_AURA_PERIODIC_MANA_LEECH = 64,
SPELL_AURA_MOD_CASTING_SPEED_NOT_STACK = 65,
SPELL_AURA_FEIGN_DEATH = 66,
@@ -200,7 +200,7 @@ enum AuraType
SPELL_AURA_MOD_RANGED_HASTE = 140,
SPELL_AURA_141 = 141, // old SPELL_AURA_MOD_RANGED_AMMO_HASTE, unused now
SPELL_AURA_MOD_BASE_RESISTANCE_PCT = 142,
- SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE = 143,
+ SPELL_AURA_MOD_RECOVERY_RATE = 143, // NYI
SPELL_AURA_SAFE_FALL = 144,
SPELL_AURA_MOD_PET_TALENT_POINTS = 145,
SPELL_AURA_ALLOW_TAME_PET_TYPE = 146,
@@ -230,12 +230,12 @@ enum AuraType
SPELL_AURA_DETECT_AMORE = 170,
SPELL_AURA_MOD_SPEED_NOT_STACK = 171,
SPELL_AURA_MOD_MOUNTED_SPEED_NOT_STACK = 172,
- SPELL_AURA_173 = 173, // old SPELL_AURA_ALLOW_CHAMPION_SPELLS
+ SPELL_AURA_MOD_RECOVERY_RATE_2 = 173, // NYI
SPELL_AURA_MOD_SPELL_DAMAGE_OF_STAT_PERCENT = 174, // by defeult intelect, dependent from SPELL_AURA_MOD_SPELL_HEALING_OF_STAT_PERCENT
SPELL_AURA_MOD_SPELL_HEALING_OF_STAT_PERCENT = 175,
SPELL_AURA_SPIRIT_OF_REDEMPTION = 176,
SPELL_AURA_AOE_CHARM = 177,
- SPELL_AURA_178 = 178, // old SPELL_AURA_MOD_DEBUFF_RESISTANCE, unused
+ SPELL_AURA_MOD_MAX_POWER_PCT = 178, // NYI
SPELL_AURA_MOD_POWER_DISPLAY = 179,
SPELL_AURA_MOD_FLAT_SPELL_DAMAGE_VERSUS = 180,
SPELL_AURA_181 = 181, // old SPELL_AURA_MOD_FLAT_SPELL_CRIT_DAMAGE_VERSUS - possible flat spell crit damage versus
@@ -262,7 +262,7 @@ enum AuraType
SPELL_AURA_IGNORE_COMBAT_RESULT = 202,
SPELL_AURA_MOD_ATTACKER_MELEE_CRIT_DAMAGE = 203,
SPELL_AURA_MOD_ATTACKER_RANGED_CRIT_DAMAGE = 204,
- SPELL_AURA_MOD_SCHOOL_CRIT_DMG_TAKEN = 205,
+ SPELL_AURA_MOD_CHARGE_COOLDOWN = 205, // NYI
SPELL_AURA_MOD_INCREASE_VEHICLE_FLIGHT_SPEED = 206,
SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED = 207,
SPELL_AURA_MOD_INCREASE_FLIGHT_SPEED = 208,
@@ -327,7 +327,7 @@ enum AuraType
SPELL_AURA_MOD_IMMUNE_AURA_APPLY_SCHOOL = 267,
SPELL_AURA_268 = 268, // old SPELL_AURA_MOD_ATTACK_POWER_OF_STAT_PERCENT. unused 4.3.4
SPELL_AURA_MOD_IGNORE_TARGET_RESIST = 269,
- SPELL_AURA_270 = 270, // old SPELL_AURA_MOD_ABILITY_IGNORE_TARGET_RESIST, unused 4.3.4
+ SPELL_AURA_MOD_SCHOOL_MASK_DAMAGE_FROM_CASTER = 270, // NYI
SPELL_AURA_MOD_SPELL_DAMAGE_FROM_CASTER = 271,
SPELL_AURA_IGNORE_MELEE_RESET = 272,
SPELL_AURA_X_RAY = 273,
@@ -386,7 +386,7 @@ enum AuraType
SPELL_AURA_PHASE_GROUP = 326, // Puts the player in all the phases that are in the group with id = miscB
SPELL_AURA_327 = 327, // Not used in 4.3.4
SPELL_AURA_PROC_ON_POWER_AMOUNT = 328,
- SPELL_AURA_MOD_RUNE_REGEN_SPEED = 329, // NYI
+ SPELL_AURA_MOD_POWER_GAIN_PCT = 329, // NYI
SPELL_AURA_CAST_WHILE_WALKING = 330,
SPELL_AURA_FORCE_WEATHER = 331,
SPELL_AURA_OVERRIDE_ACTIONBAR_SPELLS = 332,
@@ -412,7 +412,7 @@ enum AuraType
SPELL_AURA_352 = 352,
SPELL_AURA_MOD_CAMOUFLAGE = 353, // NYI
SPELL_AURA_354 = 354, // Restoration Shaman mastery - mod healing based on target's health (less = more healing)
- SPELL_AURA_355 = 355,
+ SPELL_AURA_MOD_CASTING_SPEED = 355, // NYI
SPELL_AURA_356 = 356, // Arcane Mage mastery - mod damage based on current mana
SPELL_AURA_ENABLE_BOSS1_UNIT_FRAME = 357,
SPELL_AURA_WORGEN_ALTERED_FORM = 358,
@@ -463,7 +463,7 @@ enum AuraType
SPELL_AURA_OVERRIDE_SPELL_VISUAL = 403,
SPELL_AURA_OVERRIDE_ATTACK_POWER_BY_SP_PCT = 404,
SPELL_AURA_MOD_RATING_PCT = 405, // NYI
- SPELL_AURA_406 = 406,
+ SPELL_AURA_KEYBOUND_OVERRIDE = 406, // NYI
SPELL_AURA_MOD_FEAR_2 = 407, // NYI
SPELL_AURA_408 = 408,
SPELL_AURA_CAN_TURN_WHILE_FALLING = 409,
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index e53f097beaf..8a770ca225e 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -122,7 +122,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleAuraModPacifyAndSilence, // 60 SPELL_AURA_MOD_PACIFY_SILENCE
&AuraEffect::HandleAuraModScale, // 61 SPELL_AURA_MOD_SCALE
&AuraEffect::HandleNoImmediateEffect, // 62 SPELL_AURA_PERIODIC_HEALTH_FUNNEL implemented in AuraEffect::PeriodicTick
- &AuraEffect::HandleUnused, // 63 unused (4.3.4) old SPELL_AURA_PERIODIC_MANA_FUNNEL
+ &AuraEffect::HandleNULL, // 63 SPELL_AURA_MOD_ADDITIONAL_POWER_COST
&AuraEffect::HandleNoImmediateEffect, // 64 SPELL_AURA_PERIODIC_MANA_LEECH implemented in AuraEffect::PeriodicTick
&AuraEffect::HandleModCastingSpeed, // 65 SPELL_AURA_MOD_CASTING_SPEED_NOT_STACK
&AuraEffect::HandleFeignDeath, // 66 SPELL_AURA_FEIGN_DEATH
@@ -202,7 +202,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleAuraModRangedHaste, //140 SPELL_AURA_MOD_RANGED_HASTE
&AuraEffect::HandleUnused, //141 SPELL_AURA_141
&AuraEffect::HandleAuraModBaseResistancePCT, //142 SPELL_AURA_MOD_BASE_RESISTANCE_PCT
- &AuraEffect::HandleAuraModResistanceExclusive, //143 SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE
+ &AuraEffect::HandleNULL, //143 SPELL_AURA_MOD_RECOVERY_RATE
&AuraEffect::HandleNoImmediateEffect, //144 SPELL_AURA_SAFE_FALL implemented in WorldSession::HandleMovementOpcodes
&AuraEffect::HandleNULL, //145 used by 5 spells in 6.2.4 dbc but the meaning of this aura changed (it's used by mind control spells but isn't the control itself)
&AuraEffect::HandleNoImmediateEffect, //146 SPELL_AURA_ALLOW_TAME_PET_TYPE
@@ -237,7 +237,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleModSpellHealingPercentFromStat, //175 SPELL_AURA_MOD_SPELL_HEALING_OF_STAT_PERCENT implemented in Unit::SpellBaseHealingBonus
&AuraEffect::HandleSpiritOfRedemption, //176 SPELL_AURA_SPIRIT_OF_REDEMPTION only for Spirit of Redemption spell, die at aura end
&AuraEffect::HandleCharmConvert, //177 SPELL_AURA_AOE_CHARM
- &AuraEffect::HandleUnused, //178 old SPELL_AURA_MOD_DEBUFF_RESISTANCE unused 4.3.4
+ &AuraEffect::HandleNULL, //178 SPELL_AURA_MOD_MAX_POWER_PCT
&AuraEffect::HandleAuraModPowerDisplay, //179 SPELL_AURA_MOD_POWER_DISPLAY
&AuraEffect::HandleNoImmediateEffect, //180 SPELL_AURA_MOD_FLAT_SPELL_DAMAGE_VERSUS implemented in Unit::SpellDamageBonus
&AuraEffect::HandleUnused, //181 unused (4.3.4) old SPELL_AURA_MOD_FLAT_SPELL_CRIT_DAMAGE_VERSUS
@@ -264,7 +264,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleNoImmediateEffect, //202 SPELL_AURA_CANNOT_BE_DODGED implemented in Unit::RollPhysicalOutcomeAgainst
&AuraEffect::HandleNoImmediateEffect, //203 SPELL_AURA_MOD_ATTACKER_MELEE_CRIT_DAMAGE implemented in Unit::CalculateMeleeDamage and Unit::CalculateSpellDamage
&AuraEffect::HandleNoImmediateEffect, //204 SPELL_AURA_MOD_ATTACKER_RANGED_CRIT_DAMAGE implemented in Unit::CalculateMeleeDamage and Unit::CalculateSpellDamage
- &AuraEffect::HandleNULL, //205 SPELL_AURA_MOD_SCHOOL_CRIT_DMG_TAKEN
+ &AuraEffect::HandleNULL, //205 SPELL_AURA_MOD_CHARGE_COOLDOWN
&AuraEffect::HandleAuraModIncreaseFlightSpeed, //206 SPELL_AURA_MOD_INCREASE_VEHICLE_FLIGHT_SPEED
&AuraEffect::HandleAuraModIncreaseFlightSpeed, //207 SPELL_AURA_MOD_INCREASE_MOUNTED_FLIGHT_SPEED
&AuraEffect::HandleAuraModIncreaseFlightSpeed, //208 SPELL_AURA_MOD_INCREASE_FLIGHT_SPEED
@@ -329,7 +329,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleNoImmediateEffect, //267 SPELL_AURA_MOD_IMMUNE_AURA_APPLY_SCHOOL implemented in Unit::IsImmunedToSpellEffect
&AuraEffect::HandleUnused, //268 unused (4.3.4) old SPELL_AURA_MOD_ATTACK_POWER_OF_STAT_PERCENT.
&AuraEffect::HandleNoImmediateEffect, //269 SPELL_AURA_MOD_IGNORE_TARGET_RESIST implemented in Unit::CalcAbsorbResist and CalcArmorReducedDamage
- &AuraEffect::HandleUnused, //270 unused (4.3.4) old SPELL_AURA_MOD_ABILITY_IGNORE_TARGET_RESIST
+ &AuraEffect::HandleNULL, //270 SPELL_AURA_MOD_SCHOOL_MASK_DAMAGE_FROM_CASTER
&AuraEffect::HandleNoImmediateEffect, //271 SPELL_AURA_MOD_SPELL_DAMAGE_FROM_CASTER implemented in Unit::SpellDamageBonusTaken and Unit::MeleeDamageBonusTaken
&AuraEffect::HandleNoImmediateEffect, //272 SPELL_AURA_IGNORE_MELEE_RESET
&AuraEffect::HandleUnused, //273 clientside
@@ -388,7 +388,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandlePhaseGroup, //326 SPELL_AURA_PHASE_GROUP
&AuraEffect::HandleUnused, //327 unused (4.3.4)
&AuraEffect::HandleNoImmediateEffect, //328 SPELL_AURA_PROC_ON_POWER_AMOUNT implemented in Unit::HandleAuraProcOnPowerAmount
- &AuraEffect::HandleNULL, //329 SPELL_AURA_MOD_RUNE_REGEN_SPEED
+ &AuraEffect::HandleNULL, //329 SPELL_AURA_MOD_POWER_GAIN_PCT
&AuraEffect::HandleNoImmediateEffect, //330 SPELL_AURA_CAST_WHILE_WALKING
&AuraEffect::HandleAuraForceWeather, //331 SPELL_AURA_FORCE_WEATHER
&AuraEffect::HandleNoImmediateEffect, //332 SPELL_AURA_OVERRIDE_ACTIONBAR_SPELLS implemented in Unit::GetCastSpellInfo
@@ -414,7 +414,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleNULL, //352 SPELL_AURA_352
&AuraEffect::HandleNULL, //353 SPELL_AURA_MOD_CAMOUFLAGE
&AuraEffect::HandleNULL, //354 SPELL_AURA_354
- &AuraEffect::HandleUnused, //355 unused (4.3.4)
+ &AuraEffect::HandleNULL, //355 SPELL_AURA_MOD_CASTING_SPEED
&AuraEffect::HandleNULL, //356 SPELL_AURA_356
&AuraEffect::HandleNULL, //357 SPELL_AURA_ENABLE_BOSS1_UNIT_FRAME
&AuraEffect::HandleNULL, //358 SPELL_AURA_358
@@ -465,7 +465,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]=
&AuraEffect::HandleNoImmediateEffect, //403 SPELL_AURA_OVERRIDE_SPELL_VISUAL implemented in Unit::GetCastSpellXSpellVisualId
&AuraEffect::HandleOverrideAttackPowerBySpellPower, //404 SPELL_AURA_OVERRIDE_ATTACK_POWER_BY_SP_PCT
&AuraEffect::HandleModRatingPct, //405 SPELL_AURA_MOD_RATING_PCT
- &AuraEffect::HandleNULL, //406
+ &AuraEffect::HandleNULL, //406 SPELL_AURA_KEYBOUND_OVERRIDE
&AuraEffect::HandleNULL, //407 SPELL_AURA_MOD_FEAR_2
&AuraEffect::HandleNULL, //408
&AuraEffect::HandleAuraCanTurnWhileFalling, //409 SPELL_AURA_CAN_TURN_WHILE_FALLING
@@ -676,38 +676,6 @@ int32 AuraEffect::CalculateAmount(Unit* caster)
}
break;
}
- case SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE:
- {
- if (caster)
- {
- // if Level <= 70 resist = player level
- int32 resist = caster->getLevel();
-
- if (resist > 70 && resist < 81)
- resist += (resist - 70) * 5;
- else if (resist > 80)
- resist += ((resist-70) * 5 + (resist - 80) * 7);
-
- switch (GetId())
- {
- case 20043: // Aspect of the Wild
- case 8185: // Elemental Resistance
- case 19891: // Resistance Aura
- case 79106: // Shadow Protection
- case 79107: // Shadow Protection
- amount = resist;
- break;
- case 79060: // Mark of the Wild
- case 79061: // Mark of the Wild
- case 79062: // Blessing of Kings
- case 79063: // Blessing of Kings
- case 90363: // Embrace of the Shale Spider
- amount = resist / 2;
- break;
- }
- break;
- }
- }
case SPELL_AURA_SHOW_CONFIRMATION_PROMPT_WITH_DIFFICULTY:
if (caster)
amount = caster->GetMap()->GetDifficultyID();
@@ -3464,29 +3432,6 @@ void AuraEffect::HandleAuraModDispelImmunity(AuraApplication const* aurApp, uint
/*** RESISTANCE ***/
/********************************/
-void AuraEffect::HandleAuraModResistanceExclusive(AuraApplication const* aurApp, uint8 mode, bool apply) const
-{
- if (!(mode & (AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK | AURA_EFFECT_HANDLE_STAT)))
- return;
-
- Unit* target = aurApp->GetTarget();
-
- for (int8 x = SPELL_SCHOOL_NORMAL; x < MAX_SPELL_SCHOOL; x++)
- {
- if (GetMiscValue() & int32(1<<x))
- {
- int32 amount = target->GetMaxPositiveAuraModifierByMiscMask(SPELL_AURA_MOD_RESISTANCE_EXCLUSIVE, 1<<x, this);
- if (amount < GetAmount())
- {
- float value = float(GetAmount() - amount);
- target->HandleStatModifier(UnitMods(UNIT_MOD_RESISTANCE_START + x), BASE_VALUE, value, apply);
- if (target->GetTypeId() == TYPEID_PLAYER)
- target->ApplyResistanceBuffModsMod(SpellSchools(x), aurApp->IsPositive(), value, apply);
- }
- }
- }
-}
-
void AuraEffect::HandleAuraModResistance(AuraApplication const* aurApp, uint8 mode, bool apply) const
{
if (!(mode & (AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK | AURA_EFFECT_HANDLE_STAT)))
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.h b/src/server/game/Spells/Auras/SpellAuraEffects.h
index 4c639f8a339..607a66db45d 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.h
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.h
@@ -217,7 +217,6 @@ class TC_GAME_API AuraEffect
void HandleAuraModDispelImmunity(AuraApplication const* aurApp, uint8 mode, bool apply) const;
// modify stats
// resistance
- void HandleAuraModResistanceExclusive(AuraApplication const* aurApp, uint8 mode, bool apply) const;
void HandleAuraModResistance(AuraApplication const* aurApp, uint8 mode, bool apply) const;
void HandleAuraModBaseResistancePCT(AuraApplication const* aurApp, uint8 mode, bool apply) const;
void HandleModResistancePercent(AuraApplication const* aurApp, uint8 mode, bool apply) const;