You've already forked lidgren-network-gen3
mirror of
https://github.com/lidgren/lidgren-network-gen3.git
synced 2026-05-14 22:26:29 +09:00
73 lines
2.2 KiB
C#
73 lines
2.2 KiB
C#
using System;
|
|
using System.Text;
|
|
using System.Threading;
|
|
|
|
using Lidgren.Network;
|
|
|
|
namespace BarebonesClient
|
|
{
|
|
class Program
|
|
{
|
|
static void Main(string[] args)
|
|
{
|
|
NetPeerConfiguration config = new NetPeerConfiguration("barebones");
|
|
#if DEBUG
|
|
config.SimulatedLoss = 0.1f;
|
|
#endif
|
|
config.EnableMessageType(NetIncomingMessageType.VerboseDebugMessage);
|
|
NetClient client = new NetClient(config);
|
|
client.Start();
|
|
|
|
Thread.Sleep(2000);
|
|
|
|
client.Connect("localhost", 14242);
|
|
|
|
while (Console.KeyAvailable == false || Console.ReadKey().Key != ConsoleKey.Escape)
|
|
{
|
|
NetIncomingMessage inc;
|
|
while ((inc = client.ReadMessage()) != null)
|
|
{
|
|
switch (inc.MessageType)
|
|
{
|
|
case NetIncomingMessageType.StatusChanged:
|
|
NetConnectionStatus status = (NetConnectionStatus)inc.ReadByte();
|
|
string reason = inc.ReadString();
|
|
Console.WriteLine("New status: " + status + " (" + reason + ")");
|
|
if (status == NetConnectionStatus.Connected)
|
|
{
|
|
//
|
|
// We're connected - send stuff
|
|
//
|
|
NetOutgoingMessage om = client.CreateMessage();
|
|
|
|
// temporary code to verify issue with large messages
|
|
StringBuilder bdr = new StringBuilder();
|
|
for (int i = 0; i < 400; i++)
|
|
bdr.Append("Hallonsmurf" + i.ToString());
|
|
om.Write(bdr.ToString());
|
|
|
|
client.SendMessage(om, NetDeliveryMethod.ReliableOrdered);
|
|
}
|
|
break;
|
|
case NetIncomingMessageType.DebugMessage:
|
|
case NetIncomingMessageType.VerboseDebugMessage:
|
|
case NetIncomingMessageType.WarningMessage:
|
|
case NetIncomingMessageType.ErrorMessage:
|
|
Console.WriteLine(inc.ReadString());
|
|
break;
|
|
case NetIncomingMessageType.UnconnectedData:
|
|
Console.WriteLine("Received unconnected data from " + inc.SenderEndpoint + ", conn is " + inc.SenderConnection);
|
|
break;
|
|
case NetIncomingMessageType.Data:
|
|
Console.WriteLine("Received " + inc.LengthBytes + " bytes of data from " + inc.SenderConnection + ", endpoint is " + inc.SenderEndpoint);
|
|
break;
|
|
}
|
|
}
|
|
Thread.Sleep(1);
|
|
}
|
|
Console.WriteLine("Application exiting");
|
|
while (true) ;
|
|
}
|
|
}
|
|
}
|