mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 13:37:05 +00:00
Merge commit 'origin/master' into 310
Conflicts: src/game/UpdateData.cpp
This commit is contained in:
commit
e75e66063e
38 changed files with 687 additions and 537 deletions
|
|
@ -980,7 +980,7 @@ void Unit::CastSpell(float x, float y, float z, SpellEntry const *spellInfo, boo
|
|||
}
|
||||
|
||||
// Obsolete func need remove, here only for comotability vs another patches
|
||||
uint32 Unit::SpellNonMeleeDamageLog(Unit *pVictim, uint32 spellID, uint32 damage, bool isTriggeredSpell, bool useSpellDamage)
|
||||
uint32 Unit::SpellNonMeleeDamageLog(Unit *pVictim, uint32 spellID, uint32 damage)
|
||||
{
|
||||
SpellEntry const *spellInfo = sSpellStore.LookupEntry(spellID);
|
||||
SpellNonMeleeDamage damageInfo(this, pVictim, spellInfo->Id, spellInfo->SchoolMask);
|
||||
|
|
@ -2275,7 +2275,7 @@ void Unit::SendAttackStop(Unit* victim)
|
|||
((Creature*)victim)->AI().EnterEvadeMode(this);*/
|
||||
}
|
||||
|
||||
bool Unit::isSpellBlocked(Unit *pVictim, SpellEntry const *spellProto, WeaponAttackType attackType)
|
||||
bool Unit::isSpellBlocked(Unit *pVictim, SpellEntry const * /*spellProto*/, WeaponAttackType attackType)
|
||||
{
|
||||
if (pVictim->HasInArc(M_PI,this))
|
||||
{
|
||||
|
|
@ -4352,7 +4352,7 @@ void Unit::SendAttackStateUpdate(uint32 HitInfo, Unit *target, uint8 SwingType,
|
|||
SendMessageToSet( &data, true );
|
||||
}
|
||||
|
||||
bool Unit::HandleHasteAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAura, SpellEntry const * procSpell, uint32 /*procFlag*/, uint32 /*procEx*/, uint32 cooldown)
|
||||
bool Unit::HandleHasteAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAura, SpellEntry const * /*procSpell*/, uint32 /*procFlag*/, uint32 /*procEx*/, uint32 cooldown)
|
||||
{
|
||||
SpellEntry const *hasteSpell = triggeredByAura->GetSpellProto();
|
||||
|
||||
|
|
@ -4662,7 +4662,7 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
|
|||
break;
|
||||
}
|
||||
return false;
|
||||
}/**/
|
||||
}*/
|
||||
// Sunwell Exalted Caster Neck (Shattered Sun Pendant of Acumen neck)
|
||||
// cast 45479 Light's Wrath if Exalted by Aldor
|
||||
// cast 45429 Arcane Bolt if Exalted by Scryers
|
||||
|
|
@ -7326,24 +7326,28 @@ void Unit::ModifyAuraState(AuraState flag, bool apply)
|
|||
if (HasFlag(UNIT_FIELD_AURASTATE,1<<(flag-1)))
|
||||
{
|
||||
RemoveFlag(UNIT_FIELD_AURASTATE, 1<<(flag-1));
|
||||
Unit::AuraMap& tAuras = GetAuras();
|
||||
for (Unit::AuraMap::iterator itr = tAuras.begin(); itr != tAuras.end();)
|
||||
{
|
||||
SpellEntry const* spellProto = (*itr).second->GetSpellProto();
|
||||
if (spellProto->CasterAuraState == flag)
|
||||
{
|
||||
// exceptions (applied at state but not removed at state change)
|
||||
// Rampage
|
||||
if(spellProto->SpellIconID==2006 && spellProto->SpellFamilyName==SPELLFAMILY_WARRIOR && spellProto->SpellFamilyFlags==0x100000)
|
||||
{
|
||||
++itr;
|
||||
continue;
|
||||
}
|
||||
|
||||
RemoveAura(itr);
|
||||
if (flag != AURA_STATE_ENRAGE) // enrage aura state triggering continues auras
|
||||
{
|
||||
Unit::AuraMap& tAuras = GetAuras();
|
||||
for (Unit::AuraMap::iterator itr = tAuras.begin(); itr != tAuras.end();)
|
||||
{
|
||||
SpellEntry const* spellProto = (*itr).second->GetSpellProto();
|
||||
if (spellProto->CasterAuraState == flag)
|
||||
{
|
||||
// exceptions (applied at state but not removed at state change)
|
||||
// Rampage
|
||||
if(spellProto->SpellIconID==2006 && spellProto->SpellFamilyName==SPELLFAMILY_WARRIOR && spellProto->SpellFamilyFlags==0x100000)
|
||||
{
|
||||
++itr;
|
||||
continue;
|
||||
}
|
||||
|
||||
RemoveAura(itr);
|
||||
}
|
||||
else
|
||||
++itr;
|
||||
}
|
||||
else
|
||||
++itr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -9946,6 +9950,7 @@ Powers Unit::GetPowerTypeByAuraGroup(UnitMods unitMod) const
|
|||
case UNIT_MOD_HAPPINESS: return POWER_HAPPINESS;
|
||||
case UNIT_MOD_RUNE: return POWER_RUNE;
|
||||
case UNIT_MOD_RUNIC_POWER:return POWER_RUNIC_POWER;
|
||||
default: return POWER_MANA;
|
||||
}
|
||||
|
||||
return POWER_MANA;
|
||||
|
|
@ -10169,6 +10174,8 @@ uint32 Unit::GetCreatePowers( Powers power ) const
|
|||
case POWER_ENERGY: return 100;
|
||||
case POWER_HAPPINESS: return (GetTypeId()==TYPEID_PLAYER || !((Creature const*)this)->isPet() || ((Pet const*)this)->getPetType()!=HUNTER_PET ? 0 : 1050000);
|
||||
case POWER_RUNIC_POWER: return 1000;
|
||||
case POWER_RUNE: return 0;
|
||||
case POWER_HEALTH: return 0;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
@ -10581,7 +10588,6 @@ void Unit::ProcDamageAndSpellFor( bool isVictim, Unit * pTarget, uint32 procFlag
|
|||
Aura *triggeredByAura = i->triggeredByAura;
|
||||
Modifier *auraModifier = triggeredByAura->GetModifier();
|
||||
SpellEntry const *spellInfo = triggeredByAura->GetSpellProto();
|
||||
uint32 effIndex = triggeredByAura->GetEffIndex();
|
||||
bool useCharges = triggeredByAura->GetAuraCharges() > 0;
|
||||
// For players set spell cooldown if need
|
||||
uint32 cooldown = 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue