示例#1
0
 public override void ClientConnect(string address)
 {
     clientAddress = address;
     ConnectWriter.Reset();
     GetConnectData(ConnectWriter);
     LiteNetLib4MirrorClient.ConnectClient(ConnectWriter);
 }
 public bool ClientSend(int channelId, ArraySegment <byte> data)
 {
     // ReSharper disable once ConvertIfStatementToReturnStatement
     if (channelId < channels.Length)
     {
         return(LiteNetLib4MirrorClient.Send(channels[channelId], data.Array, data.Offset, data.Count, (byte)channelId));
     }
     return(LiteNetLib4MirrorClient.Send(channels[0], data.Array, data.Offset, data.Count, 0));
 }
        public override bool ClientSend(int channelId, byte[] data)
        {
            // ReSharper disable once ConvertIfStatementToReturnStatement
            if (channelId < channels.Length)
            {
                return(LiteNetLib4MirrorClient.Send(channels[channelId], data, 0, data.Length, (byte)channelId));
            }

            return(LiteNetLib4MirrorClient.Send(channels[0], data, 0, data.Length, 0));
        }
示例#4
0
        public override void ClientConnect(Uri uri)
        {
            if (uri.Scheme != Scheme)
            {
                throw new ArgumentException($"Invalid url {uri}, use {Scheme}://host:port instead", nameof(uri));
            }

            port          = uri.IsDefaultPort ? port : (ushort)uri.Port;
            clientAddress = uri.Host;

            ConnectWriter.Reset();
            GetConnectData(ConnectWriter);
            LiteNetLib4MirrorClient.ConnectClient(ConnectWriter);
        }
        public override bool ClientSend(int channelId, NetworkWriter data)
        {
            try
            {
                ArraySegment <byte> bytes = data.ToArraySegment();
                // ReSharper disable once ConvertIfStatementToReturnStatement
                if (channelId < channels.Length)
                {
                    return(LiteNetLib4MirrorClient.Send(channels[channelId], bytes.Array, bytes.Offset, bytes.Count, (byte)channelId));
                }

                return(LiteNetLib4MirrorClient.Send(channels[0], bytes.Array, bytes.Offset, bytes.Count, 0));
            }
            finally
            {
                NetworkWriterPool.Recycle(data);
            }
        }
 public bool ClientSend(int channelId, ArraySegment <byte> data)
 {
     return(LiteNetLib4MirrorClient.Send(channels[channelId], data.Array, data.Offset, data.Count, (byte)channelId));
 }
 public override bool ClientSend(int channelId, byte[] data)
 {
     return(LiteNetLib4MirrorClient.Send(channels[channelId], data, 0, data.Length, (byte)channelId));
 }
 public override void ClientConnect(string address)
 {
     clientAddress = address;
     LiteNetLib4MirrorClient.ConnectClient(GenerateCode());
 }
 public override bool ClientConnected()
 {
     return(LiteNetLib4MirrorClient.IsConnected());
 }
示例#10
0
        public override void ClientSend(int channelId, ArraySegment <byte> data)
        {
            byte channel = (byte)(channelId < channels.Length ? channelId : 0);

            LiteNetLib4MirrorClient.Send(channels[0], data.Array, data.Offset, data.Count, channel);
        }