当前位置: 首页>>代码示例>>C#>>正文


C# Client.Send_Sync_Packet方法代码示例

本文整理汇总了C#中Chraft.Net.Client.Send_Sync_Packet方法的典型用法代码示例。如果您正苦于以下问题:C# Client.Send_Sync_Packet方法的具体用法?C# Client.Send_Sync_Packet怎么用?C# Client.Send_Sync_Packet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Chraft.Net.Client的用法示例。


在下文中一共展示了Client.Send_Sync_Packet方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: HandleTabCompletePacket

        public static void HandleTabCompletePacket(Client client, TabCompletePacket packet)
        {
            var str = new StringBuilder();
            if (string.IsNullOrEmpty(packet.Text.Trim()))
                return;

            if (packet.Text.StartsWith("/"))
            {
                str.Append(client.Server.ClientCommandHandler.AutoComplete(client, packet.Text));
                if (!string.IsNullOrEmpty(str.ToString()))
                    client.Send_Sync_Packet(new TabCompletePacket { Text = str.ToString() });
                return;
            }
            str.Append(PluginSystem.Commands.AutoComplete.GetPlayers(client, packet.Text));
            if (string.IsNullOrEmpty(str.ToString()))
                return;
            client.Send_Sync_Packet(new TabCompletePacket { Text = str.ToString() });
        }
开发者ID:TheaP,项目名称:c-raft,代码行数:18,代码来源:Client.Recv.cs

示例2: HandlePacketEncryptionResponse

        public static void HandlePacketEncryptionResponse(Client client, EncryptionKeyResponse packet)
        {
            client.SharedKey = PacketCryptography.Decrypt(packet.SharedSecret);

            RijndaelManaged recv = PacketCryptography.GenerateAES(client.SharedKey);
            RijndaelManaged send = PacketCryptography.GenerateAES(client.SharedKey);

            /*AesCryptoServiceProvider provider = new AesCryptoServiceProvider();
            provider.Mode = CipherMode.CFB;
            provider.FeedbackSize = 8;
            provider.KeySize = 128;
            provider.Key = client.SharedKey;
            provider.IV = client.SharedKey;*/

            client.Decrypter = recv.CreateDecryptor();

            byte[] packetToken;

            packetToken = PacketCryptography.Decrypt(packet.VerifyToken);

            if (!packetToken.SequenceEqual(PacketCryptography.VerifyToken))
            {
                client.Kick("Wrong token");
                return;
            }

            client.Send_Sync_Packet(new EncryptionKeyResponse());

            client.Encrypter = send.CreateEncryptor();
        }
开发者ID:UrbanLetsPlay,项目名称:c-raft,代码行数:30,代码来源:Client.Recv.cs

示例3: HandlePacketEncryptionResponse

        public static void HandlePacketEncryptionResponse(Client client, EncryptionKeyResponse packet)
        {
            client.SharedKey = PacketCryptography.Decrypt(packet.SharedSecret);

            RijndaelManaged recv = PacketCryptography.GenerateAES(client.SharedKey);
            RijndaelManaged send = PacketCryptography.GenerateAES(client.SharedKey);

            client.Decrypter = recv.CreateDecryptor();
            
            byte[] packetToken = PacketCryptography.Decrypt(packet.VerifyToken);

            if (!packetToken.SequenceEqual(PacketCryptography.VerifyToken))
            {
                client.Kick("Wrong token");
                return;
            }

            client.Send_Sync_Packet(new EncryptionKeyResponse());

            client.Encrypter = send.CreateEncryptor();

        }
开发者ID:TheaP,项目名称:c-raft,代码行数:22,代码来源:Client.Recv.cs

示例4: HandleTabCompletePacket

 public static void HandleTabCompletePacket(Client client, TabCompletePacket packet)
 {
     var str = new StringBuilder();
     var s = (from a in client.GetServer().GetClients() where a.Username.Contains(packet.Text) select a).ToList();
     if (!s.Any())
     {
         return;
     }
     if (s.Count() > 1)
     {
         foreach (var c in s)
         {
             str.Append(c.Username);
         }
         str.Append('\0');
     }
     else
     {
         str.Append(s[0].Username);
     }
     client.Send_Sync_Packet(new TabCompletePacket { Text = str.ToString() });
 }
开发者ID:OBASI,项目名称:c-raft,代码行数:22,代码来源:Client.Recv.cs


注:本文中的Chraft.Net.Client.Send_Sync_Packet方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。