Skip to content

Commit 66cfa50

Browse files
committed
Add missing packet parsers and serializer updates
1 parent 12ee757 commit 66cfa50

10 files changed

Lines changed: 99 additions & 6 deletions
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
using Turbo.Primitives.Messages.Incoming.Quest;
2+
using Turbo.Primitives.Networking;
3+
using Turbo.Primitives.Packets;
4+
5+
namespace TurboSamplePlugin.Revision.Revision20260112.Parsers.Quest;
6+
7+
internal class GetDailyTasksMessageParser : IParser
8+
{
9+
public IMessageEvent Parse(IClientPacket packet) => new GetDailyTasksMessage();
10+
}
11+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
using Turbo.Primitives.Messages.Incoming.Room.Engine;
2+
using Turbo.Primitives.Networking;
3+
using Turbo.Primitives.Packets;
4+
5+
namespace TurboSamplePlugin.Revision.Revision20260112.Parsers.Room.Engine;
6+
7+
internal class ClickCharacterMessageParser : IParser
8+
{
9+
public IMessageEvent Parse(IClientPacket packet) =>
10+
new ClickCharacterMessage { UserId = packet.PopInt() };
11+
}
12+
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
using Turbo.Primitives.Messages.Incoming.Users;
2+
using Turbo.Primitives.Networking;
3+
using Turbo.Primitives.Packets;
4+
5+
namespace TurboSamplePlugin.Revision.Revision20260112.Parsers.Users;
6+
7+
internal class BlockListInitMessageParser : IParser
8+
{
9+
public IMessageEvent Parse(IClientPacket packet) => new BlockListInitMessage();
10+
}
11+

TurboSamplePlugin/Revision/Revision20260112/Revision20260112.cs

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using Turbo.Primitives.Messages.Outgoing.Catalog;
1010
using Turbo.Primitives.Messages.Outgoing.Collectibles;
1111
using Turbo.Primitives.Messages.Outgoing.FriendList;
12+
using Turbo.Primitives.Messages.Outgoing.Groupforums;
1213
using Turbo.Primitives.Messages.Outgoing.Handshake;
1314
using Turbo.Primitives.Messages.Outgoing.Inventory.Achievements;
1415
using Turbo.Primitives.Messages.Outgoing.Inventory.Avatareffect;
@@ -22,7 +23,9 @@
2223
using Turbo.Primitives.Messages.Outgoing.Mysterybox;
2324
using Turbo.Primitives.Messages.Outgoing.Navigator;
2425
using Turbo.Primitives.Messages.Outgoing.NewNavigator;
26+
using Turbo.Primitives.Messages.Outgoing.Nft;
2527
using Turbo.Primitives.Messages.Outgoing.Notifications;
28+
using Turbo.Primitives.Messages.Outgoing.Perk;
2629
using Turbo.Primitives.Messages.Outgoing.Preferences;
2730
using Turbo.Primitives.Messages.Outgoing.Room.Action;
2831
using Turbo.Primitives.Messages.Outgoing.Room.Bots;
@@ -110,6 +113,7 @@
110113
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Catalog;
111114
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Collectibles;
112115
using TurboSamplePlugin.Revision.Revision20260112.Serializers.FriendList;
116+
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Groupforums;
113117
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Handshake;
114118
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Inventory.Achievements;
115119
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Inventory.Avatareffect;
@@ -123,7 +127,9 @@
123127
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Mysterybox;
124128
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Navigator;
125129
using TurboSamplePlugin.Revision.Revision20260112.Serializers.NewNavigator;
130+
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Nft;
126131
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Notifications;
132+
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Perk;
127133
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Preferences;
128134
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Room.Action;
129135
using TurboSamplePlugin.Revision.Revision20260112.Serializers.Room.Bots;
@@ -946,6 +952,7 @@ public class Revision20260112 : IRevision
946952
MessageEvent.GetConcurrentUsersRewardMessageEvent,
947953
new GetConcurrentUsersRewardMessageParser()
948954
},
955+
{ MessageEvent.GetDailyTasksEvent, new GetDailyTasksMessageParser() },
949956
{ MessageEvent.GetDailyQuestMessageEvent, new GetDailyQuestMessageParser() },
950957
{ MessageEvent.GetQuestsMessageEvent, new GetQuestsMessageParser() },
951958
{
@@ -1013,6 +1020,7 @@ public class Revision20260112 : IRevision
10131020
#endregion
10141021

10151022
#region Room Engine
1023+
{ MessageEvent.ClickCharacterEvent, new ClickCharacterMessageParser() },
10161024
{ MessageEvent.ClickFurniMessageEvent, new ClickFurniMessageParser() },
10171025
{
10181026
MessageEvent.GetFurnitureAliasesMessageEvent,
@@ -1329,6 +1337,7 @@ public class Revision20260112 : IRevision
13291337
MessageEvent.GetHabboGroupDetailsMessageEvent,
13301338
new GetHabboGroupDetailsMessageParser()
13311339
},
1340+
{ MessageEvent.BlockListInitEvent, new BlockListInitMessageParser() },
13321341
{ MessageEvent.GetIgnoredUsersMessageEvent, new GetIgnoredUsersMessageParser() },
13331342
{
13341343
MessageEvent.GetMemberGuildItemCountMessageEvent,
@@ -1779,6 +1788,12 @@ public class Revision20260112 : IRevision
17791788
MessageComposer.SilverBalanceMessageComposer
17801789
)
17811790
},
1791+
{
1792+
typeof(UserNftChatStylesMessageComposer),
1793+
new UserNftChatStylesMessageComposerSerializer(
1794+
MessageComposer.UserNftChatStylesMessageComposer
1795+
)
1796+
},
17821797
#endregion
17831798

17841799
#region FriendList
@@ -1860,6 +1875,15 @@ public class Revision20260112 : IRevision
18601875
},
18611876
#endregion
18621877

1878+
#region Groupforums
1879+
{
1880+
typeof(UnreadForumsCountMessageComposer),
1881+
new UnreadForumsCountMessageComposerSerializer(
1882+
MessageComposer.UnreadForumsCountMessageComposer
1883+
)
1884+
},
1885+
#endregion
1886+
18631887
#region Inventory
18641888

18651889
#region Inventory Achievements
@@ -2428,6 +2452,15 @@ public class Revision20260112 : IRevision
24282452
},
24292453
#endregion
24302454

2455+
#region Perk
2456+
{
2457+
typeof(PerkAllowancesMessageComposer),
2458+
new PerkAllowancesMessageComposerSerializer(
2459+
MessageComposer.PerkAllowancesMessageComposer
2460+
)
2461+
},
2462+
#endregion
2463+
24312464
#region Preferences
24322465
{
24332466
typeof(AccountPreferencesEventMessageComposer),
@@ -3123,6 +3156,12 @@ public class Revision20260112 : IRevision
31233156
MessageComposer.ExtendedProfileChangedMessageComposer
31243157
)
31253158
},
3159+
{
3160+
typeof(IgnoredUsersMessageComposer),
3161+
new IgnoredUsersMessageComposerSerializer(
3162+
MessageComposer.IgnoredUsersMessageComposer
3163+
)
3164+
},
31263165
{
31273166
typeof(ScrSendUserInfoMessageComposer),
31283167
new ScrSendUserInfoMessageSerializer(MessageComposer.ScrSendUserInfoComposer)

TurboSamplePlugin/Revision/Revision20260112/Serializers/Groupforums/UnreadForumsCountMessageComposerSerializer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ protected override void Serialize(
1111
UnreadForumsCountMessageComposer message
1212
)
1313
{
14-
//
14+
packet.WriteInteger(message.UnreadForumsCount);
1515
}
1616
}

TurboSamplePlugin/Revision/Revision20260112/Serializers/Inventory/Badges/BadgePointLimitsEventMessageComposerSerializer.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,14 @@ protected override void Serialize(
1111
BadgePointLimitsEventMessageComposer message
1212
)
1313
{
14-
//
14+
packet.WriteInteger(message.LimitsByBadgeCodePrefix.Count);
15+
16+
foreach (var group in message.LimitsByBadgeCodePrefix)
17+
{
18+
packet.WriteString(group.BadgeCodePrefix).WriteInteger(group.Levels.Count);
19+
20+
foreach (var level in group.Levels)
21+
packet.WriteInteger(level.Level).WriteInteger(level.Limit);
22+
}
1523
}
1624
}

TurboSamplePlugin/Revision/Revision20260112/Serializers/Nft/UserNftChatStylesMessageComposerSerializer.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ protected override void Serialize(
1111
UserNftChatStylesMessageComposer message
1212
)
1313
{
14-
//
14+
packet.WriteInteger(message.ChatStyleIds.Count);
15+
16+
foreach (var chatStyleId in message.ChatStyleIds)
17+
packet.WriteInteger(chatStyleId);
1518
}
1619
}

TurboSamplePlugin/Revision/Revision20260112/Serializers/Notifications/MOTDNotificationEventMessageComposerSerializer.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ protected override void Serialize(
1111
MOTDNotificationEventMessageComposer message
1212
)
1313
{
14-
//
14+
packet.WriteInteger(message.Messages.Count);
15+
16+
foreach (var motd in message.Messages)
17+
packet.WriteString(motd);
1518
}
1619
}

TurboSamplePlugin/Revision/Revision20260112/Serializers/Perk/PerkAllowancesMessageComposerSerializer.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ internal class PerkAllowancesMessageComposerSerializer(int header)
88
{
99
protected override void Serialize(IServerPacket packet, PerkAllowancesMessageComposer message)
1010
{
11-
//
11+
packet.WriteInteger(message.Perks.Count);
12+
13+
foreach (var perk in message.Perks)
14+
packet.WriteString(perk.Code).WriteString(perk.ErrorMessage).WriteBoolean(perk.IsAllowed);
1215
}
1316
}

TurboSamplePlugin/Revision/Revision20260112/Serializers/Users/IgnoredUsersMessageComposerSerializer.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ internal class IgnoredUsersMessageComposerSerializer(int header)
88
{
99
protected override void Serialize(IServerPacket packet, IgnoredUsersMessageComposer message)
1010
{
11-
//
11+
packet.WriteInteger(message.IgnoredUserIds.Count);
12+
13+
foreach (var userId in message.IgnoredUserIds)
14+
packet.WriteInteger(userId);
1215
}
1316
}

0 commit comments

Comments
 (0)