Fix four horsemen

This commit is contained in:
Yunfan Li
2024-02-08 22:45:17 +08:00
parent 6e5c86b84d
commit 4b72226ab4
4 changed files with 8 additions and 4 deletions

View File

@@ -170,7 +170,7 @@ bool MovementAction::MoveTo(uint32 mapId, float x, float y, float z, bool idle,
if (modifiedZ == INVALID_HEIGHT) {
return false;
}
// mm.Clear();
mm.Clear();
mm.MovePoint(mapId, x, y, modifiedZ, generatePath);
AI_VALUE(LastMovement&, "last movement").Set(mapId, x, y, z, bot->GetOrientation());
return true;

View File

@@ -419,6 +419,9 @@ bool HorsemanAttractAlternativelyAction::Execute(Event event)
bool HorsemanAttactInOrderAction::Execute(Event event)
{
if (!helper.UpdateBossAI()) {
return false;
}
Unit* target = nullptr;
Unit* thane = AI_VALUE2(Unit*, "find target", "thane korth'azz");
Unit* baron = AI_VALUE2(Unit*, "find target", "baron rivendare");
@@ -431,7 +434,7 @@ bool HorsemanAttactInOrderAction::Execute(Event event)
attack_order = {thane, baron, lady, sir};
}
for (Unit* t : attack_order) {
if (t) {
if (t && t->IsAlive()) {
target = t;
break;
}

View File

@@ -58,6 +58,7 @@ class RaidNaxxTriggerContext : public NamedObjectContext<Trigger>
static Trigger* horseman_attractors(PlayerbotAI* ai) { return new HorsemanAttractorsTrigger(ai); }
static Trigger* horseman_except_attractors(PlayerbotAI* ai) { return new HorsemanExceptAttractorsTrigger(ai); }
static Trigger* sapphiron_ground(PlayerbotAI* ai) { return new SapphironGroundTrigger(ai); }
static Trigger* sapphiron_flight(PlayerbotAI* ai) { return new SapphironFlightTrigger(ai); }
static Trigger* kelthuzad(PlayerbotAI* ai) { return new KelthuzadTrigger(ai); }

View File

@@ -146,7 +146,7 @@ public:
class HorsemanAttractorsTrigger : public Trigger
{
public:
HorsemanAttractorsTrigger(PlayerbotAI* ai) : Trigger(ai, "fourhorsemen"), helper(ai) {}
HorsemanAttractorsTrigger(PlayerbotAI* ai) : Trigger(ai, "fourhorsemen attractors"), helper(ai) {}
bool IsActive() override;
private:
FourhorsemanBossHelper helper;
@@ -155,7 +155,7 @@ class HorsemanAttractorsTrigger : public Trigger
class HorsemanExceptAttractorsTrigger : public Trigger
{
public:
HorsemanExceptAttractorsTrigger(PlayerbotAI* ai) : Trigger(ai, "fourhorsemen"), helper(ai) {}
HorsemanExceptAttractorsTrigger(PlayerbotAI* ai) : Trigger(ai, "fourhorsemen except attractors"), helper(ai) {}
bool IsActive() override;
private:
FourhorsemanBossHelper helper;