mirror of
https://github.com/liyunfan1223/mod-playerbots.git
synced 2026-06-20 15:39:25 +02:00
Compare commits
4 Commits
92fa97c3aa
...
571735cd57
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
571735cd57 | ||
|
|
b430118124 | ||
|
|
180be33d9d | ||
|
|
9e251dc397 |
@ -495,22 +495,6 @@ AiPlayerbot.FleeingEnabled = 1
|
|||||||
#
|
#
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
|
|
||||||
####################################################################################################
|
|
||||||
# GREATER BUFFS STRATEGIES
|
|
||||||
#
|
|
||||||
|
|
||||||
# Min group size to use Greater buffs (Paladin, Mage, Druid)
|
|
||||||
# Default: 3
|
|
||||||
AiPlayerbot.MinBotsForGreaterBuff = 3
|
|
||||||
|
|
||||||
# Cooldown (seconds) between reagent-missing RP warnings, per bot & per buff
|
|
||||||
# Default: 30
|
|
||||||
AiPlayerbot.RPWarningCooldown = 30
|
|
||||||
|
|
||||||
#
|
|
||||||
#
|
|
||||||
####################################################################################################
|
|
||||||
|
|
||||||
####################################################################################################
|
####################################################################################################
|
||||||
# CHEATS
|
# CHEATS
|
||||||
#
|
#
|
||||||
|
|||||||
@ -86,7 +86,7 @@ bool TogglePetSpellAutoCastAction::Execute(Event /*event*/)
|
|||||||
|
|
||||||
uint32 spellId = itr->first;
|
uint32 spellId = itr->first;
|
||||||
const SpellInfo* spellInfo = sSpellMgr->GetSpellInfo(spellId);
|
const SpellInfo* spellInfo = sSpellMgr->GetSpellInfo(spellId);
|
||||||
if (!spellInfo->IsAutocastable())
|
if (!spellInfo || !spellInfo->IsAutocastable())
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
bool shouldApply = true;
|
bool shouldApply = true;
|
||||||
|
|||||||
@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
#include "WarriorActions.h"
|
#include "WarriorActions.h"
|
||||||
|
|
||||||
|
#include "AiFactory.h"
|
||||||
#include "Playerbots.h"
|
#include "Playerbots.h"
|
||||||
|
|
||||||
bool CastBerserkerRageAction::isPossible()
|
bool CastBerserkerRageAction::isPossible()
|
||||||
@ -36,6 +37,27 @@ bool CastBerserkerRageAction::isUseful()
|
|||||||
|
|
||||||
bool CastSunderArmorAction::isUseful()
|
bool CastSunderArmorAction::isUseful()
|
||||||
{
|
{
|
||||||
|
Group* group = bot->GetGroup();
|
||||||
|
if (!group)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (!botAI->IsTank(bot, false))
|
||||||
|
{
|
||||||
|
for (GroupReference* ref = group->GetFirstMember(); ref; ref = ref->next())
|
||||||
|
{
|
||||||
|
Player* member = ref->GetSource();
|
||||||
|
if (!member || member == bot || !member->IsAlive() || !member->IsInWorld() ||
|
||||||
|
member->GetMapId() != bot->GetMapId())
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (member->getClass() == CLASS_WARRIOR &&
|
||||||
|
botAI->IsTank(member, false))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Aura* aura = botAI->GetAura("sunder armor", GetTarget(), false, true);
|
Aura* aura = botAI->GetAura("sunder armor", GetTarget(), false, true);
|
||||||
return !aura || aura->GetStackAmount() < 5 || aura->GetDuration() <= 6000;
|
return !aura || aura->GetStackAmount() < 5 || aura->GetDuration() <= 6000;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -112,6 +112,7 @@ std::vector<NextAction> ArmsWarriorStrategy::getDefaultActions()
|
|||||||
return {
|
return {
|
||||||
NextAction("bladestorm", ACTION_DEFAULT + 0.2f),
|
NextAction("bladestorm", ACTION_DEFAULT + 0.2f),
|
||||||
NextAction("mortal strike", ACTION_DEFAULT + 0.1f),
|
NextAction("mortal strike", ACTION_DEFAULT + 0.1f),
|
||||||
|
NextAction("sunder armor", ACTION_DEFAULT + 0.05f),
|
||||||
NextAction("melee", ACTION_DEFAULT)
|
NextAction("melee", ACTION_DEFAULT)
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user