aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellEffects.cpp
diff options
context:
space:
mode:
authorGolrag <golrag.jeremy@gmail.com>2017-08-24 20:39:22 +0200
committerShauren <shauren.trinity@gmail.com>2017-08-24 20:39:22 +0200
commitfd73bedd735596ac6ddb3db4ead3938732b2ec43 (patch)
treecfa9c42b745581128f061607a7f21ff9283341d9 /src/server/game/Spells/SpellEffects.cpp
parenta93a5ad379635bbf4a50d48eee810e7673b07168 (diff)
Core/Transmog: Implemented transmog sets
Closes #20133 Closes #20135
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
-rw-r--r--src/server/game/Spells/SpellEffects.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index cdc6aeb4751..53bb34eae34 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -328,7 +328,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]=
&Spell::EffectTeleportUnits, //252 SPELL_EFFECT_TELEPORT_UNITS
&Spell::EffectGiveHonor, //253 SPELL_EFFECT_GIVE_HONOR
&Spell::EffectNULL, //254 SPELL_EFFECT_254
- &Spell::EffectNULL, //255 SPELL_EFFECT_LEARN_TRANSMOG_SET
+ &Spell::EffectLearnTransmogSet, //255 SPELL_EFFECT_LEARN_TRANSMOG_SET
};
void Spell::EffectNULL(SpellEffIndex /*effIndex*/)
@@ -5901,3 +5901,14 @@ void Spell::EffectGiveHonor(SpellEffIndex /*effIndex*/)
playerTarget->AddHonorXP(damage);
playerTarget->SendDirectMessage(packet.Write());
}
+
+void Spell::EffectLearnTransmogSet(SpellEffIndex /*effIndex*/)
+{
+ if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET)
+ return;
+
+ if (!unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER)
+ return;
+
+ unitTarget->ToPlayer()->GetSession()->GetCollectionMgr()->AddTransmogSet(effectInfo->MiscValue);
+}