Disable test items

This commit is contained in:
Yunfan Li
2024-09-18 22:16:18 +08:00
parent ef4064cfc1
commit 68bf09c425
5 changed files with 22 additions and 14 deletions

View File

@@ -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)") ||

View File

@@ -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;

View File

@@ -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;
} }

View File

@@ -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++) {

View File

@@ -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;