*Correct Seal of Command formula, and minor cleanup, thanks lobuz
--HG-- branch : trunk
This commit is contained in:
@@ -4543,8 +4543,8 @@ void Spell::SpellDamageWeaponDmg(uint32 i)
|
|||||||
// Seal of Command - receive benefit from Spell Damage and Healing
|
// Seal of Command - receive benefit from Spell Damage and Healing
|
||||||
if (m_spellInfo->SpellFamilyFlags[0] & 0x2000000)
|
if (m_spellInfo->SpellFamilyFlags[0] & 0x2000000)
|
||||||
{
|
{
|
||||||
spell_bonus += int32(0.23f*m_caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellInfo)));
|
spell_bonus += int32(0.45f*0.23f*m_caster->SpellBaseDamageBonus(GetSpellSchoolMask(m_spellInfo)));
|
||||||
spell_bonus += int32(0.29f*m_caster->SpellBaseDamageBonusForVictim(GetSpellSchoolMask(m_spellInfo), unitTarget));
|
spell_bonus += int32(0.45f*0.23f*m_caster->SpellBaseDamageBonusForVictim(GetSpellSchoolMask(m_spellInfo), unitTarget));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Seal of Command Unleashed
|
// Seal of Command Unleashed
|
||||||
|
|||||||
+10
-10
@@ -3884,7 +3884,7 @@ bool Unit::RemoveNoStackAurasDueToAura(Aura *Aur)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Unit::RemoveAura(uint32 spellId, uint64 caster ,AuraRemoveMode removeMode)
|
void Unit::RemoveAura(uint32 spellId, uint64 caster, AuraRemoveMode removeMode)
|
||||||
{
|
{
|
||||||
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId); )
|
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId); )
|
||||||
{
|
{
|
||||||
@@ -3903,7 +3903,7 @@ void Unit::RemoveAura(Aura * aur ,AuraRemoveMode mode)
|
|||||||
// no need to remove
|
// no need to remove
|
||||||
if (!aur || aur->IsRemoved())
|
if (!aur || aur->IsRemoved())
|
||||||
return;
|
return;
|
||||||
for (AuraMap::iterator iter = m_Auras.lower_bound(aur->GetId()); iter != m_Auras.upper_bound(aur->GetId()); )
|
for (AuraMap::iterator iter = m_Auras.lower_bound(aur->GetId()); iter != m_Auras.upper_bound(aur->GetId());)
|
||||||
{
|
{
|
||||||
if (aur == iter->second)
|
if (aur == iter->second)
|
||||||
{
|
{
|
||||||
@@ -3915,9 +3915,9 @@ void Unit::RemoveAura(Aura * aur ,AuraRemoveMode mode)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Unit::RemoveAurasDueToSpell(uint32 spellId, uint64 caster ,AuraRemoveMode removeMode)
|
void Unit::RemoveAurasDueToSpell(uint32 spellId, uint64 caster, AuraRemoveMode removeMode)
|
||||||
{
|
{
|
||||||
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId); )
|
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId);)
|
||||||
{
|
{
|
||||||
if (!caster || iter->second->GetCasterGUID()==caster)
|
if (!caster || iter->second->GetCasterGUID()==caster)
|
||||||
{
|
{
|
||||||
@@ -3929,9 +3929,9 @@ void Unit::RemoveAurasDueToSpell(uint32 spellId, uint64 caster ,AuraRemoveMode r
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Unit::RemoveAuraFromStack(uint32 spellId, uint64 caster ,AuraRemoveMode removeMode)
|
void Unit::RemoveAuraFromStack(uint32 spellId, uint64 caster, AuraRemoveMode removeMode)
|
||||||
{
|
{
|
||||||
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId); )
|
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId);)
|
||||||
{
|
{
|
||||||
if (!caster || iter->second->GetCasterGUID()==caster)
|
if (!caster || iter->second->GetCasterGUID()==caster)
|
||||||
{
|
{
|
||||||
@@ -3949,9 +3949,9 @@ inline void Unit::RemoveAuraFromStack(AuraMap::iterator &iter,AuraRemoveMode rem
|
|||||||
RemoveAura(iter, removeMode);
|
RemoveAura(iter, removeMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Unit::RemoveAurasDueToSpellByDispel(uint32 spellId, uint64 casterGUID, Unit *dispeler)
|
void Unit::RemoveAurasDueToSpellByDispel(uint32 spellId, uint64 casterGUID, Unit *dispeller)
|
||||||
{
|
{
|
||||||
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId); )
|
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId);)
|
||||||
{
|
{
|
||||||
Aura *aur = iter->second;
|
Aura *aur = iter->second;
|
||||||
if (casterGUID == aur->GetCasterGUID())
|
if (casterGUID == aur->GetCasterGUID())
|
||||||
@@ -3965,7 +3965,7 @@ void Unit::RemoveAurasDueToSpellByDispel(uint32 spellId, uint64 casterGUID, Unit
|
|||||||
{
|
{
|
||||||
int32 damage = aurEff->GetAmount()*9;
|
int32 damage = aurEff->GetAmount()*9;
|
||||||
// backfire damage and silence
|
// backfire damage and silence
|
||||||
dispeler->CastCustomSpell(dispeler, 31117, &damage, NULL, NULL, true, NULL, NULL,GetGUID());
|
dispeller->CastCustomSpell(dispeller, 31117, &damage, NULL, NULL, true, NULL, NULL, GetGUID());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
@@ -3980,7 +3980,7 @@ void Unit::RemoveAurasDueToSpellBySteal(uint32 spellId, uint64 casterGUID, Unit
|
|||||||
if (casterGUID == stealer->GetGUID())
|
if (casterGUID == stealer->GetGUID())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId); )
|
for (AuraMap::iterator iter = m_Auras.lower_bound(spellId); iter != m_Auras.upper_bound(spellId);)
|
||||||
{
|
{
|
||||||
Aura * aur = iter->second;
|
Aura * aur = iter->second;
|
||||||
if (casterGUID == aur->GetCasterGUID())
|
if (casterGUID == aur->GetCasterGUID())
|
||||||
|
|||||||
+1
-1
@@ -1509,7 +1509,7 @@ class TRINITY_DLL_SPEC Unit : public WorldObject
|
|||||||
void RemoveAurasDueToSpell(uint32 spellId, uint64 caster = NULL ,AuraRemoveMode removeMode= AURA_REMOVE_BY_DEFAULT);
|
void RemoveAurasDueToSpell(uint32 spellId, uint64 caster = NULL ,AuraRemoveMode removeMode= AURA_REMOVE_BY_DEFAULT);
|
||||||
void RemoveAuraFromStack(uint32 spellId, uint64 caster = NULL ,AuraRemoveMode removeMode = AURA_REMOVE_BY_DEFAULT);
|
void RemoveAuraFromStack(uint32 spellId, uint64 caster = NULL ,AuraRemoveMode removeMode = AURA_REMOVE_BY_DEFAULT);
|
||||||
inline void RemoveAuraFromStack(AuraMap::iterator &iter,AuraRemoveMode removeMode);
|
inline void RemoveAuraFromStack(AuraMap::iterator &iter,AuraRemoveMode removeMode);
|
||||||
void RemoveAurasDueToSpellByDispel(uint32 spellId, uint64 casterGUID, Unit *dispeler);
|
void RemoveAurasDueToSpellByDispel(uint32 spellId, uint64 casterGUID, Unit *dispeller);
|
||||||
void RemoveAurasDueToSpellBySteal(uint32 spellId, uint64 casterGUID, Unit *stealer);
|
void RemoveAurasDueToSpellBySteal(uint32 spellId, uint64 casterGUID, Unit *stealer);
|
||||||
void RemoveAurasDueToItemSpell(Item* castItem,uint32 spellId);
|
void RemoveAurasDueToItemSpell(Item* castItem,uint32 spellId);
|
||||||
void RemoveAurasByType(AuraType auraType, uint64 casterGUID = 0, Aura * except = NULL, bool negative = true, bool positive = true);
|
void RemoveAurasByType(AuraType auraType, uint64 casterGUID = 0, Aura * except = NULL, bool negative = true, bool positive = true);
|
||||||
|
|||||||
Reference in New Issue
Block a user