mirror of https://github.com/qwqdanchun/DcRat.git
87 lines
2.8 KiB
C#
87 lines
2.8 KiB
C#
using Server.MessagePack;
|
|
using Server.Connection;
|
|
using Microsoft.VisualBasic;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using System.Threading;
|
|
using System.IO;
|
|
using Server.Algorithm;
|
|
|
|
namespace Server.Forms
|
|
{
|
|
public partial class FormChat : Form
|
|
{
|
|
public Form1 F { get; set; }
|
|
internal Clients ParentClient { get; set; }
|
|
internal Clients Client { get; set; }
|
|
|
|
private string Nickname = "Admin";
|
|
public FormChat()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void FormChat_Load(object sender, EventArgs e)
|
|
{
|
|
string nick = Interaction.InputBox("TYPE YOUR NICKNAME", "CHAT", "Admin");
|
|
if (string.IsNullOrEmpty(nick))
|
|
this.Close();
|
|
else
|
|
{
|
|
Nickname = nick;
|
|
MsgPack msgpack = new MsgPack();
|
|
msgpack.ForcePathObject("Pac_ket").AsString = "plu_gin";
|
|
msgpack.ForcePathObject("Dll").AsString = (GetHash.GetChecksum(@"Plugins\Chat.dll"));
|
|
ThreadPool.QueueUserWorkItem(ParentClient.Send, msgpack.Encode2Bytes());
|
|
}
|
|
}
|
|
|
|
private void FormChat_FormClosed(object sender, FormClosedEventArgs e)
|
|
{
|
|
if (Client != null)
|
|
{
|
|
try
|
|
{
|
|
MsgPack msgpack = new MsgPack();
|
|
msgpack.ForcePathObject("Pac_ket").AsString = "chatExit";
|
|
ThreadPool.QueueUserWorkItem(Client.Send, msgpack.Encode2Bytes());
|
|
}
|
|
catch { }
|
|
}
|
|
}
|
|
|
|
private void Timer1_Tick(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
if (!ParentClient.TcpClient.Connected || !Client.TcpClient.Connected) this.Close();
|
|
}
|
|
catch { }
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
if (textBox1.Enabled && !string.IsNullOrWhiteSpace(textBox1.Text))
|
|
{
|
|
richTextBox1.SelectionColor = Color.Green;
|
|
richTextBox1.AppendText("ME: \n");
|
|
richTextBox1.SelectionColor = Color.Black;
|
|
richTextBox1.AppendText(textBox1.Text + Environment.NewLine);
|
|
MsgPack msgpack = new MsgPack();
|
|
msgpack.ForcePathObject("Pac_ket").AsString = "chatWriteInput";
|
|
msgpack.ForcePathObject("Input").AsString = Nickname + ": \n";
|
|
msgpack.ForcePathObject("Input2").AsString = textBox1.Text;
|
|
ThreadPool.QueueUserWorkItem(Client.Send, msgpack.Encode2Bytes());
|
|
textBox1.Clear();
|
|
}
|
|
}
|
|
}
|
|
}
|