From bf669937be9283f481bc5ef61f61dfaf4bb22852 Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Mon, 17 Jan 2022 22:11:17 +0100 Subject: [PATCH] Core/Spells: SPELL_AURA_MOD_FACTION will now apply UNIT_FLAG2_IGNORE_REPUTATION to all targets instead of players only --- src/server/game/Spells/Auras/SpellAuraEffects.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 296e2cbbaa..4703c8eef0 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -4973,20 +4973,18 @@ void AuraEffect::HandleAuraModFaction(AuraApplication const* aurApp, uint8 mode, if (apply) { target->SetFaction(GetMiscValue()); - if (target->GetTypeId() == TYPEID_PLAYER) - { + target->SetFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_IGNORE_REPUTATION); + + if (target->IsPlayer()) target->RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PLAYER_CONTROLLED); - target->RemoveFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_IGNORE_REPUTATION); - } } else { target->RestoreFaction(); - if (target->GetTypeId() == TYPEID_PLAYER) - { + target->RemoveFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_IGNORE_REPUTATION); + + if (target->IsPlayer()) target->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_PLAYER_CONTROLLED); - target->SetFlag(UNIT_FIELD_FLAGS_2, UNIT_FLAG2_IGNORE_REPUTATION); - } } }