No more unlimted while

main
Thomas Woischnig 2023-12-31 00:12:30 +01:00
parent c8472e0670
commit 2d82d60f9e
3 changed files with 8 additions and 4 deletions

View File

@ -1,6 +1,6 @@
{
"name": "com.incobyte.lobbyclient",
"version": "1.0.2",
"version": "1.0.3",
"displayName": "Game Lobby Client",
"description": "Provides a client for the game lobvy server to list and join lobbies",
"unity": "2022.3",

View File

@ -358,12 +358,12 @@ namespace Lobbies
var queryExternalPortAndIp = new QueryExternalPortAndIp() { LobbyClientId = connectionId };
var len = queryExternalPortAndIp.Serialize(messageData);
var ip = GetIPsByName(host!, true, false).First();
var tries = 0;
do
{
sendUdpCallback(new IPEndPoint(ip, port), messageData, len);
}
while (!waitForExternalIp.WaitOne(100));
while (!waitForExternalIp.WaitOne(100) && tries++ < 100);
}
catch
{

View File

@ -38,13 +38,17 @@ namespace LobbyServer
{
Console.WriteLine($"{DateTime.Now}: [UdpCandidateServer] received packet");
Memory<byte> receivedData = new Memory<byte>(receiveResult.Buffer);
switch (LobbyMessageIdentifier.ReadLobbyMessageIdentifier(receivedData.Span))
var identifier = LobbyMessageIdentifier.ReadLobbyMessageIdentifier(receivedData.Span);
switch (identifier)
{
case QueryExternalPortAndIp.TypeId:
var queryExternalPortAndIp = QueryExternalPortAndIp.Deserialize(receivedData.Span);
Console.WriteLine($"{DateTime.Now}: [UdpCandidateServer] received QueryExternalPortAndIp for lobby client id {queryExternalPortAndIp.LobbyClientId} from {receiveResult.RemoteEndPoint.Address.ToString()}:{receiveResult.RemoteEndPoint.Port}");
QueryIpAndPort?.Invoke(queryExternalPortAndIp.LobbyClientId, receiveResult.RemoteEndPoint.Address.ToString(), receiveResult.RemoteEndPoint.Port);
break;
default:
Console.WriteLine($"{DateTime.Now}: [UdpCandidateServer] received unkown identifier {identifier}");
break;
}
}
}