aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/game/DataStores/DBCEnums.h3
-rw-r--r--src/server/game/Spells/SpellInfo.cpp6
2 files changed, 8 insertions, 1 deletions
diff --git a/src/server/game/DataStores/DBCEnums.h b/src/server/game/DataStores/DBCEnums.h
index 6e2c3806d8a..dc68d9fc594 100644
--- a/src/server/game/DataStores/DBCEnums.h
+++ b/src/server/game/DataStores/DBCEnums.h
@@ -2287,7 +2287,8 @@ enum SpellProcsPerMinuteModType
SPELL_PPM_MOD_SPEC = 4,
SPELL_PPM_MOD_RACE = 5,
SPELL_PPM_MOD_ITEM_LEVEL = 6,
- SPELL_PPM_MOD_BATTLEGROUND = 7
+ SPELL_PPM_MOD_BATTLEGROUND = 7,
+ SPELL_PPM_MOD_AURA = 8
};
constexpr std::size_t MAX_POWERS_PER_SPELL = 5;
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp
index 3c6d3f6504e..4eaca9be938 100644
--- a/src/server/game/Spells/SpellInfo.cpp
+++ b/src/server/game/Spells/SpellInfo.cpp
@@ -4366,6 +4366,12 @@ float SpellInfo::CalcProcPPM(Unit* caster, int32 itemLevel) const
ppm *= 1.0f + mod->Coeff;
break;
}
+ case SPELL_PPM_MOD_AURA:
+ {
+ if (caster->HasAura(mod->Param))
+ ppm *= 1.0f + mod->Coeff;
+ break;
+ }
default:
break;
}