mirror of
https://github.com/mod-playerbots/mod-playerbots
synced 2025-11-29 15:58:20 +08:00
Disable test items
This commit is contained in:
@@ -967,15 +967,6 @@ void RandomItemMgr::BuildItemInfoCache()
|
|||||||
if (!proto)
|
if (!proto)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
// skip non armor/weapon
|
|
||||||
if (proto->Class != ITEM_CLASS_WEAPON && proto->Class != ITEM_CLASS_ARMOR &&
|
|
||||||
proto->Class != ITEM_CLASS_CONTAINER && proto->Class != ITEM_CLASS_PROJECTILE &&
|
|
||||||
proto->Class != ITEM_CLASS_GEM)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
// if (!CanEquipItemNew(proto))
|
|
||||||
// continue;
|
|
||||||
|
|
||||||
// skip test items
|
// skip test items
|
||||||
if (strstr(proto->Name1.c_str(), "(Test)") || strstr(proto->Name1.c_str(), "(TEST)") ||
|
if (strstr(proto->Name1.c_str(), "(Test)") || strstr(proto->Name1.c_str(), "(TEST)") ||
|
||||||
strstr(proto->Name1.c_str(), "(test)") || strstr(proto->Name1.c_str(), "(JEFFTEST)") ||
|
strstr(proto->Name1.c_str(), "(test)") || strstr(proto->Name1.c_str(), "(JEFFTEST)") ||
|
||||||
|
|||||||
@@ -116,9 +116,6 @@ void PlayerbotFactory::Init()
|
|||||||
if (id == 47181 || id == 50358 || id == 47242 || id == 52639 || id == 47147 || id == 7218) // Test Enchant
|
if (id == 47181 || id == 50358 || id == 47242 || id == 52639 || id == 47147 || id == 7218) // Test Enchant
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (strstr(spellInfo->SpellName[0], "Test"))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
uint32 requiredLevel = spellInfo->BaseLevel;
|
uint32 requiredLevel = spellInfo->BaseLevel;
|
||||||
|
|
||||||
for (uint8 j = 0; j < MAX_SPELL_EFFECTS; ++j)
|
for (uint8 j = 0; j < MAX_SPELL_EFFECTS; ++j)
|
||||||
@@ -137,8 +134,11 @@ void PlayerbotFactory::Init()
|
|||||||
// SpellInfo const* enchantSpell = sSpellMgr->GetSpellInfo(enchant->spellid[0]);
|
// SpellInfo const* enchantSpell = sSpellMgr->GetSpellInfo(enchant->spellid[0]);
|
||||||
// if (!enchantSpell)
|
// if (!enchantSpell)
|
||||||
// continue;
|
// continue;
|
||||||
|
if (strstr(spellInfo->SpellName[0], "Test"))
|
||||||
|
break;
|
||||||
|
|
||||||
enchantSpellIdCache.push_back(id);
|
enchantSpellIdCache.push_back(id);
|
||||||
|
break;
|
||||||
// LOG_INFO("playerbots", "Add {} to enchantment spells", id);
|
// LOG_INFO("playerbots", "Add {} to enchantment spells", id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -161,6 +161,7 @@ void PlayerbotFactory::Init()
|
|||||||
}
|
}
|
||||||
if (sRandomItemMgr->IsTestItem(gemId))
|
if (sRandomItemMgr->IsTestItem(gemId))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (!proto || !sGemPropertiesStore.LookupEntry(proto->GemProperties))
|
if (!proto || !sGemPropertiesStore.LookupEntry(proto->GemProperties))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
@@ -229,6 +229,12 @@ bool StatsCollector::SpecialSpellFilter(uint32 spellId) {
|
|||||||
// trinket
|
// trinket
|
||||||
switch (spellId)
|
switch (spellId)
|
||||||
{
|
{
|
||||||
|
case 27521: // Insightful Earthstorm Diamond
|
||||||
|
stats[STATS_TYPE_MANA_REGENERATION] += 20;
|
||||||
|
return true;
|
||||||
|
case 55381: // Insightful Earthsiege Diamond
|
||||||
|
stats[STATS_TYPE_MANA_REGENERATION] += 40;
|
||||||
|
return true;
|
||||||
case 39442: // Darkmoon Card: Wrath
|
case 39442: // Darkmoon Card: Wrath
|
||||||
if (type_ != CollectorType::SPELL_HEAL)
|
if (type_ != CollectorType::SPELL_HEAL)
|
||||||
stats[STATS_TYPE_CRIT] += 50;
|
stats[STATS_TYPE_CRIT] += 50;
|
||||||
@@ -669,6 +675,16 @@ void StatsCollector::HandleApplyAura(const SpellEffectInfo& effectInfo, float mu
|
|||||||
CollectSpellStats(effectInfo.TriggerSpell, multiplier, triggerCooldown);
|
CollectSpellStats(effectInfo.TriggerSpell, multiplier, triggerCooldown);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case SPELL_AURA_MOD_CRIT_DAMAGE_BONUS:
|
||||||
|
{
|
||||||
|
if (type_ != CollectorType::SPELL_HEAL)
|
||||||
|
{
|
||||||
|
int32 statType = effectInfo.MiscValue;
|
||||||
|
if (statType & SPELL_SCHOOL_MASK_NORMAL) // physical
|
||||||
|
stats[STATS_TYPE_CRIT] += 30 * val * multiplier;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1893,7 +1893,7 @@ bool AvoidAoeAction::AvoidGameObjectWithDamage()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
float radius = (float)goInfo->trap.diameter / 2;
|
float radius = (float)goInfo->trap.diameter / 2 + go->GetCombatReach();
|
||||||
if (!radius || radius > sPlayerbotAIConfig->maxAoeAvoidRadius)
|
if (!radius || radius > sPlayerbotAIConfig->maxAoeAvoidRadius)
|
||||||
continue;
|
continue;
|
||||||
// for (int i = 0; i < MAX_SPELL_EFFECTS; i++) {
|
// for (int i = 0; i < MAX_SPELL_EFFECTS; i++) {
|
||||||
|
|||||||
@@ -663,7 +663,7 @@ WorldLocation MoveFormation::MoveSingleLine(std::vector<Player*> line, float dif
|
|||||||
float lz = cz;
|
float lz = cz;
|
||||||
|
|
||||||
Player* master = botAI->GetMaster();
|
Player* master = botAI->GetMaster();
|
||||||
if (!master->GetMap()->CheckCollisionAndGetValidCoords(
|
if (!master || !master->GetMap()->CheckCollisionAndGetValidCoords(
|
||||||
master, master->GetPositionX(), master->GetPositionY(), master->GetPositionZ(), lx, ly, lz))
|
master, master->GetPositionX(), master->GetPositionY(), master->GetPositionZ(), lx, ly, lz))
|
||||||
{
|
{
|
||||||
lx = x + cos(angle) * radius;
|
lx = x + cos(angle) * radius;
|
||||||
|
|||||||
Reference in New Issue
Block a user