Skip to content

Commit 8796f52

Browse files
authored
Address various missed protocol changes in the 12.50 update (#43)
1 parent 192a946 commit 8796f52

File tree

4 files changed

+23
-9
lines changed

4 files changed

+23
-9
lines changed

TibiaAPI/GlobalSuppressions.cs

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,6 @@
44
// Project-level suppressions either have no target or are given
55
// a specific target and scoped to a namespace, type, member, etc.
66

7-
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "CA1812:Avoid uninstantiated internal classes", Justification = "<Pending>", Scope = "type", Target = "~T:OXGaming.TibiaAPI.Network.LoginData")]
8-
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "CA1812:Avoid uninstantiated internal classes", Justification = "<Pending>", Scope = "type", Target = "~T:OXGaming.TibiaAPI.Network.Session")]
9-
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "CA1812:Avoid uninstantiated internal classes", Justification = "<Pending>", Scope = "type", Target = "~T:OXGaming.TibiaAPI.Network.PlayData")]
10-
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "CA1812:Avoid uninstantiated internal classes", Justification = "<Pending>", Scope = "type", Target = "~T:OXGaming.TibiaAPI.Network.World")]
11-
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "CA1812:Avoid uninstantiated internal classes", Justification = "<Pending>", Scope = "type", Target = "~T:OXGaming.TibiaAPI.Network.Character")]
127
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Naming", "CA1716:Identifiers should not match keywords", Justification = "<Pending>", Scope = "type", Target = "~T:OXGaming.TibiaAPI.Network.ClientPackets.Stop")]
138
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Globalization", "CA1305:Specify IFormatProvider", Justification = "<Pending>", Scope = "member", Target = "~M:OXGaming.TibiaAPI.Network.Communication.ParseClientMessage(OXGaming.TibiaAPI.Client,OXGaming.TibiaAPI.Network.NetworkMessage,OXGaming.TibiaAPI.Network.NetworkMessage)")]
149
[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Design", "CA1056:Uri properties should not be strings", Justification = "<Pending>", Scope = "member", Target = "~P:OXGaming.TibiaAPI.Network.ServerPackets.LoginSuccess.StoreBaseUrl")]

TibiaAPI/Network/ServerPackets/EditText.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ public class EditText : ServerPacket
1515

1616
public ushort MaxTextLength { get; set; }
1717

18+
public byte Unknown { get; set; }
19+
1820
public EditText(Client client)
1921
{
2022
Client = client;
@@ -28,6 +30,10 @@ public override void ParseFromNetworkMessage(NetworkMessage message)
2830
MaxTextLength = message.ReadUInt16();
2931
Text = message.ReadString();
3032
Author = message.ReadString();
33+
if (Client.VersionNumber >= 125010109)
34+
{
35+
Unknown = message.ReadByte();
36+
}
3137
Date = message.ReadString();
3238
}
3339

@@ -39,6 +45,10 @@ public override void AppendToNetworkMessage(NetworkMessage message)
3945
message.Write(MaxTextLength);
4046
message.Write(Text);
4147
message.Write(Author);
48+
if (Client.VersionNumber >= 125010109)
49+
{
50+
message.Write(Unknown);
51+
}
4252
message.Write(Date);
4353
}
4454
}

TibiaAPI/Network/ServerPackets/MarketEnter.cs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,11 @@ public MarketEnter(Client client)
2222

2323
public override void ParseFromNetworkMessage(NetworkMessage message)
2424
{
25-
AccountBalance = message.ReadInt64();
25+
if (Client.VersionNumber < 125000000)
26+
{
27+
AccountBalance = message.ReadInt64();
28+
}
29+
2630
ActiveOffers = message.ReadByte();
2731

2832
DepotObjects.Capacity = message.ReadUInt16();
@@ -37,7 +41,12 @@ public override void ParseFromNetworkMessage(NetworkMessage message)
3741
public override void AppendToNetworkMessage(NetworkMessage message)
3842
{
3943
message.Write((byte)ServerPacketType.MarketEnter);
40-
message.Write(AccountBalance);
44+
45+
if (Client.VersionNumber < 125000000)
46+
{
47+
message.Write(AccountBalance);
48+
}
49+
4150
message.Write(ActiveOffers);
4251

4352
var count = Math.Min(DepotObjects.Count, ushort.MaxValue);

TibiaAPI/Network/ServerPackets/Talk.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public override void ParseFromNetworkMessage(NetworkMessage message)
3131
{
3232
StatementId = message.ReadUInt32();
3333
SpeakerName = message.ReadString();
34-
if (Client.VersionNumber >= 125010109)
34+
if (Client.VersionNumber >= 125010109 && StatementId != 0)
3535
{
3636
IsTraded = message.ReadBool();
3737
}
@@ -94,7 +94,7 @@ public override void AppendToNetworkMessage(NetworkMessage message)
9494
message.Write((byte)ServerPacketType.Talk);
9595
message.Write(StatementId);
9696
message.Write(SpeakerName);
97-
if (Client.VersionNumber >= 125010109)
97+
if (Client.VersionNumber >= 125010109 && StatementId != 0)
9898
{
9999
message.Write(IsTraded);
100100
}

0 commit comments

Comments
 (0)