mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 19:37:03 +00:00
[0012] Fix SMSG_QUERY_CREATURE_RESPONSE
Signed-off-by: Netcho <kkotlarski@abv.bg>
This commit is contained in:
parent
9398fc9735
commit
423aa72b2b
3 changed files with 13 additions and 8 deletions
|
|
@ -141,8 +141,8 @@ void InitializeOpcodes()
|
||||||
//OPCODE(SMSG_QUEST_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//OPCODE(SMSG_QUEST_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//OPCODE(CMSG_GAMEOBJECT_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleGameObjectQueryOpcode );
|
//OPCODE(CMSG_GAMEOBJECT_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleGameObjectQueryOpcode );
|
||||||
//OPCODE(SMSG_GAMEOBJECT_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//OPCODE(SMSG_GAMEOBJECT_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//OPCODE(CMSG_CREATURE_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleCreatureQueryOpcode );
|
OPCODE(CMSG_CREATURE_QUERY, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleCreatureQueryOpcode );
|
||||||
//OPCODE(SMSG_CREATURE_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
OPCODE(SMSG_CREATURE_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
OPCODE(CMSG_WHO, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWhoOpcode );
|
OPCODE(CMSG_WHO, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWhoOpcode );
|
||||||
OPCODE(SMSG_WHO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
OPCODE(SMSG_WHO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
OPCODE(CMSG_WHOIS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWhoisOpcode );
|
OPCODE(CMSG_WHOIS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWhoisOpcode );
|
||||||
|
|
|
||||||
|
|
@ -135,8 +135,8 @@ enum Opcodes
|
||||||
SMSG_QUEST_QUERY_RESPONSE = 0x105E,
|
SMSG_QUEST_QUERY_RESPONSE = 0x105E,
|
||||||
CMSG_GAMEOBJECT_QUERY = 0x105F,
|
CMSG_GAMEOBJECT_QUERY = 0x105F,
|
||||||
SMSG_GAMEOBJECT_QUERY_RESPONSE = 0x1060,
|
SMSG_GAMEOBJECT_QUERY_RESPONSE = 0x1060,
|
||||||
CMSG_CREATURE_QUERY = 0x1061,
|
CMSG_CREATURE_QUERY = 0x2706, // 4.3.4 15595
|
||||||
SMSG_CREATURE_QUERY_RESPONSE = 0x1062,
|
SMSG_CREATURE_QUERY_RESPONSE = 0x6024, // 4.3.4 15595
|
||||||
CMSG_WHO = 0x6C15,
|
CMSG_WHO = 0x6C15,
|
||||||
SMSG_WHO = 0x6907,
|
SMSG_WHO = 0x6907,
|
||||||
CMSG_WHOIS = 0x6B05,
|
CMSG_WHOIS = 0x6B05,
|
||||||
|
|
@ -188,7 +188,7 @@ enum Opcodes
|
||||||
SMSG_GUILD_EVENT = 0x1093,
|
SMSG_GUILD_EVENT = 0x1093,
|
||||||
SMSG_GUILD_COMMAND_RESULT = 0x1094,
|
SMSG_GUILD_COMMAND_RESULT = 0x1094,
|
||||||
UMSG_UPDATE_GUILD = 0x1095,
|
UMSG_UPDATE_GUILD = 0x1095,
|
||||||
CMSG_MESSAGECHAT = 0x1096,
|
CMSG_MESSAGECHAT_SAY = 0x1154,
|
||||||
SMSG_MESSAGECHAT = 0x1097,
|
SMSG_MESSAGECHAT = 0x1097,
|
||||||
CMSG_JOIN_CHANNEL = 0x0156,
|
CMSG_JOIN_CHANNEL = 0x0156,
|
||||||
CMSG_LEAVE_CHANNEL = 0x1099,
|
CMSG_LEAVE_CHANNEL = 0x1099,
|
||||||
|
|
|
||||||
|
|
@ -157,8 +157,8 @@ void WorldSession::HandleCreatureQueryOpcode(WorldPacket& recv_data)
|
||||||
{
|
{
|
||||||
int loc_idx = GetSessionDbLocaleIndex();
|
int loc_idx = GetSessionDbLocaleIndex();
|
||||||
|
|
||||||
char const* name = ci->Name;
|
std::string name = ci->Name;
|
||||||
char const* subName = ci->SubName;
|
std::string subName = ci->SubName;
|
||||||
sObjectMgr.GetCreatureLocaleStrings(entry, loc_idx, &name, &subName);
|
sObjectMgr.GetCreatureLocaleStrings(entry, loc_idx, &name, &subName);
|
||||||
|
|
||||||
DETAIL_LOG("WORLD: CMSG_CREATURE_QUERY '%s' - Entry: %u.", ci->Name, entry);
|
DETAIL_LOG("WORLD: CMSG_CREATURE_QUERY '%s' - Entry: %u.", ci->Name, entry);
|
||||||
|
|
@ -166,10 +166,14 @@ void WorldSession::HandleCreatureQueryOpcode(WorldPacket& recv_data)
|
||||||
WorldPacket data(SMSG_CREATURE_QUERY_RESPONSE, 100);
|
WorldPacket data(SMSG_CREATURE_QUERY_RESPONSE, 100);
|
||||||
data << uint32(entry); // creature entry
|
data << uint32(entry); // creature entry
|
||||||
data << name;
|
data << name;
|
||||||
data << uint8(0) << uint8(0) << uint8(0); // name2, name3, name4, always empty
|
|
||||||
|
for (uint8 i = 0; i < 7; ++i)
|
||||||
|
data << uint8(0); // name2, name3, name4, always empty
|
||||||
|
|
||||||
data << subName;
|
data << subName;
|
||||||
data << ci->IconName; // "Directions" for guard, string for Icons 2.3.0
|
data << ci->IconName; // "Directions" for guard, string for Icons 2.3.0
|
||||||
data << uint32(ci->type_flags); // flags
|
data << uint32(ci->type_flags); // flags
|
||||||
|
data << uint32(0); // unk
|
||||||
data << uint32(ci->type); // CreatureType.dbc
|
data << uint32(ci->type); // CreatureType.dbc
|
||||||
data << uint32(ci->family); // CreatureFamily.dbc
|
data << uint32(ci->family); // CreatureFamily.dbc
|
||||||
data << uint32(ci->rank); // Creature Rank (elite, boss, etc)
|
data << uint32(ci->rank); // Creature Rank (elite, boss, etc)
|
||||||
|
|
@ -185,6 +189,7 @@ void WorldSession::HandleCreatureQueryOpcode(WorldPacket& recv_data)
|
||||||
for (uint32 i = 0; i < 6; ++i)
|
for (uint32 i = 0; i < 6; ++i)
|
||||||
data << uint32(ci->questItems[i]); // itemId[6], quest drop
|
data << uint32(ci->questItems[i]); // itemId[6], quest drop
|
||||||
data << uint32(ci->movementId); // CreatureMovementInfo.dbc
|
data << uint32(ci->movementId); // CreatureMovementInfo.dbc
|
||||||
|
data << uint32(0); //unk
|
||||||
SendPacket(&data);
|
SendPacket(&data);
|
||||||
DEBUG_LOG("WORLD: Sent SMSG_CREATURE_QUERY_RESPONSE");
|
DEBUG_LOG("WORLD: Sent SMSG_CREATURE_QUERY_RESPONSE");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue