aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOvahlord <dreadkiller@gmx.de>2024-07-09 11:43:30 +0200
committerOvahlord <dreadkiller@gmx.de>2024-07-09 11:43:30 +0200
commita0de631a8a85ddcdf26bc84df851c558e4a5d3e8 (patch)
treeca8159a35fae4da5bd9edcf700a9271234bffa63 /src
parent9c67bdf329ad1fb82ad7d7a9af0a5735dbf9fdf9 (diff)
Core/Spells: fixed Heroic Strike damage calculation
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Spells/spell_warrior.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp
index 998964732ff..bcae298cfde 100644
--- a/src/server/scripts/Spells/spell_warrior.cpp
+++ b/src/server/scripts/Spells/spell_warrior.cpp
@@ -22,7 +22,25 @@
*/
#include "ScriptMgr.h"
+#include "SpellScript.h"
+#include "Unit.h"
+
+// 78 - Heroic Strike
+class spell_warr_heroic_strike : public SpellScript
+{
+ // Damage = {8+$ap*60/100}
+ void CalculateDamage(Unit* /*victim*/, int32& damage, int32& /*flatMod*/, float& /*pctMod*/)
+ {
+ damage = static_cast<int32>(8 + GetCaster()->GetTotalAttackPowerValue(BASE_ATTACK) * 0.6f);
+ }
+
+ void Register() override
+ {
+ CalcDamage += SpellCalcDamageFn(spell_warr_heroic_strike::CalculateDamage);
+ }
+};
void AddSC_warrior_spell_scripts()
{
+ RegisterSpellScript(spell_warr_heroic_strike);
}