diff options
Diffstat (limited to 'src/server/game/Spells/SpellInfo.cpp')
-rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index c08a0c43374..2ddd12fc376 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -1446,6 +1446,28 @@ bool SpellInfo::IsAllowingDeadTarget() const return HasAttribute(SPELL_ATTR2_CAN_TARGET_DEAD) || Targets & (TARGET_FLAG_CORPSE_ALLY | TARGET_FLAG_CORPSE_ENEMY | TARGET_FLAG_UNIT_DEAD); } +bool SpellInfo::IsGroupBuff() const +{ + SpellEffectInfoVector effects = GetEffectsForDifficulty(DIFFICULTY_NONE); + for (SpellEffectInfo const* effect : effects) + { + if (!effect) + continue; + + switch (effect->TargetA.GetCheckType()) + { + case TARGET_CHECK_PARTY: + case TARGET_CHECK_RAID: + case TARGET_CHECK_RAID_CLASS: + return true; + default: + break; + } + } + + return false; +} + bool SpellInfo::CanBeUsedInCombat() const { return !HasAttribute(SPELL_ATTR0_CANT_USED_IN_COMBAT); |