refactor(Core/Spell): Pascal Case some SpellEntry types (#4432)

This commit is contained in:
Kitzunu
2021-02-09 01:01:37 +01:00
committed by GitHub
parent 4c558fd670
commit 82eb8b44d1
9 changed files with 198 additions and 198 deletions

View File

@@ -402,7 +402,7 @@ void LoadDBCStores(const std::string& dataPath)
if (skillLine->skillId != cFamily->skillLine[0] && skillLine->skillId != cFamily->skillLine[1])
continue;
if (spellInfo->spellLevel)
if (spellInfo->SpellLevel)
continue;
if (skillLine->learnOnGetSkill != ABILITY_LEARNED_ON_GET_RACE_OR_CLASS_SKILL)

View File

@@ -42,7 +42,7 @@ class Aura;
// AURA_EFFECT_HANDLE_CHANGE_AMOUNT_MASK set - aura is recalculated or is just applied/removed - need to redo all things related to m_amount
// AURA_EFFECT_HANDLE_CHANGE_AMOUNT_SEND_FOR_CLIENT_MASK - logical or of above conditions
// AURA_EFFECT_HANDLE_STAT - set when stats are reapplied
// such checks will speedup trinity change amount/send for client operations
// such checks will Speedup trinity change amount/send for client operations
// because for change amount operation packets will not be send
// aura effect handlers shouldn't contain any AuraEffect or Aura object modifications
@@ -241,7 +241,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS] =
&AuraEffect::HandleNoImmediateEffect, //190 SPELL_AURA_MOD_FACTION_REPUTATION_GAIN implemented in Player::CalculateReputationGain
&AuraEffect::HandleAuraModUseNormalSpeed, //191 SPELL_AURA_USE_NORMAL_MOVEMENT_SPEED
&AuraEffect::HandleModMeleeRangedSpeedPct, //192 SPELL_AURA_MOD_MELEE_RANGED_HASTE
&AuraEffect::HandleModCombatSpeedPct, //193 SPELL_AURA_MELEE_SLOW (in fact combat (any type attack) speed pct)
&AuraEffect::HandleModCombatSpeedPct, //193 SPELL_AURA_MELEE_SLOW (in fact combat (any type attack) Speed pct)
&AuraEffect::HandleNoImmediateEffect, //194 SPELL_AURA_MOD_TARGET_ABSORB_SCHOOL implemented in Unit::CalcAbsorbResist
&AuraEffect::HandleNoImmediateEffect, //195 SPELL_AURA_MOD_TARGET_ABILITY_ABSORB_SCHOOL implemented in Unit::CalcAbsorbResist
&AuraEffect::HandleNoImmediateEffect, //196 SPELL_AURA_MOD_COOLDOWN - flat mod of spell cooldowns
@@ -4227,15 +4227,15 @@ void AuraEffect::HandleAuraModIncreaseEnergy(AuraApplication const* aurApp, uint
Unit* target = aurApp->GetTarget();
Powers powerType = Powers(GetMiscValue());
Powers PowerType = Powers(GetMiscValue());
// do not check power type, we can always modify the maximum
// as the client will not see any difference
// also, placing conditions that may change during the aura duration
// inside effect handlers is not a good idea
//if (int32(powerType) != GetMiscValue())
//if (int32(PowerType) != GetMiscValue())
// return;
UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + powerType);
UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + PowerType);
target->HandleStatModifier(unitMod, TOTAL_VALUE, float(GetAmount()), apply);
}
@@ -4247,25 +4247,25 @@ void AuraEffect::HandleAuraModIncreaseEnergyPercent(AuraApplication const* aurAp
Unit* target = aurApp->GetTarget();
Powers powerType = Powers(GetMiscValue());
Powers PowerType = Powers(GetMiscValue());
// do not check power type, we can always modify the maximum
// as the client will not see any difference
// also, placing conditions that may change during the aura duration
// inside effect handlers is not a good idea
//if (int32(powerType) != GetMiscValue())
//if (int32(PowerType) != GetMiscValue())
// return;
UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + powerType);
UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + PowerType);
float amount = float(GetAmount());
if (apply)
{
target->HandleStatModifier(unitMod, TOTAL_PCT, amount, apply);
target->ModifyPowerPct(powerType, amount, apply);
target->ModifyPowerPct(PowerType, amount, apply);
}
else
{
target->ModifyPowerPct(powerType, amount, apply);
target->ModifyPowerPct(PowerType, amount, apply);
target->HandleStatModifier(unitMod, TOTAL_PCT, amount, apply);
}
}
@@ -4715,7 +4715,7 @@ void AuraEffect::HandleModDamageDone(AuraApplication const* aurApp, uint8 mode,
}
}
// Skip non magic case for speedup
// Skip non magic case for Speedup
if ((GetMiscValue() & SPELL_SCHOOL_MASK_MAGIC) == 0)
return;
@@ -6511,9 +6511,9 @@ void AuraEffect::HandlePeriodicHealAurasTick(Unit* target, Unit* caster) const
void AuraEffect::HandlePeriodicManaLeechAuraTick(Unit* target, Unit* caster) const
{
Powers powerType = Powers(GetMiscValue());
Powers PowerType = Powers(GetMiscValue());
if (!caster || !caster->IsAlive() || !target->IsAlive() || target->getPowerType() != powerType)
if (!caster || !caster->IsAlive() || !target->IsAlive() || target->getPowerType() != PowerType)
return;
if (target->HasUnitState(UNIT_STATE_ISOLATED) || target->IsImmunedToDamageOrSchool(GetSpellInfo()))
@@ -6534,8 +6534,8 @@ void AuraEffect::HandlePeriodicManaLeechAuraTick(Unit* target, Unit* caster) con
if (m_spellInfo->ManaCostPercentage)
{
// max value
int32 maxmana = CalculatePct(caster->GetMaxPower(powerType), drainAmount * 2.0f);
ApplyPct(drainAmount, target->GetMaxPower(powerType));
int32 maxmana = CalculatePct(caster->GetMaxPower(PowerType), drainAmount * 2.0f);
ApplyPct(drainAmount, target->GetMaxPower(PowerType));
if (drainAmount > maxmana)
drainAmount = maxmana;
}
@@ -6545,10 +6545,10 @@ void AuraEffect::HandlePeriodicManaLeechAuraTick(Unit* target, Unit* caster) con
GUID_LOPART(GetCasterGUID()), GuidHigh2TypeId(GUID_HIPART(GetCasterGUID())), target->GetGUIDLow(), target->GetTypeId(), drainAmount, GetId());
#endif
// resilience reduce mana draining effect at spell crit damage reduction (added in 2.4)
if (powerType == POWER_MANA)
if (PowerType == POWER_MANA)
drainAmount -= target->GetSpellCritDamageReduction(drainAmount);
int32 drainedAmount = -target->ModifyPower(powerType, -drainAmount);
int32 drainedAmount = -target->ModifyPower(PowerType, -drainAmount);
float gainMultiplier = GetSpellInfo()->Effects[GetEffIndex()].CalcValueMultiplier(caster);
@@ -6559,7 +6559,7 @@ void AuraEffect::HandlePeriodicManaLeechAuraTick(Unit* target, Unit* caster) con
int32 gainedAmount = 0;
if (gainAmount)
{
gainedAmount = caster->ModifyPower(powerType, gainAmount);
gainedAmount = caster->ModifyPower(PowerType, gainAmount);
target->AddThreat(caster, float(gainedAmount) * 0.5f, GetSpellInfo()->GetSchoolMask(), GetSpellInfo());
}
@@ -6586,13 +6586,13 @@ void AuraEffect::HandlePeriodicManaLeechAuraTick(Unit* target, Unit* caster) con
void AuraEffect::HandleObsModPowerAuraTick(Unit* target, Unit* caster) const
{
Powers powerType;
Powers PowerType;
if (GetMiscValue() == POWER_ALL)
powerType = target->getPowerType();
PowerType = target->getPowerType();
else
powerType = Powers(GetMiscValue());
PowerType = Powers(GetMiscValue());
if (!target->IsAlive() || !target->GetMaxPower(powerType))
if (!target->IsAlive() || !target->GetMaxPower(PowerType))
return;
if (target->HasUnitState(UNIT_STATE_ISOLATED))
@@ -6602,11 +6602,11 @@ void AuraEffect::HandleObsModPowerAuraTick(Unit* target, Unit* caster) const
}
// don't regen when permanent aura target has full power
if (GetBase()->IsPermanent() && target->GetPower(powerType) == target->GetMaxPower(powerType))
if (GetBase()->IsPermanent() && target->GetPower(PowerType) == target->GetMaxPower(PowerType))
return;
// ignore negative values (can be result apply spellmods to aura damage
uint32 amount = std::max(m_amount, 0) * target->GetMaxPower(powerType) / 100;
uint32 amount = std::max(m_amount, 0) * target->GetMaxPower(PowerType) / 100;
#if defined(ENABLE_EXTRAS) && defined(ENABLE_EXTRA_LOGS)
sLog->outDetail("PeriodicTick: %u (TypeId: %u) energize %u (TypeId: %u) for %u dmg inflicted by %u",
GUID_LOPART(GetCasterGUID()), GuidHigh2TypeId(GUID_HIPART(GetCasterGUID())), target->GetGUIDLow(), target->GetTypeId(), amount, GetId());
@@ -6614,7 +6614,7 @@ void AuraEffect::HandleObsModPowerAuraTick(Unit* target, Unit* caster) const
SpellPeriodicAuraLogInfo pInfo(this, amount, 0, 0, 0, 0.0f, false);
target->SendPeriodicAuraLog(&pInfo);
int32 gain = target->ModifyPower(powerType, amount);
int32 gain = target->ModifyPower(PowerType, amount);
if (caster)
target->getHostileRefManager().threatAssist(caster, float(gain) * 0.5f, GetSpellInfo());
@@ -6622,12 +6622,12 @@ void AuraEffect::HandleObsModPowerAuraTick(Unit* target, Unit* caster) const
void AuraEffect::HandlePeriodicEnergizeAuraTick(Unit* target, Unit* caster) const
{
Powers powerType = Powers(GetMiscValue());
Powers PowerType = Powers(GetMiscValue());
if (target->GetTypeId() == TYPEID_PLAYER && target->getPowerType() != powerType && !m_spellInfo->HasAttribute(SPELL_ATTR7_CAN_RESTORE_SECONDARY_POWER))
if (target->GetTypeId() == TYPEID_PLAYER && target->getPowerType() != PowerType && !m_spellInfo->HasAttribute(SPELL_ATTR7_CAN_RESTORE_SECONDARY_POWER))
return;
if (!target->IsAlive() || !target->GetMaxPower(powerType))
if (!target->IsAlive() || !target->GetMaxPower(PowerType))
return;
if (target->HasUnitState(UNIT_STATE_ISOLATED))
@@ -6637,7 +6637,7 @@ void AuraEffect::HandlePeriodicEnergizeAuraTick(Unit* target, Unit* caster) cons
}
// don't regen when permanent aura target has full power
if (GetBase()->IsPermanent() && target->GetPower(powerType) == target->GetMaxPower(powerType))
if (GetBase()->IsPermanent() && target->GetPower(PowerType) == target->GetMaxPower(PowerType))
return;
// ignore negative values (can be result apply spellmods to aura damage
@@ -6650,7 +6650,7 @@ void AuraEffect::HandlePeriodicEnergizeAuraTick(Unit* target, Unit* caster) cons
sLog->outDetail("PeriodicTick: %u (TypeId: %u) energize %u (TypeId: %u) for %u dmg inflicted by %u",
GUID_LOPART(GetCasterGUID()), GuidHigh2TypeId(GUID_HIPART(GetCasterGUID())), target->GetGUIDLow(), target->GetTypeId(), amount, GetId());
#endif
int32 gain = target->ModifyPower(powerType, amount);
int32 gain = target->ModifyPower(PowerType, amount);
if (caster)
target->getHostileRefManager().threatAssist(caster, float(gain) * 0.5f, GetSpellInfo());
@@ -6658,9 +6658,9 @@ void AuraEffect::HandlePeriodicEnergizeAuraTick(Unit* target, Unit* caster) cons
void AuraEffect::HandlePeriodicPowerBurnAuraTick(Unit* target, Unit* caster) const
{
Powers powerType = Powers(GetMiscValue());
Powers PowerType = Powers(GetMiscValue());
if (!caster || !target->IsAlive() || target->getPowerType() != powerType)
if (!caster || !target->IsAlive() || target->getPowerType() != PowerType)
return;
if (target->HasUnitState(UNIT_STATE_ISOLATED) || target->IsImmunedToDamageOrSchool(GetSpellInfo()))
@@ -6673,10 +6673,10 @@ void AuraEffect::HandlePeriodicPowerBurnAuraTick(Unit* target, Unit* caster) con
int32 damage = std::max(m_amount, 0);
// resilience reduce mana draining effect at spell crit damage reduction (added in 2.4)
if (powerType == POWER_MANA)
if (PowerType == POWER_MANA)
damage -= target->GetSpellCritDamageReduction(damage);
uint32 gain = uint32(-target->ModifyPower(powerType, -damage));
uint32 gain = uint32(-target->ModifyPower(PowerType, -damage));
float dmgMultiplier = GetSpellInfo()->Effects[GetEffIndex()].CalcValueMultiplier(caster);

View File

@@ -772,22 +772,22 @@ void Aura::Update(uint32 diff, Unit* caster)
if (m_duration < 0)
m_duration = 0;
// handle manaPerSecond/manaPerSecondPerLevel
// handle ManaPerSecond/ManaPerSecondPerLevel
if (m_timeCla)
{
if (m_timeCla > int32(diff))
m_timeCla -= diff;
else if (caster)
{
if (int32 manaPerSecond = m_spellInfo->ManaPerSecond + m_spellInfo->ManaPerSecondPerLevel * caster->getLevel())
if (int32 ManaPerSecond = m_spellInfo->ManaPerSecond + m_spellInfo->ManaPerSecondPerLevel * caster->getLevel())
{
m_timeCla += 1000 - diff;
Powers powertype = Powers(m_spellInfo->PowerType);
if (powertype == POWER_HEALTH)
{
if (int32(caster->GetHealth()) > manaPerSecond)
caster->ModifyHealth(-manaPerSecond);
if (int32(caster->GetHealth()) > ManaPerSecond)
caster->ModifyHealth(-ManaPerSecond);
else
{
Remove();
@@ -796,8 +796,8 @@ void Aura::Update(uint32 diff, Unit* caster)
}
else
{
if (int32(caster->GetPower(powertype)) >= manaPerSecond)
caster->ModifyPower(powertype, -manaPerSecond);
if (int32(caster->GetPower(powertype)) >= ManaPerSecond)
caster->ModifyPower(powertype, -ManaPerSecond);
else
{
Remove();

View File

@@ -4576,12 +4576,12 @@ void Spell::SendLogExecute()
m_caster->SendMessageToSet(&data, true);
}
void Spell::ExecuteLogEffectTakeTargetPower(uint8 effIndex, Unit* target, uint32 powerType, uint32 powerTaken, float gainMultiplier)
void Spell::ExecuteLogEffectTakeTargetPower(uint8 effIndex, Unit* target, uint32 PowerType, uint32 powerTaken, float gainMultiplier)
{
InitEffectExecuteData(effIndex);
m_effectExecuteData[effIndex]->append(target->GetPackGUID());
*m_effectExecuteData[effIndex] << uint32(powerTaken);
*m_effectExecuteData[effIndex] << uint32(powerType);
*m_effectExecuteData[effIndex] << uint32(PowerType);
*m_effectExecuteData[effIndex] << float(gainMultiplier);
}
@@ -4794,11 +4794,11 @@ void Spell::TakePower()
if (m_caster->ToPlayer()->GetCommandStatus(CHEAT_POWER))
return;
Powers powerType = Powers(m_spellInfo->PowerType);
Powers PowerType = Powers(m_spellInfo->PowerType);
bool hit = true;
if (m_caster->GetTypeId() == TYPEID_PLAYER)
{
if (powerType == POWER_RAGE || powerType == POWER_ENERGY || powerType == POWER_RUNE || powerType == POWER_RUNIC_POWER)
if (PowerType == POWER_RAGE || PowerType == POWER_ENERGY || PowerType == POWER_RUNE || PowerType == POWER_RUNIC_POWER)
if (uint64 targetGUID = m_targets.GetUnitTargetGUID())
for (std::list<TargetInfo>::iterator ihit = m_UniqueTargetInfo.begin(); ihit != m_UniqueTargetInfo.end(); ++ihit)
if (ihit->targetGUID == targetGUID)
@@ -4814,7 +4814,7 @@ void Spell::TakePower()
}
}
if (powerType == POWER_RUNE)
if (PowerType == POWER_RUNE)
{
TakeRunePower(hit);
return;
@@ -4824,25 +4824,25 @@ void Spell::TakePower()
return;
// health as power used
if (powerType == POWER_HEALTH)
if (PowerType == POWER_HEALTH)
{
m_caster->ModifyHealth(-(int32)m_powerCost);
return;
}
if (powerType >= MAX_POWERS)
if (PowerType >= MAX_POWERS)
{
sLog->outError("Spell::TakePower: Unknown power type '%d'", powerType);
sLog->outError("Spell::TakePower: Unknown power type '%d'", PowerType);
return;
}
if (hit)
m_caster->ModifyPower(powerType, -m_powerCost);
m_caster->ModifyPower(PowerType, -m_powerCost);
else
m_caster->ModifyPower(powerType, -irand(0, m_powerCost / 4));
m_caster->ModifyPower(PowerType, -irand(0, m_powerCost / 4));
// Set the five second timer
if (powerType == POWER_MANA && m_powerCost > 0)
if (PowerType == POWER_MANA && m_powerCost > 0)
m_caster->SetLastManaUse(World::GetGameTimeMS());
}
@@ -4875,9 +4875,9 @@ void Spell::TakeAmmo()
}
}
SpellCastResult Spell::CheckRuneCost(uint32 runeCostID)
SpellCastResult Spell::CheckRuneCost(uint32 RuneCostID)
{
if (m_spellInfo->PowerType != POWER_RUNE || !runeCostID)
if (m_spellInfo->PowerType != POWER_RUNE || !RuneCostID)
return SPELL_CAST_OK;
if (m_caster->GetTypeId() != TYPEID_PLAYER)
@@ -4888,7 +4888,7 @@ SpellCastResult Spell::CheckRuneCost(uint32 runeCostID)
if (player->getClass() != CLASS_DEATH_KNIGHT)
return SPELL_CAST_OK;
SpellRuneCostEntry const* src = sSpellRuneCostStore.LookupEntry(runeCostID);
SpellRuneCostEntry const* src = sSpellRuneCostStore.LookupEntry(RuneCostID);
if (!src)
return SPELL_CAST_OK;
@@ -5234,7 +5234,7 @@ SpellCastResult Spell::CheckCast(bool strict)
if (m_spellInfo->CasterAuraStateNot && m_caster->HasAuraState(AuraStateType(m_spellInfo->CasterAuraStateNot), m_spellInfo, m_caster))
return SPELL_FAILED_CASTER_AURASTATE;
// Note: spell 62473 requres casterAuraSpell = triggering spell
// Note: spell 62473 requres CasterAuraSpell = triggering spell
if (m_spellInfo->CasterAuraSpell && !m_caster->HasAura(sSpellMgr->GetSpellIdForDifficulty(m_spellInfo->CasterAuraSpell, m_caster)))
return SPELL_FAILED_CASTER_AURASTATE;
if (m_spellInfo->ExcludeCasterAuraSpell && m_caster->HasAura(sSpellMgr->GetSpellIdForDifficulty(m_spellInfo->ExcludeCasterAuraSpell, m_caster)))
@@ -6034,7 +6034,7 @@ SpellCastResult Spell::CheckCast(bool strict)
}
case SPELL_AURA_MOUNTED:
{
// Xinef: disallow casting in water for mounts not increasing water movement speed
// Xinef: disallow casting in water for mounts not increasing water movement Speed
if (m_caster->IsInWater() && !m_spellInfo->HasAura(SPELL_AURA_MOD_INCREASE_SWIM_SPEED))
return SPELL_FAILED_ONLY_ABOVEWATER;
@@ -6486,8 +6486,8 @@ SpellCastResult Spell::CheckPower()
}
// Check power amount
Powers powerType = Powers(m_spellInfo->PowerType);
if (int32(m_caster->GetPower(powerType)) < m_powerCost)
Powers PowerType = Powers(m_spellInfo->PowerType);
if (int32(m_caster->GetPower(PowerType)) < m_powerCost)
return SPELL_FAILED_NO_POWER;
else
return SPELL_CAST_OK;

View File

@@ -427,7 +427,7 @@ public:
SpellCastResult CheckSpellFocus();
SpellCastResult CheckRange(bool strict);
SpellCastResult CheckPower();
SpellCastResult CheckRuneCost(uint32 runeCostID);
SpellCastResult CheckRuneCost(uint32 RuneCostID);
SpellCastResult CheckCasterAuras(bool preventionOnly) const;
int32 CalculateSpellDamage(uint8 i, Unit const* target) const { return m_caster->CalculateSpellDamage(target, m_spellInfo, i, &m_spellValue->EffectBasePoints[i]); }
@@ -455,7 +455,7 @@ public:
void SendSpellGo();
void SendSpellCooldown();
void SendLogExecute();
void ExecuteLogEffectTakeTargetPower(uint8 effIndex, Unit* target, uint32 powerType, uint32 powerTaken, float gainMultiplier);
void ExecuteLogEffectTakeTargetPower(uint8 effIndex, Unit* target, uint32 PowerType, uint32 powerTaken, float gainMultiplier);
void ExecuteLogEffectExtraAttacks(uint8 effIndex, Unit* victim, uint32 attCount);
void ExecuteLogEffectInterruptCast(uint8 effIndex, Unit* victim, uint32 spellId);
void ExecuteLogEffectDurabilityDamage(uint8 effIndex, Unit* victim, int32 itemId, int32 slot);

View File

@@ -1368,9 +1368,9 @@ void Spell::EffectPowerDrain(SpellEffIndex effIndex)
if (m_spellInfo->Effects[effIndex].MiscValue < 0 || m_spellInfo->Effects[effIndex].MiscValue >= int8(MAX_POWERS))
return;
Powers powerType = Powers(m_spellInfo->Effects[effIndex].MiscValue);
Powers PowerType = Powers(m_spellInfo->Effects[effIndex].MiscValue);
if (!unitTarget || !unitTarget->IsAlive() || unitTarget->getPowerType() != powerType || damage < 0)
if (!unitTarget || !unitTarget->IsAlive() || unitTarget->getPowerType() != PowerType || damage < 0)
return;
// add spell damage bonus
@@ -1379,10 +1379,10 @@ void Spell::EffectPowerDrain(SpellEffIndex effIndex)
// resilience reduce mana draining effect at spell crit damage reduction (added in 2.4)
int32 power = damage;
if (powerType == POWER_MANA)
if (PowerType == POWER_MANA)
power -= unitTarget->GetSpellCritDamageReduction(power);
int32 newDamage = -(unitTarget->ModifyPower(powerType, -int32(power)));
int32 newDamage = -(unitTarget->ModifyPower(PowerType, -int32(power)));
float gainMultiplier = 0.0f;
@@ -1393,9 +1393,9 @@ void Spell::EffectPowerDrain(SpellEffIndex effIndex)
int32 gain = int32(newDamage * gainMultiplier);
m_caster->EnergizeBySpell(m_caster, m_spellInfo->Id, gain, powerType);
m_caster->EnergizeBySpell(m_caster, m_spellInfo->Id, gain, PowerType);
}
ExecuteLogEffectTakeTargetPower(effIndex, unitTarget, powerType, newDamage, gainMultiplier);
ExecuteLogEffectTakeTargetPower(effIndex, unitTarget, PowerType, newDamage, gainMultiplier);
}
void Spell::EffectSendEvent(SpellEffIndex effIndex)
@@ -1449,16 +1449,16 @@ void Spell::EffectPowerBurn(SpellEffIndex effIndex)
if (m_spellInfo->Effects[effIndex].MiscValue < 0 || m_spellInfo->Effects[effIndex].MiscValue >= int8(MAX_POWERS))
return;
Powers powerType = Powers(m_spellInfo->Effects[effIndex].MiscValue);
Powers PowerType = Powers(m_spellInfo->Effects[effIndex].MiscValue);
if (!unitTarget || !unitTarget->IsAlive() || unitTarget->getPowerType() != powerType || damage < 0)
if (!unitTarget || !unitTarget->IsAlive() || unitTarget->getPowerType() != PowerType || damage < 0)
return;
// burn x% of target's mana, up to maximum of 2x% of caster's mana (Mana Burn)
if (m_spellInfo->Id == 8129)
{
int32 maxDamage = int32(CalculatePct(m_caster->GetMaxPower(powerType), damage * 2));
damage = int32(CalculatePct(unitTarget->GetMaxPower(powerType), damage));
int32 maxDamage = int32(CalculatePct(m_caster->GetMaxPower(PowerType), damage * 2));
damage = int32(CalculatePct(unitTarget->GetMaxPower(PowerType), damage));
damage = std::min(damage, maxDamage);
// Remove fear
@@ -1467,16 +1467,16 @@ void Spell::EffectPowerBurn(SpellEffIndex effIndex)
int32 power = damage;
// resilience reduce mana draining effect at spell crit damage reduction (added in 2.4)
if (powerType == POWER_MANA)
if (PowerType == POWER_MANA)
power -= unitTarget->GetSpellCritDamageReduction(power);
int32 newDamage = -(unitTarget->ModifyPower(powerType, -power));
int32 newDamage = -(unitTarget->ModifyPower(PowerType, -power));
// NO - Not a typo - EffectPowerBurn uses effect value multiplier - not effect damage multiplier
float dmgMultiplier = m_spellInfo->Effects[effIndex].CalcValueMultiplier(m_originalCaster, this);
// add log data before multiplication (need power amount, not damage)
ExecuteLogEffectTakeTargetPower(effIndex, unitTarget, powerType, newDamage, 0.0f);
ExecuteLogEffectTakeTargetPower(effIndex, unitTarget, PowerType, newDamage, 0.0f);
newDamage = int32(newDamage * dmgMultiplier);

View File

@@ -781,10 +781,10 @@ SpellInfo::SpellInfo(SpellEntry const* spellEntry)
TargetAuraState = spellEntry->TargetAuraState;
CasterAuraStateNot = spellEntry->CasterAuraStateNot;
TargetAuraStateNot = spellEntry->TargetAuraStateNot;
CasterAuraSpell = spellEntry->casterAuraSpell;
TargetAuraSpell = spellEntry->targetAuraSpell;
ExcludeCasterAuraSpell = spellEntry->excludeCasterAuraSpell;
ExcludeTargetAuraSpell = spellEntry->excludeTargetAuraSpell;
CasterAuraSpell = spellEntry->CasterAuraSpell;
TargetAuraSpell = spellEntry->TargetAuraSpell;
ExcludeCasterAuraSpell = spellEntry->ExcludeCasterAuraSpell;
ExcludeTargetAuraSpell = spellEntry->ExcludeTargetAuraSpell;
CastTimeEntry = spellEntry->CastingTimeIndex ? sSpellCastTimesStore.LookupEntry(spellEntry->CastingTimeIndex) : nullptr;
RecoveryTime = spellEntry->RecoveryTime;
CategoryRecoveryTime = spellEntry->CategoryRecoveryTime;
@@ -793,22 +793,22 @@ SpellInfo::SpellInfo(SpellEntry const* spellEntry)
InterruptFlags = spellEntry->InterruptFlags;
AuraInterruptFlags = spellEntry->AuraInterruptFlags;
ChannelInterruptFlags = spellEntry->ChannelInterruptFlags;
ProcFlags = spellEntry->procFlags;
ProcChance = spellEntry->procChance;
ProcCharges = spellEntry->procCharges;
MaxLevel = spellEntry->maxLevel;
BaseLevel = spellEntry->baseLevel;
SpellLevel = spellEntry->spellLevel;
ProcFlags = spellEntry->ProcFlags;
ProcChance = spellEntry->ProcChance;
ProcCharges = spellEntry->ProcCharges;
MaxLevel = spellEntry->MaxLevel;
BaseLevel = spellEntry->BaseLevel;
SpellLevel = spellEntry->SpellLevel;
DurationEntry = spellEntry->DurationIndex ? sSpellDurationStore.LookupEntry(spellEntry->DurationIndex) : nullptr;
PowerType = spellEntry->powerType;
ManaCost = spellEntry->manaCost;
ManaCostPerlevel = spellEntry->manaCostPerlevel;
ManaPerSecond = spellEntry->manaPerSecond;
ManaPerSecondPerLevel = spellEntry->manaPerSecondPerLevel;
PowerType = spellEntry->PowerType;
ManaCost = spellEntry->ManaCost;
ManaCostPerlevel = spellEntry->ManaCostPerlevel;
ManaPerSecond = spellEntry->ManaPerSecond;
ManaPerSecondPerLevel = spellEntry->ManaPerSecondPerLevel;
ManaCostPercentage = spellEntry->ManaCostPercentage;
RuneCostID = spellEntry->runeCostID;
RangeEntry = spellEntry->rangeIndex ? sSpellRangeStore.LookupEntry(spellEntry->rangeIndex) : nullptr;
Speed = spellEntry->speed;
RuneCostID = spellEntry->RuneCostID;
RangeEntry = spellEntry->RangeIndex ? sSpellRangeStore.LookupEntry(spellEntry->RangeIndex) : nullptr;
Speed = spellEntry->Speed;
StackAmount = spellEntry->StackAmount;
for (uint8 i = 0; i < 2; ++i)
Totem[i] = spellEntry->Totem[i];
@@ -824,7 +824,7 @@ SpellInfo::SpellInfo(SpellEntry const* spellEntry)
for (uint8 i = 0; i < 2; ++i)
SpellVisual[i] = spellEntry->SpellVisual[i];
SpellIconID = spellEntry->SpellIconID;
ActiveIconID = spellEntry->activeIconID;
ActiveIconID = spellEntry->ActiveIconID;
for (uint8 i = 0; i < 16; ++i)
SpellName[i] = spellEntry->SpellName[i];
for (uint8 i = 0; i < 16; ++i)

View File

@@ -3330,16 +3330,16 @@ void SpellMgr::LoadDbcDataCorrections()
// Elixir of Minor Fortitude
ApplySpellFix({ 2378 }, [](SpellEntry* spellInfo)
{
spellInfo->manaCost = 0;
spellInfo->manaPerSecond = 0;
spellInfo->ManaCost = 0;
spellInfo->ManaPerSecond = 0;
});
// Elixir of Detect Undead
ApplySpellFix({ 11389 }, [](SpellEntry* spellInfo)
{
spellInfo->powerType = POWER_MANA;
spellInfo->manaCost = 0;
spellInfo->manaPerSecond = 0;
spellInfo->PowerType = POWER_MANA;
spellInfo->ManaCost = 0;
spellInfo->ManaPerSecond = 0;
});
// Evergrove Druid Transform Crow
@@ -3417,7 +3417,7 @@ void SpellMgr::LoadDbcDataCorrections()
42821 // Headless Horseman - Wisp Flight Missile
}, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 6; // 100 yards
spellInfo->RangeIndex = 6; // 100 yards
});
//They Must Burn Bomb Aura (self)
@@ -3429,7 +3429,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Mana Shield (rank 2)
ApplySpellFix({ 8494 }, [](SpellEntry* spellInfo)
{
spellInfo->procChance = 0; // because of bug in dbc
spellInfo->ProcChance = 0; // because of bug in dbc
});
ApplySpellFix({
@@ -3521,13 +3521,13 @@ void SpellMgr::LoadDbcDataCorrections()
18820 // Insight
}, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 1;
spellInfo->ProcCharges = 1;
});
// Tidal Wave
ApplySpellFix({ 53390 }, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 2;
spellInfo->ProcCharges = 2;
});
// Oscillation Field
@@ -3539,7 +3539,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Ascendance (Talisman of Ascendance trinket)
ApplySpellFix({ 28200 }, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 6;
spellInfo->ProcCharges = 6;
});
// The Eye of Acherus (no spawn in phase 2 in db)
@@ -3633,7 +3633,7 @@ void SpellMgr::LoadDbcDataCorrections()
27937 // Anchor to Skulls
}, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 13;
spellInfo->RangeIndex = 13;
});
// Wrath of the Plaguebringer
@@ -3810,8 +3810,8 @@ void SpellMgr::LoadDbcDataCorrections()
// Seal of Light trigger
ApplySpellFix({ 20167 }, [](SpellEntry* spellInfo)
{
spellInfo->spellLevel = 0;
spellInfo->baseLevel = 0;
spellInfo->SpellLevel = 0;
spellInfo->BaseLevel = 0;
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
});
@@ -3917,7 +3917,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Silencing Shot
ApplySpellFix({ 34490, 41084, 42671 }, [](SpellEntry* spellInfo)
{
spellInfo->speed = 0.0f;
spellInfo->Speed = 0.0f;
});
// Monstrous Bite
@@ -3936,14 +3936,14 @@ void SpellMgr::LoadDbcDataCorrections()
// Cobra Strikes
ApplySpellFix({ 53257 }, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 2;
spellInfo->ProcCharges = 2;
spellInfo->StackAmount = 0;
});
// Kill Command
ApplySpellFix({ 34027 }, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 0;
spellInfo->ProcCharges = 0;
});
// Kindred Spirits, damage aura
@@ -4025,7 +4025,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Killing Spree (teleport)
ApplySpellFix({ 57840 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 6; // 100 yards
spellInfo->RangeIndex = 6; // 100 yards
});
// Killing Spree
@@ -4039,7 +4039,7 @@ void SpellMgr::LoadDbcDataCorrections()
{
spellInfo->Effect[2] = 0;
spellInfo->Effect[1] = 0;
spellInfo->runeCostID = 442;
spellInfo->RuneCostID = 442;
});
// Chains of Ice
@@ -4066,7 +4066,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Magic Suppression
ApplySpellFix({ 49224, 49610, 49611 }, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 0;
spellInfo->ProcCharges = 0;
});
// Wandering Plague
@@ -4080,7 +4080,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 49028 }, [](SpellEntry* spellInfo)
{
spellInfo->Effect[2] = 0;
spellInfo->procFlags |= PROC_FLAG_DONE_MELEE_AUTO_ATTACK;
spellInfo->ProcFlags |= PROC_FLAG_DONE_MELEE_AUTO_ATTACK;
});
// Death and Decay
@@ -4182,22 +4182,22 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 55166, 55198 }, [](SpellEntry* spellInfo)
{
spellInfo->DurationIndex = 18;
spellInfo->procCharges = 0;
spellInfo->ProcCharges = 0;
});
// Healing Stream Totem
ApplySpellFix({ 52042 }, [](SpellEntry* spellInfo)
{
spellInfo->spellLevel = 0;
spellInfo->baseLevel = 0;
spellInfo->SpellLevel = 0;
spellInfo->BaseLevel = 0;
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
});
// Earth Shield
ApplySpellFix({ 379 }, [](SpellEntry* spellInfo)
{
spellInfo->spellLevel = 0;
spellInfo->baseLevel = 0;
spellInfo->SpellLevel = 0;
spellInfo->BaseLevel = 0;
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
spellInfo->AttributesEx3 |= SPELL_ATTR3_NO_DONE_BONUS;
});
@@ -4246,14 +4246,14 @@ void SpellMgr::LoadDbcDataCorrections()
// Heroism
ApplySpellFix({ 32182 }, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 57723; // Exhaustion
spellInfo->ExcludeTargetAuraSpell = 57723; // Exhaustion
spellInfo->AttributesEx2 |= SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS;
});
// Bloodlust
ApplySpellFix({ 2825 }, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 57724; // Sated
spellInfo->ExcludeTargetAuraSpell = 57724; // Sated
spellInfo->AttributesEx2 |= SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS;
});
@@ -4318,7 +4318,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Rain of Fire (Doomguard)
ApplySpellFix({ 42227 }, [](SpellEntry* spellInfo)
{
spellInfo->speed = 0.0f;
spellInfo->Speed = 0.0f;
});
// Ritual Enslavement
@@ -4336,7 +4336,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Magic Absorption
ApplySpellFix({ 29441, 29444 }, [](SpellEntry* spellInfo)
{
spellInfo->spellLevel = 0;
spellInfo->SpellLevel = 0;
});
// Living Bomb
@@ -4421,7 +4421,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Fingers of Frost visual buff
ApplySpellFix({ 74396 }, [](SpellEntry* spellInfo)
{
spellInfo->procCharges = 2;
spellInfo->ProcCharges = 2;
spellInfo->StackAmount = 0;
});
@@ -4441,7 +4441,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 59653 }, [](SpellEntry* spellInfo)
{
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
spellInfo->spellLevel = 0;
spellInfo->SpellLevel = 0;
});
ApplySpellFix({
@@ -4505,7 +4505,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 64844 }, [](SpellEntry* spellInfo)
{
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
spellInfo->spellLevel = 0;
spellInfo->SpellLevel = 0;
});
ApplySpellFix({
@@ -4542,7 +4542,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 33778 }, [](SpellEntry* spellInfo)
{
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
spellInfo->spellLevel = 0;
spellInfo->SpellLevel = 0;
spellInfo->SpellFamilyFlags = flag96(0, 0x10, 0);
});
@@ -4649,7 +4649,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 66551 }, [](SpellEntry* spellInfo)
{
// Teleport in, missing range
spellInfo->rangeIndex = 13; // 50000yd
spellInfo->RangeIndex = 13; // 50000yd
});
// A'dal's Song of Battle
@@ -4698,7 +4698,7 @@ void SpellMgr::LoadDbcDataCorrections()
// WintergraspCatapult - Spell Plague Barrell - Range
ApplySpellFix({ 57606 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 164; // "Catapult Range"
spellInfo->RangeIndex = 164; // "Catapult Range"
});
// Boulder (Demolisher)
@@ -4785,7 +4785,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Crystal Channel
ApplySpellFix({ 34156 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 35; // 35yd;
spellInfo->RangeIndex = 35; // 35yd;
spellInfo->ChannelInterruptFlags |= AURA_INTERRUPT_FLAG_MOVE;
});
@@ -4810,7 +4810,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Activate Sunblade Protecto
ApplySpellFix({ 46475, 46476 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 14; // 60yd
spellInfo->RangeIndex = 14; // 60yd
});
// Break Ice
@@ -4822,13 +4822,13 @@ void SpellMgr::LoadDbcDataCorrections()
// Sinister Reflection Clone
ApplySpellFix({ 45785 }, [](SpellEntry* spellInfo)
{
spellInfo->speed = 0.0f;
spellInfo->Speed = 0.0f;
});
// Armageddon
ApplySpellFix({ 45909 }, [](SpellEntry* spellInfo)
{
spellInfo->speed = 8.0f;
spellInfo->Speed = 8.0f;
});
// Spell Absorption
@@ -4864,7 +4864,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Teleport Maiev
ApplySpellFix({ 41221 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 13; // 0-50000yd
spellInfo->RangeIndex = 13; // 0-50000yd
});
// Watery Grave Explosion
@@ -4970,7 +4970,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Charged Chaotic rift aura, trigger
ApplySpellFix({ 47737 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 37; // 50yd
spellInfo->RangeIndex = 37; // 50yd
});
// Vanish
@@ -5004,7 +5004,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Skarvald, Charge
ApplySpellFix({ 43651 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 13; // 0-50000yd
spellInfo->RangeIndex = 13; // 0-50000yd
});
// Ingvar the Plunderer, Woe Strike
@@ -5091,7 +5091,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Pyrobuffet
ApplySpellFix({ 57557 }, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 56911;
spellInfo->ExcludeTargetAuraSpell = 56911;
});
// Arcane Barrage
@@ -5119,7 +5119,7 @@ void SpellMgr::LoadDbcDataCorrections()
spellInfo->AttributesEx3 |= SPELL_ATTR3_IGNORE_HIT_RESULT;
});
// Haste (Nexus Lord, increase run speed of the disk)
// Haste (Nexus Lord, increase run Speed of the disk)
ApplySpellFix({ 57060 }, [](SpellEntry* spellInfo)
{
spellInfo->EffectImplicitTargetA[2] = TARGET_UNIT_VEHICLE;
@@ -5190,7 +5190,7 @@ void SpellMgr::LoadDbcDataCorrections()
spellInfo->EffectImplicitTargetB[1] = TARGET_UNIT_SRC_AREA_ALLY;
spellInfo->EffectPointsPerComboPoint[1] = 2500;
spellInfo->EffectBasePoints[1] = 2499;
spellInfo->rangeIndex = 1;
spellInfo->RangeIndex = 1;
spellInfo->AttributesEx2 |= SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS;
});
@@ -5322,7 +5322,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Lightning Pillar
ApplySpellFix({ 62976 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 6;
spellInfo->RangeIndex = 6;
spellInfo->DurationIndex = 28;
});
@@ -5368,7 +5368,7 @@ void SpellMgr::LoadDbcDataCorrections()
{
spellInfo->AttributesEx2 |= SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS;
spellInfo->EffectRadiusIndex[0] = 12; // 100yd
spellInfo->rangeIndex = 13; // 50000yd
spellInfo->RangeIndex = 13; // 50000yd
});
// Constellation Phase Effect
@@ -5408,7 +5408,7 @@ void SpellMgr::LoadDbcDataCorrections()
{
spellInfo->Targets |= TARGET_FLAG_DEST_LOCATION;
spellInfo->EffectImplicitTargetA[0] = TARGET_DEST_DEST;
spellInfo->rangeIndex = 13;
spellInfo->RangeIndex = 13;
spellInfo->DurationIndex = 5;
});
@@ -5454,7 +5454,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 49838 }, [](SpellEntry* spellInfo)
{
spellInfo->AttributesEx3 |= SPELL_ATTR3_NO_INITIAL_AGGRO;
spellInfo->excludeTargetAuraSpell = 51162; // exclude planar shift
spellInfo->ExcludeTargetAuraSpell = 51162; // exclude planar shift
spellInfo->EffectRadiusIndex[EFFECT_0] = EFFECT_RADIUS_150_YARDS;
});
@@ -5532,7 +5532,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Killing Spree (Off hand damage)
ApplySpellFix({ 57842 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 2; // Melee Range
spellInfo->RangeIndex = 2; // Melee Range
});
// Trial of the Crusader, Jaraxxus Intro spell
@@ -5556,7 +5556,7 @@ void SpellMgr::LoadDbcDataCorrections()
spellInfo->EffectApplyAuraName[0] = SPELL_AURA_SET_VEHICLE_ID;
spellInfo->EffectMiscValue[0] = 496;
spellInfo->DurationIndex = 21;
spellInfo->rangeIndex = 13;
spellInfo->RangeIndex = 13;
spellInfo->EffectImplicitTargetA[0] = 25;
spellInfo->EffectImplicitTargetB[0] = 0;
spellInfo->AuraInterruptFlags = AURA_INTERRUPT_FLAG_CHANGE_MAP;
@@ -5583,7 +5583,7 @@ void SpellMgr::LoadDbcDataCorrections()
{
spellInfo->EffectImplicitTargetA[0] = TARGET_UNIT_TARGET_ANY;
spellInfo->EffectImplicitTargetB[0] = 0;
spellInfo->speed = 14.0f;
spellInfo->Speed = 14.0f;
spellInfo->Attributes |= SPELL_ATTR0_STOP_ATTACK_TARGET;
spellInfo->AttributesEx |= SPELL_ATTR1_NO_THREAT;
spellInfo->AttributesEx3 |= SPELL_ATTR3_NO_INITIAL_AGGRO;
@@ -5604,7 +5604,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Trial of the Crusader, Jaraxxus, Curse of the Nether
ApplySpellFix({ 66211 }, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 66209; // exclude Touch of Jaraxxus
spellInfo->ExcludeTargetAuraSpell = 66209; // exclude Touch of Jaraxxus
});
// Trial of the Crusader, Jaraxxus, Summon Volcano
@@ -5696,7 +5696,7 @@ void SpellMgr::LoadDbcDataCorrections()
65767 // light surge 0
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 65686;
spellInfo->ExcludeTargetAuraSpell = 65686;
});
ApplySpellFix({
@@ -5714,7 +5714,7 @@ void SpellMgr::LoadDbcDataCorrections()
67274 // light surge 1
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 67222;
spellInfo->ExcludeTargetAuraSpell = 67222;
});
ApplySpellFix({
@@ -5732,7 +5732,7 @@ void SpellMgr::LoadDbcDataCorrections()
67275 // light surge 2
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 67223;
spellInfo->ExcludeTargetAuraSpell = 67223;
});
ApplySpellFix({
@@ -5750,7 +5750,7 @@ void SpellMgr::LoadDbcDataCorrections()
67276 // light surge 3
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 67224;
spellInfo->ExcludeTargetAuraSpell = 67224;
});
ApplySpellFix({
@@ -5768,7 +5768,7 @@ void SpellMgr::LoadDbcDataCorrections()
65769 // dark surge 0
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 65684;
spellInfo->ExcludeTargetAuraSpell = 65684;
});
ApplySpellFix({
@@ -5786,7 +5786,7 @@ void SpellMgr::LoadDbcDataCorrections()
67265 // dark surge 1
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 67176;
spellInfo->ExcludeTargetAuraSpell = 67176;
});
ApplySpellFix({
@@ -5804,7 +5804,7 @@ void SpellMgr::LoadDbcDataCorrections()
67266 // dark surge 2
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 67177;
spellInfo->ExcludeTargetAuraSpell = 67177;
});
ApplySpellFix({
@@ -5822,7 +5822,7 @@ void SpellMgr::LoadDbcDataCorrections()
67267 // dark surge 3
}, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 67178;
spellInfo->ExcludeTargetAuraSpell = 67178;
});
// Trial of the Crusader, Twin Valkyr, Twin's Pact
@@ -5940,7 +5940,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Frost Nova
ApplySpellFix({ 68198 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 13;
spellInfo->RangeIndex = 13;
spellInfo->Targets |= TARGET_FLAG_DEST_LOCATION;
});
@@ -5973,7 +5973,7 @@ void SpellMgr::LoadDbcDataCorrections()
spellInfo->EffectImplicitTargetB[1] = 0;
spellInfo->EffectImplicitTargetA[2] = TARGET_UNIT_CASTER;
spellInfo->EffectImplicitTargetB[2] = 0;
spellInfo->rangeIndex = 6; // 100yd
spellInfo->RangeIndex = 6; // 100yd
spellInfo->AttributesEx3 |= SPELL_ATTR3_IGNORE_HIT_RESULT;
});
@@ -5991,8 +5991,8 @@ void SpellMgr::LoadDbcDataCorrections()
// Overlord's Brand
ApplySpellFix({ 69172 }, [](SpellEntry* spellInfo)
{
spellInfo->procFlags = DONE_HIT_PROC_FLAG_MASK & ~PROC_FLAG_DONE_PERIODIC;
spellInfo->procChance = 100;
spellInfo->ProcFlags = DONE_HIT_PROC_FLAG_MASK & ~PROC_FLAG_DONE_PERIODIC;
spellInfo->ProcChance = 100;
});
// Icy Blast
@@ -6064,7 +6064,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Essence of the Captured
ApplySpellFix({ 73035, 70719 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 13;
spellInfo->RangeIndex = 13;
});
// Achievement Check
@@ -6181,7 +6181,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Death Plague (Rotting Frost Giant)
ApplySpellFix({ 72864 }, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 0;
spellInfo->ExcludeTargetAuraSpell = 0;
});
// Gunship Battle, spell Below Zero
@@ -6389,7 +6389,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Frost Bomb
ApplySpellFix({ 69846 }, [](SpellEntry* spellInfo)
{
spellInfo->speed = 0.0f; // This spell's summon happens instantly
spellInfo->Speed = 0.0f; // This spell's summon happens instantly
});
// Mystic Buffet (Sindragosa)
@@ -6460,7 +6460,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Jump
ApplySpellFix({ 71809 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 5; // 40yd
spellInfo->RangeIndex = 5; // 40yd
spellInfo->EffectRadiusIndex[0] = EFFECT_RADIUS_10_YARDS; // 10yd
spellInfo->EffectMiscValue[0] = 190;
});
@@ -6498,7 +6498,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Raging Spirit Visual
ApplySpellFix({ 69198 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 13; // 50000yd
spellInfo->RangeIndex = 13; // 50000yd
spellInfo->AttributesEx2 |= SPELL_ATTR2_CAN_TARGET_NOT_IN_LOS;
spellInfo->AttributesEx3 |= SPELL_ATTR3_IGNORE_HIT_RESULT;
});
@@ -6507,7 +6507,7 @@ void SpellMgr::LoadDbcDataCorrections()
ApplySpellFix({ 72762 }, [](SpellEntry* spellInfo)
{
spellInfo->DurationIndex = 559; // 53 seconds
spellInfo->excludeCasterAuraSpell = 0;
spellInfo->ExcludeCasterAuraSpell = 0;
spellInfo->Attributes |= SPELL_ATTR0_UNAFFECTED_BY_INVULNERABILITY;
spellInfo->AttributesEx6 |= (SPELL_ATTR6_CAN_TARGET_INVISIBLE | SPELL_ATTR6_CAN_TARGET_UNTARGETABLE);
});
@@ -6599,7 +6599,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Leap to a Random Location
ApplySpellFix({ 70485 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 6; // 100yd
spellInfo->RangeIndex = 6; // 100yd
spellInfo->EffectRadiusIndex[0] = EFFECT_RADIUS_10_YARDS;
spellInfo->EffectMiscValue[0] = 100;
});
@@ -6684,7 +6684,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Meteor Strike
ApplySpellFix({ 74637 }, [](SpellEntry* spellInfo)
{
spellInfo->speed = 0;
spellInfo->Speed = 0;
});
//Blazing Aura
@@ -6720,7 +6720,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Rallying the Troops
ApplySpellFix({ 47394 }, [](SpellEntry* spellInfo)
{
spellInfo->excludeTargetAuraSpell = 47394;
spellInfo->ExcludeTargetAuraSpell = 47394;
});
// A Tangled Skein
@@ -7079,7 +7079,7 @@ void SpellMgr::LoadDbcDataCorrections()
}, [](SpellEntry* spellInfo)
{
spellInfo->DmgClass = SPELL_DAMAGE_CLASS_MAGIC;
spellInfo->spellLevel = 0;
spellInfo->SpellLevel = 0;
});
// Drain Life - Bryntroll
@@ -7132,7 +7132,7 @@ void SpellMgr::LoadDbcDataCorrections()
// Dragon Kite, Tuskarr Kite - Kite String
ApplySpellFix({ 45192 }, [](SpellEntry* spellInfo)
{
spellInfo->rangeIndex = 6; // 100yd
spellInfo->RangeIndex = 6; // 100yd
});
// Frigid Frostling, Infrigidate
@@ -7175,7 +7175,7 @@ void SpellMgr::LoadDbcDataCorrections()
spellInfo->EffectImplicitTargetA[0] = TARGET_SRC_CASTER;
spellInfo->EffectImplicitTargetB[0] = TARGET_UNIT_SRC_AREA_ENTRY;
spellInfo->MaxAffectedTargets = 0;
spellInfo->excludeCasterAuraSpell = 42299;
spellInfo->ExcludeCasterAuraSpell = 42299;
});
// Catch the Wild Wolpertinger!
@@ -7299,9 +7299,9 @@ void SpellMgr::LoadDbcDataCorrections()
case SPELL_EFFECT_JUMP:
case SPELL_EFFECT_JUMP_DEST:
case SPELL_EFFECT_LEAP_BACK:
if (!spellInfo->speed && !spellInfo->SpellFamilyName)
if (!spellInfo->Speed && !spellInfo->SpellFamilyName)
{
spellInfo->speed = SPEED_CHARGE;
spellInfo->Speed = SPEED_CHARGE;
}
break;
}
@@ -7316,16 +7316,16 @@ void SpellMgr::LoadDbcDataCorrections()
// Xinef: Fix range for trajectories and triggered spells
for (uint8 j = 0; j < 3; ++j)
{
if (spellInfo->rangeIndex == 1 && (spellInfo->EffectImplicitTargetA[j] == TARGET_DEST_TRAJ || spellInfo->EffectImplicitTargetB[j] == TARGET_DEST_TRAJ))
if (spellInfo->RangeIndex == 1 && (spellInfo->EffectImplicitTargetA[j] == TARGET_DEST_TRAJ || spellInfo->EffectImplicitTargetB[j] == TARGET_DEST_TRAJ))
{
if (SpellEntry* spellInfo2 = (SpellEntry*)sSpellStore.LookupEntry(spellInfo->EffectTriggerSpell[j]))
{
spellInfo2->rangeIndex = 187; // 300yd
spellInfo2->RangeIndex = 187; // 300yd
}
}
}
if (spellInfo->activeIconID == 2158) // flight
if (spellInfo->ActiveIconID == 2158) // flight
{
spellInfo->Attributes |= SPELL_ATTR0_PASSIVE;
}

View File

@@ -1556,31 +1556,31 @@ struct SpellEntry
uint32 TargetAuraState; // 21 m_targetAuraState
uint32 CasterAuraStateNot; // 22 m_excludeCasterAuraState
uint32 TargetAuraStateNot; // 23 m_excludeTargetAuraState
uint32 casterAuraSpell; // 24 m_casterAuraSpell
uint32 targetAuraSpell; // 25 m_targetAuraSpell
uint32 excludeCasterAuraSpell; // 26 m_excludeCasterAuraSpell
uint32 excludeTargetAuraSpell; // 27 m_excludeTargetAuraSpell
uint32 CasterAuraSpell; // 24 m_casterAuraSpell
uint32 TargetAuraSpell; // 25 m_targetAuraSpell
uint32 ExcludeCasterAuraSpell; // 26 m_excludeCasterAuraSpell
uint32 ExcludeTargetAuraSpell; // 27 m_excludeTargetAuraSpell
uint32 CastingTimeIndex; // 28 m_castingTimeIndex
uint32 RecoveryTime; // 29 m_recoveryTime
uint32 CategoryRecoveryTime; // 30 m_categoryRecoveryTime
uint32 InterruptFlags; // 31 m_interruptFlags
uint32 AuraInterruptFlags; // 32 m_auraInterruptFlags
uint32 ChannelInterruptFlags; // 33 m_channelInterruptFlags
uint32 procFlags; // 34 m_procTypeMask
uint32 procChance; // 35 m_procChance
uint32 procCharges; // 36 m_procCharges
uint32 maxLevel; // 37 m_maxLevel
uint32 baseLevel; // 38 m_baseLevel
uint32 spellLevel; // 39 m_spellLevel
uint32 ProcFlags; // 34 m_procTypeMask
uint32 ProcChance; // 35 m_procChance
uint32 ProcCharges; // 36 m_procCharges
uint32 MaxLevel; // 37 m_maxLevel
uint32 BaseLevel; // 38 m_baseLevel
uint32 SpellLevel; // 39 m_spellLevel
uint32 DurationIndex; // 40 m_durationIndex
uint32 powerType; // 41 m_powerType
uint32 manaCost; // 42 m_manaCost
uint32 manaCostPerlevel; // 43 m_manaCostPerLevel
uint32 manaPerSecond; // 44 m_manaPerSecond
uint32 manaPerSecondPerLevel; // 45 m_manaPerSecondPerLeve
uint32 rangeIndex; // 46 m_rangeIndex
float speed; // 47 m_speed
//uint32 modalNextSpell; // 48 m_modalNextSpell not used
uint32 PowerType; // 41 m_powerType
uint32 ManaCost; // 42 m_manaCost
uint32 ManaCostPerlevel; // 43 m_manaCostPerLevel
uint32 ManaPerSecond; // 44 m_manaPerSecond
uint32 ManaPerSecondPerLevel; // 45 m_manaPerSecondPerLeve
uint32 RangeIndex; // 46 m_rangeIndex
float Speed; // 47 m_speed
//uint32 ModalNextSpell; // 48 m_modalNextSpell not used
uint32 StackAmount; // 49 m_cumulativeAura
uint32 Totem[2]; // 50-51 m_totem
int32 Reagent[MAX_SPELL_REAGENTS]; // 52-59 m_reagent
@@ -1608,8 +1608,8 @@ struct SpellEntry
flag96 EffectSpellClassMask[MAX_SPELL_EFFECTS]; // 122-130
uint32 SpellVisual[2]; // 131-132 m_spellVisualID
uint32 SpellIconID; // 133 m_spellIconID
uint32 activeIconID; // 134 m_activeIconID
//uint32 spellPriority; // 135 not used
uint32 ActiveIconID; // 134 m_activeIconID
//uint32 SpellPriority; // 135 not used
char* SpellName[16]; // 136-151 m_name_lang
//uint32 SpellNameFlag; // 152 not used
char* Rank[16]; // 153-168 m_nameSubtext_lang
@@ -1635,11 +1635,11 @@ struct SpellEntry
uint32 TotemCategory[2]; // 222-223 m_requiredTotemCategoryID
int32 AreaGroupId; // 224 m_requiredAreaGroupId
uint32 SchoolMask; // 225 m_schoolMask
uint32 runeCostID; // 226 m_runeCostID
//uint32 spellMissileID; // 227 m_spellMissileID not used
uint32 RuneCostID; // 226 m_runeCostID
//uint32 SpellMissileID; // 227 m_spellMissileID not used
//uint32 PowerDisplayId; // 228 PowerDisplay.dbc, new in 3.1
float EffectBonusMultiplier[MAX_SPELL_EFFECTS]; // 229-231 3.2.0
//uint32 spellDescriptionVariableID; // 232 3.2.0
//uint32 SpellDescriptionVariableID; // 232 3.2.0
//uint32 SpellDifficultyId; // 233 3.3.0
};