public override void OnReceive(TransportEventData eventData) { switch (eventData.type) { case NetworkEvent.ConnectEvent: Log.Info(this, "Client::OnPeerConnected"); TriggerClientConnected(eventData.connectionId); break; case NetworkEvent.DataEvent: ReadPacket(eventData.connectionId, eventData.reader); break; case NetworkEvent.DisconnectEvent: Log.Info(this, "Client::OnPeerDisconnected peer. disconnectInfo.Reason: " + eventData.disconnectInfo.Reason); Close(); TriggerClientDisconnected(eventData.disconnectInfo); break; case NetworkEvent.ErrorEvent: Log.Error(this, "Client::OnNetworkError endPoint: " + eventData.endPoint + " socketErrorCode " + eventData.socketError); TriggerNetworkError(eventData.endPoint, eventData.socketError); break; } }
public bool Receive(out TransportEventData eventData) { eventData = default; if (netManager == null) { return(false); } netManager.PollEvents(); return(eventQueue.TryDequeue(out eventData)); }
public abstract void OnReceive(TransportEventData eventData);