Core/Player: Fix and enable SMSG_LEVELUP_INFO

+ 2 new opcodes by Kaelima
This commit is contained in:
Nay
2012-01-12 17:15:27 +00:00
parent bb35989a7e
commit ba45ff0c61
3 changed files with 7 additions and 12 deletions

View File

@@ -3030,23 +3030,18 @@ void Player::GiveLevel(uint8 level)
sObjectMgr->GetPlayerClassLevelInfo(getClass(), level, &classInfo);
// send levelup info to client
WorldPacket data(SMSG_LEVELUP_INFO, (4+4+MAX_POWERS*4+MAX_STATS*4));
uint32 maxPowers = 5; // 4.x
WorldPacket data(SMSG_LEVELUP_INFO, (4+4+maxPowers*4+MAX_STATS*4));
data << uint32(level);
data << uint32(int32(classInfo.basehealth) - int32(GetCreateHealth()));
// for (int i = 0; i < MAX_POWERS; ++i) // Powers loop (0-10)
// for (int i = 0; i < maxPowers; ++i) // Powers loop (0-10)
data << uint32(int32(classInfo.basemana) - int32(GetCreateMana()));
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
data << uint32(0);
// end for
for (uint8 i = STAT_STRENGTH; i < MAX_STATS; ++i) // Stats loop (0-4)
for (uint8 i = STAT_STRENGTH; i < MAX_STATS; ++i) // Stats loop (0-4)
data << uint32(int32(info.stats[i]) - GetCreateStat(Stats(i)));
GetSession()->SendPacket(&data);

View File

@@ -529,7 +529,7 @@ void InitOpcodes()
//DEFINE_OPCODE_HANDLER(SMSG_AURACASTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
DEFINE_OPCODE_HANDLER(CMSG_RECLAIM_CORPSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleReclaimCorpseOpcode );
//DEFINE_OPCODE_HANDLER(CMSG_WRAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWrapItemOpcode );
//DEFINE_OPCODE_HANDLER(SMSG_LEVELUP_INFO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
DEFINE_OPCODE_HANDLER(SMSG_LEVELUP_INFO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//DEFINE_OPCODE_HANDLER(MSG_MINIMAP_PING, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMinimapPingOpcode );
//DEFINE_OPCODE_HANDLER(SMSG_RESISTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//DEFINE_OPCODE_HANDLER(SMSG_ENCHANTMENTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );

View File

@@ -205,7 +205,7 @@ enum Opcodes
CMSG_GROUP_SET_LEADER = 0xCEC7,
CMSG_GROUP_SWAP_SUB_GROUP = 0x5AD7,
CMSG_GROUP_UNINVITE = 0x00,
CMSG_GROUP_UNINVITE_GUID = 0x00,
CMSG_GROUP_UNINVITE_GUID = 0xCE66,
CMSG_GUILDFINDER_JOIN = 0x68C5,
CMSG_GUILD_ACCEPT = 0x00,
CMSG_GUILD_BANKER_ACTIVATE = 0x4E77,
@@ -726,7 +726,7 @@ enum Opcodes
SMSG_GROUP_DESTROYED = 0x00,
SMSG_GROUP_INVITE = 0x00,
SMSG_GROUP_JOINED_BATTLEGROUND = 0x265C,
SMSG_GROUP_LIST = 0x00,
SMSG_GROUP_LIST = 0x5C7E,
SMSG_GROUP_SET_LEADER = 0xCCF2,
SMSG_GROUP_UNINVITE = 0x00,
SMSG_GUILDFINDER_SEARCH_RESULT = 0xE0CE,