Core/Units: Added helper functions to modify UNIT_FLAG_UNINTERACTIBLE
Port From (https://github.com/TrinityCore/TrinityCore/commit/88ff97c1f96381565c47f8ca1993bdc7fce19fd6)
This commit is contained in:
@@ -87,7 +87,8 @@ namespace Scripts.World.EmeraldDragons
|
||||
public override void Reset()
|
||||
{
|
||||
base.Reset();
|
||||
me.RemoveUnitFlag(UnitFlags.Uninteractible | UnitFlags.NonAttackable);
|
||||
me.RemoveUnitFlag(UnitFlags.NonAttackable);
|
||||
me.SetUninteractible(false);
|
||||
me.SetReactState(ReactStates.Aggressive);
|
||||
DoCast(me, SpellIds.MarkOfNatureAura, new CastSpellExtraArgs(true));
|
||||
|
||||
@@ -439,7 +440,8 @@ namespace Scripts.World.EmeraldDragons
|
||||
_shades += (byte)SpellIds.TaerarShadeSpells.Length;
|
||||
|
||||
DoCast(SpellIds.Shade);
|
||||
me.SetUnitFlag(UnitFlags.Uninteractible | UnitFlags.NonAttackable);
|
||||
me.SetUnitFlag(UnitFlags.NonAttackable);
|
||||
me.SetUninteractible(true);
|
||||
me.SetReactState(ReactStates.Passive);
|
||||
|
||||
++_stage;
|
||||
@@ -458,7 +460,8 @@ namespace Scripts.World.EmeraldDragons
|
||||
{
|
||||
_banished = false;
|
||||
|
||||
me.RemoveUnitFlag(UnitFlags.Uninteractible | UnitFlags.NonAttackable);
|
||||
me.RemoveUnitFlag(UnitFlags.NonAttackable);
|
||||
me.SetUninteractible(false);
|
||||
me.RemoveAurasDueToSpell(SpellIds.Shade);
|
||||
me.SetReactState(ReactStates.Aggressive);
|
||||
}
|
||||
|
||||
@@ -779,7 +779,7 @@ namespace Scripts.World.NpcSpecial
|
||||
public override void Reset()
|
||||
{
|
||||
Initialize();
|
||||
me.RemoveUnitFlag(UnitFlags.Uninteractible);
|
||||
me.SetUninteractible(false);
|
||||
}
|
||||
|
||||
public void BeginEvent(Player player)
|
||||
@@ -804,7 +804,7 @@ namespace Scripts.World.NpcSpecial
|
||||
}
|
||||
|
||||
Event = true;
|
||||
me.SetUnitFlag(UnitFlags.Uninteractible);
|
||||
me.SetUninteractible(true);
|
||||
}
|
||||
|
||||
public void PatientDied(Position point)
|
||||
@@ -961,7 +961,7 @@ namespace Scripts.World.NpcSpecial
|
||||
Initialize();
|
||||
|
||||
//no select
|
||||
me.RemoveUnitFlag(UnitFlags.Uninteractible);
|
||||
me.SetUninteractible(false);
|
||||
|
||||
//no regen health
|
||||
me.SetUnitFlag(UnitFlags.InCombat);
|
||||
@@ -1007,7 +1007,7 @@ namespace Scripts.World.NpcSpecial
|
||||
}
|
||||
|
||||
//make not selectable
|
||||
me.SetUnitFlag(UnitFlags.Uninteractible);
|
||||
me.SetUninteractible(true);
|
||||
|
||||
//regen health
|
||||
me.RemoveUnitFlag(UnitFlags.InCombat);
|
||||
@@ -1044,7 +1044,7 @@ namespace Scripts.World.NpcSpecial
|
||||
if (me.IsAlive() && me.GetHealth() <= 6)
|
||||
{
|
||||
me.RemoveUnitFlag(UnitFlags.InCombat);
|
||||
me.SetUnitFlag(UnitFlags.Uninteractible);
|
||||
me.SetUninteractible(true);
|
||||
me.SetDeathState(DeathState.JustDied);
|
||||
me.SetUnitFlag3(UnitFlags3.FakeDead);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user