-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEnetServerFile.cs
70 lines (53 loc) · 1.54 KB
/
EnetServerFile.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
using System;
using ENet;
namespace EnetServer
{
class EnetServerFile
{
static byte[] buffer = new byte[1024];
static void Main(string[] args)
{
ENet.Library.Initialize();
Host server = new Host();
Address address = new Address();
address.Port = 23002;
server.Create(address, 100);
Event netEvent;
while (!Console.KeyAvailable)
{
bool polled = false;
while (!polled)
{
if (server.CheckEvents(out netEvent) <= 0)
{
if (server.Service(15, out netEvent) <= 0)
break;
polled = true;
}
switch (netEvent.Type)
{
case EventType.None:
break;
case EventType.Connect:
Console.WriteLine("Client connected - ID: " + netEvent.Peer.ID + ", IP: " + netEvent.Peer.IP);
break;
case EventType.Disconnect:
Console.WriteLine("Client disconnected - ID: " + netEvent.Peer.ID + ", IP: " + netEvent.Peer.IP);
break;
case EventType.Timeout:
Console.WriteLine("Client timeout - ID: " + netEvent.Peer.ID + ", IP: " + netEvent.Peer.IP);
break;
case EventType.Receive:
Console.WriteLine("Packet received from - ID: " + netEvent.Peer.ID + ", IP: " + netEvent.Peer.IP + ", Channel ID: " + netEvent.ChannelID + ", Data length: " + netEvent.Packet.Length);
//netEvent.Packet.CopyTo(buffer);
//Console.WriteLine(buffer[0]);
netEvent.Packet.Dispose();
break;
}
}
}
server.Flush();
ENet.Library.Deinitialize();
}
}
}