Core/Protocol: Allow use of a bunch of opcodes
(all structs have been checked)
This commit is contained in:
@@ -804,7 +804,7 @@ void BattlegroundMgr::InitAutomaticArenaPointDistribution()
|
|||||||
sLog->outDebug(LOG_FILTER_BATTLEGROUND, "Automatic Arena Point Distribution initialized.");
|
sLog->outDebug(LOG_FILTER_BATTLEGROUND, "Automatic Arena Point Distribution initialized.");
|
||||||
}
|
}
|
||||||
|
|
||||||
void BattlegroundMgr::BuildBattlegroundListPacket(WorldPacket* data, uint64 guid, Player* player, BattlegroundTypeId bgTypeId, uint8 fromWhere)
|
void BattlegroundMgr::BuildBattlegroundListPacket(WorldPacket* data, uint64 guid, Player* player, BattlegroundTypeId bgTypeId)
|
||||||
{
|
{
|
||||||
if (!player)
|
if (!player)
|
||||||
return;
|
return;
|
||||||
@@ -817,8 +817,8 @@ void BattlegroundMgr::BuildBattlegroundListPacket(WorldPacket* data, uint64 guid
|
|||||||
loser_kills = Trinity::Honor::hk_honor_at_level(player->getLevel(), float(loser_kills));
|
loser_kills = Trinity::Honor::hk_honor_at_level(player->getLevel(), float(loser_kills));
|
||||||
|
|
||||||
data->Initialize(SMSG_BATTLEFIELD_LIST);
|
data->Initialize(SMSG_BATTLEFIELD_LIST);
|
||||||
|
// TODO: Fix guid
|
||||||
*data << uint64(guid); // battlemaster guid
|
*data << uint64(guid); // battlemaster guid
|
||||||
*data << uint8(fromWhere); // from where you joined
|
|
||||||
*data << uint32(bgTypeId); // battleground id
|
*data << uint32(bgTypeId); // battleground id
|
||||||
*data << uint8(0); // unk
|
*data << uint8(0); // unk
|
||||||
*data << uint8(0); // unk
|
*data << uint8(0); // unk
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ class BattlegroundMgr
|
|||||||
/* Packet Building */
|
/* Packet Building */
|
||||||
void BuildPlayerJoinedBattlegroundPacket(WorldPacket* data, Player* player);
|
void BuildPlayerJoinedBattlegroundPacket(WorldPacket* data, Player* player);
|
||||||
void BuildPlayerLeftBattlegroundPacket(WorldPacket* data, uint64 guid);
|
void BuildPlayerLeftBattlegroundPacket(WorldPacket* data, uint64 guid);
|
||||||
void BuildBattlegroundListPacket(WorldPacket* data, uint64 guid, Player* player, BattlegroundTypeId bgTypeId, uint8 fromWhere);
|
void BuildBattlegroundListPacket(WorldPacket* data, uint64 guid, Player* player, BattlegroundTypeId bgTypeId);
|
||||||
void BuildGroupJoinedBattlegroundPacket(WorldPacket* data, GroupJoinBattlegroundResult result);
|
void BuildGroupJoinedBattlegroundPacket(WorldPacket* data, GroupJoinBattlegroundResult result);
|
||||||
void BuildUpdateWorldStatePacket(WorldPacket* data, uint32 field, uint32 value);
|
void BuildUpdateWorldStatePacket(WorldPacket* data, uint32 field, uint32 value);
|
||||||
void BuildPvpLogDataPacket(WorldPacket* data, Battleground* bg);
|
void BuildPvpLogDataPacket(WorldPacket* data, Battleground* bg);
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ void WorldSession::HandleBattlemasterHelloOpcode(WorldPacket & recv_data)
|
|||||||
void WorldSession::SendBattlegGroundList(uint64 guid, BattlegroundTypeId bgTypeId)
|
void WorldSession::SendBattlegGroundList(uint64 guid, BattlegroundTypeId bgTypeId)
|
||||||
{
|
{
|
||||||
WorldPacket data;
|
WorldPacket data;
|
||||||
sBattlegroundMgr->BuildBattlegroundListPacket(&data, guid, _player, bgTypeId, 0);
|
sBattlegroundMgr->BuildBattlegroundListPacket(&data, guid, _player, bgTypeId);
|
||||||
SendPacket(&data);
|
SendPacket(&data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -308,19 +308,13 @@ void WorldSession::HandlePVPLogDataOpcode(WorldPacket & /*recv_data*/)
|
|||||||
sLog->outDebug(LOG_FILTER_NETWORKIO, "WORLD: Sent MSG_PVP_LOG_DATA Message");
|
sLog->outDebug(LOG_FILTER_NETWORKIO, "WORLD: Sent MSG_PVP_LOG_DATA Message");
|
||||||
}
|
}
|
||||||
|
|
||||||
void WorldSession::HandleBattlefieldListOpcode(WorldPacket &recv_data)
|
void WorldSession::HandleBattlefieldListOpcode(WorldPacket& recv_data)
|
||||||
{
|
{
|
||||||
sLog->outDebug(LOG_FILTER_NETWORKIO, "WORLD: Recvd CMSG_BATTLEFIELD_LIST Message");
|
sLog->outDebug(LOG_FILTER_NETWORKIO, "WORLD: Recvd CMSG_BATTLEFIELD_LIST Message");
|
||||||
|
|
||||||
uint32 bgTypeId;
|
uint32 bgTypeId;
|
||||||
recv_data >> bgTypeId; // id from DBC
|
recv_data >> bgTypeId; // id from DBC
|
||||||
|
|
||||||
uint8 fromWhere;
|
|
||||||
recv_data >> fromWhere; // 0 - battlemaster (lua: ShowBattlefieldList), 1 - UI (lua: RequestBattlegroundInstanceInfo)
|
|
||||||
|
|
||||||
uint8 unk1;
|
|
||||||
recv_data >> unk1; // Unknown 3.2.2
|
|
||||||
|
|
||||||
BattlemasterListEntry const* bl = sBattlemasterListStore.LookupEntry(bgTypeId);
|
BattlemasterListEntry const* bl = sBattlemasterListStore.LookupEntry(bgTypeId);
|
||||||
if (!bl)
|
if (!bl)
|
||||||
{
|
{
|
||||||
@@ -329,7 +323,7 @@ void WorldSession::HandleBattlefieldListOpcode(WorldPacket &recv_data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
WorldPacket data;
|
WorldPacket data;
|
||||||
sBattlegroundMgr->BuildBattlegroundListPacket(&data, 0, _player, BattlegroundTypeId(bgTypeId), fromWhere);
|
sBattlegroundMgr->BuildBattlegroundListPacket(&data, 0, _player, BattlegroundTypeId(bgTypeId));
|
||||||
SendPacket(&data);
|
SendPacket(&data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -292,7 +292,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(MSG_MOVE_HOVER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(MSG_MOVE_HOVER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_TRIGGER_CINEMATIC_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_TRIGGER_CINEMATIC_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_OPENING_CINEMATIC, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_OPENING_CINEMATIC, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_TRIGGER_CINEMATIC, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_TRIGGER_CINEMATIC, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_NEXT_CINEMATIC_CAMERA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleNextCinematicCamera );
|
//DEFINE_OPCODE_HANDLER(CMSG_NEXT_CINEMATIC_CAMERA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleNextCinematicCamera );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_COMPLETE_CINEMATIC, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCompleteCinematic );
|
//DEFINE_OPCODE_HANDLER(CMSG_COMPLETE_CINEMATIC, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCompleteCinematic );
|
||||||
DEFINE_OPCODE_HANDLER(SMSG_TUTORIAL_FLAGS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_TUTORIAL_FLAGS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
@@ -347,9 +347,9 @@ void InitOpcodes()
|
|||||||
DEFINE_OPCODE_HANDLER(CMSG_CAST_SPELL, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleCastSpellOpcode );
|
DEFINE_OPCODE_HANDLER(CMSG_CAST_SPELL, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleCastSpellOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_CANCEL_CAST, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleCancelCastOpcode );
|
//DEFINE_OPCODE_HANDLER(CMSG_CANCEL_CAST, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleCancelCastOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_CAST_FAILED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_CAST_FAILED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELL_START, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_SPELL_START, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELL_GO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_SPELL_GO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELL_FAILURE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_SPELL_FAILURE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELL_COOLDOWN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_SPELL_COOLDOWN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_COOLDOWN_EVENT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_COOLDOWN_EVENT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_CANCEL_AURA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelAuraOpcode );
|
//DEFINE_OPCODE_HANDLER(CMSG_CANCEL_AURA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelAuraOpcode );
|
||||||
@@ -359,7 +359,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(MSG_CHANNEL_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(MSG_CHANNEL_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
DEFINE_OPCODE_HANDLER(CMSG_CANCEL_CHANNELLING, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelChanneling );
|
DEFINE_OPCODE_HANDLER(CMSG_CANCEL_CHANNELLING, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelChanneling );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_AI_REACTION, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_AI_REACTION, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_SET_SELECTION, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSetSelectionOpcode );
|
DEFINE_OPCODE_HANDLER(CMSG_SET_SELECTION, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSetSelectionOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_DELETEEQUIPMENT_SET, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleEquipmentSetDelete );
|
//DEFINE_OPCODE_HANDLER(CMSG_DELETEEQUIPMENT_SET, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleEquipmentSetDelete );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_INSTANCE_LOCK_RESPONSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleInstanceLockResponse );
|
//DEFINE_OPCODE_HANDLER(CMSG_INSTANCE_LOCK_RESPONSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleInstanceLockResponse );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_DEBUG_PASSIVE_AURA, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_DEBUG_PASSIVE_AURA, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
@@ -380,7 +380,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELLBREAKLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_SPELLBREAKLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELLHEALLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_SPELLHEALLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELLENERGIZELOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_SPELLENERGIZELOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_BREAK_TARGET, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_BREAK_TARGET, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_SAVE_PLAYER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_SAVE_PLAYER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_SETDEATHBINDPOINT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_SETDEATHBINDPOINT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_BINDPOINTUPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_BINDPOINTUPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
@@ -506,7 +506,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(SMSG_PLAYED_TIME, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_PLAYED_TIME, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_QUERY_TIME, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQueryTimeOpcode );
|
//DEFINE_OPCODE_HANDLER(CMSG_QUERY_TIME, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQueryTimeOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_QUERY_TIME_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_QUERY_TIME_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_LOG_XPGAIN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_LOG_XPGAIN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_AURACASTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//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_RECLAIM_CORPSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleReclaimCorpseOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_WRAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWrapItemOpcode );
|
//DEFINE_OPCODE_HANDLER(CMSG_WRAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWrapItemOpcode );
|
||||||
@@ -719,7 +719,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(CMSG_LOOT_MASTER_GIVE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLootMasterGiveOpcode );
|
//DEFINE_OPCODE_HANDLER(CMSG_LOOT_MASTER_GIVE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleLootMasterGiveOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_LOOT_MASTER_LIST, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_LOOT_MASTER_LIST, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SET_FORCED_REACTIONS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_SET_FORCED_REACTIONS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_SPELL_FAILED_OTHER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_SPELL_FAILED_OTHER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_GAMEOBJECT_RESET_STATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_GAMEOBJECT_RESET_STATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_REPAIR_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRepairItemOpcode );
|
//DEFINE_OPCODE_HANDLER(CMSG_REPAIR_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRepairItemOpcode );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_CHAT_PLAYER_NOT_FOUND, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_CHAT_PLAYER_NOT_FOUND, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
@@ -850,7 +850,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(SMSG_GHOSTEE_GONE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_GHOSTEE_GONE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_GM_UPDATE_TICKET_STATUS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_GM_UPDATE_TICKET_STATUS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_GM_TICKET_STATUS_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_GM_TICKET_STATUS_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(MSG_SET_DUNGEON_DIFFICULTY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSetDungeonDifficultyOpcode);
|
DEFINE_OPCODE_HANDLER(MSG_SET_DUNGEON_DIFFICULTY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSetDungeonDifficultyOpcode);
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_GMSURVEY_SUBMIT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGMSurveySubmit );
|
//DEFINE_OPCODE_HANDLER(CMSG_GMSURVEY_SUBMIT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGMSurveySubmit );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_UPDATE_INSTANCE_OWNERSHIP, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_UPDATE_INSTANCE_OWNERSHIP, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_IGNORE_KNOCKBACK_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_IGNORE_KNOCKBACK_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
@@ -1171,7 +1171,7 @@ void InitOpcodes()
|
|||||||
//DEFINE_OPCODE_HANDLER(CMSG_SET_GLYPH, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
//DEFINE_OPCODE_HANDLER(CMSG_SET_GLYPH, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_ACHIEVEMENT_EARNED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_ACHIEVEMENT_EARNED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_DYNAMIC_DROP_ROLL_RESULT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_DYNAMIC_DROP_ROLL_RESULT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_CRITERIA_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
DEFINE_OPCODE_HANDLER(SMSG_CRITERIA_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_QUERY_INSPECT_ACHIEVEMENTS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQueryInspectAchievements );
|
//DEFINE_OPCODE_HANDLER(CMSG_QUERY_INSPECT_ACHIEVEMENTS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQueryInspectAchievements );
|
||||||
//DEFINE_OPCODE_HANDLER(SMSG_RESPOND_INSPECT_ACHIEVEMENTS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
//DEFINE_OPCODE_HANDLER(SMSG_RESPOND_INSPECT_ACHIEVEMENTS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
|
||||||
//DEFINE_OPCODE_HANDLER(CMSG_DISMISS_CONTROLLED_VEHICLE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDismissControlledVehicle );
|
//DEFINE_OPCODE_HANDLER(CMSG_DISMISS_CONTROLLED_VEHICLE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDismissControlledVehicle );
|
||||||
|
|||||||
@@ -641,7 +641,7 @@ enum Opcodes
|
|||||||
SMSG_CORPSE_MAP_POSITION_QUERY_RESPONSE = 0x00,
|
SMSG_CORPSE_MAP_POSITION_QUERY_RESPONSE = 0x00,
|
||||||
SMSG_CREATURE_QUERY_RESPONSE = 0xD847,
|
SMSG_CREATURE_QUERY_RESPONSE = 0xD847,
|
||||||
SMSG_CRITERIA_DELETED = 0x00,
|
SMSG_CRITERIA_DELETED = 0x00,
|
||||||
SMSG_CRITERIA_UPDATE = 0x00,
|
SMSG_CRITERIA_UPDATE = 0xD87F,
|
||||||
SMSG_CROSSED_INEBRIATION_THRESHOLD = 0x00,
|
SMSG_CROSSED_INEBRIATION_THRESHOLD = 0x00,
|
||||||
SMSG_DAMAGE_CALC_LOG = 0x00,
|
SMSG_DAMAGE_CALC_LOG = 0x00,
|
||||||
SMSG_DAMAGE_DONE_OBSOLETE = 0x00,
|
SMSG_DAMAGE_DONE_OBSOLETE = 0x00,
|
||||||
@@ -788,7 +788,7 @@ enum Opcodes
|
|||||||
SMSG_LOGOUT_CANCEL_ACK = 0x00,
|
SMSG_LOGOUT_CANCEL_ACK = 0x00,
|
||||||
SMSG_LOGOUT_COMPLETE = 0xCC6B,
|
SMSG_LOGOUT_COMPLETE = 0xCC6B,
|
||||||
SMSG_LOGOUT_RESPONSE = 0x886A,
|
SMSG_LOGOUT_RESPONSE = 0x886A,
|
||||||
SMSG_LOG_XPGAIN = 0x00,
|
SMSG_LOG_XPGAIN = 0x4E7E,
|
||||||
SMSG_LOOT_ALL_PASSED = 0x00,
|
SMSG_LOOT_ALL_PASSED = 0x00,
|
||||||
SMSG_LOOT_CLEAR_MONEY = 0x00,
|
SMSG_LOOT_CLEAR_MONEY = 0x00,
|
||||||
SMSG_LOOT_ITEM_NOTIFY = 0x00,
|
SMSG_LOOT_ITEM_NOTIFY = 0x00,
|
||||||
@@ -889,7 +889,7 @@ enum Opcodes
|
|||||||
SMSG_QUERY_QUESTS_COMPLETED_RESPONSE = 0x00,
|
SMSG_QUERY_QUESTS_COMPLETED_RESPONSE = 0x00,
|
||||||
SMSG_QUERY_TIME_RESPONSE = 0x00,
|
SMSG_QUERY_TIME_RESPONSE = 0x00,
|
||||||
SMSG_QUESTGIVER_OFFER_REWARD = 0x00,
|
SMSG_QUESTGIVER_OFFER_REWARD = 0x00,
|
||||||
SMSG_QUESTGIVER_QUEST_COMPLETE = 0x00,
|
SMSG_QUESTGIVER_QUEST_COMPLETE = 0x24EE,
|
||||||
SMSG_QUESTGIVER_QUEST_DETAILS = 0xCE5F,
|
SMSG_QUESTGIVER_QUEST_DETAILS = 0xCE5F,
|
||||||
SMSG_QUESTGIVER_QUEST_FAILED = 0xD8FF,
|
SMSG_QUESTGIVER_QUEST_FAILED = 0xD8FF,
|
||||||
SMSG_QUESTGIVER_QUEST_LIST = 0xDEF6,
|
SMSG_QUESTGIVER_QUEST_LIST = 0xDEF6,
|
||||||
@@ -957,8 +957,8 @@ enum Opcodes
|
|||||||
SMSG_SPELL_COOLDOWN = 0x00,
|
SMSG_SPELL_COOLDOWN = 0x00,
|
||||||
SMSG_SPELL_DELAYED = 0x00,
|
SMSG_SPELL_DELAYED = 0x00,
|
||||||
SMSG_SPELLDISPELLOG = 0x00,
|
SMSG_SPELLDISPELLOG = 0x00,
|
||||||
SMSG_SPELL_FAILED_OTHER = 0x00,
|
SMSG_SPELL_FAILED_OTHER = 0xCE4A,
|
||||||
SMSG_SPELL_FAILURE = 0x00,
|
SMSG_SPELL_FAILURE = 0x9A66,
|
||||||
SMSG_SPELL_GO = 0x0A53,
|
SMSG_SPELL_GO = 0x0A53,
|
||||||
SMSG_SPELL_START = 0xCE43,
|
SMSG_SPELL_START = 0xCE43,
|
||||||
SMSG_SPELLSTEALLOG = 0x00,
|
SMSG_SPELLSTEALLOG = 0x00,
|
||||||
@@ -991,7 +991,7 @@ enum Opcodes
|
|||||||
SMSG_TRAINER_BUY_RESULT = 0x00,
|
SMSG_TRAINER_BUY_RESULT = 0x00,
|
||||||
SMSG_TRANSFER_ABORTED = 0x00,
|
SMSG_TRANSFER_ABORTED = 0x00,
|
||||||
SMSG_TRANSFER_PENDING = 0x00,
|
SMSG_TRANSFER_PENDING = 0x00,
|
||||||
SMSG_TRIGGER_CINEMATIC = 0x00,
|
SMSG_TRIGGER_CINEMATIC = 0xCE5B,
|
||||||
SMSG_TRIGGER_MOVIE = 0x00,
|
SMSG_TRIGGER_MOVIE = 0x00,
|
||||||
SMSG_TURN_IN_PETITION_RESULTS = 0x08DB,
|
SMSG_TURN_IN_PETITION_RESULTS = 0x08DB,
|
||||||
SMSG_TUTORIAL_FLAGS = 0x1A46,
|
SMSG_TUTORIAL_FLAGS = 0x1A46,
|
||||||
|
|||||||
@@ -3763,7 +3763,7 @@ void Spell::SendSpellStart()
|
|||||||
if (castFlags & CAST_FLAG_POWER_LEFT_SELF)
|
if (castFlags & CAST_FLAG_POWER_LEFT_SELF)
|
||||||
data << uint32(m_caster->GetPower((Powers)m_spellInfo->PowerType));
|
data << uint32(m_caster->GetPower((Powers)m_spellInfo->PowerType));
|
||||||
|
|
||||||
if (castFlags & CAST_FLAG_UNKNOWN_23)
|
if (castFlags & CAST_FLAG_IMMUNITY)
|
||||||
{
|
{
|
||||||
data << uint32(0);
|
data << uint32(0);
|
||||||
data << uint32(0);
|
data << uint32(0);
|
||||||
@@ -3850,13 +3850,19 @@ void Spell::SendSpellGo()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (castFlags & CAST_FLAG_UNKNOWN_18) // unknown wotlk
|
if (castFlags & CAST_FLAG_ADJUST_MISSILE)
|
||||||
{
|
{
|
||||||
data << float(0);
|
data << float(0);
|
||||||
data << uint32(0);
|
data << uint32(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (castFlags & CAST_FLAG_UNKNOWN_20) // unknown wotlk
|
if (castFlags & CAST_FLAG_PROJECTILE)
|
||||||
|
{
|
||||||
|
data << uint32(0); // Ammo display ID
|
||||||
|
data << uint32(0); // Inventory Type
|
||||||
|
}
|
||||||
|
|
||||||
|
if (castFlags & CAST_FLAG_VISUAL_CHAIN)
|
||||||
{
|
{
|
||||||
data << uint32(0);
|
data << uint32(0);
|
||||||
data << uint32(0);
|
data << uint32(0);
|
||||||
@@ -3867,6 +3873,20 @@ void Spell::SendSpellGo()
|
|||||||
data << uint8(0);
|
data << uint8(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (m_targets.GetTargetMask() & TARGET_FLAG_EXTRA_TARGETS)
|
||||||
|
{
|
||||||
|
data << uint8(0); // Extra targets count
|
||||||
|
/*
|
||||||
|
for (uint8 i = 0; i < count; ++i)
|
||||||
|
{
|
||||||
|
data << float(0); // Target Position X
|
||||||
|
data << float(0); // Target Position Y
|
||||||
|
data << float(0); // Target Position Z
|
||||||
|
data << uint64(0); // Target Guid
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
m_caster->SendMessageToSet(&data, true);
|
m_caster->SendMessageToSet(&data, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ enum SpellCastFlags
|
|||||||
CAST_FLAG_UNKNOWN_3 = 0x00000004,
|
CAST_FLAG_UNKNOWN_3 = 0x00000004,
|
||||||
CAST_FLAG_UNKNOWN_4 = 0x00000008, // ignore AOE visual
|
CAST_FLAG_UNKNOWN_4 = 0x00000008, // ignore AOE visual
|
||||||
CAST_FLAG_UNKNOWN_5 = 0x00000010,
|
CAST_FLAG_UNKNOWN_5 = 0x00000010,
|
||||||
CAST_FLAG_UNKNOWN_6 = 0x00000020,
|
CAST_FLAG_PROJECTILE = 0x00000020,
|
||||||
CAST_FLAG_UNKNOWN_7 = 0x00000040,
|
CAST_FLAG_UNKNOWN_7 = 0x00000040,
|
||||||
CAST_FLAG_UNKNOWN_8 = 0x00000080,
|
CAST_FLAG_UNKNOWN_8 = 0x00000080,
|
||||||
CAST_FLAG_UNKNOWN_9 = 0x00000100,
|
CAST_FLAG_UNKNOWN_9 = 0x00000100,
|
||||||
@@ -55,16 +55,16 @@ enum SpellCastFlags
|
|||||||
CAST_FLAG_UNKNOWN_15 = 0x00004000,
|
CAST_FLAG_UNKNOWN_15 = 0x00004000,
|
||||||
CAST_FLAG_UNKNOWN_16 = 0x00008000,
|
CAST_FLAG_UNKNOWN_16 = 0x00008000,
|
||||||
CAST_FLAG_UNKNOWN_17 = 0x00010000,
|
CAST_FLAG_UNKNOWN_17 = 0x00010000,
|
||||||
CAST_FLAG_UNKNOWN_18 = 0x00020000,
|
CAST_FLAG_ADJUST_MISSILE = 0x00020000,
|
||||||
CAST_FLAG_UNKNOWN_19 = 0x00040000,
|
CAST_FLAG_UNKNOWN_19 = 0x00040000,
|
||||||
CAST_FLAG_UNKNOWN_20 = 0x00080000,
|
CAST_FLAG_VISUAL_CHAIN = 0x00080000,
|
||||||
CAST_FLAG_UNKNOWN_21 = 0x00100000,
|
CAST_FLAG_UNKNOWN_21 = 0x00100000,
|
||||||
CAST_FLAG_RUNE_LIST = 0x00200000,
|
CAST_FLAG_RUNE_LIST = 0x00200000,
|
||||||
CAST_FLAG_UNKNOWN_23 = 0x00400000,
|
CAST_FLAG_UNKNOWN_23 = 0x00400000,
|
||||||
CAST_FLAG_UNKNOWN_24 = 0x00800000,
|
CAST_FLAG_UNKNOWN_24 = 0x00800000,
|
||||||
CAST_FLAG_UNKNOWN_25 = 0x01000000,
|
CAST_FLAG_UNKNOWN_25 = 0x01000000,
|
||||||
CAST_FLAG_UNKNOWN_26 = 0x02000000,
|
CAST_FLAG_UNKNOWN_26 = 0x02000000,
|
||||||
CAST_FLAG_UNKNOWN_27 = 0x04000000,
|
CAST_FLAG_IMMUNITY = 0x04000000,
|
||||||
CAST_FLAG_UNKNOWN_28 = 0x08000000,
|
CAST_FLAG_UNKNOWN_28 = 0x08000000,
|
||||||
CAST_FLAG_UNKNOWN_29 = 0x10000000,
|
CAST_FLAG_UNKNOWN_29 = 0x10000000,
|
||||||
CAST_FLAG_UNKNOWN_30 = 0x20000000,
|
CAST_FLAG_UNKNOWN_30 = 0x20000000,
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ enum SpellCastTargetFlags
|
|||||||
TARGET_FLAG_UNIT_MINIPET = 0x00010000, // pguid, used to validate target (if non combat pet)
|
TARGET_FLAG_UNIT_MINIPET = 0x00010000, // pguid, used to validate target (if non combat pet)
|
||||||
TARGET_FLAG_GLYPH_SLOT = 0x00020000, // used in glyph spells
|
TARGET_FLAG_GLYPH_SLOT = 0x00020000, // used in glyph spells
|
||||||
TARGET_FLAG_DEST_TARGET = 0x00040000, // sometimes appears with DEST_TARGET spells (may appear or not for a given spell)
|
TARGET_FLAG_DEST_TARGET = 0x00040000, // sometimes appears with DEST_TARGET spells (may appear or not for a given spell)
|
||||||
TARGET_FLAG_UNUSED20 = 0x00080000, // uint32 counter, loop { vec3 - screen position (?), guid }, not used so far
|
TARGET_FLAG_EXTRA_TARGETS = 0x00080000, // uint32 counter, loop { vec3 - screen position (?), guid }, not used so far
|
||||||
TARGET_FLAG_UNIT_PASSENGER = 0x00100000, // guessed, used to validate target (if vehicle passenger)
|
TARGET_FLAG_UNIT_PASSENGER = 0x00100000, // guessed, used to validate target (if vehicle passenger)
|
||||||
|
|
||||||
TARGET_FLAG_UNIT_MASK = TARGET_FLAG_UNIT | TARGET_FLAG_UNIT_RAID | TARGET_FLAG_UNIT_PARTY
|
TARGET_FLAG_UNIT_MASK = TARGET_FLAG_UNIT | TARGET_FLAG_UNIT_RAID | TARGET_FLAG_UNIT_PARTY
|
||||||
|
|||||||
Reference in New Issue
Block a user