mirror of
https://github.com/liyunfan1223/mod-playerbots.git
synced 2026-06-20 15:39:25 +02:00
Compare commits
3 Commits
2c5185a7cb
...
7e810f8174
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e810f8174 | ||
|
|
e0df6558f5 | ||
|
|
50ac6e5b95 |
@ -93,6 +93,9 @@ The [Playerbots Wiki](https://github.com/mod-playerbots/mod-playerbots/wiki) con
|
||||
- **What platforms are supported?** We support Ubuntu, Windows, and macOS. Other Linux distros may work, but will not receive support.
|
||||
- **Why isn't my source compiling?** Please ensure that you are compiling with the required [custom branch of AzerothCore](https://github.com/mod-playerbots/azerothcore-wotlk/tree/Playerbot). Additionally, please [check the build status of our CI](https://github.com/mod-playerbots/mod-playerbots/actions). If the latest build is failing, rever to the last successful commit until we address the issue.
|
||||
|
||||
## Code standards
|
||||
- https://www.azerothcore.org/wiki/cpp-code-standards
|
||||
|
||||
## Addons
|
||||
|
||||
Typically, bots are controlled via chat commands. For larger bot groups, this can be unwieldy. As an alternative, community members have developed client Add-Ons to allow controlling bots through the in-game UI. We recommend you check out their projects:
|
||||
|
||||
@ -82,7 +82,7 @@
|
||||
#include "TameAction.h"
|
||||
#include "TellGlyphsAction.h"
|
||||
#include "EquipGlyphsAction.h"
|
||||
#include "PetAction.h"
|
||||
#include "PetsAction.h"
|
||||
|
||||
class ChatActionContext : public NamedObjectContext<Action>
|
||||
{
|
||||
@ -307,8 +307,8 @@ private:
|
||||
static Action* tame(PlayerbotAI* botAI) { return new TameAction(botAI); }
|
||||
static Action* glyphs(PlayerbotAI* botAI) { return new TellGlyphsAction(botAI); } // Added for custom Glyphs
|
||||
static Action* glyph_equip(PlayerbotAI* ai) { return new EquipGlyphsAction(ai); } // Added for custom Glyphs
|
||||
static Action* pet(PlayerbotAI* botAI) { return new PetAction(botAI); }
|
||||
static Action* pet_attack(PlayerbotAI* botAI) { return new PetAction(botAI, "attack"); }
|
||||
static Action* pet(PlayerbotAI* botAI) { return new PetsAction(botAI); }
|
||||
static Action* pet_attack(PlayerbotAI* botAI) { return new PetsAction(botAI, "attack"); }
|
||||
static Action* roll_action(PlayerbotAI* botAI) { return new RollAction(botAI); }
|
||||
};
|
||||
|
||||
|
||||
@ -210,7 +210,7 @@ bool MovementAction::MoveTo(uint32 mapId, float x, float y, float z, bool idle,
|
||||
mm.Clear();
|
||||
if (!backwards)
|
||||
{
|
||||
mm.MovePoint(0, x, y, z, generatePath);
|
||||
mm.MovePoint(0, x, y, z, FORCED_MOVEMENT_NONE, 0.0f, 0.0f, generatePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -245,7 +245,7 @@ bool MovementAction::MoveTo(uint32 mapId, float x, float y, float z, bool idle,
|
||||
mm.Clear();
|
||||
if (!backwards)
|
||||
{
|
||||
mm.MovePoint(0, x, y, z, generatePath);
|
||||
mm.MovePoint(0, x, y, z, FORCED_MOVEMENT_NONE, 0.0f, 0.0f, generatePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -287,7 +287,7 @@ bool MovementAction::MoveTo(uint32 mapId, float x, float y, float z, bool idle,
|
||||
mm.Clear();
|
||||
if (!backwards)
|
||||
{
|
||||
mm.MovePoint(0, x, y, z, generatePath);
|
||||
mm.MovePoint(0, x, y, z, FORCED_MOVEMENT_NONE, 0.0f, 0.0f, generatePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
* and/or modify it under version 3 of the License, or (at your option), any later version.
|
||||
*/
|
||||
|
||||
#include "PetAction.h"
|
||||
#include "PetsAction.h"
|
||||
|
||||
#include "CharmInfo.h"
|
||||
#include "Creature.h"
|
||||
@ -13,7 +13,7 @@
|
||||
#include "PlayerbotAI.h"
|
||||
#include "SharedDefines.h"
|
||||
|
||||
bool PetAction::Execute(Event event)
|
||||
bool PetsAction::Execute(Event event)
|
||||
{
|
||||
// Extract the command parameter from the event (e.g., "aggressive", "defensive", "attack", etc.)
|
||||
std::string param = event.getParam();
|
||||
@ -3,8 +3,8 @@
|
||||
* and/or modify it under version 3 of the License, or (at your option), any later version.
|
||||
*/
|
||||
|
||||
#ifndef _PLAYERBOT_PETACTION_H
|
||||
#define _PLAYERBOT_PETACTION_H
|
||||
#ifndef _PLAYERBOT_PETSACTION_H
|
||||
#define _PLAYERBOT_PETSACTION_H
|
||||
|
||||
#include <string>
|
||||
|
||||
@ -14,10 +14,10 @@
|
||||
|
||||
class PlayerbotAI;
|
||||
|
||||
class PetAction : public Action
|
||||
class PetsAction : public Action
|
||||
{
|
||||
public:
|
||||
PetAction(PlayerbotAI* botAI, const std::string& defaultCmd = "") : Action(botAI, "pet"), defaultCmd(defaultCmd) {}
|
||||
PetsAction(PlayerbotAI* botAI, const std::string& defaultCmd = "") : Action(botAI, "pet"), defaultCmd(defaultCmd) {}
|
||||
|
||||
bool Execute(Event event) override;
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
#include "UseMeetingStoneAction.h"
|
||||
#include "NamedObjectContext.h"
|
||||
#include "ReleaseSpiritAction.h"
|
||||
#include "PetAction.h"
|
||||
#include "PetsAction.h"
|
||||
|
||||
class PlayerbotAI;
|
||||
|
||||
@ -141,7 +141,7 @@ private:
|
||||
static Action* tell_not_enough_reputation(PlayerbotAI* botAI) { return new TellMasterAction(botAI, "Not enough reputation"); }
|
||||
static Action* tell_cannot_equip(PlayerbotAI* botAI) { return new InventoryChangeFailureAction(botAI); }
|
||||
static Action* self_resurrect(PlayerbotAI* botAI) { return new SelfResurrectAction(botAI); }
|
||||
static Action* pet(PlayerbotAI* botAI) { return new PetAction(botAI); }
|
||||
static Action* pet(PlayerbotAI* botAI) { return new PetsAction(botAI); }
|
||||
|
||||
// quest
|
||||
static Action* quest_update_add_kill(PlayerbotAI* ai) { return new QuestUpdateAddKillAction(ai); }
|
||||
|
||||
@ -41,6 +41,11 @@ class ShamanCombatStrategyFactoryInternal : public NamedObjectContext<Strategy>
|
||||
public:
|
||||
ShamanCombatStrategyFactoryInternal() : NamedObjectContext<Strategy>(false, true)
|
||||
{
|
||||
creators["heal"] = &ShamanCombatStrategyFactoryInternal::resto;
|
||||
creators["melee"] = &ShamanCombatStrategyFactoryInternal::enh;
|
||||
creators["dps"] = &ShamanCombatStrategyFactoryInternal::enh;
|
||||
creators["caster"] = &ShamanCombatStrategyFactoryInternal::ele;
|
||||
//creators["offheal"] = &ShamanCombatStrategyFactoryInternal::offheal;
|
||||
creators["resto"] = &ShamanCombatStrategyFactoryInternal::resto;
|
||||
creators["enh"] = &ShamanCombatStrategyFactoryInternal::enh;
|
||||
creators["ele"] = &ShamanCombatStrategyFactoryInternal::ele;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user