Oculus - fix flying/attacking drake (#827)

* - fixed bug with duplicated action name "fly drake"

* - fixed bug with duplicated action name "drake attack"

* - fixed eoe strategy after bugfixes
This commit is contained in:
kadeshar
2024-12-29 21:44:35 +01:00
committed by GitHub
parent adc0d6e72c
commit a6d1697267
4 changed files with 12 additions and 12 deletions

View File

@@ -12,8 +12,8 @@ class WotlkDungeonOccActionContext : public NamedObjectContext<Action>
creators["avoid unstable sphere"] = &WotlkDungeonOccActionContext::avoid_unstable_sphere;
creators["mount drake"] = &WotlkDungeonOccActionContext::mount_drake;
creators["dismount drake"] = &WotlkDungeonOccActionContext::dismount_drake;
creators["fly drake"] = &WotlkDungeonOccActionContext::fly_drake;
creators["drake attack"] = &WotlkDungeonOccActionContext::drake_attack;
creators["occ fly drake"] = &WotlkDungeonOccActionContext::occ_fly_drake;
creators["occ drake attack"] = &WotlkDungeonOccActionContext::occ_drake_attack;
creators["avoid arcane explosion"] = &WotlkDungeonOccActionContext::avoid_arcane_explosion;
creators["time bomb spread"] = &WotlkDungeonOccActionContext::time_bomb_spread;
}
@@ -21,8 +21,8 @@ class WotlkDungeonOccActionContext : public NamedObjectContext<Action>
static Action* avoid_unstable_sphere(PlayerbotAI* ai) { return new AvoidUnstableSphereAction(ai); }
static Action* mount_drake(PlayerbotAI* ai) { return new MountDrakeAction(ai); }
static Action* dismount_drake(PlayerbotAI* ai) { return new DismountDrakeAction(ai); }
static Action* fly_drake(PlayerbotAI* ai) { return new OccFlyDrakeAction(ai); }
static Action* drake_attack(PlayerbotAI* ai) { return new OccDrakeAttackAction(ai); }
static Action* occ_fly_drake(PlayerbotAI* ai) { return new OccFlyDrakeAction(ai); }
static Action* occ_drake_attack(PlayerbotAI* ai) { return new OccDrakeAttackAction(ai); }
static Action* avoid_arcane_explosion(PlayerbotAI* ai) { return new AvoidArcaneExplosionAction(ai); }
static Action* time_bomb_spread(PlayerbotAI* ai) { return new TimeBombSpreadAction(ai); }
};

View File

@@ -15,9 +15,9 @@ void WotlkDungeonOccStrategy::InitTriggers(std::vector<TriggerNode*> &triggers)
triggers.push_back(new TriggerNode("drake dismount",
NextAction::array(0, new NextAction("dismount drake", ACTION_RAID + 5), nullptr)));
triggers.push_back(new TriggerNode("group flying",
NextAction::array(0, new NextAction("fly drake", ACTION_NORMAL + 1), nullptr)));
NextAction::array(0, new NextAction("occ fly drake", ACTION_NORMAL + 1), nullptr)));
triggers.push_back(new TriggerNode("drake combat",
NextAction::array(0, new NextAction("drake attack", ACTION_NORMAL + 5), nullptr)));
NextAction::array(0, new NextAction("occ drake attack", ACTION_NORMAL + 5), nullptr)));
// Varos Cloudstrider
// Seems to be no way to identify the marked cores, may need to hook boss AI..

View File

@@ -14,8 +14,8 @@ public:
creators["malygos target"] = &RaidEoEActionContext::target;
// creators["pull power spark"] = &RaidEoEActionContext::pull_power_spark;
// creators["kill power spark"] = &RaidEoEActionContext::kill_power_spark;
creators["fly drake"] = &RaidEoEActionContext::fly_drake;
creators["drake attack"] = &RaidEoEActionContext::drake_attack;
creators["eoe fly drake"] = &RaidEoEActionContext::eoe_fly_drake;
creators["eoe drake attack"] = &RaidEoEActionContext::eoe_drake_attack;
}
private:
@@ -23,8 +23,8 @@ private:
static Action* target(PlayerbotAI* ai) { return new MalygosTargetAction(ai); }
// static Action* pull_power_spark(PlayerbotAI* ai) { return new PullPowerSparkAction(ai); }
// static Action* kill_power_spark(PlayerbotAI* ai) { return new KillPowerSparkAction(ai); }
static Action* fly_drake(PlayerbotAI* ai) { return new EoEFlyDrakeAction(ai); }
static Action* drake_attack(PlayerbotAI* ai) { return new EoEDrakeAttackAction(ai); }
static Action* eoe_fly_drake(PlayerbotAI* ai) { return new EoEFlyDrakeAction(ai); }
static Action* eoe_drake_attack(PlayerbotAI* ai) { return new EoEDrakeAttackAction(ai); }
};
#endif

View File

@@ -14,9 +14,9 @@ void RaidEoEStrategy::InitTriggers(std::vector<TriggerNode*>& triggers)
// NextAction::array(0, new NextAction("kill power spark", ACTION_RAID + 3), nullptr)));
triggers.push_back(new TriggerNode("group flying",
NextAction::array(0, new NextAction("fly drake", ACTION_NORMAL + 1), nullptr)));
NextAction::array(0, new NextAction("eoe fly drake", ACTION_NORMAL + 1), nullptr)));
triggers.push_back(new TriggerNode("drake combat",
NextAction::array(0, new NextAction("drake attack", ACTION_NORMAL + 5), nullptr)));
NextAction::array(0, new NextAction("eoe drake attack", ACTION_NORMAL + 5), nullptr)));
}
void RaidEoEStrategy::InitMultipliers(std::vector<Multiplier*> &multipliers)