Core/Units: Set UNIT_FLAG2_*_AOI dynamically according to the VisibilityDistanceType set on the creature
Port From (https://github.com/TrinityCore/TrinityCore/commit/4b06b8ec1e3ccc153a44b3eb2e8487641cfae98d)
This commit is contained in:
@@ -131,7 +131,7 @@ namespace Framework.Constants
|
|||||||
MirrorImage | ForceMovement | DisarmOffhand |
|
MirrorImage | ForceMovement | DisarmOffhand |
|
||||||
DisablePredStats | AllowChangingTalents | DisarmRanged |
|
DisablePredStats | AllowChangingTalents | DisarmRanged |
|
||||||
/* UNIT_FLAG2_REGENERATE_POWER | */ RestrictPartyInteraction |
|
/* UNIT_FLAG2_REGENERATE_POWER | */ RestrictPartyInteraction |
|
||||||
PreventSpellClick | InteractWhileHostile | /* UNIT_FLAG2_CANNOT_TURN | */
|
PreventSpellClick | InteractWhileHostile | /* Unk2 | */
|
||||||
/* UNIT_FLAG2_PLAY_DEATH_ANIM | */ AllowCheatSpells | SuppressHighlightWhenTargetedOrMousedOver |
|
/* UNIT_FLAG2_PLAY_DEATH_ANIM | */ AllowCheatSpells | SuppressHighlightWhenTargetedOrMousedOver |
|
||||||
TreatAsRaidUnitForHelpfulSpells | LargeAoi | GiganticAoi | NoActions |
|
TreatAsRaidUnitForHelpfulSpells | LargeAoi | GiganticAoi | NoActions |
|
||||||
AiWillOnlySwimIfTargetSwims | DontGenerateCombatLogWhenEngagedWithNpcs | AttackerIgnoresMinimumRanges |
|
AiWillOnlySwimIfTargetSwims | DontGenerateCombatLogWhenEngagedWithNpcs | AttackerIgnoresMinimumRanges |
|
||||||
|
|||||||
@@ -977,6 +977,26 @@ namespace Game.Entities
|
|||||||
if (GetTypeId() == TypeId.Player)
|
if (GetTypeId() == TypeId.Player)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
Creature creature = ToCreature();
|
||||||
|
if (creature != null)
|
||||||
|
{
|
||||||
|
creature.RemoveUnitFlag2(UnitFlags2.LargeAoi | UnitFlags2.GiganticAoi | UnitFlags2.InfiniteAoi);
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case VisibilityDistanceType.Large:
|
||||||
|
creature.SetUnitFlag2(UnitFlags2.LargeAoi);
|
||||||
|
break;
|
||||||
|
case VisibilityDistanceType.Gigantic:
|
||||||
|
creature.SetUnitFlag2(UnitFlags2.GiganticAoi);
|
||||||
|
break;
|
||||||
|
case VisibilityDistanceType.Infinite:
|
||||||
|
creature.SetUnitFlag2(UnitFlags2.InfiniteAoi);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
m_visibilityDistanceOverride = SharedConst.VisibilityDistances[(int)type];
|
m_visibilityDistanceOverride = SharedConst.VisibilityDistances[(int)type];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user