Fix opcode handler grouping: separate SET_PROFICIENCY/ENERGIZE from ACTION_BUTTONS

SMSG_SPELLENERGIZELOG, SMSG_ENVIRONMENTAL_DAMAGE_LOG, and
SMSG_SET_PROFICIENCY were incorrectly grouped with the
SMSG_ACTION_BUTTONS case block introduced in the previous commit,
causing their payloads to be misinterpreted as action button data
which could corrupt the action bar. Each now safely consumes
its packet.
This commit is contained in:
Kelsi 2026-03-09 16:51:54 -07:00
parent 52507b1f74
commit 22bc5954d7

View file

@ -3070,6 +3070,9 @@ void GameHandler::handlePacket(network::Packet& packet) {
case Opcode::SMSG_SPELLENERGIZELOG:
case Opcode::SMSG_ENVIRONMENTAL_DAMAGE_LOG:
case Opcode::SMSG_SET_PROFICIENCY:
packet.setReadPos(packet.getSize());
break;
case Opcode::SMSG_ACTION_BUTTONS: {
// uint8 mode (0=initial, 1=update) + 144 × uint32 packed buttons
// packed: bits 0-23 = actionId, bits 24-31 = type