Core/Creatures: Implemented CREATURE_STATIC_FLAG_4_NO_MELEE_APPROACH and fixed CREATURE_STATIC_FLAG_NO_MELEE_FLEE implementation (should cause fleeing from melee range)
Port From (https://github.com/TrinityCore/TrinityCore/commit/a748fddfa47216e1f516303e3bca9b5a86823748)
This commit is contained in:
@@ -27,9 +27,9 @@ namespace Game.AI
|
||||
protected TaskScheduler _scheduler = new();
|
||||
protected InstanceScript _instanceScript;
|
||||
|
||||
public CreatureAI(Creature _creature) : base(_creature)
|
||||
public CreatureAI(Creature creature) : base(creature)
|
||||
{
|
||||
me = _creature;
|
||||
me = creature;
|
||||
_moveInLOSLocked = false;
|
||||
}
|
||||
|
||||
@@ -514,6 +514,21 @@ namespace Game.AI
|
||||
// called when the corpse of this creature gets removed
|
||||
public virtual void CorpseRemoved(long respawnDelay) { }
|
||||
|
||||
public override void AttackStart(Unit victim)
|
||||
{
|
||||
if (victim != null && me.Attack(victim, true))
|
||||
{
|
||||
// Clear distracted state on attacking
|
||||
if (me.HasUnitState(UnitState.Distracted))
|
||||
{
|
||||
me.ClearUnitState(UnitState.Distracted);
|
||||
me.GetMotionMaster().Clear();
|
||||
}
|
||||
|
||||
me.StartDefaultCombatMovement(victim);
|
||||
}
|
||||
}
|
||||
|
||||
/// == Gossip system ================================
|
||||
|
||||
// Called when the dialog status between a player and the creature is requested.
|
||||
|
||||
Reference in New Issue
Block a user