Compare commits

..

No commits in common. "fa79526eb62e5f3d108d3f89dfb3a3f035530664" and "28248f0fa72f690e3570772c9d92a87b3a9bc221" have entirely different histories.

View file

@ -487,29 +487,7 @@ private:
if (!IsEligibleAnchor(player)) if (!IsEligibleAnchor(player))
return {}; return {};
GoldRushSite site = BuildSiteFromAnchor(player); return BuildSiteFromAnchor(player);
// BuildSiteFromAnchor only knows the player's live zone/area IDs -- it has
// no access to the per-zone NodeEntries/BonusEntries parsed from
// GoldRush.ZonePool into _sites. SelectSiteForPlayer() tries a player
// anchor FIRST and only falls back to picking randomly from _sites when no
// eligible player is available, so without this lookup, the common case
// (a live player standing in a configured zone) silently lost its
// zone-specific resources and fell back to the global pool every time --
// exactly the bug reported after the v2 zone-resources feature shipped:
// events kept spawning the default Northrend-flavored global pool
// regardless of which zone they were actually anchored in.
for (GoldRushSite const& configured : _sites)
{
if (configured.ZoneId == site.ZoneId)
{
site.NodeEntries = configured.NodeEntries;
site.BonusEntries = configured.BonusEntries;
break;
}
}
return site;
} }
std::vector<GoldRushSite> BuildSites(std::string const& zones) const std::vector<GoldRushSite> BuildSites(std::string const& zones) const