Fixed errors in unity 2019, UDPClient receives right away
This commit is contained in:
parent
137ff64d17
commit
6595d4ead2
2 changed files with 6 additions and 6 deletions
|
|
@ -116,6 +116,7 @@ namespace LightReflectiveMirror
|
||||||
{
|
{
|
||||||
IPEndPoint newClientEP = new IPEndPoint(IPAddress.Any, 0);
|
IPEndPoint newClientEP = new IPEndPoint(IPAddress.Any, 0);
|
||||||
var data = _NATPuncher.EndReceive(result, ref newClientEP);
|
var data = _NATPuncher.EndReceive(result, ref newClientEP);
|
||||||
|
_NATPuncher.BeginReceive(new AsyncCallback(RecvData), _NATPuncher);
|
||||||
|
|
||||||
if (!newClientEP.Address.Equals(_relayPuncherIP.Address))
|
if (!newClientEP.Address.Equals(_relayPuncherIP.Address))
|
||||||
{
|
{
|
||||||
|
|
@ -146,8 +147,6 @@ namespace LightReflectiveMirror
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_NATPuncher.BeginReceive(new AsyncCallback(RecvData), _NATPuncher);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ServerProcessProxyData(IPEndPoint remoteEndpoint, byte[] data)
|
void ServerProcessProxyData(IPEndPoint remoteEndpoint, byte[] data)
|
||||||
|
|
@ -505,7 +504,7 @@ namespace LightReflectiveMirror
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
relayServerList?.Clear();
|
relayServerList?.Clear();
|
||||||
relayServerList = JsonConvert.DeserializeObject<List<RelayServerInfo>>(result.Decompress());
|
relayServerList = JsonConvert.DeserializeObject<List<Room>>(result.Decompress());
|
||||||
serverListUpdated?.Invoke();
|
serverListUpdated?.Invoke();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
@ -557,7 +556,7 @@ namespace LightReflectiveMirror
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
relayServerList?.Clear();
|
relayServerList?.Clear();
|
||||||
relayServerList = JsonConvert.DeserializeObject<List<RelayServerInfo>>(result);
|
relayServerList = JsonConvert.DeserializeObject<List<Room>>(result);
|
||||||
serverListUpdated?.Invoke();
|
serverListUpdated?.Invoke();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -57,11 +57,12 @@ namespace LightReflectiveMirror
|
||||||
|
|
||||||
void RecvData(IAsyncResult result)
|
void RecvData(IAsyncResult result)
|
||||||
{
|
{
|
||||||
_clientInitialRecv = true;
|
|
||||||
byte[] data = _udpClient.EndReceive(result, ref _recvEndpoint);
|
byte[] data = _udpClient.EndReceive(result, ref _recvEndpoint);
|
||||||
|
_udpClient.BeginReceive(new AsyncCallback(RecvData), _udpClient);
|
||||||
|
_clientInitialRecv = true;
|
||||||
lastInteractionTime = DateTime.Now;
|
lastInteractionTime = DateTime.Now;
|
||||||
dataReceived?.Invoke(_remoteEndpoint, data);
|
dataReceived?.Invoke(_remoteEndpoint, data);
|
||||||
_udpClient.BeginReceive(new AsyncCallback(RecvData), _udpClient);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in a new issue