diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/GameObject.cpp | 7 | ||||
-rw-r--r-- | src/game/SpellAuras.cpp | 40 |
2 files changed, 35 insertions, 12 deletions
diff --git a/src/game/GameObject.cpp b/src/game/GameObject.cpp index 59ca3dd26cf..6e603346020 100644 --- a/src/game/GameObject.cpp +++ b/src/game/GameObject.cpp @@ -432,10 +432,11 @@ void GameObject::Update(uint32 /*p_time*/) if(GetOwnerGUID()) { if(Unit* owner = GetOwner()) + { owner->RemoveGameObject(this, false); - - SetRespawnTime(0); - Delete(); + SetRespawnTime(0); + Delete(); + } return; } diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 4e2942eda1c..20393034b5f 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -2242,11 +2242,33 @@ void AuraEffect::TriggerSpell() } break; } + case SPELLFAMILY_HUNTER: + { + switch (auraId) + { + // Sniper training + case 53302: + case 53303: + case 53304: + if (m_target->GetTypeId() != TYPEID_PLAYER) + return; -// case SPELLFAMILY_HUNTER: -// { -// switch(auraId) -// { + if (((Player*)m_target)->isMoving()) + { + m_amount = m_target->CalculateSpellDamage(m_spellProto,m_effIndex,m_currentBasePoints,m_target); + return; + } + + // We are standing at the moment + if (m_amount > 0) + { + --m_amount; + return; + } + + trigger_spell_id = 64418 + auraId - 53302; + + break; // //Frost Trap Aura // case 13810: // return; @@ -2273,11 +2295,11 @@ void AuraEffect::TriggerSpell() // case 30648: // Tame Greater Timberstrider // case 30652: // Tame Nightstalker // return; -// default: -// break; -// } -// break; -// } + default: + break; + } + break; + } case SPELLFAMILY_SHAMAN: { switch(auraId) |