Core/Creatures: Moved autoattack handling from scripts to game

Port From (https://github.com/TrinityCore/TrinityCore/commit/605e5f94c0d71cad8e83fa5a07eaec4e6bed9cc3)
This commit is contained in:
hondacrx
2024-02-05 18:18:30 -05:00
parent aa696fb176
commit 437fe2d8fd
94 changed files with 192 additions and 358 deletions
@@ -430,7 +430,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.FelbloodKaelthas
if (!UpdateVictim())
return;
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -340,7 +340,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
if (!UpdateVictim())
return;
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -497,6 +497,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
AddThreat(unit, 1000.0f);
InVanish = true;
me.SetCanMelee(false);
task.Repeat(TimeSpan.FromSeconds(30));
task.Schedule(TimeSpan.FromSeconds(10), waitTask =>
{
@@ -505,6 +506,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
DoCastVictim(SpellIds.Backstab, new CastSpellExtraArgs(true));
DoCastVictim(SpellIds.KidneyShot, new CastSpellExtraArgs(true));
me.SetVisible(true); // ...? Hacklike
me.SetCanMelee(true);
InVanish = false;
}
waitTask.Repeat();
@@ -523,6 +525,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
{
Initialize();
me.SetVisible(true);
me.SetCanMelee(true);
base.Reset();
}
@@ -535,9 +538,6 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
_scheduler.Update(diff);
if (!InVanish)
DoMeleeAttackIfReady();
}
}
@@ -608,7 +608,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -649,7 +649,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -740,7 +740,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
HasIceBlocked = true;
}
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -823,7 +823,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -908,7 +908,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
if (me.IsWithinDistInMap(me.GetVictim(), SharedConst.AttackDistance))
_meleeScheduler.Update(diff, () => DoMeleeAttackIfReady());
_meleeScheduler.Update(diff);
else
_scheduler.Update(diff);
}
@@ -973,7 +973,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
@@ -1037,7 +1037,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.PriestessDelrissa
base.UpdateAI(diff);
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}
}
@@ -231,8 +231,6 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.SelinFireheart
_events.ScheduleEvent(EventIds.DrainCrystal, TimeSpan.FromSeconds(20), TimeSpan.FromSeconds(25), 0, PhaseIds.Normal);
}
}
DoMeleeAttackIfReady();
}
}
@@ -252,5 +250,4 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.SelinFireheart
}
}
}
}
}
@@ -136,7 +136,7 @@ namespace Scripts.EasternKingdoms.MagistersTerrace.Vexallus
if (!UpdateVictim())
return;
_scheduler.Update(diff, () => DoMeleeAttackIfReady());
_scheduler.Update(diff);
}
}