old patch used by Evo-X but might still work (we changed a bit in the code structure so our most recent patch might not work for plain MaNGOS) :
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index eab30ba..f20a287 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -7362,8 +7362,12 @@ void Aura::PeriodicDummyTick()
case SPELLFAMILY_MAGE:
{
// Mirror Image
-// if (spell->Id == 55342)
-// return;
+ if (spell->Id == 55342)
+ {
+ // Set name of summons to name of caster
+ m_target->CastSpell((Unit *)NULL, m_spellProto->EffectTriggerSpell[m_effIndex], true);
+ m_isPeriodic = false;
+ }
break;
}
case SPELLFAMILY_DRUID:
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 58384f4..371a634 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -2068,6 +2068,15 @@ void Spell::EffectTriggerSpell(uint32 effIndex)
// special cases
switch(triggered_spell_id)
{
+ // Mirror Image
+ case 58832:
+ {
+ // Glyph of Mirror Image
+ if (m_caster->HasAura(63093))
+ m_caster->CastSpell(m_caster, 65047, true); // Mirror Image
+
+ break;
+ }
// Vanish (not exist)
case 18461:
{
@@ -3852,6 +3861,16 @@ void Spell::EffectSummonWild(uint32 i, uint32 forceFaction)
summon->SetUInt32Value(UNIT_CREATED_BY_SPELL, m_spellInfo->Id);
summon->SetCreatorGUID(m_caster->GetGUID());
+ //Mirror image
+ if(creature_entry == 31216)
+ {
+ summon->SetLevel(m_caster->getLevel());
+ summon->SetHealth(28 + 30*m_caster->getLevel());
+ summon->setPowerType(POWER_MANA);
+ summon->SetPower(POWER_MANA, 28 + 30*m_caster->getLevel());
+ summon->SetPvP(true);
+ }
+
if(forceFaction)
summon->setFaction(forceFaction);
}