Index: /trunk/src/game/Spell.cpp
===================================================================
--- /trunk/src/game/Spell.cpp (revision 147)
+++ /trunk/src/game/Spell.cpp (revision 148)
@@ -3563,28 +3563,4 @@
                 break;
             }
-            case SPELL_EFFECT_TAMECREATURE:
-            {
-                if (!m_targets.getUnitTarget() || m_targets.getUnitTarget()->GetTypeId() == TYPEID_PLAYER)
-                    return SPELL_FAILED_BAD_IMPLICIT_TARGETS;
-
-                if (m_targets.getUnitTarget()->getLevel() > m_caster->getLevel())
-                    return SPELL_FAILED_HIGHLEVEL;
-
-                CreatureInfo const *cinfo = ((Creature*)m_targets.getUnitTarget())->GetCreatureInfo();
-                if( cinfo->type != CREATURE_TYPE_BEAST )
-                    return SPELL_FAILED_BAD_TARGETS;
-
-                // use SMSG_PET_TAME_FAILURE?
-                if( !(cinfo->flag1 & 1) || !(cinfo->family) )
-                    return SPELL_FAILED_BAD_TARGETS;
-
-                if(m_caster->GetPetGUID())
-                    return SPELL_FAILED_ALREADY_HAVE_SUMMON;
-
-                if(m_caster->GetCharmGUID())
-                    return SPELL_FAILED_ALREADY_HAVE_CHARM;
-
-                break;
-            }
             case SPELL_EFFECT_LEARN_SPELL:
             {
@@ -3976,4 +3952,29 @@
         switch(m_spellInfo->EffectApplyAuraName[i])
         {
+            case SPELL_AURA_DUMMY:
+            {
+                if(m_spellInfo->Id == 1515)
+                {
+                    if (!m_targets.getUnitTarget() || m_targets.getUnitTarget()->GetTypeId() == TYPEID_PLAYER)
+                        return SPELL_FAILED_BAD_IMPLICIT_TARGETS;
+
+                    if (m_targets.getUnitTarget()->getLevel() > m_caster->getLevel())
+                        return SPELL_FAILED_HIGHLEVEL;
+
+                    CreatureInfo const *cinfo = ((Creature*)m_targets.getUnitTarget())->GetCreatureInfo();
+                    if( cinfo->type != CREATURE_TYPE_BEAST )
+                        return SPELL_FAILED_BAD_TARGETS;
+
+                    // use SMSG_PET_TAME_FAILURE?
+                    if( !(cinfo->flag1 & 1) || !(cinfo->family) )
+                        return SPELL_FAILED_BAD_TARGETS;
+
+                    if(m_caster->GetPetGUID())
+                        return SPELL_FAILED_ALREADY_HAVE_SUMMON;
+
+                    if(m_caster->GetCharmGUID())
+                        return SPELL_FAILED_ALREADY_HAVE_CHARM;
+                }
+            }break;
             case SPELL_AURA_MOD_POSSESS:
             case SPELL_AURA_MOD_CHARM:
