[Avoid aoe] Tell when avoid aoe configuration

This commit is contained in:
Yunfan Li
2024-04-20 18:51:37 +08:00
parent 45ffd4bd07
commit c6f1da1170
4 changed files with 11 additions and 3 deletions

View File

@@ -325,6 +325,10 @@ AiPlayerbot.SaveManaThreshold = 60
# Default: 0 (disable)
AiPlayerbot.AutoAvoidAoe = 0
# Tell which spell is avoiding (experimental)
# Default: 1 (enable)
AiPlayerbot.TellWhenAvoidAoe = 1
# Random bot default strategies (applied after defaults)
AiPlayerbot.RandomBotCombatStrategies = "+dps,+dps assist,-threat"
# AiPlayerbot.RandomBotNonCombatStrategies = "+grind,+loot,+rpg,+custom::say"

View File

@@ -92,6 +92,7 @@ bool PlayerbotAIConfig::Initialize()
autoSaveMana = sConfigMgr->GetOption<bool>("AiPlayerbot.AutoSaveMana", true);
saveManaThreshold = sConfigMgr->GetOption<int32>("AiPlayerbot.SaveManaThreshold", 60);
autoAvoidAoe = sConfigMgr->GetOption<bool>("AiPlayerbot.AutoAvoidAoe", false);
tellWhenAvoidAoe = sConfigMgr->GetOption<bool>("AiPlayerbot.TellWhenAvoidAoe", true);
randomGearLoweringChance = sConfigMgr->GetOption<float>("AiPlayerbot.RandomGearLoweringChance", 0.15f);
randomBotMaxLevelChance = sConfigMgr->GetOption<float>("AiPlayerbot.RandomBotMaxLevelChance", 0.15f);

View File

@@ -65,6 +65,7 @@ class PlayerbotAIConfig
bool autoSaveMana;
uint32 saveManaThreshold;
bool autoAvoidAoe;
bool tellWhenAvoidAoe;
uint32 openGoSpell;
bool randomBotAutologin;

View File

@@ -1674,9 +1674,11 @@ bool AvoidAoeAction::FleePostion(Position pos, float radius, std::string name)
}
if (farestDis > 0.0f) {
if (MoveTo(bot->GetMapId(), bestPos.GetPositionX(), bestPos.GetPositionY(), bestPos.GetPositionZ(), false, false, true)) {
std::ostringstream out;
out << "Avoiding spell " << name << "...";
bot->Say(out.str(), LANG_UNIVERSAL);
if (sPlayerbotAIConfig->tellWhenAvoidAoe) {
std::ostringstream out;
out << "Avoiding spell " << name << "...";
bot->Say(out.str(), LANG_UNIVERSAL);
}
return true;
}
}