diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 68c33998f..0cfc6119e 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -1692,6 +1692,38 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx) m_caster->CastSpell(m_caster, 54586, true); return; } + case 53475: // Set Oracle Faction Friendly + case 53487: // Set Wolvar Faction Honored + case 54015: // Set Oracle Faction Honored + { + if (m_caster->GetTypeId() != TYPEID_PLAYER) + return; + + switch(eff_idx) + { + case EFFECT_INDEX_0: + { + Player* pPlayer = (Player*)m_caster; + + uint32 faction_id = m_currentBasePoints[eff_idx]; + int32 rep_change = m_currentBasePoints[EFFECT_INDEX_1]; + + FactionEntry const* factionEntry = sFactionStore.LookupEntry(faction_id); + + if (!factionEntry) + return; + + // set rep to baserep + basepoints (expecting spillover for oposite faction -> become hated) + pPlayer->GetReputationMgr().SetReputation(factionEntry, rep_change); + break; + } + case EFFECT_INDEX_2: + // unclear what this effect is for. + break; + } + + return; + } case 53808: // Pygmy Oil { const uint32 spellShrink = 53805; diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index f7ebb3dbb..2b601aa5a 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "10690" + #define REVISION_NR "10691" #endif // __REVISION_NR_H__