Add except field for Send(un)reliable to all

This commit is contained in:
Sofia 2020-08-07 21:12:18 +03:00
parent 8a4b5f858c
commit f313f8aaf4

View File

@ -67,7 +67,7 @@ namespace NeonTea.Quakeball.Net.Instances {
spawn = new SpawnPckt(); spawn = new SpawnPckt();
spawn.PlayerId = conn.uid; spawn.PlayerId = conn.uid;
spawn.Location = obj.transform.position; spawn.Location = obj.transform.position;
SendReliableToAll(spawn); SendReliableToAll(spawn, except: spawn.PlayerId);
} }
} else if (packet is PlayerUpdatePckt) { } else if (packet is PlayerUpdatePckt) {
PlayerUpdatePckt updatePckt = (PlayerUpdatePckt)packet; PlayerUpdatePckt updatePckt = (PlayerUpdatePckt)packet;
@ -78,14 +78,20 @@ namespace NeonTea.Quakeball.Net.Instances {
} }
} }
public void SendReliableToAll(Packet packet) { public void SendReliableToAll(Packet packet, ulong except = ulong.MaxValue) {
foreach (NetPlayer p in Players.Values) { foreach (NetPlayer p in Players.Values) {
if (p.Id == ulong.MaxValue || p.Id == except) {
continue;
}
Peer.SendReliable(p.Id, packet); Peer.SendReliable(p.Id, packet);
} }
} }
public void SendUnreliableToAll(Packet packet) { public void SendUnreliableToAll(Packet packet, ulong except = ulong.MaxValue) {
foreach (NetPlayer p in Players.Values) { foreach (NetPlayer p in Players.Values) {
if (p.Id == ulong.MaxValue || p.Id == except) {
continue;
}
Peer.SendUnreliable(p.Id, packet); Peer.SendUnreliable(p.Id, packet);
} }
} }