rogue debuff spell

This commit is contained in:
Yunfan Li
2023-10-28 22:55:22 +08:00
parent 9701af6f95
commit 8b42ea3e89
2 changed files with 15 additions and 5 deletions

View File

@@ -16,6 +16,7 @@ class DpsRogueStrategyActionNodeFactory : public NamedObjectFactory<ActionNode>
creators["kidney shot"] = &kidney_shot; creators["kidney shot"] = &kidney_shot;
creators["backstab"] = &backstab; creators["backstab"] = &backstab;
creators["melee"] = &melee; creators["melee"] = &melee;
creators["rupture"] = &rupture;
} }
private: private:
@@ -61,6 +62,14 @@ class DpsRogueStrategyActionNodeFactory : public NamedObjectFactory<ActionNode>
/*A*/ NextAction::array(0, new NextAction("mutilate"), NULL), /*A*/ NextAction::array(0, new NextAction("mutilate"), NULL),
/*C*/ NULL); /*C*/ NULL);
} }
static ActionNode* rupture(PlayerbotAI* botAI)
{
return new ActionNode ("rupture",
/*P*/ NULL,
/*A*/ NextAction::array(0, new NextAction("eviscerate"), NULL),
/*C*/ NULL);
}
}; };
DpsRogueStrategy::DpsRogueStrategy(PlayerbotAI* botAI) : MeleeCombatStrategy(botAI) DpsRogueStrategy::DpsRogueStrategy(PlayerbotAI* botAI) : MeleeCombatStrategy(botAI)
@@ -89,7 +98,8 @@ void DpsRogueStrategy::InitTriggers(std::vector<TriggerNode*>& triggers)
triggers.push_back(new TriggerNode( triggers.push_back(new TriggerNode(
"combo points available", "combo points available",
NextAction::array(0, new NextAction("rupture", ACTION_HIGH + 1), NULL))); NextAction::array(0,
new NextAction("rupture", ACTION_HIGH + 1), NULL)));
triggers.push_back(new TriggerNode( triggers.push_back(new TriggerNode(
"medium threat", "medium threat",

View File

@@ -21,16 +21,16 @@ class CastSliceAndDiceAction : public CastMeleeSpellAction
CastSliceAndDiceAction(PlayerbotAI* botAI) : CastMeleeSpellAction(botAI, "slice and dice") { } CastSliceAndDiceAction(PlayerbotAI* botAI) : CastMeleeSpellAction(botAI, "slice and dice") { }
}; };
class CastExposeArmorAction : public CastMeleeSpellAction class CastExposeArmorAction : public CastDebuffSpellAction
{ {
public: public:
CastExposeArmorAction(PlayerbotAI* botAI) : CastMeleeSpellAction(botAI, "expose armor") { } CastExposeArmorAction(PlayerbotAI* botAI) : CastDebuffSpellAction(botAI, "expose armor", false, 25.0f) { }
}; };
class CastRuptureAction : public CastMeleeSpellAction class CastRuptureAction : public CastDebuffSpellAction
{ {
public: public:
CastRuptureAction(PlayerbotAI* botAI) : CastMeleeSpellAction(botAI, "rupture") { } CastRuptureAction(PlayerbotAI* botAI) : CastDebuffSpellAction(botAI, "rupture") { }
}; };
class CastKidneyShotAction : public CastMeleeSpellAction class CastKidneyShotAction : public CastMeleeSpellAction