fix(core): Fixes OPL packets (#395)
- [X] Fixes an issue with OPL packets using the wrong endianness and not updating the position properly. - [X] Fixes an issue with SpanWriter not updating bytes written when it is used adhoc. - [X] Moves packet creation for OPL inside the SendInfoTo function. Bumps release version
This commit is contained in:
parent
1a593089e9
commit
5882b1ab3f
6 changed files with 17 additions and 10 deletions
|
|
@ -1152,7 +1152,7 @@ namespace Server
|
|||
Span<byte> opl = ObjectPropertyList.Enabled ? stackalloc byte[OutgoingEntityPackets.OPLPacketLength] : null;
|
||||
if (opl != null)
|
||||
{
|
||||
OutgoingEntityPackets.CreateOPLInfo(opl, this);
|
||||
opl.InitializePacket();
|
||||
}
|
||||
|
||||
var eable = m_Map.GetClientsInRange(m_Location, GetMaxUpdateRange());
|
||||
|
|
@ -3094,8 +3094,13 @@ namespace Server
|
|||
|
||||
public virtual int GetUpdateRange(Mobile m) => 18;
|
||||
|
||||
public virtual void SendInfoTo(NetState ns, ReadOnlySpan<byte> world, ReadOnlySpan<byte> opl = default)
|
||||
public virtual void SendInfoTo(NetState ns, ReadOnlySpan<byte> world, Span<byte> opl)
|
||||
{
|
||||
if (opl != null && opl[0] == 0)
|
||||
{
|
||||
OutgoingEntityPackets.CreateOPLInfo(opl, this);
|
||||
}
|
||||
|
||||
SendWorldPacketTo(ns, world);
|
||||
SendOPLPacketTo(ns, opl);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue