From 2a3e048b86ba74d3073aee659258d8cd28d568e0 Mon Sep 17 00:00:00 2001 From: Kamron Batman <3953314+kamronbatman@users.noreply.github.com> Date: Tue, 19 Sep 2023 00:02:17 -0700 Subject: [PATCH] fix: Fixes more packet initializations (#1507) --- Projects/Server/Effects.cs | 2 +- Projects/Server/Items/VirtualHair.cs | 4 ++-- Projects/Server/Mobiles/Mobile.cs | 3 ++- .../Network/Packets/OutgoingMessagePackets.cs | 2 +- .../Network/Packets/OutgoingMobilePackets.cs | 20 +++++++++---------- Projects/UOContent/Engines/Party/Party.cs | 10 ++++++---- .../UOContent/Engines/Party/PartyPackets.cs | 6 +++--- Projects/UOContent/Mobiles/BaseCreature.cs | 2 +- 8 files changed, 26 insertions(+), 23 deletions(-) diff --git a/Projects/Server/Effects.cs b/Projects/Server/Effects.cs index 3adf9cb75..36e26bc17 100644 --- a/Projects/Server/Effects.cs +++ b/Projects/Server/Effects.cs @@ -379,7 +379,7 @@ public static class Effects int speed, int duration, bool fixedDirection = false, bool explodes = false, int hue = 0, int renderMode = 0 ) { - Span effect = stackalloc byte[OutgoingEffectPackets.HuedEffectLength]; + Span effect = stackalloc byte[OutgoingEffectPackets.HuedEffectLength].InitializePacket(); OutgoingEffectPackets.CreateMovingHuedEffect( effect, from, to, itemID, fromLocation, toLocation, speed, duration, fixedDirection, diff --git a/Projects/Server/Items/VirtualHair.cs b/Projects/Server/Items/VirtualHair.cs index d8473a891..0e3b2a178 100644 --- a/Projects/Server/Items/VirtualHair.cs +++ b/Projects/Server/Items/VirtualHair.cs @@ -17,7 +17,7 @@ public static class OutgoingVirtualHairPackets return; } - Span buffer = stackalloc byte[EquipUpdatePacketLength]; + Span buffer = stackalloc byte[EquipUpdatePacketLength].InitializePacket(); CreateHairEquipUpdatePacket(buffer, m, hairSerial, itemId, hue, layer); ns.Send(buffer); } @@ -47,7 +47,7 @@ public static class OutgoingVirtualHairPackets return; } - Span buffer = stackalloc byte[RemovePacketLength]; + Span buffer = stackalloc byte[RemovePacketLength].InitializePacket(); CreateRemoveHairPacket(buffer, hairSerial); ns.Send(buffer); } diff --git a/Projects/Server/Mobiles/Mobile.cs b/Projects/Server/Mobiles/Mobile.cs index 37f3f4c87..409611004 100644 --- a/Projects/Server/Mobiles/Mobile.cs +++ b/Projects/Server/Mobiles/Mobile.cs @@ -8994,7 +8994,8 @@ public partial class Mobile : IHued, IComparable, ISpawnable, IObjectPro return; } - Span buffer = stackalloc byte[OutgoingMessagePackets.GetMaxMessageLocalizedAffixLength(affix, args)].InitializePacket(); + Span buffer = stackalloc byte[OutgoingMessagePackets.GetMaxMessageLocalizedAffixLength(affix, args)] + .InitializePacket(); var eable = m_Map.GetClientsInRange(m_Location); diff --git a/Projects/Server/Network/Packets/OutgoingMessagePackets.cs b/Projects/Server/Network/Packets/OutgoingMessagePackets.cs index dc38173e5..aba639176 100644 --- a/Projects/Server/Network/Packets/OutgoingMessagePackets.cs +++ b/Projects/Server/Network/Packets/OutgoingMessagePackets.cs @@ -41,7 +41,7 @@ public static class OutgoingMessagePackets return; } - Span buffer = stackalloc byte[GetMaxMessageLocalizedLength(args)]; + Span buffer = stackalloc byte[GetMaxMessageLocalizedLength(args)].InitializePacket(); var length = CreateMessageLocalized( buffer, serial, graphic, type, hue, font, number, name, args ); diff --git a/Projects/Server/Network/Packets/OutgoingMobilePackets.cs b/Projects/Server/Network/Packets/OutgoingMobilePackets.cs index 252f727e7..51056afbc 100644 --- a/Projects/Server/Network/Packets/OutgoingMobilePackets.cs +++ b/Projects/Server/Network/Packets/OutgoingMobilePackets.cs @@ -94,7 +94,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[DeathAnimationPacketLength]; + Span span = stackalloc byte[DeathAnimationPacketLength].InitializePacket(); CreateDeathAnimation(span, killed, corpse); ns.Send(span); } @@ -200,7 +200,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[MobileAttributePacketLength]; + Span span = stackalloc byte[MobileAttributePacketLength].InitializePacket(); CreateMobileHits(span, m, normalize); ns.Send(span); } @@ -225,7 +225,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[MobileAttributePacketLength]; + Span span = stackalloc byte[MobileAttributePacketLength].InitializePacket(); CreateMobileMana(span, m, normalize); ns.Send(span); } @@ -250,7 +250,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[MobileAttributePacketLength]; + Span span = stackalloc byte[MobileAttributePacketLength].InitializePacket(); CreateMobileStam(span, m, normalize); ns.Send(span); } @@ -275,7 +275,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[MobileAttributesPacketLength]; + Span span = stackalloc byte[MobileAttributesPacketLength].InitializePacket(); CreateMobileAttributes(span, m, normalize); ns.Send(span); } @@ -344,7 +344,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[MobileAnimationPacketLength]; + Span span = stackalloc byte[MobileAnimationPacketLength].InitializePacket(); CreateMobileAnimation(span, mobile, action, frameCount, repeatCount, forward, repeat, delay); ns.Send(span); } @@ -369,7 +369,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[NewMobileAnimationPacketLength]; + Span span = stackalloc byte[NewMobileAnimationPacketLength].InitializePacket(); CreateNewMobileAnimation(span, mobile, action, frameCount, delay); ns.Send(span); } @@ -381,7 +381,7 @@ public static class OutgoingMobilePackets return; } - Span span = stackalloc byte[MobileHealthbarPacketLength]; + Span span = stackalloc byte[MobileHealthbarPacketLength].InitializePacket(); CreateMobileHealthbar(span, m, healthbar); ns.Send(span); } @@ -436,7 +436,7 @@ public static class OutgoingMobilePackets return; } - Span buffer = stackalloc byte[MobileStatusCompactLength]; + Span buffer = stackalloc byte[MobileStatusCompactLength].InitializePacket(); CreateMobileStatusCompact(buffer, m, canBeRenamed); ns.Send(buffer); @@ -487,7 +487,7 @@ public static class OutgoingMobilePackets } } - Span buffer = stackalloc byte[length]; + Span buffer = stackalloc byte[length].InitializePacket(); CreateMobileStatus(buffer, beheld, version, beheld.CanBeRenamedBy(beholder)); ns.Send(buffer); } diff --git a/Projects/UOContent/Engines/Party/Party.cs b/Projects/UOContent/Engines/Party/Party.cs index c6ce94636..0634efffb 100644 --- a/Projects/UOContent/Engines/Party/Party.cs +++ b/Projects/UOContent/Engines/Party/Party.cs @@ -50,7 +50,7 @@ namespace Server.Engines.PartySystem public void OnStamChanged(Mobile m) { - Span p = stackalloc byte[OutgoingMobilePackets.MobileAttributePacketLength]; + Span p = stackalloc byte[OutgoingMobilePackets.MobileAttributePacketLength].InitializePacket(); OutgoingMobilePackets.CreateMobileStam(p, m, true); for (var i = 0; i < Members.Count; ++i) @@ -67,7 +67,7 @@ namespace Server.Engines.PartySystem public void OnManaChanged(Mobile m) { - Span p = stackalloc byte[OutgoingMobilePackets.MobileAttributePacketLength]; + Span p = stackalloc byte[OutgoingMobilePackets.MobileAttributePacketLength].InitializePacket(); OutgoingMobilePackets.CreateMobileMana(p, m, true); for (var i = 0; i < Members.Count; ++i) @@ -226,7 +226,8 @@ namespace Server.Engines.PartySystem return; } - Span buffer = stackalloc byte[OutgoingMessagePackets.GetMaxMessageLocalizedAffixLength(from.Name, "")]; + Span buffer = stackalloc byte[OutgoingMessagePackets.GetMaxMessageLocalizedAffixLength(from.Name, "")] + .InitializePacket(); var length = OutgoingMessagePackets.CreateMessageLocalizedAffix( buffer, Serial.MinusOne, @@ -499,7 +500,8 @@ namespace Server.Engines.PartySystem m_Mobile.SendLocalizedMessage(1005437); // You have rejoined the party. m_Mobile.NetState.SendPartyMemberList(p); - Span buffer = stackalloc byte[OutgoingMessagePackets.GetMaxMessageLocalizedAffixLength(m_Mobile.Name, "")].InitializePacket(); + Span buffer = stackalloc byte[OutgoingMessagePackets.GetMaxMessageLocalizedAffixLength(m_Mobile.Name, "")] + .InitializePacket(); Span attrsPacket = stackalloc byte[OutgoingMobilePackets.MobileAttributesPacketLength].InitializePacket(); var ns = m_Mobile.NetState; diff --git a/Projects/UOContent/Engines/Party/PartyPackets.cs b/Projects/UOContent/Engines/Party/PartyPackets.cs index a9ac32e0e..d792ffb3f 100644 --- a/Projects/UOContent/Engines/Party/PartyPackets.cs +++ b/Projects/UOContent/Engines/Party/PartyPackets.cs @@ -54,7 +54,7 @@ namespace Server.Engines.PartySystem return; } - Span buffer = stackalloc byte[GetPartyMemberListPacketLength(p.Count)]; + Span buffer = stackalloc byte[GetPartyMemberListPacketLength(p.Count)].InitializePacket(); CreatePartyMemberList(buffer, p); ns.Send(buffer); @@ -70,7 +70,7 @@ namespace Server.Engines.PartySystem return; } - Span buffer = stackalloc byte[GetPartyRemoveMemberPacketLength(p?.Count ?? 0)]; + Span buffer = stackalloc byte[GetPartyRemoveMemberPacketLength(p?.Count ?? 0)].InitializePacket(); CreatePartyRemoveMember(buffer, m, p); ns.Send(buffer); @@ -110,7 +110,7 @@ namespace Server.Engines.PartySystem return; } - Span buffer = stackalloc byte[GetPartyTextMessagePacketLength(text)]; + Span buffer = stackalloc byte[GetPartyTextMessagePacketLength(text)].InitializePacket(); CreatePartyTextMessage(buffer, m, text, toAll); ns.Send(buffer); diff --git a/Projects/UOContent/Mobiles/BaseCreature.cs b/Projects/UOContent/Mobiles/BaseCreature.cs index aa3b198ae..4f2393191 100644 --- a/Projects/UOContent/Mobiles/BaseCreature.cs +++ b/Projects/UOContent/Mobiles/BaseCreature.cs @@ -3864,7 +3864,7 @@ namespace Server.Mobiles IsDeadPet = false; - Span buffer = stackalloc byte[OutgoingMobilePackets.BondedStatusPacketLength]; + Span buffer = stackalloc byte[OutgoingMobilePackets.BondedStatusPacketLength].InitializePacket(); OutgoingMobilePackets.CreateBondedStatus(buffer, Serial, false); Effects.SendPacket(Location, Map, buffer);