Packet refactoring.

This commit is contained in:
Filip Maj
2019-07-26 23:24:06 -04:00
parent 96641865bc
commit 0ec9c5576c
22 changed files with 115 additions and 109 deletions

View File

@@ -61,7 +61,7 @@ namespace Meteor.Map.packets.send.player
}
}
return new SubPacket(OPCODE, sourceActorId, data);
return new SubPacket(OPCODE, sourceActorId, data);
}
}

View File

@@ -25,7 +25,6 @@ namespace Meteor.Map.packets.send.player
{
class SetCurrentMountGoobbuePacket
{
public const ushort OPCODE = 0x01a0;
public const uint PACKET_SIZE = 0x28;

View File

@@ -105,8 +105,7 @@ namespace Meteor.Map.packets.send.player
Program.Log.Error("Failed making SetCutsceneBook packet. Bin Stream was too big!");
binWriter.Seek(0x109, SeekOrigin.Begin);
binWriter.Write(Encoding.ASCII.GetBytes(sNpcName), 0, Encoding.ASCII.GetByteCount(sNpcName) >= 0x20 ? 0x20 : Encoding.ASCII.GetByteCount(sNpcName));
Utils.WriteNullTermString(binWriter, sNpcName);
}
}

View File

@@ -21,6 +21,7 @@ along with Project Meteor Server. If not, see <https:www.gnu.org/licenses/>.
using Meteor.Common;
using System;
using System.IO;
namespace Meteor.Map.packets.send.player
{
@@ -31,8 +32,18 @@ namespace Meteor.Map.packets.send.player
public static SubPacket BuildPacket(uint sourceActorId, uint dreamID)
{
dreamID += 0x20E;
return new SubPacket(OPCODE, sourceActorId, BitConverter.GetBytes((uint)dreamID));
dreamID = 0x0216;
byte[] data = new byte[PACKET_SIZE - 0x20];
using (MemoryStream mem = new MemoryStream(data))
{
using (BinaryWriter binWriter = new BinaryWriter(mem))
{
binWriter.Write((Int32)0x216);
}
}
return new SubPacket(OPCODE, sourceActorId, data);
}
}
}