feat(Core/Config): Improvements to config caching (#21647)

This commit is contained in:
Takenbacon
2025-06-30 08:14:12 -07:00
committed by GitHub
parent 904ddc72cc
commit fd262c3ab1
13 changed files with 1443 additions and 1555 deletions

View File

@@ -30,7 +30,7 @@
#include "Util.h"
#include "World.h"
static Rates const qualityToRate[MAX_ITEM_QUALITY] =
ServerConfigs const qualityToRate[] =
{
RATE_DROP_ITEM_POOR, // ITEM_QUALITY_POOR
RATE_DROP_ITEM_NORMAL, // ITEM_QUALITY_NORMAL
@@ -322,8 +322,9 @@ bool LootStoreItem::Roll(bool rate, Player const* player, Loot& loot, LootStore
return roll_chance_f(_chance * (rate ? sWorld->getRate(RATE_DROP_ITEM_REFERENCED) : 1.0f));
ItemTemplate const* pProto = sObjectMgr->GetItemTemplate(itemid);
float qualityModifier = pProto && rate ? sWorld->getRate(qualityToRate[pProto->Quality]) : 1.0f;
float qualityModifier = 1.0f;
if (pProto && pProto->Quality < ITEM_QUALITY_HEIRLOOM && rate)
qualityModifier = sWorld->getRate(qualityToRate[pProto->Quality]);
return roll_chance_f(_chance * qualityModifier);
}