aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTrisjdc <trisjdc@gmail.com>2014-05-24 18:57:26 +0100
committerTrisjdc <trisjdc@gmail.com>2014-05-24 18:57:26 +0100
commitea1c4a355ca56b4edd431bf4c3d9dd932b8af770 (patch)
tree8612f7ce8e1dc8b915e60a0d7a5bbd32ccd9d2d8
parentf091713086eab1ef928bc2f79eb0dc3b0bc4ce2f (diff)
Core/Spells: Sniper Training should refresh every 6 seconds if all conditions are met
-rw-r--r--src/server/scripts/Spells/spell_hunter.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/server/scripts/Spells/spell_hunter.cpp b/src/server/scripts/Spells/spell_hunter.cpp
index 2739a8453df..725312eafce 100644
--- a/src/server/scripts/Spells/spell_hunter.cpp
+++ b/src/server/scripts/Spells/spell_hunter.cpp
@@ -744,8 +744,13 @@ class spell_hun_sniper_training : public SpellScriptLoader
{
Unit* target = GetTarget();
uint32 spellId = SPELL_HUNTER_SNIPER_TRAINING_BUFF_R1 + GetId() - SPELL_HUNTER_SNIPER_TRAINING_R1;
- if (!target->HasAura(spellId))
- target->CastSpell(target, spellId, true, 0, aurEff);
+ target->CastSpell(target, spellId, true, 0, aurEff);
+ if (Player* playerTarget = GetUnitOwner()->ToPlayer())
+ {
+ int32 baseAmount = aurEff->GetBaseAmount();
+ int32 amount = playerTarget->CalculateSpellDamage(playerTarget, GetSpellInfo(), aurEff->GetEffIndex(), &baseAmount);
+ GetEffect(EFFECT_0)->SetAmount(amount);
+ }
}
}