diff options
author | kaelima <kaelima@live.se> | 2012-01-18 18:26:15 +0100 |
---|---|---|
committer | kaelima <kaelima@live.se> | 2012-01-18 18:26:15 +0100 |
commit | ba23b69a17e6eb8cc1173cd179bf8e1ae8ab6759 (patch) | |
tree | 27b8b5755c543967d25a38c0c80d6b12fadb4912 | |
parent | eae789c5c1ca4d4399d7ec7d89b57f0c980099e4 (diff) |
Core/Protocol: Fix SMSG_TRAINER_BUY_SUCCEEDED and SMSG_MAIL_LIST_RESULT. Thanks Nay
5 files changed, 10 insertions, 6 deletions
diff --git a/src/server/game/Entities/Item/Item.h b/src/server/game/Entities/Item/Item.h index 0960a3e5563..41c13f78029 100755 --- a/src/server/game/Entities/Item/Item.h +++ b/src/server/game/Entities/Item/Item.h @@ -162,7 +162,9 @@ enum EnchantmentSlot SOCK_ENCHANTMENT_SLOT_3 = 4, BONUS_ENCHANTMENT_SLOT = 5, PRISMATIC_ENCHANTMENT_SLOT = 6, // added at apply special permanent enchantment - MAX_INSPECTED_ENCHANTMENT_SLOT = 7, + //TODO: 7, + //TODO: 8, + MAX_INSPECTED_ENCHANTMENT_SLOT = 9, PROP_ENCHANTMENT_SLOT_0 = 7, // used with RandomSuffix PROP_ENCHANTMENT_SLOT_1 = 8, // used with RandomSuffix diff --git a/src/server/game/Server/Protocol/Handlers/MailHandler.cpp b/src/server/game/Server/Protocol/Handlers/MailHandler.cpp index cb75de0569e..95459bae0fa 100755 --- a/src/server/game/Server/Protocol/Handlers/MailHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/MailHandler.cpp @@ -596,10 +596,10 @@ void WorldSession::HandleGetMailList(WorldPacket & recv_data) break; } - data << uint32((*itr)->COD); // COD + data << uint64((*itr)->COD); // COD data << uint32(0); // probably changed in 3.3.3 data << uint32((*itr)->stationery); // stationery (Stationery.dbc) - data << uint32((*itr)->money); // Gold + data << uint64((*itr)->money); // Gold data << uint32((*itr)->checked); // flags data << float(((*itr)->expire_time-time(NULL))/DAY); // Time data << uint32((*itr)->mailTemplateId); // mail template (MailTemplate.dbc) diff --git a/src/server/game/Server/Protocol/Handlers/NPCHandler.cpp b/src/server/game/Server/Protocol/Handlers/NPCHandler.cpp index ae06832a19e..6145ef1438d 100755 --- a/src/server/game/Server/Protocol/Handlers/NPCHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/NPCHandler.cpp @@ -292,6 +292,7 @@ void WorldSession::HandleTrainerBuySpellOpcode(WorldPacket & recv_data) WorldPacket data(SMSG_TRAINER_BUY_SUCCEEDED, 12); data << uint64(guid); data << uint32(spellId); // should be same as in packet from client + data << uint32(0); // "Trainer service", 1 = "Not enough money for trainer service <TS>". 0 = "Trainer service <TS> unavailable" SendPacket(&data); } @@ -492,6 +493,7 @@ void WorldSession::SendBindPoint(Creature* npc) WorldPacket data(SMSG_TRAINER_BUY_SUCCEEDED, (8+4)); data << uint64(npc->GetGUID()); data << uint32(bindspell); + data << uint32(0); // "Trainer service", 1 = "Not enough money for trainer service <TS>". 0 = "Trainer service <TS> unavailable" SendPacket(&data); _player->PlayerTalkClass->SendCloseGossip(); diff --git a/src/server/game/Server/Protocol/Handlers/SpellHandler.cpp b/src/server/game/Server/Protocol/Handlers/SpellHandler.cpp index 2a6f4902dac..e15fc8b3871 100755 --- a/src/server/game/Server/Protocol/Handlers/SpellHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/SpellHandler.cpp @@ -601,9 +601,9 @@ void WorldSession::HandleMirrorImageDataRequest(WorldPacket & recv_data) if (creator->GetTypeId() == TYPEID_PLAYER) { Player* player = creator->ToPlayer(); - uint32 guildId = player->GetGuildId(); Guild* guild = NULL; - if (guildId) + + if (uint32 guildId = player->GetGuildId()) guild = sGuildMgr->GetGuildById(guildId); data << uint8(player->GetByteValue(PLAYER_BYTES, 0)); // skin diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 0b78b70785a..36cf769f59a 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -496,7 +496,7 @@ void InitOpcodes() DEFINE_OPCODE_HANDLER(CMSG_TRAINER_LIST, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleTrainerListOpcode ); //DEFINE_OPCODE_HANDLER(SMSG_TRAINER_LIST, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(CMSG_TRAINER_BUY_SPELL, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleTrainerBuySpellOpcode ); - //DEFINE_OPCODE_HANDLER(SMSG_TRAINER_BUY_SUCCEEDED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); + DEFINE_OPCODE_HANDLER(SMSG_TRAINER_BUY_SUCCEEDED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); //DEFINE_OPCODE_HANDLER(SMSG_TRAINER_BUY_FAILED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); DEFINE_OPCODE_HANDLER(CMSG_BINDER_ACTIVATE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleBinderActivateOpcode ); //DEFINE_OPCODE_HANDLER(SMSG_PLAYERBINDERROR, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide ); |