mirror of
https://github.com/mod-playerbots/mod-playerbots.git
synced 2026-01-22 04:56:22 +00:00
45 lines
1.3 KiB
C++
45 lines
1.3 KiB
C++
#ifndef _PLAYERBOT_RAIDULDUARACTIONS_H
|
|
#define _PLAYERBOT_RAIDULDUARACTIONS_H
|
|
|
|
#include "Action.h"
|
|
#include "AttackAction.h"
|
|
#include "GenericActions.h"
|
|
#include "GenericSpellActions.h"
|
|
#include "MovementActions.h"
|
|
#include "PlayerbotAI.h"
|
|
#include "Playerbots.h"
|
|
#include "RaidUlduarBossHelper.h"
|
|
#include "Vehicle.h"
|
|
|
|
class FlameLeviathanVehicleAction : public MovementAction
|
|
{
|
|
public:
|
|
FlameLeviathanVehicleAction(PlayerbotAI* botAI) : MovementAction(botAI, "flame leviathan vehicle") {}
|
|
bool Execute(Event event) override;
|
|
|
|
protected:
|
|
bool MoveAvoidChasing(Unit* target);
|
|
bool DemolisherAction(Unit* target);
|
|
bool DemolisherTurretAction(Unit* target);
|
|
bool SiegeEngineAction(Unit* target);
|
|
bool SiegeEngineTurretAction(Unit* target);
|
|
bool ChopperAction(Unit* target);
|
|
Unit* GetAttacker();
|
|
Unit* vehicleBase_;
|
|
Vehicle* vehicle_;
|
|
int avoidChaseIdx = -1;
|
|
};
|
|
|
|
class FlameLeviathanEnterVehicleAction : public MovementAction
|
|
{
|
|
public:
|
|
FlameLeviathanEnterVehicleAction(PlayerbotAI* botAI) : MovementAction(botAI, "flame leviathan enter vehicle") {}
|
|
bool Execute(Event event);
|
|
|
|
protected:
|
|
bool EnterVehicle(Unit* vehicleBase, bool moveIfFar);
|
|
bool ShouldEnter(Unit* vehicleBase);
|
|
bool AllMainVehiclesOnUse();
|
|
};
|
|
|
|
#endif |