1234567891011121314151617181920212223242526272829303132333435 |
- using System;
- namespace Mirror
- {
- public class NetworkConnectionToClient : NetworkConnection
- {
- public override string address =>
- Transport.activeTransport.ServerGetClientAddress(connectionId);
- // unbatcher
- public Unbatcher unbatcher = new Unbatcher();
- public NetworkConnectionToClient(int networkConnectionId)
- : base(networkConnectionId) {}
- // Send stage three: hand off to transport
- protected override void SendToTransport(ArraySegment<byte> segment, int channelId = Channels.Reliable) =>
- Transport.activeTransport.ServerSend(connectionId, segment, channelId);
- /// <summary>Disconnects this connection.</summary>
- public override void Disconnect()
- {
- // set not ready and handle clientscene disconnect in any case
- // (might be client or host mode here)
- isReady = false;
- Transport.activeTransport.ServerDisconnect(connectionId);
- // IMPORTANT: NetworkConnection.Disconnect() is NOT called for
- // voluntary disconnects from the other end.
- // -> so all 'on disconnect' cleanup code needs to be in
- // OnTransportDisconnect, where it's called for both voluntary
- // and involuntary disconnects!
- }
- }
- }
|