Core/Auras: Implemented SPELL_AURA_PHASE_ALWAYS_VISIBLE

This commit is contained in:
Shauren
2021-02-26 22:10:34 +01:00
parent f269f60d8a
commit c9344c145a
6 changed files with 36 additions and 13 deletions

View File

@@ -494,22 +494,26 @@ uint32 PhasingHandler::GetTerrainMapId(PhaseShift const& phaseShift, Map const*
return map->GetId();
}
void PhasingHandler::SetAlwaysVisible(PhaseShift& phaseShift, bool apply)
void PhasingHandler::SetAlwaysVisible(WorldObject* object, bool apply, bool updateVisibility)
{
if (apply)
phaseShift.Flags |= PhaseShiftFlags::AlwaysVisible;
object->GetPhaseShift().Flags |= PhaseShiftFlags::AlwaysVisible;
else
phaseShift.Flags &= ~PhaseShiftFlags::AlwaysVisible;
object->GetPhaseShift().Flags &= ~PhaseShiftFlags::AlwaysVisible;
UpdateVisibilityIfNeeded(object, updateVisibility, true);
}
void PhasingHandler::SetInversed(PhaseShift& phaseShift, bool apply)
void PhasingHandler::SetInversed(WorldObject* object, bool apply, bool updateVisibility)
{
if (apply)
phaseShift.Flags |= PhaseShiftFlags::Inverse;
object->GetPhaseShift().Flags |= PhaseShiftFlags::Inverse;
else
phaseShift.Flags &= PhaseShiftFlags::Inverse;
object->GetPhaseShift().Flags &= PhaseShiftFlags::Inverse;
phaseShift.UpdateUnphasedFlag();
object->GetPhaseShift().UpdateUnphasedFlag();
UpdateVisibilityIfNeeded(object, updateVisibility, true);
}
void PhasingHandler::PrintToChat(ChatHandler* chat, PhaseShift const& phaseShift)