本文整理汇总了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() });
}
示例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();
}
示例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();
}
示例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() });
}