Core/Spells: Added missing changes for ade34a7f48

This commit is contained in:
Shauren
2022-12-29 20:25:01 +01:00
parent ade34a7f48
commit 14c48272fb

View File

@@ -62,6 +62,7 @@
#include "PhasingHandler.h"
#include "Player.h"
#include "ReputationMgr.h"
#include "RestMgr.h"
#include "SceneObject.h"
#include "ScriptMgr.h"
#include "SharedDefines.h"
@@ -321,8 +322,8 @@ NonDefaultConstructible<SpellEffectHandlerFn> SpellEffectHandlers[TOTAL_SPELL_EF
&Spell::EffectNULL, //233 SPELL_EFFECT_RANDOMIZE_FOLLOWER_ABILITIES
&Spell::EffectNULL, //234 SPELL_EFFECT_234
&Spell::EffectUnused, //235 SPELL_EFFECT_235
&Spell::EffectNULL, //236 SPELL_EFFECT_GIVE_EXPERIENCE
&Spell::EffectNULL, //237 SPELL_EFFECT_GIVE_RESTED_EXPERIENCE_BONUS
&Spell::EffectGiveExperience, //236 SPELL_EFFECT_GIVE_EXPERIENCE
&Spell::EffectGiveRestedExperience, //237 SPELL_EFFECT_GIVE_RESTED_EXPERIENCE_BONUS
&Spell::EffectNULL, //238 SPELL_EFFECT_INCREASE_SKILL
&Spell::EffectNULL, //239 SPELL_EFFECT_END_GARRISON_BUILDING_CONSTRUCTION
&Spell::EffectGiveArtifactPower, //240 SPELL_EFFECT_GIVE_ARTIFACT_POWER
@@ -5342,6 +5343,32 @@ void Spell::EffectGrantBattlePetLevel()
playerCaster->GetSession()->GetBattlePetMgr()->GrantBattlePetLevel(unitTarget->GetBattlePetCompanionGUID(), damage);
}
void Spell::EffectGiveExperience()
{
if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET)
return;
Player* playerTarget = Object::ToPlayer(unitTarget);
if (!playerTarget)
return;
uint32 xp = Quest::XPValue(playerTarget, effectInfo->MiscValue, effectInfo->MiscValueB);
playerTarget->GiveXP(xp, nullptr);
}
void Spell::EffectGiveRestedExperience()
{
if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET)
return;
Player* playerTarget = Object::ToPlayer(unitTarget);
if (!playerTarget)
return;
// effect value is number of resting hours
playerTarget->GetRestMgr().AddRestBonus(REST_TYPE_XP, damage * HOUR * playerTarget->GetRestMgr().CalcExtraPerSec(REST_TYPE_XP, 0.125f));
}
void Spell::EffectHealBattlePetPct()
{
if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET)