game: route aura/spell-list parsing through virtual packet dispatch

AuraUpdateParser and InitialSpellsParser were called as static functions
in the game handler, bypassing the expansion-specific overrides added to
TbcPacketParsers.  Switch them to packetParsers_->parseAuraUpdate() and
packetParsers_->parseInitialSpells() so TBC 2.4.3 servers get the correct
parser for each.
This commit is contained in:
Kelsi 2026-03-09 21:38:14 -07:00
parent 63d8200303
commit 6d21f77d32

View file

@ -12332,7 +12332,7 @@ float GameHandler::getSpellCooldown(uint32_t spellId) const {
void GameHandler::handleInitialSpells(network::Packet& packet) {
InitialSpellsData data;
if (!InitialSpellsParser::parse(packet, data)) return;
if (!packetParsers_->parseInitialSpells(packet, data)) return;
knownSpells = {data.spellIds.begin(), data.spellIds.end()};
@ -12525,7 +12525,7 @@ void GameHandler::handleCooldownEvent(network::Packet& packet) {
void GameHandler::handleAuraUpdate(network::Packet& packet, bool isAll) {
AuraUpdateData data;
if (!AuraUpdateParser::parse(packet, data, isAll)) return;
if (!packetParsers_->parseAuraUpdate(packet, data, isAll)) return;
// Determine which aura list to update
std::vector<AuraSlot>* auraList = nullptr;