aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/game/Spell.cpp8
-rw-r--r--src/game/SpellAuraEffects.cpp7
-rw-r--r--src/game/SpellMgr.cpp2
3 files changed, 14 insertions, 3 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 9e1f632ad33..76fa2922d19 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -5075,10 +5075,14 @@ SpellCastResult Spell::CheckCast(bool strict)
//custom check
switch(m_spellInfo->Id)
{
- case SPELL_TAG_MURLOC_30877:
- if (!m_targets.getUnitTarget() || (m_targets.getUnitTarget() && (m_targets.getUnitTarget()->HasAura(SPELL_TAG_MURLOC_30877) || m_targets.getUnitTarget()->GetTypeId() != TYPEID_UNIT || (m_targets.getUnitTarget()->GetTypeId() == TYPEID_UNIT && ((Creature*)m_targets.getUnitTarget())->GetEntry() != 17326 ))))// Tag Murloc, Blacksilt Scout
+ // Tag Murloc
+ case 30877:
+ {
+ Unit* target = m_targets.getUnitTarget();
+ if (!target || target->GetEntry() != 17326)
return SPELL_FAILED_BAD_TARGETS;
break;
+ }
case 61336:
if(m_caster->GetTypeId() != TYPEID_PLAYER || !((Player*)m_caster)->IsInFeralForm())
return SPELL_FAILED_ONLY_SHAPESHIFT;
diff --git a/src/game/SpellAuraEffects.cpp b/src/game/SpellAuraEffects.cpp
index 14161feac2e..1492d586943 100644
--- a/src/game/SpellAuraEffects.cpp
+++ b/src/game/SpellAuraEffects.cpp
@@ -5681,6 +5681,13 @@ void AuraEffect::HandleAuraDummy(AuraApplication const * aurApp, uint8 mode, boo
target->RemoveAurasDueToSpell(spellId);
break;
}
+ // Tag Murloc
+ case 30877:
+ {
+ // Tag/untag Blacksilt Scout
+ target->SetEntry(apply ? 17654 : 17326);
+ break;
+ }
//Summon Fire Elemental
case 40133:
{
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp
index 8faa28b5e8b..2bd1943c8ca 100644
--- a/src/game/SpellMgr.cpp
+++ b/src/game/SpellMgr.cpp
@@ -767,7 +767,7 @@ bool SpellMgr::_isPositiveEffect(uint32 spellId, uint32 effIndex, bool deep) con
case 50524: // Runic Power Feed
return false;
case 12042: // Arcane Power
- case SPELL_TAG_MURLOC_30877: // Tag Murloc
+ case 30877: // Tag Murloc
return true;
}