winnar
git-svn-id: svn://svn.ijw.co.nz/svn/OpenRa@1334 993157c7-ee19-0410-b2c4-bb4e9862e678
This commit is contained in:
33
OpenRa.Game/Network/Packet.cs
Normal file
33
OpenRa.Game/Network/Packet.cs
Normal file
@@ -0,0 +1,33 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Net;
|
||||
using System.IO;
|
||||
|
||||
namespace OpenRa.Game
|
||||
{
|
||||
class Packet : IComparable<Packet>
|
||||
{
|
||||
IPEndPoint address;
|
||||
int frame;
|
||||
byte[] data;
|
||||
|
||||
public int Frame { get { return frame; } }
|
||||
|
||||
Packet(IPEndPoint address, byte[] data)
|
||||
{
|
||||
this.address = address;
|
||||
|
||||
using (MemoryStream ms = new MemoryStream(data))
|
||||
using (BinaryReader reader = new BinaryReader(ms))
|
||||
{
|
||||
frame = reader.ReadInt32();
|
||||
this.data = reader.ReadBytes(data.Length - 4);
|
||||
}
|
||||
}
|
||||
|
||||
public static Packet FromReceivedData(IPEndPoint sender, byte[] data) { return new Packet(sender, data); }
|
||||
|
||||
public int CompareTo(Packet other) { return frame.CompareTo(other.frame); }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user