Fix trainer buy packet and grey out unmet prerequisites

CMSG_TRAINER_BUY_SPELL was missing the trainerId field — server expects
guid(8) + trainerId(4) + spellId(4) = 16 bytes, not 12. Spells with
unmet prerequisites (chainNode1/2/3), insufficient level, or already
known are now greyed out with disabled Train buttons. Tooltips show
prerequisite status in green/red.
This commit is contained in:
Kelsi 2026-02-08 15:03:43 -08:00
parent ee155c3367
commit eb92a71b71
4 changed files with 39 additions and 13 deletions

View file

@ -1749,7 +1749,7 @@ public:
class TrainerBuySpellPacket {
public:
static network::Packet build(uint64_t trainerGuid, uint32_t spellId);
static network::Packet build(uint64_t trainerGuid, uint32_t trainerId, uint32_t spellId);
};
// ============================================================