diff options
Diffstat (limited to 'src/game/Entities/Unit/Unit.cpp')
-rw-r--r-- | src/game/Entities/Unit/Unit.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/game/Entities/Unit/Unit.cpp b/src/game/Entities/Unit/Unit.cpp index d6e453c5a5..40cc595000 100644 --- a/src/game/Entities/Unit/Unit.cpp +++ b/src/game/Entities/Unit/Unit.cpp @@ -17556,6 +17556,17 @@ float Unit::MeleeSpellMissChance(const Unit* victim, WeaponAttackType attType, i return missChance; } +uint32 Unit::GetPhaseByAuras() const +{ + uint32 currentPhase = 0; + AuraEffectList const& phases = GetAuraEffectsByType(SPELL_AURA_PHASE); + if (!phases.empty()) + for (AuraEffectList::const_iterator itr = phases.begin(); itr != phases.end(); ++itr) + currentPhase |= (*itr)->GetMiscValue(); + + return currentPhase; +} + void Unit::SetPhaseMask(uint32 newPhaseMask, bool update) { if (newPhaseMask == GetPhaseMask()) |