-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathServerSend.cs
More file actions
103 lines (89 loc) · 3.01 KB
/
ServerSend.cs
File metadata and controls
103 lines (89 loc) · 3.01 KB
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System;
using System.Collections.Generic;
using System.Text;
namespace GameServer
{
public class ServerSend
{
private static void SendTCPData(int _toClient, Packet _packet)
{
_packet.WriteLength();
Server.clients[_toClient].tcp.SendData(_packet);
}
private static void SendUDPData(int _toClient, Packet _packet)
{
_packet.WriteLength();
Server.clients[_toClient].udp.SendData(_packet);
}
private static void SendTCPDataAll(Packet _packet)
{
_packet.WriteLength();
for (int i = 1; i < Server.MaxPlayers; i++)
{
Server.clients[i].tcp.SendData(_packet);
}
}
private static void SendUDPDataAll(Packet _packet)
{
_packet.WriteLength();
for (int i = 1; i < Server.MaxPlayers; i++)
{
Server.clients[i].udp.SendData(_packet);
}
}
private static void SendTCPDataAll(int _exceptClient, Packet _packet)
{
_packet.WriteLength();
for (int i = 1; i < Server.MaxPlayers; i++)
{
if (i != _exceptClient)
{
Server.clients[i].tcp.SendData(_packet);
}
}
}
private static void SendUDPDataAll(int _exceptClient, Packet _packet)
{
_packet.WriteLength();
for (int i = 1; i < Server.MaxPlayers; i++)
{
if (i != _exceptClient)
{
Server.clients[i].udp.SendData(_packet);
}
}
}
public static void Welcome(int _toClient, string _msg)
{
using (Packet _packet = new Packet((int)ServerPackets.welcome))
{
_packet.Write(_msg);
_packet.Write(_toClient);
SendTCPData(_toClient, _packet);
}
}
public static void SpawnPlayer(int _toClient, Player _player) {
using (Packet _packet = new Packet((int)ServerPackets.spawnPlayer)) {
_packet.Write(_player.id);
_packet.Write(_player.username);
_packet.Write(_player.position);
_packet.Write(_player.rotation);
SendTCPData(_toClient, _packet);
}
}
public static void PlayerPosition(Player _player) {
using (Packet _packet = new Packet((int)ServerPackets.playerPosition)) {
_packet.Write(_player.id);
_packet.Write(_player.position);
SendUDPDataAll(_packet);
}
}
public static void PlayerRotation(Player _player) {
using(Packet _packet = new Packet((int)ServerPackets.playerRotation)){
_packet.Write(_player.id);
_packet.Write(_player.rotation);
SendUDPDataAll(_player.id, _packet);
}
}
}
}