/// <summary> /// Called when a a peer gets disconnected from us. /// </summary> private void OnPeerDisconnected(LiteNetLib.NetPeer peer, LiteNetLib.DisconnectInfo info) { if (peer == ArbiterPeer) { Console.Error.WriteLine(">>> Lost connection to arbiter! <<<"); } }
public void OnPeerDisconnected(NetPeer peer, LiteNetLib.DisconnectInfo disconnectInfo) { Debug.Log("OnPeerDisconnected:" + peer.EndPoint); if (peersDict != null) { peersDict.Remove(peer.Id); } eventQueue.Enqueue(new TransportEventData() { type = ENetworkEvent.DisconnectEvent, connectionId = peer.Id, disconnectInfo = new EDisconnectInfo((EDisconnectReason)((int)disconnectInfo.Reason), disconnectInfo.SocketErrorCode), }); }
void INetEventListener.OnPeerDisconnected(NetPeer peer, DisconnectInfo disconnectInfo) { PeerDisconnectedEvent?.Invoke(peer, disconnectInfo); }
private void ProcessEvent(NetEvent evt) { NetUtils.DebugWrite("[NM] Processing event: " + evt.Type); switch (evt.Type) { case NetEventType.Connect: _netEventListener.OnUserJoined(evt.Peer); break; case NetEventType.Disconnect: var info = new DisconnectInfo { Reason = evt.DisconnectReason, AdditionalData = evt.DataReader, SocketErrorCode = evt.AdditionalData }; _netEventListener.OnUserLeft(evt.Peer, info); break; case NetEventType.Receive: _netEventListener.OnGotMessage(evt.Peer, evt.DataReader, evt.DeliveryMethod); break; case NetEventType.ReceiveUnconnected: _netEventListener.OnNetworkReceiveUnconnected(evt.RemoteEndPoint, evt.DataReader, UnconnectedMessageType.BasicMessage); break; case NetEventType.DiscoveryRequest: _netEventListener.OnNetworkReceiveUnconnected(evt.RemoteEndPoint, evt.DataReader, UnconnectedMessageType.DiscoveryRequest); break; case NetEventType.DiscoveryResponse: _netEventListener.OnNetworkReceiveUnconnected(evt.RemoteEndPoint, evt.DataReader, UnconnectedMessageType.DiscoveryResponse); break; case NetEventType.Error: _netEventListener.OnNetworkError(evt.RemoteEndPoint, evt.AdditionalData); break; case NetEventType.ConnectionLatencyUpdated: _netEventListener.OnNetworkLatencyUpdate(evt.Peer, evt.AdditionalData); break; case NetEventType.ConnectionRequest: _netEventListener.OnConnectionRequest(evt.ConnectionRequest); break; //case NetEventType.CreateRoom: // _netEventListener.OnUserCreateRoom(evt.ConnectionRequest); // break; //case NetEventType.DeleteRoom: // _netEventListener.OnDeleteRoom(evt.C); // break; //case NetEventType.UserJoinToRoom: // _netEventListener.OnUserJoinToRoom(evt.C); // break; } //Recycle evt.DataReader.Clear(); evt.Peer = null; evt.AdditionalData = 0; evt.RemoteEndPoint = null; evt.ConnectionRequest = null; lock (_netEventsPool) _netEventsPool.Push(evt); }
protected override void OnDisconnect(bool ByUser, LiteNetLib.DisconnectInfo disconnectInfo) { Debug.Log("Disconnected"); CloseAllScreens(); OpenScreen(0); }
void INetEventListener.OnPeerDisconnected(NetPeer peer, DisconnectInfo disconnectInfo) { if (PeerDisconnectedEvent != null) PeerDisconnectedEvent(peer, disconnectInfo); }
private void ProcessEvent(NetEvent evt) { switch (evt.Type) { case NetEventType.Connect: _netEventListener.OnPeerConnected(evt.Peer); break; case NetEventType.Disconnect: var info = new DisconnectInfo { Reason = evt.DisconnectReason, AdditionalData = evt.DataReader, SocketErrorCode = evt.AdditionalData }; _netEventListener.OnPeerDisconnected(evt.Peer, info); break; case NetEventType.Receive: // Keep backward compatibility if (evt.Channel == 0) { _netEventListener.OnNetworkReceive(evt.Peer, evt.DataReader, evt.DeliveryMethod); } _netEventListener.OnNetworkReceiveFromChannel(evt.Peer, evt.DataReader, evt.DeliveryMethod, evt.Channel); break; case NetEventType.ReceiveUnconnected: _netEventListener.OnNetworkReceiveUnconnected(evt.RemoteEndPoint, evt.DataReader, UnconnectedMessageType.BasicMessage); break; case NetEventType.DiscoveryRequest: _netEventListener.OnNetworkReceiveUnconnected(evt.RemoteEndPoint, evt.DataReader, UnconnectedMessageType.DiscoveryRequest); break; case NetEventType.DiscoveryResponse: _netEventListener.OnNetworkReceiveUnconnected(evt.RemoteEndPoint, evt.DataReader, UnconnectedMessageType.DiscoveryResponse); break; case NetEventType.Error: _netEventListener.OnNetworkError(evt.RemoteEndPoint, evt.AdditionalData); break; case NetEventType.ConnectionLatencyUpdated: _netEventListener.OnNetworkLatencyUpdate(evt.Peer, evt.AdditionalData); break; case NetEventType.ConnectionRequest: _netEventListener.OnConnectionRequest(evt.ConnectionRequest); break; } //Recycle evt.DataReader.Clear(); evt.Peer = null; evt.AdditionalData = 0; evt.RemoteEndPoint = null; evt.ConnectionRequest = null; lock (_netEventsPool) { _netEventsPool.Push(evt); } }