Skip to content

Commit e7cc1b5

Browse files
committed
Add 5.5.0 CMSG handlers
CMSG_GAME_EVENT_DEBUG_ENABLE CMSG_GAME_EVENT_DEBUG_DISABLE CMSG_NEUTRAL_PLAYER_SELECT_FACTION CMSG_AREA_TRIGGER CMSG_PET_BATTLE_REQUEST_WILD CMSG_PET_BATTLE_REQUEST_PVP CMSG_PET_BATTLE_REQUEST_UPDATE CMSG_JOIN_PET_BATTLE_QUEUE CMSG_LEAVE_PET_BATTLE_QUEUE CMSG_BATTLE_PET_UPDATE_NOTIFY CMSG_BATTLE_PET_UPDATE_DISPLAY_NOTIFY CMSG_PET_BATTLE_QUIT_NOTIFY CMSG_PET_BATTLE_FINAL_NOTIFY CMSG_PET_BATTLE_SCRIPT_ERROR_NOTIFY CMSG_CAGE_BATTLE_PET CMSG_ADVENTURE_JOURNAL_OPEN_QUEST CMSG_RESET_CHALLENGE_MODE CMSG_REQUEST_MYTHIC_PLUS_AFFIXES CMSG_REQUEST_MYTHIC_PLUS_SEASON_DATA CMSG_ASSIGN_EQUIPMENT_SET_SPEC CMSG_CONFIRM_RESPEC_WIPE CMSG_CONFIRM_BARBERS_CHOICE CMSG_LOOT_UNIT CMSG_LOOT_MONEY CMSG_LOOT_ITEM CMSG_MASTER_LOOT_ITEM CMSG_LOOT_RELEASE CMSG_LOOT_ROLL CMSG_SCENE_PLAYBACK_COMPLETE CMSG_SCENE_PLAYBACK_CANCELED CMSG_SCENE_TRIGGER_EVENT
1 parent ece9b7b commit e7cc1b5

File tree

11 files changed

+151
-3
lines changed

11 files changed

+151
-3
lines changed

WowPacketParserModule.V5_5_0_61735/Parsers/AdventureMapHandler.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,10 @@ public static void HandleAdventureJournalDataResponse(Packet packet)
2828
for (var i = 0u; i < entryCount; ++i)
2929
ReadAdventureJournalEntry(packet, "AdventureJournalEntry", i);
3030
}
31+
32+
[Parser(Opcode.CMSG_ADVENTURE_JOURNAL_OPEN_QUEST)]
33+
public static void HandleAdventureZero(Packet packet)
34+
{
35+
}
3136
}
3237
}

WowPacketParserModule.V5_5_0_61735/Parsers/AreaTriggerHandler.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,17 @@ public static void HandleAreaTriggerMessage(Packet packet)
201201
packet.ReadUInt32("MessageID");
202202
}
203203

204+
[Parser(Opcode.CMSG_AREA_TRIGGER)]
205+
public static void HandleClientAreaTrigger(Packet packet)
206+
{
207+
var entry = packet.ReadEntry("AreaTriggerID");
208+
var entered = packet.ReadBit("Entered");
209+
packet.ReadBit("FromClient");
210+
211+
packet.AddSniffData(StoreNameType.AreaTrigger, entry.Key, "AREATRIGGER");
212+
packet.Holder.ClientAreaTrigger = new() { Enter = entered, AreaTrigger = (uint)entry.Key };
213+
}
214+
204215
[Parser(Opcode.SMSG_AREA_TRIGGER_NO_CORPSE)]
205216
public static void HandleAreaTriggerNull(Packet packet)
206217
{

WowPacketParserModule.V5_5_0_61735/Parsers/BattlePetHandler.cs

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,9 @@ public static void HandleBattlePetJournal(Packet packet)
363363
[Parser(Opcode.SMSG_BATTLE_PET_DELETED)]
364364
[Parser(Opcode.SMSG_BATTLE_PET_REVOKED)]
365365
[Parser(Opcode.SMSG_BATTLE_PET_RESTORED)]
366+
[Parser(Opcode.CMSG_BATTLE_PET_CLEAR_FANFARE)]
367+
[Parser(Opcode.CMSG_BATTLE_PET_UPDATE_NOTIFY)]
368+
[Parser(Opcode.CMSG_CAGE_BATTLE_PET)]
366369
public static void HandleBattlePetDeletePet(Packet packet)
367370
{
368371
packet.ReadPackedGuid128("BattlePetGUID");
@@ -443,10 +446,31 @@ public static void HandlePetBattleQueueStatus(Packet packet)
443446
packet.ReadUInt64("AverageWaitTime");
444447
}
445448

446-
[Parser(Opcode.CMSG_BATTLE_PET_CLEAR_FANFARE)]
447-
public static void HandleBattlePetClearFanfare(Packet packet)
449+
[Parser(Opcode.CMSG_PET_BATTLE_REQUEST_WILD)]
450+
public static void HandlePetBattleRequestWild(Packet packet)
448451
{
449-
packet.ReadPackedGuid128("BattlePetGUID");
452+
packet.ReadPackedGuid128("TargetGUID");
453+
ReadPetBattleLocations(packet, "Location");
454+
}
455+
456+
[Parser(Opcode.CMSG_PET_BATTLE_REQUEST_PVP)]
457+
public static void HandlePetBattleRequestPVP(Packet packet)
458+
{
459+
packet.ReadPackedGuid128("TargetGUID");
460+
ReadPetBattleLocations(packet, "OpponentCharacterID");
461+
}
462+
463+
[Parser(Opcode.CMSG_PET_BATTLE_REQUEST_UPDATE)]
464+
public static void HandlePetBattleRequestUpdate(Packet packet)
465+
{
466+
packet.ReadPackedGuid128("TargetGUID");
467+
packet.ReadBit("Canceled");
468+
}
469+
470+
[Parser(Opcode.CMSG_LEAVE_PET_BATTLE_QUEUE)]
471+
public static void HandleLeavePetBattleQueue(Packet packet)
472+
{
473+
LfgHandler.ReadCliRideTicket(packet, "RideTicket");
450474
}
451475

452476
[Parser(Opcode.SMSG_BATTLE_PET_JOURNAL_LOCK_ACQUIRED)]
@@ -455,6 +479,11 @@ public static void HandleBattlePetClearFanfare(Packet packet)
455479
[Parser(Opcode.SMSG_PET_BATTLE_FINISHED)]
456480
[Parser(Opcode.SMSG_PET_BATTLE_CHAT_RESTRICTED)]
457481
[Parser(Opcode.SMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH)]
482+
[Parser(Opcode.CMSG_JOIN_PET_BATTLE_QUEUE)]
483+
[Parser(Opcode.CMSG_BATTLE_PET_UPDATE_DISPLAY_NOTIFY)]
484+
[Parser(Opcode.CMSG_PET_BATTLE_QUIT_NOTIFY)]
485+
[Parser(Opcode.CMSG_PET_BATTLE_FINAL_NOTIFY)]
486+
[Parser(Opcode.CMSG_PET_BATTLE_SCRIPT_ERROR_NOTIFY)]
458487
public static void HandleBattlePetZero(Packet packet)
459488
{
460489
}

WowPacketParserModule.V5_5_0_61735/Parsers/ChallengeModeHandler.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,5 +53,10 @@ public static void HandleChallengeModeRequestLeadersResult(Packet packet)
5353
for (int i = 0; i < int9; i++)
5454
ReadChallengeModeAttempt(packet, i, "RealmLeaders");
5555
}
56+
57+
[Parser(Opcode.CMSG_RESET_CHALLENGE_MODE)]
58+
public static void HandleChallengeModeZero(Packet packet)
59+
{
60+
}
5661
}
5762
}

WowPacketParserModule.V5_5_0_61735/Parsers/CharacterHandler.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,8 +709,15 @@ public static void HandleUnlearnSpecialization(Packet packet)
709709
packet.ReadByte("SpecIndex");
710710
}
711711

712+
[Parser(Opcode.CMSG_NEUTRAL_PLAYER_SELECT_FACTION)]
713+
public static void HandleNeutralPlayerSelectFaction(Packet packet)
714+
{
715+
packet.ReadByte("Faction");
716+
}
717+
712718
[Parser(Opcode.SMSG_PLAYER_CHOICE_CLEAR)]
713719
[Parser(Opcode.SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI)]
720+
[Parser(Opcode.CMSG_CONFIRM_BARBERS_CHOICE)]
714721
public static void HandleCharacterEmpty(Packet packet)
715722
{
716723
}

WowPacketParserModule.V5_5_0_61735/Parsers/EquipmentSetHandler.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,5 +62,12 @@ public static void HandleUseEquipmentSetResult(Packet packet)
6262
packet.ReadInt32("Reason");
6363
packet.ReadUInt64("Guid");
6464
}
65+
66+
[Parser(Opcode.CMSG_ASSIGN_EQUIPMENT_SET_SPEC)]
67+
public static void HandleAssignEquipmentSetSpec(Packet packet)
68+
{
69+
packet.ReadUInt64("Guid");
70+
packet.ReadInt32("SpecID");
71+
}
6572
}
6673
}

WowPacketParserModule.V5_5_0_61735/Parsers/LootHandler.cs

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,59 @@ public static void HandleLegacyLootRules(Packet packet)
187187
packet.ReadBit("LegacyRulesActive");
188188
}
189189

190+
[Parser(Opcode.CMSG_LOOT_UNIT)]
191+
public static void HandleLoot(Packet packet)
192+
{
193+
packet.ReadPackedGuid128("Unit");
194+
}
195+
196+
[Parser(Opcode.CMSG_LOOT_MONEY)]
197+
public static void HandleLootMoney(Packet packet)
198+
{
199+
packet.ReadBit("IsSoftInteract");
200+
}
201+
202+
[Parser(Opcode.CMSG_LOOT_ITEM)]
203+
public static void HandleAutoStoreLootItem(Packet packet)
204+
{
205+
var count = packet.ReadUInt32("Count");
206+
207+
for (var i = 0; i < count; ++i)
208+
{
209+
packet.ReadPackedGuid128("Object", i);
210+
packet.ReadByte("LootListID", i);
211+
}
212+
213+
packet.ReadBit("IsSoftInteract");
214+
}
215+
216+
[Parser(Opcode.CMSG_MASTER_LOOT_ITEM)]
217+
public static void HandleMasterLootItem(Packet packet)
218+
{
219+
var count = packet.ReadUInt32("Count");
220+
packet.ReadPackedGuid128("Target");
221+
222+
for (var i = 0; i < count; ++i)
223+
{
224+
packet.ReadPackedGuid128("Object", i);
225+
packet.ReadByte("LootListID", i);
226+
}
227+
}
228+
229+
[Parser(Opcode.CMSG_LOOT_RELEASE)]
230+
public static void HandleLootRelease(Packet packet)
231+
{
232+
packet.ReadPackedGuid128("ObjectGUID");
233+
}
234+
235+
[Parser(Opcode.CMSG_LOOT_ROLL)]
236+
public static void HandleLootRoll(Packet packet)
237+
{
238+
packet.ReadPackedGuid128("LootObj");
239+
packet.ReadByte("LootListID");
240+
packet.ReadByteE<LootRollType>("RollType");
241+
}
242+
190243
[Parser(Opcode.SMSG_AE_LOOT_TARGET_ACK)]
191244
[Parser(Opcode.SMSG_LOOT_RELEASE_ALL)]
192245
public static void HandleLootZero(Packet packet)

WowPacketParserModule.V5_5_0_61735/Parsers/MiscellaneousHandler.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -965,6 +965,8 @@ public static void HandleQueryCountdownTimer(Packet packet)
965965
[Parser(Opcode.SMSG_INVALID_PROMOTION_CODE)]
966966
[Parser(Opcode.CMSG_REQUEST_CEMETERY_LIST)]
967967
[Parser(Opcode.CMSG_USED_FOLLOW)]
968+
[Parser(Opcode.CMSG_GAME_EVENT_DEBUG_ENABLE)]
969+
[Parser(Opcode.CMSG_GAME_EVENT_DEBUG_DISABLE)]
968970
public static void HandleMiscZero(Packet packet)
969971
{
970972
}

WowPacketParserModule.V5_5_0_61735/Parsers/MythicPlusHandler.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,5 +115,11 @@ public static void HandleMythicPlusRequestMapStats(Packet packet)
115115
packet.ReadPackedGuid128("BnetAccountGUID");
116116
packet.ReadUInt64("GuildClubMemberID");
117117
}
118+
119+
[Parser(Opcode.CMSG_REQUEST_MYTHIC_PLUS_AFFIXES)]
120+
[Parser(Opcode.CMSG_REQUEST_MYTHIC_PLUS_SEASON_DATA)]
121+
public static void HandleMythicPlusZero(Packet packet)
122+
{
123+
}
118124
}
119125
}

WowPacketParserModule.V5_5_0_61735/Parsers/SceneHandler.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,5 +63,21 @@ public static void HandleMiscScene(Packet packet)
6363
{
6464
packet.ReadUInt32("SceneInstanceID");
6565
}
66+
67+
[Parser(Opcode.CMSG_SCENE_PLAYBACK_CANCELED)]
68+
[Parser(Opcode.CMSG_SCENE_PLAYBACK_COMPLETE)]
69+
public static void HandlScenePlaybackCanceled(Packet packet)
70+
{
71+
packet.ReadUInt32("SceneInstanceID");
72+
packet.ReadUInt32("TimePassed");
73+
}
74+
75+
[Parser(Opcode.CMSG_SCENE_TRIGGER_EVENT)]
76+
public static void HandleSceneTriggerEvent(Packet packet)
77+
{
78+
var len = packet.ReadBits(6);
79+
packet.ReadUInt32("SceneInstanceID");
80+
packet.ReadWoWString("Event", len);
81+
}
6682
}
6783
}

0 commit comments

Comments
 (0)