[0144] Enabled opcodes, most item-related. Enabled cooldown opcodes.

Signed-off-by: Yaki Khadafi <ElSolDolLo@gmail.com>
This commit is contained in:
Yaki Khadafi 2012-08-20 15:15:08 +03:00 committed by Antz
parent 1b2856f6f1
commit 1112b9f353
6 changed files with 83 additions and 69 deletions

View file

@ -303,7 +303,7 @@ void WorldSession::HandleReadItemOpcode(WorldPacket& recv_data)
DETAIL_LOG("STORAGE: Unable to read item");
_player->SendEquipError(msg, pItem, NULL);
}
data << ObjectGuid(pItem->GetObjectGuid());
data << pItem->GetObjectGuid();
SendPacket(&data);
}
else
@ -894,11 +894,10 @@ void WorldSession::HandleSetAmmoOpcode(WorldPacket& recv_data)
void WorldSession::SendEnchantmentLog(ObjectGuid targetGuid, ObjectGuid casterGuid, uint32 itemId, uint32 spellId)
{
WorldPacket data(SMSG_ENCHANTMENTLOG, (8 + 8 + 4 + 4 + 1)); // last check 2.0.10
data << ObjectGuid(targetGuid);
data << ObjectGuid(casterGuid);
data << targetGuid.WriteAsPacked();
data << casterGuid.WriteAsPacked();
data << uint32(itemId);
data << uint32(spellId);
data << uint8(0);
SendPacket(&data);
}
@ -932,7 +931,7 @@ void WorldSession::HandleWrapItemOpcode(WorldPacket& recv_data)
return;
}
// cheating: non-wrapper wrapper (all empty wrappers is stackable)
// cheating: non-wrapper wrapper (all empty wrappers are stackable)
if (!(gift->GetProto()->Flags & ITEM_FLAG_WRAPPER) || gift->GetMaxStackCount() == 1)
{
_player->SendEquipError(EQUIP_ERR_ITEM_NOT_FOUND, gift, NULL);

View file

@ -131,8 +131,6 @@ void InitializeOpcodes()
//OPCODE(SMSG_PET_NAME_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_GUILD_QUERY, STATUS_AUTHED, PROCESS_THREADUNSAFE, &WorldSession::HandleGuildQueryOpcode );
//OPCODE(SMSG_GUILD_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_ITEM_QUERY_MULTIPLE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(SMSG_ITEM_QUERY_MULTIPLE_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_PAGE_TEXT_QUERY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandlePageTextQueryOpcode );
//OPCODE(SMSG_PAGE_TEXT_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_QUEST_QUERY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQuestQueryOpcode );
@ -233,14 +231,14 @@ void InitializeOpcodes()
OPCODE(SMSG_UPDATE_OBJECT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_DESTROY_OBJECT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_USE_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleUseItemOpcode );
//OPCODE(CMSG_OPEN_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleOpenItemOpcode );
//OPCODE(CMSG_READ_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleReadItemOpcode );
//OPCODE(SMSG_READ_ITEM_OK, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_READ_ITEM_FAILED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_ITEM_COOLDOWN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_OPEN_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleOpenItemOpcode );
OPCODE(CMSG_READ_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleReadItemOpcode );
OPCODE(SMSG_READ_ITEM_OK, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_READ_ITEM_FAILED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_ITEM_COOLDOWN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_GAMEOBJ_USE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGameObjectUseOpcode );
//OPCODE(CMSG_DESTROY_ITEMS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(SMSG_GAMEOBJECT_CUSTOM_ANIM, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_GAMEOBJECT_CUSTOM_ANIM, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_AREATRIGGER, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAreaTriggerOpcode );
OPCODE(CMSG_MOVE_START_FORWARD, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
OPCODE(CMSG_MOVE_START_BACKWARD, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleMovementOpcodes );
@ -337,15 +335,15 @@ void InitializeOpcodes()
OPCODE(CMSG_AUTOSTORE_LOOT_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutostoreLootItemOpcode );
//OPCODE(CMSG_STORE_LOOT_IN_SLOT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
OPCODE(CMSG_AUTOEQUIP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoEquipItemOpcode );
//OPCODE(CMSG_AUTOSTORE_BAG_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoStoreBagItemOpcode );
//OPCODE(CMSG_SWAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSwapItem );
OPCODE(CMSG_AUTOSTORE_BAG_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoStoreBagItemOpcode );
OPCODE(CMSG_SWAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSwapItem );
OPCODE(CMSG_SWAP_INV_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSwapInvItemOpcode );
//OPCODE(CMSG_SPLIT_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSplitItemOpcode );
//OPCODE(CMSG_AUTOEQUIP_ITEM_SLOT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoEquipItemSlotOpcode );
OPCODE(CMSG_SPLIT_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSplitItemOpcode );
OPCODE(CMSG_AUTOEQUIP_ITEM_SLOT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoEquipItemSlotOpcode );
//OPCODE(CMSG_UNCLAIM_LICENSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(CMSG_DESTROYITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDestroyItemOpcode );
OPCODE(CMSG_DESTROYITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleDestroyItemOpcode );
OPCODE(SMSG_INVENTORY_CHANGE_FAILURE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_OPEN_CONTAINER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_OPEN_CONTAINER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_INSPECT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleInspectOpcode );
//OPCODE(SMSG_INSPECT_RESULTS_UPDATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_INITIATE_TRADE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleInitiateTradeOpcode );
@ -489,7 +487,6 @@ void InitializeOpcodes()
OPCODE(CMSG_SELL_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSellItemOpcode );
OPCODE(SMSG_SELL_ITEM, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_BUY_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleBuyItemOpcode );
//OPCODE(CMSG_BUY_ITEM_IN_SLOT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleBuyItemInSlotOpcode );
OPCODE(SMSG_BUY_ITEM, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_BUY_FAILED, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_TAXICLEARALLNODES, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
@ -537,18 +534,18 @@ void InitializeOpcodes()
//OPCODE(SMSG_LOG_XPGAIN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_AURACASTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_RECLAIM_CORPSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleReclaimCorpseOpcode );
//OPCODE(CMSG_WRAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWrapItemOpcode );
OPCODE(CMSG_WRAP_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleWrapItemOpcode );
OPCODE(SMSG_LEVELUP_INFO, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(MSG_MINIMAP_PING, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMinimapPingOpcode );
OPCODE(MSG_MINIMAP_PING, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMinimapPingOpcode );
//OPCODE(SMSG_RESISTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_ENCHANTMENTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_ENCHANTMENTLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_SET_SKILL_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
OPCODE(SMSG_START_MIRROR_TIMER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_PAUSE_MIRROR_TIMER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_STOP_MIRROR_TIMER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_PING, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_EarlyProccess );
OPCODE(SMSG_PONG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_CLEAR_COOLDOWN, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_CLEAR_COOLDOWNS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_GAMEOBJECT_PAGETEXT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_SETSHEATHED, STATUS_LOGGEDIN, PROCESS_INPLACE, &WorldSession::HandleSetSheathedOpcode );
//OPCODE(SMSG_COOLDOWN_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
@ -568,7 +565,7 @@ void InitializeOpcodes()
//OPCODE(MSG_TABARDVENDOR_ACTIVATE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleTabardVendorActivateOpcode);
OPCODE(SMSG_PLAY_SPELL_VISUAL, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_ZONEUPDATE, STATUS_LOGGEDIN, PROCESS_THREADSAFE, &WorldSession::HandleZoneUpdateOpcode );
//OPCODE(SMSG_PARTYKILLLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_PARTYKILLLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_COMPRESSED_UPDATE_OBJECT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_EXPLORATION_EXPERIENCE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_GM_SET_SECURITY_GROUP, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
@ -645,8 +642,8 @@ void InitializeOpcodes()
//OPCODE(CMSG_SET_VEHICLE_REC_ID_ACK, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_TAXICLEARNODE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(CMSG_TAXIENABLENODE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(CMSG_ITEM_TEXT_QUERY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleItemTextQuery );
//OPCODE(SMSG_ITEM_TEXT_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_ITEM_TEXT_QUERY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleItemTextQuery );
OPCODE(SMSG_ITEM_TEXT_QUERY_RESPONSE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_MAIL_TAKE_MONEY, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMailTakeMoney );
//OPCODE(CMSG_MAIL_TAKE_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMailTakeItem );
//OPCODE(CMSG_MAIL_MARK_AS_READ, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleMailMarkAsRead );
@ -708,8 +705,8 @@ void InitializeOpcodes()
//OPCODE(CMSG_REQUEST_PARTY_MEMBER_STATS, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRequestPartyMemberStatsOpcode);
//OPCODE(CMSG_GROUP_SWAP_SUB_GROUP, STATUS_UNHANDLED, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(CMSG_RESET_FACTION_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(CMSG_AUTOSTORE_BANK_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoStoreBankItemOpcode );
//OPCODE(CMSG_AUTOBANK_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoBankItemOpcode );
OPCODE(CMSG_AUTOSTORE_BANK_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoStoreBankItemOpcode );
OPCODE(CMSG_AUTOBANK_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleAutoBankItemOpcode );
//OPCODE(MSG_QUERY_NEXT_MAIL_TIME, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleQueryNextMailTime );
//OPCODE(SMSG_RECEIVED_MAIL, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_RAID_GROUP_ONLY, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
@ -731,7 +728,7 @@ void InitializeOpcodes()
//OPCODE(CMSG_LFG_GET_STATUS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(SMSG_SHOW_MAILBOX, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_RESET_RANGED_COMBAT_TIMER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_CHAT_NOT_IN_PARTY, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_CHAT_NOT_IN_PARTY, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_GMTICKETSYSTEM_TOGGLE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(CMSG_CANCEL_GROWTH_AURA, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleCancelGrowthAuraOpcode );
OPCODE(SMSG_CANCEL_AUTO_REPEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
@ -746,8 +743,8 @@ void InitializeOpcodes()
//OPCODE(SMSG_SET_FORCED_REACTIONS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_SPELL_FAILED_OTHER, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_GAMEOBJECT_RESET_STATE, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_REPAIR_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRepairItemOpcode );
//OPCODE(SMSG_CHAT_PLAYER_NOT_FOUND, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(CMSG_REPAIR_ITEM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleRepairItemOpcode );
OPCODE(SMSG_CHAT_PLAYER_NOT_FOUND, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(MSG_TALENT_WIPE_CONFIRM, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleTalentWipeConfirmOpcode );
//OPCODE(SMSG_SUMMON_REQUEST, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_SUMMON_RESPONSE, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleSummonResponseOpcode );
@ -877,7 +874,7 @@ void InitializeOpcodes()
//OPCODE(CMSG_GMSURVEY_SUBMIT, STATUS_LOGGEDIN, PROCESS_THREADUNSAFE, &WorldSession::HandleGMSurveySubmitOpcode );
//OPCODE(SMSG_UPDATE_INSTANCE_OWNERSHIP, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(CMSG_IGNORE_KNOCKBACK_CHEAT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
//OPCODE(SMSG_CHAT_PLAYER_AMBIGUOUS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
OPCODE(SMSG_CHAT_PLAYER_AMBIGUOUS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(MSG_DELAY_GHOST_TELEPORT, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_NULL );
OPCODE(SMSG_SPELLINSTAKILLLOG, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );
//OPCODE(SMSG_SPELL_UPDATE_CHAIN_TARGETS, STATUS_NEVER, PROCESS_INPLACE, &WorldSession::Handle_ServerSide );

View file

@ -125,8 +125,6 @@ enum Opcodes
SMSG_PET_NAME_QUERY_RESPONSE = 0x1054,
CMSG_GUILD_QUERY = 0x1055,
SMSG_GUILD_QUERY_RESPONSE = 0x1056,
CMSG_ITEM_QUERY_MULTIPLE = 0x1058,
SMSG_ITEM_QUERY_MULTIPLE_RESPONSE = 0x105A,
CMSG_PAGE_TEXT_QUERY = 0x105B,
SMSG_PAGE_TEXT_QUERY_RESPONSE = 0x105C,
CMSG_QUEST_QUERY = 0x0D06, // 4.3.4 15595
@ -227,11 +225,11 @@ enum Opcodes
SMSG_UPDATE_OBJECT = 0x4715, // 4.3.4 15595
SMSG_DESTROY_OBJECT = 0x4724, // 4.3.4 15595
CMSG_USE_ITEM = 0x2C06, // 4.3.4 15595
CMSG_OPEN_ITEM = 0x10AD,
CMSG_READ_ITEM = 0x10AE,
SMSG_READ_ITEM_OK = 0x10AF,
SMSG_READ_ITEM_FAILED = 0x10B0,
SMSG_ITEM_COOLDOWN = 0x10B1,
CMSG_OPEN_ITEM = 0x6A34, // 4.3.4 15595
CMSG_READ_ITEM = 0x2F16, // 4.3.4 15595
SMSG_READ_ITEM_OK = 0x2605, // 4.3.4 15595
SMSG_READ_ITEM_FAILED = 0x0F16, // 4.3.4 15595
SMSG_ITEM_COOLDOWN = 0x4D14, // 4.3.4 15595
CMSG_GAMEOBJ_USE = 0x4E17, // 4.3.4 15595
CMSG_DESTROY_ITEMS = 0x10B3,
SMSG_GAMEOBJECT_CUSTOM_ANIM = 0x10B4,
@ -322,15 +320,15 @@ enum Opcodes
CMSG_AUTOSTORE_LOOT_ITEM = 0x0E34, // 4.3.4 15595
CMSG_STORE_LOOT_IN_SLOT = 0x110A,
CMSG_AUTOEQUIP_ITEM = 0x4304, // 4.3.4 15595
CMSG_AUTOSTORE_BAG_ITEM = 0x110C,
CMSG_SWAP_ITEM = 0x110D,
CMSG_AUTOSTORE_BAG_ITEM = 0x0236, // 4.3.4 15595
CMSG_SWAP_ITEM = 0x6326, // 4.3.4 15595
CMSG_SWAP_INV_ITEM = 0x2614, // 4.3.4 15595
CMSG_SPLIT_ITEM = 0x110F,
CMSG_AUTOEQUIP_ITEM_SLOT = 0x1110,
CMSG_SPLIT_ITEM = 0x0F17, // 4.3.4 15595
CMSG_AUTOEQUIP_ITEM_SLOT = 0x4A17, // 4.3.4 15595
CMSG_UNCLAIM_LICENSE = 0x1111,
CMSG_DESTROYITEM = 0x1112,
CMSG_DESTROYITEM = 0x4A27, // 4.3.4 15595
SMSG_INVENTORY_CHANGE_FAILURE = 0x2236, // 4.3.4 15595
SMSG_OPEN_CONTAINER = 0x1114,
SMSG_OPEN_CONTAINER = 0x4714, // 4.3.4 15595
CMSG_INSPECT = 0x1115,
SMSG_INSPECT_RESULTS_UPDATE = 0x1116,
CMSG_INITIATE_TRADE = 0x1117,
@ -474,7 +472,6 @@ enum Opcodes
CMSG_SELL_ITEM = 0x4E15, // 4.3.4 15595
SMSG_SELL_ITEM = 0x6105, // 4.3.4 15595
CMSG_BUY_ITEM = 0x0736, // 4.3.4 15595
CMSG_BUY_ITEM_IN_SLOT = 0x11A4,
SMSG_BUY_ITEM = 0x0F26, // 4.3.4 15595
SMSG_BUY_FAILED = 0x6435, // 4.3.4 15595
CMSG_TAXICLEARALLNODES = 0x11A7,
@ -521,19 +518,19 @@ enum Opcodes
SMSG_QUERY_TIME_RESPONSE = 0x2124, // 4.3.4 15595
SMSG_LOG_XPGAIN = 0x11D1,
SMSG_AURACASTLOG = 0x11D2,
CMSG_RECLAIM_CORPSE = 0x4036, // 4.3.4 15595
CMSG_WRAP_ITEM = 0x11D4,
CMSG_RECLAIM_CORPSE = 0x4036, // 4.3.4 15595
CMSG_WRAP_ITEM = 0x4F06, // 4.3.4 15595
SMSG_LEVELUP_INFO = 0x0435, // 4.3.4 15595
MSG_MINIMAP_PING = 0x11D6,
MSG_MINIMAP_PING = 0x6635, // 4.3.4 15595
SMSG_RESISTLOG = 0x11D7,
SMSG_ENCHANTMENTLOG = 0x11D8,
SMSG_ENCHANTMENTLOG = 0x6035, // 4.3.4 15595
CMSG_SET_SKILL_CHEAT = 0x11D9,
SMSG_START_MIRROR_TIMER = 0x6824, // 4.3.4 15595
SMSG_PAUSE_MIRROR_TIMER = 0x4015, // 4.3.4 15595
SMSG_STOP_MIRROR_TIMER = 0x0B06, // 4.3.4 15595
CMSG_PING = 0x444D, // 4.3.4 15595
SMSG_PONG = 0x4D42, // 4.3.4 15595
SMSG_CLEAR_COOLDOWN = 0x11DF,
SMSG_CLEAR_COOLDOWNS = 0x59B4, // 4.3.4 15595
SMSG_GAMEOBJECT_PAGETEXT = 0x11E0,
CMSG_SETSHEATHED = 0x11E1,
SMSG_COOLDOWN_CHEAT = 0x11E2,
@ -553,7 +550,7 @@ enum Opcodes
MSG_TABARDVENDOR_ACTIVATE = 0x11F3,
SMSG_PLAY_SPELL_VISUAL = 0x55A5, // 4.3.4 15595
CMSG_ZONEUPDATE = 0x4F37, // 4.3.4 15595
SMSG_PARTYKILLLOG = 0x11F6,
SMSG_PARTYKILLLOG = 0x4937, // 4.3.4 15595
SMSG_COMPRESSED_UPDATE_OBJECT = 0x11F7,
SMSG_EXPLORATION_EXPERIENCE = 0x11F9,
CMSG_GM_SET_SECURITY_GROUP = 0x11FA,
@ -630,8 +627,8 @@ enum Opcodes
CMSG_SET_VEHICLE_REC_ID_ACK = 0x1241,
CMSG_TAXICLEARNODE = 0x1242,
CMSG_TAXIENABLENODE = 0x1243,
CMSG_ITEM_TEXT_QUERY = 0x1244,
SMSG_ITEM_TEXT_QUERY_RESPONSE = 0x1245,
CMSG_ITEM_TEXT_QUERY = 0x2406, // 4.3.4 15595
SMSG_ITEM_TEXT_QUERY_RESPONSE = 0x2725, // 4.3.4 15595
CMSG_MAIL_TAKE_MONEY = 0x1246,
CMSG_MAIL_TAKE_ITEM = 0x1247,
CMSG_MAIL_MARK_AS_READ = 0x1248,
@ -693,8 +690,8 @@ enum Opcodes
CMSG_REQUEST_PARTY_MEMBER_STATS = 0x1280,
CMSG_GROUP_SWAP_SUB_GROUP = 0x1281,
CMSG_RESET_FACTION_CHEAT = 0x1282,
CMSG_AUTOSTORE_BANK_ITEM = 0x1283,
CMSG_AUTOBANK_ITEM = 0x1284,
CMSG_AUTOSTORE_BANK_ITEM = 0x0607, // 4.3.4 15595
CMSG_AUTOBANK_ITEM = 0x2537, // 4.3.4 15595
MSG_QUERY_NEXT_MAIL_TIME = 0x0F04, // 4.3.4 15595
SMSG_RECEIVED_MAIL = 0x1286,
SMSG_RAID_GROUP_ONLY = 0x1287,
@ -716,7 +713,7 @@ enum Opcodes
CMSG_LFG_GET_STATUS = 0x1297,
SMSG_SHOW_MAILBOX = 0x1298,
SMSG_RESET_RANGED_COMBAT_TIMER = 0x1299,
SMSG_CHAT_NOT_IN_PARTY = 0x129A,
SMSG_CHAT_NOT_IN_PARTY = 0x6A14, // 4.3.4 15595
CMSG_GMTICKETSYSTEM_TOGGLE = 0x129B,
CMSG_CANCEL_GROWTH_AURA = 0x129C,
SMSG_CANCEL_AUTO_REPEAT = 0x6436, // 4.3.4 15595
@ -731,8 +728,8 @@ enum Opcodes
SMSG_SET_FORCED_REACTIONS = 0x12A6,
SMSG_SPELL_FAILED_OTHER = 0x4535, // 4.3.4 15595
SMSG_GAMEOBJECT_RESET_STATE = 0x12A8,
CMSG_REPAIR_ITEM = 0x12A9,
SMSG_CHAT_PLAYER_NOT_FOUND = 0x12AA,
CMSG_REPAIR_ITEM = 0x2917, // 4.3.4 15595
SMSG_CHAT_PLAYER_NOT_FOUND = 0x2526, // 4.3.4 15595
MSG_TALENT_WIPE_CONFIRM = 0x12AB,
SMSG_SUMMON_REQUEST = 0x12AC,
CMSG_SUMMON_RESPONSE = 0x12AD,
@ -862,7 +859,7 @@ enum Opcodes
CMSG_GMSURVEY_SUBMIT = 0x132B,
SMSG_UPDATE_INSTANCE_OWNERSHIP = 0x132C,
CMSG_IGNORE_KNOCKBACK_CHEAT = 0x132D,
SMSG_CHAT_PLAYER_AMBIGUOUS = 0x132E,
SMSG_CHAT_PLAYER_AMBIGUOUS = 0x2F34, // 4.3.4 15595
MSG_DELAY_GHOST_TELEPORT = 0x132F,
SMSG_SPELLINSTAKILLLOG = 0x6216, // 4.3.4 15595
SMSG_SPELL_UPDATE_CHAIN_TARGETS = 0x1331,
@ -1218,7 +1215,7 @@ enum Opcodes
SMSG_NOTIFY_DEST_LOC_SPELL_CAST = 0x148F,
CMSG_AUCTION_LIST_PENDING_SALES = 0x1490,
SMSG_AUCTION_LIST_PENDING_SALES = 0x1491,
SMSG_MODIFY_COOLDOWN = 0x1492,
SMSG_MODIFY_COOLDOWN = 0x6016, // 4.3.4 15595
SMSG_PET_UPDATE_COMBO_POINTS = 0x1493,
CMSG_ENABLETAXI = 0x1494,
SMSG_PRE_RESURRECT = 0x1495,

View file

@ -3659,8 +3659,21 @@ void Player::RemoveAllSpellCooldown()
{
if (!m_spellCooldowns.empty())
{
ObjectGuid guid = GetObjectGuid();
WorldPacket data(SMSG_CLEAR_COOLDOWNS, 1 + 8 + m_spellCooldowns.size() * 4);
data.WriteGuidMask<1, 3, 6>(guid);
data.WriteBits(m_spellCooldowns.size(), 24); // cooldown count
data.WriteGuidMask<7, 5, 2, 4, 0>(guid);
data.WriteGuidBytes<7, 2, 4, 5, 1, 3>(guid);
for (SpellCooldowns::const_iterator itr = m_spellCooldowns.begin(); itr != m_spellCooldowns.end(); ++itr)
SendClearCooldown(itr->first, this);
data << uint32(itr->first);
data.WriteGuidBytes<0, 6>(guid);
SendDirectMessage(&data);
m_spellCooldowns.clear();
}
@ -20646,7 +20659,7 @@ void Player::ApplyEquipCooldown(Item* pItem)
AddSpellCooldown(spellData.SpellId, pItem->GetEntry(), time(NULL) + 30);
WorldPacket data(SMSG_ITEM_COOLDOWN, 12);
data << ObjectGuid(pItem->GetObjectGuid());
data << pItem->GetObjectGuid();
data << uint32(spellData.SpellId);
GetSession()->SendPacket(&data);
}
@ -23220,9 +23233,17 @@ void Player::RemoveAtLoginFlag(AtLoginFlags f, bool in_db_also /*= false*/)
void Player::SendClearCooldown(uint32 spell_id, Unit* target)
{
WorldPacket data(SMSG_CLEAR_COOLDOWN, 4 + 8);
ObjectGuid guid = target->GetObjectGuid();
WorldPacket data(SMSG_CLEAR_COOLDOWNS, 1 + 8 + 4);
data.WriteGuidMask<1, 3, 6>(guid);
data.WriteBits(1, 24); // cooldown count
data.WriteGuidMask<7, 5, 2, 4, 0>(guid);
data.WriteGuidBytes<7, 2, 4, 5, 1, 3>(guid);
data << uint32(spell_id);
data << target->GetObjectGuid();
data.WriteGuidBytes<0, 6>(guid);
SendDirectMessage(&data);
}

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "0143"
#define REVISION_NR "0144"
#endif // __REVISION_NR_H__