mirror of
https://github.com/mod-playerbots/mod-playerbots.git
synced 2026-03-12 03:45:08 +00:00
[HOT FIX] MS build issues regarding folder / command lenght usage or rc.exe (#2038)
This commit is contained in:
32
src/Ai/Raid/BlackwingLair/Action/RaidBwlActions.cpp
Normal file
32
src/Ai/Raid/BlackwingLair/Action/RaidBwlActions.cpp
Normal file
@@ -0,0 +1,32 @@
|
||||
#include "RaidBwlActions.h"
|
||||
|
||||
#include "Playerbots.h"
|
||||
|
||||
bool BwlOnyxiaScaleCloakAuraCheckAction::Execute(Event event)
|
||||
{
|
||||
bot->AddAura(22683, bot);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool BwlOnyxiaScaleCloakAuraCheckAction::isUseful() { return !bot->HasAura(22683); }
|
||||
|
||||
bool BwlTurnOffSuppressionDeviceAction::Execute(Event event)
|
||||
{
|
||||
GuidVector gos = AI_VALUE(GuidVector, "nearest game objects");
|
||||
for (GuidVector::iterator i = gos.begin(); i != gos.end(); i++)
|
||||
{
|
||||
GameObject* go = botAI->GetGameObject(*i);
|
||||
if (!go)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (go->GetEntry() != 179784 || go->GetDistance(bot) >= 15.0f || go->GetGoState() != GO_STATE_READY)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
go->SetGoState(GO_STATE_ACTIVE);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool BwlUseHourglassSandAction::Execute(Event event) { return botAI->CastSpell(23645, bot); }
|
||||
33
src/Ai/Raid/BlackwingLair/Action/RaidBwlActions.h
Normal file
33
src/Ai/Raid/BlackwingLair/Action/RaidBwlActions.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef _PLAYERBOT_RAIDBWLACTIONS_H
|
||||
#define _PLAYERBOT_RAIDBWLACTIONS_H
|
||||
|
||||
#include "Action.h"
|
||||
#include "AttackAction.h"
|
||||
#include "GenericActions.h"
|
||||
#include "MovementActions.h"
|
||||
#include "PlayerbotAI.h"
|
||||
#include "Playerbots.h"
|
||||
|
||||
class BwlOnyxiaScaleCloakAuraCheckAction : public Action
|
||||
{
|
||||
public:
|
||||
BwlOnyxiaScaleCloakAuraCheckAction(PlayerbotAI* botAI) : Action(botAI, "bwl onyxia scale cloak aura check") {}
|
||||
bool Execute(Event event) override;
|
||||
bool isUseful() override;
|
||||
};
|
||||
|
||||
class BwlTurnOffSuppressionDeviceAction : public Action
|
||||
{
|
||||
public:
|
||||
BwlTurnOffSuppressionDeviceAction(PlayerbotAI* botAI) : Action(botAI, "bwl turn off suppression device") {}
|
||||
bool Execute(Event event) override;
|
||||
};
|
||||
|
||||
class BwlUseHourglassSandAction : public Action
|
||||
{
|
||||
public:
|
||||
BwlUseHourglassSandAction(PlayerbotAI* botAI) : Action(botAI, "bwl use hourglass sand") {}
|
||||
bool Execute(Event event) override;
|
||||
};
|
||||
|
||||
#endif
|
||||
24
src/Ai/Raid/BlackwingLair/RaidBwlActionContext.h
Normal file
24
src/Ai/Raid/BlackwingLair/RaidBwlActionContext.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#ifndef _PLAYERBOT_RAIDBWLACTIONCONTEXT_H
|
||||
#define _PLAYERBOT_RAIDBWLACTIONCONTEXT_H
|
||||
|
||||
#include "Action.h"
|
||||
#include "NamedObjectContext.h"
|
||||
#include "RaidBwlActions.h"
|
||||
|
||||
class RaidBwlActionContext : public NamedObjectContext<Action>
|
||||
{
|
||||
public:
|
||||
RaidBwlActionContext()
|
||||
{
|
||||
creators["bwl check onyxia scale cloak"] = &RaidBwlActionContext::bwl_check_onyxia_scale_cloak;
|
||||
creators["bwl turn off suppression device"] = &RaidBwlActionContext::bwl_turn_off_suppression_device;
|
||||
creators["bwl use hourglass sand"] = &RaidBwlActionContext::bwl_use_hourglass_sand;
|
||||
}
|
||||
|
||||
private:
|
||||
static Action* bwl_check_onyxia_scale_cloak(PlayerbotAI* botAI) { return new BwlOnyxiaScaleCloakAuraCheckAction(botAI); }
|
||||
static Action* bwl_turn_off_suppression_device(PlayerbotAI* botAI) { return new BwlTurnOffSuppressionDeviceAction(botAI); }
|
||||
static Action* bwl_use_hourglass_sand(PlayerbotAI* botAI) { return new BwlUseHourglassSandAction(botAI); }
|
||||
};
|
||||
|
||||
#endif
|
||||
22
src/Ai/Raid/BlackwingLair/RaidBwlTriggerContext.h
Normal file
22
src/Ai/Raid/BlackwingLair/RaidBwlTriggerContext.h
Normal file
@@ -0,0 +1,22 @@
|
||||
#ifndef _PLAYERBOT_RAIDBWLTRIGGERCONTEXT_H
|
||||
#define _PLAYERBOT_RAIDBWLTRIGGERCONTEXT_H
|
||||
|
||||
#include "AiObjectContext.h"
|
||||
#include "NamedObjectContext.h"
|
||||
#include "RaidBwlTriggers.h"
|
||||
|
||||
class RaidBwlTriggerContext : public NamedObjectContext<Trigger>
|
||||
{
|
||||
public:
|
||||
RaidBwlTriggerContext()
|
||||
{
|
||||
creators["bwl suppression device"] = &RaidBwlTriggerContext::bwl_suppression_device;
|
||||
creators["bwl affliction bronze"] = &RaidBwlTriggerContext::bwl_affliction_bronze;
|
||||
}
|
||||
|
||||
private:
|
||||
static Trigger* bwl_suppression_device(PlayerbotAI* ai) { return new BwlSuppressionDeviceTrigger(ai); }
|
||||
static Trigger* bwl_affliction_bronze(PlayerbotAI* ai) { return new BwlAfflictionBronzeTrigger(ai); }
|
||||
};
|
||||
|
||||
#endif
|
||||
15
src/Ai/Raid/BlackwingLair/Strategy/RaidBwlStrategy.cpp
Normal file
15
src/Ai/Raid/BlackwingLair/Strategy/RaidBwlStrategy.cpp
Normal file
@@ -0,0 +1,15 @@
|
||||
#include "RaidBwlStrategy.h"
|
||||
|
||||
#include "Strategy.h"
|
||||
|
||||
void RaidBwlStrategy::InitTriggers(std::vector<TriggerNode*>& triggers)
|
||||
{
|
||||
triggers.push_back(new TriggerNode("often",
|
||||
{ NextAction("bwl check onyxia scale cloak", ACTION_RAID) }));
|
||||
|
||||
triggers.push_back(new TriggerNode("bwl suppression device",
|
||||
{ NextAction("bwl turn off suppression device", ACTION_RAID) }));
|
||||
|
||||
triggers.push_back(new TriggerNode("bwl affliction bronze",
|
||||
{ NextAction("bwl use hourglass sand", ACTION_RAID) }));
|
||||
}
|
||||
18
src/Ai/Raid/BlackwingLair/Strategy/RaidBwlStrategy.h
Normal file
18
src/Ai/Raid/BlackwingLair/Strategy/RaidBwlStrategy.h
Normal file
@@ -0,0 +1,18 @@
|
||||
|
||||
#ifndef _PLAYERBOT_RAIDBWLSTRATEGY_H
|
||||
#define _PLAYERBOT_RAIDBWLSTRATEGY_H
|
||||
|
||||
#include "AiObjectContext.h"
|
||||
#include "Multiplier.h"
|
||||
#include "Strategy.h"
|
||||
|
||||
class RaidBwlStrategy : public Strategy
|
||||
{
|
||||
public:
|
||||
RaidBwlStrategy(PlayerbotAI* ai) : Strategy(ai) {}
|
||||
virtual std::string const getName() override { return "bwl"; }
|
||||
virtual void InitTriggers(std::vector<TriggerNode*>& triggers) override;
|
||||
// virtual void InitMultipliers(std::vector<Multiplier*> &multipliers) override;
|
||||
};
|
||||
|
||||
#endif
|
||||
24
src/Ai/Raid/BlackwingLair/Trigger/RaidBwlTriggers.cpp
Normal file
24
src/Ai/Raid/BlackwingLair/Trigger/RaidBwlTriggers.cpp
Normal file
@@ -0,0 +1,24 @@
|
||||
#include "RaidBwlTriggers.h"
|
||||
|
||||
#include "SharedDefines.h"
|
||||
|
||||
bool BwlSuppressionDeviceTrigger::IsActive()
|
||||
{
|
||||
GuidVector gos = AI_VALUE(GuidVector, "nearest game objects");
|
||||
for (GuidVector::iterator i = gos.begin(); i != gos.end(); i++)
|
||||
{
|
||||
GameObject* go = botAI->GetGameObject(*i);
|
||||
if (!go)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (go->GetEntry() != 179784 || go->GetDistance(bot) >= 15.0f || go->GetGoState() != GO_STATE_READY)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool BwlAfflictionBronzeTrigger::IsActive() { return bot->HasAura(23170); }
|
||||
22
src/Ai/Raid/BlackwingLair/Trigger/RaidBwlTriggers.h
Normal file
22
src/Ai/Raid/BlackwingLair/Trigger/RaidBwlTriggers.h
Normal file
@@ -0,0 +1,22 @@
|
||||
#ifndef _PLAYERBOT_RAIDBWLTRIGGERS_H
|
||||
#define _PLAYERBOT_RAIDBWLTRIGGERS_H
|
||||
|
||||
#include "PlayerbotAI.h"
|
||||
#include "Playerbots.h"
|
||||
#include "Trigger.h"
|
||||
|
||||
class BwlSuppressionDeviceTrigger : public Trigger
|
||||
{
|
||||
public:
|
||||
BwlSuppressionDeviceTrigger(PlayerbotAI* botAI) : Trigger(botAI, "bwl suppression device") {}
|
||||
bool IsActive() override;
|
||||
};
|
||||
|
||||
class BwlAfflictionBronzeTrigger : public Trigger
|
||||
{
|
||||
public:
|
||||
BwlAfflictionBronzeTrigger(PlayerbotAI* botAI) : Trigger(botAI, "bwl affliction bronze") {}
|
||||
bool IsActive() override;
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user