#include "AutoTeleportForLevelAction.h" #include "PlayerbotAIConfig.h" #include "PlayerbotFactory.h" #include "RandomPlayerbotMgr.h" #include "Playerbots.h" #include "SharedDefines.h" bool AutoTeleportForLevelAction::Execute(Event event) { AutoUpgradeEquip(); if (!sPlayerbotAIConfig->autoTeleportForLevel || !sRandomPlayerbotMgr->IsRandomBot(bot)) { return false; } if (botAI->HasRealPlayerMaster()) { return false; } sRandomPlayerbotMgr->RandomTeleportForLevel(bot); return true; } void AutoTeleportForLevelAction::AutoUpgradeEquip() { if (!sPlayerbotAIConfig->autoUpgradeEquip || !sRandomPlayerbotMgr->IsRandomBot(bot)) { return; } PlayerbotFactory factory(bot, bot->GetLevel(), ITEM_QUALITY_RARE); if (!sPlayerbotAIConfig->equipmentPersistence || bot->GetLevel() < sPlayerbotAIConfig->equipmentPersistenceLevel) { factory.InitEquipment(true); } factory.InitAmmo(); }