Skip to content

Commit 4a882b9

Browse files
committed
Add room rotate and update response
1 parent dfbd8c0 commit 4a882b9

File tree

3 files changed

+67
-49
lines changed

3 files changed

+67
-49
lines changed

WowPacketParser/Enums/Opcode.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2474,11 +2474,13 @@ public enum Opcode
24742474
SMSG_HEALTH_UPDATE,
24752475
SMSG_HIGHEST_THREAT_UPDATE,
24762476
SMSG_HOUSING_CURRENT_HOUSE_INFO_RESPONSE,
2477+
SMSG_HOUSING_DECOR_SELECT_DECOR_RESPONSE,
24772478
SMSG_HOUSING_DECOR_SET_EDITOR_MODE_ACTIVE_RESPONSE,
24782479
SMSG_HOUSING_EXTERIOR_SET_EXTERIOR_LOCK_STATE,
24792480
SMSG_HOUSING_FIXTURE_SET_EDITOR_MODE_ACTIVE_RESPONSE,
24802481
SMSG_HOUSING_ROOM_REMOVE_ROOM_RESPONSE,
24812482
SMSG_HOUSING_ROOM_SET_EDITOR_MODE_ACTIVE_RESPONSE,
2483+
SMSG_HOUSING_ROOM_UPDATE_RESULT,
24822484
SMSG_HOTFIX_CONNECT,
24832485
SMSG_HOTFIX_MESSAGE,
24842486
SMSG_HOTFIX_NOTIFY,

WowPacketParser/Enums/Version/V11_2_7_64632/Opcodes.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1536,11 +1536,13 @@ public static BiDictionary<Opcode, int> Opcodes(Direction direction)
15361536
{ Opcode.SMSG_HEALTH_UPDATE, 0x400174 },
15371537
{ Opcode.SMSG_HIGHEST_THREAT_UPDATE, 0x40017C },
15381538
{ Opcode.SMSG_HOUSING_CURRENT_HOUSE_INFO_RESPONSE, 0x530001 },
1539+
{ Opcode.SMSG_HOUSING_DECOR_SELECT_DECOR_RESPONSE, 0x4F0004 },
15391540
{ Opcode.SMSG_HOUSING_DECOR_SET_EDITOR_MODE_ACTIVE_RESPONSE, 0x4F0000 },
15401541
{ Opcode.SMSG_HOUSING_EXTERIOR_SET_EXTERIOR_LOCK_STATE, 0x4E0000 },
15411542
{ Opcode.SMSG_HOUSING_FIXTURE_SET_EDITOR_MODE_ACTIVE_RESPONSE, 0x500000 },
15421543
{ Opcode.SMSG_HOUSING_ROOM_REMOVE_ROOM_RESPONSE, 0x510002 },
15431544
{ Opcode.SMSG_HOUSING_ROOM_SET_EDITOR_MODE_ACTIVE_RESPONSE, 0x510000 },
1545+
{ Opcode.SMSG_HOUSING_ROOM_UPDATE_RESULT, 0x510003 },
15441546
{ Opcode.SMSG_HOTFIX_CONNECT, 0x440003 },
15451547
{ Opcode.SMSG_HOTFIX_MESSAGE, 0x440002 },
15461548
{ Opcode.SMSG_INITIALIZE_FACTIONS, 0x4001C5 },

WowPacketParserModule.V11_0_0_55666/Parsers/HousingHandler.cs

Lines changed: 63 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,23 @@ namespace WowPacketParserModule.V11_0_0_55666.Parsers
66
{
77
public static class HousingHandler
88
{
9-
[Parser(Opcode.CMSG_HOUSING_DECOR_SET_EDITOR_MODE_ACTIVE)]
10-
[Parser(Opcode.CMSG_HOUSING_FIXTURE_SET_EDITOR_MODE_ACTIVE)]
11-
[Parser(Opcode.CMSG_HOUSING_ROOM_SET_EDITOR_MODE_ACTIVE)]
12-
public static void HandleHousingSetEditorModeActive(Packet packet)
9+
[Parser(Opcode.SMSG_HOUSING_FIXTURE_SET_EDITOR_MODE_ACTIVE_RESPONSE)]
10+
public static void HandleHousingFixtureSetEditorModeActiveResponse(Packet packet)
1311
{
14-
packet.ReadBool("Active");
12+
packet.ReadPackedGuid128("HouseGUID");
13+
packet.ReadPackedGuid128("BNetAccountGUID");
14+
packet.ReadByteE<HousingResult>("Result");
1515
}
1616

17+
[Parser(Opcode.SMSG_HOUSING_EXTERIOR_SET_EXTERIOR_LOCK_STATE)]
18+
public static void HandleHousingExteriorLockHouseExterior(Packet packet)
19+
{
20+
packet.ReadPackedGuid128("HouseGUID");
21+
packet.ReadPackedGuid128("PlayerGUID");
22+
packet.ReadByteE<HousingResult>("Result");
23+
packet.ReadBit("IsLocked");
24+
}
25+
1726
[Parser(Opcode.SMSG_HOUSING_DECOR_SET_EDITOR_MODE_ACTIVE_RESPONSE)]
1827
public static void HandleHousingDecorSetEditorModeActiveResponse(Packet packet)
1928
{
@@ -25,42 +34,43 @@ public static void HandleHousingDecorSetEditorModeActiveResponse(Packet packet)
2534
for (var i = 0; i < allowedEditorCount; ++i)
2635
packet.ReadPackedGuid128("AllowedEditor", i);
2736
}
28-
29-
[Parser(Opcode.SMSG_HOUSING_FIXTURE_SET_EDITOR_MODE_ACTIVE_RESPONSE)]
30-
public static void HandleHousingFixtureSetEditorModeActiveResponse(Packet packet)
37+
38+
[Parser(Opcode.CMSG_HOUSING_DECOR_SELECT_DECOR)]
39+
public static void HousingDecorSelect(Packet packet)
3140
{
32-
packet.ReadPackedGuid128("HouseGUID");
33-
packet.ReadPackedGuid128("BNetAccountGUID");
34-
packet.ReadByteE<HousingResult>("Result");
41+
packet.ReadPackedGuid128("DecorGUID");
42+
packet.ReadBool("Selected");
3543
}
36-
37-
[Parser(Opcode.SMSG_HOUSING_ROOM_SET_EDITOR_MODE_ACTIVE_RESPONSE)]
38-
public static void HandleHousingRoomSetEditorModeActiveResponse(Packet packet)
44+
45+
[Parser(Opcode.CMSG_HOUSING_DECOR_START_PLACING_NEW_DECOR)]
46+
public static void HousingDecorStartPlacing(Packet packet)
3947
{
40-
packet.ReadPackedGuid128("HouseGUID");
41-
packet.ReadByteE<HousingResult>("Result");
42-
packet.ReadBool("Active");
48+
packet.ReadUInt32("DecorID");
49+
packet.ReadUInt32("Field_4");
4350
}
4451

45-
[Parser(Opcode.SMSG_HOUSING_EXTERIOR_SET_EXTERIOR_LOCK_STATE)]
46-
public static void HandleHousingExteriorLockHouseExterior(Packet packet)
52+
[Parser(Opcode.CMSG_HOUSING_DECOR_REMOVE_PLACED_DECOR_ENTRY)]
53+
public static void HousingDecorRemovePlacedEntry(Packet packet)
4754
{
48-
packet.ReadPackedGuid128("HouseGUID");
49-
packet.ReadPackedGuid128("PlayerGUID");
50-
packet.ReadByteE<HousingResult>("Result");
51-
packet.ReadBit("IsLocked");
55+
packet.ReadPackedGuid128("DecorGUID");
5256
}
5357

54-
[Parser(Opcode.SMSG_HOUSING_CURRENT_HOUSE_INFO_RESPONSE)]
55-
public static void HandleHousingCurrentHouseInfoResponse(Packet packet)
58+
[Parser(Opcode.CMSG_HOUSING_DECOR_COMMIT_DYES_FOR_SELECTED_DECOR)]
59+
public static void HousingDecorCommitDyesForSelection(Packet packet)
60+
{
61+
packet.ReadPackedGuid128("DecorGUID");
62+
for (var i = 0; i < 3; ++i)
63+
{
64+
packet.ReadInt32("DyeColorID", i);
65+
}
66+
}
67+
68+
[Parser(Opcode.SMSG_HOUSING_ROOM_SET_EDITOR_MODE_ACTIVE_RESPONSE)]
69+
public static void HandleHousingRoomSetEditorModeActiveResponse(Packet packet)
5670
{
5771
packet.ReadPackedGuid128("HouseGUID");
58-
packet.ReadPackedGuid128("PlayerGUID");
59-
packet.ReadPackedGuid128("NeighborhoodGUID");
60-
packet.ReadUInt32("Unk0");
61-
packet.ReadByte("Unk1");
62-
packet.ReadByte("Unk2");
63-
packet.ReadByte("Unk3");
72+
packet.ReadByteE<HousingResult>("Result");
73+
packet.ReadBool("Active");
6474
}
6575

6676
[Parser(Opcode.CMSG_HOUSING_ROOM_REMOVE_ROOM)]
@@ -77,34 +87,38 @@ public static void HandleHousingRemoveRoomResponse(Packet packet)
7787
packet.ReadByteE<HousingResult>("Result");
7888
}
7989

80-
[Parser(Opcode.CMSG_HOUSING_DECOR_SELECT_DECOR)]
81-
public static void HousingDecorSelect(Packet packet)
90+
[Parser(Opcode.CMSG_HOUSING_ROOM_ROTATE_ROOM)]
91+
public static void HousingRoomRotate(Packet packet)
8292
{
83-
packet.ReadPackedGuid128("DecorGUID");
84-
packet.ReadBool("Selected");
93+
packet.ReadPackedGuid128("RoomGUID");
94+
packet.ReadBool("IsLeft");
8595
}
8696

87-
[Parser(Opcode.CMSG_HOUSING_DECOR_START_PLACING_NEW_DECOR)]
88-
public static void HousingDecorStartPlacing(Packet packet)
97+
[Parser(Opcode.SMSG_HOUSING_ROOM_UPDATE_RESULT)]
98+
public static void HousingRoomUpdateResult(Packet packet)
8999
{
90-
packet.ReadUInt32("DecorID");
91-
packet.ReadUInt32("Field_4");
100+
packet.ReadPackedGuid128("RoomGUID");
101+
packet.ReadByteE<HousingResult>("Result");
92102
}
93103

94-
[Parser(Opcode.CMSG_HOUSING_DECOR_REMOVE_PLACED_DECOR_ENTRY)]
95-
public static void HousingDecorRemovePlacedEntry(Packet packet)
104+
[Parser(Opcode.CMSG_HOUSING_DECOR_SET_EDITOR_MODE_ACTIVE)]
105+
[Parser(Opcode.CMSG_HOUSING_FIXTURE_SET_EDITOR_MODE_ACTIVE)]
106+
[Parser(Opcode.CMSG_HOUSING_ROOM_SET_EDITOR_MODE_ACTIVE)]
107+
public static void HandleHousingSetEditorModeActive(Packet packet)
96108
{
97-
packet.ReadPackedGuid128("DecorGUID");
109+
packet.ReadBool("Active");
98110
}
99111

100-
[Parser(Opcode.CMSG_HOUSING_DECOR_COMMIT_DYES_FOR_SELECTED_DECOR)]
101-
public static void HousingDecorCommitDyesForSelection(Packet packet)
112+
[Parser(Opcode.SMSG_HOUSING_CURRENT_HOUSE_INFO_RESPONSE)]
113+
public static void HandleHousingCurrentHouseInfoResponse(Packet packet)
102114
{
103-
packet.ReadPackedGuid128("DecorGUID");
104-
for (var i = 0; i < 3; ++i)
105-
{
106-
packet.ReadInt32("DyeColorID", i);
107-
}
115+
packet.ReadPackedGuid128("HouseGUID");
116+
packet.ReadPackedGuid128("PlayerGUID");
117+
packet.ReadPackedGuid128("NeighborhoodGUID");
118+
packet.ReadUInt32("Unk0");
119+
packet.ReadByte("Unk1");
120+
packet.ReadByte("Unk2");
121+
packet.ReadByte("Unk3");
108122
}
109123

110124
[Parser(Opcode.CMSG_HOUSE_INTERIOR_LEAVE_HOUSE)]

0 commit comments

Comments
 (0)