rendered paste bodynamespace AOE.Packets.Actions
{
#region Namespace Import Declarations
using System;
using System.IO;
using System.Text;
#endregion
public class GMcmd
{
#region Constructors
public GMcmd ()
{
}
#endregion
#region Methods
public byte[] cmd (byte[] packet)
{
byte[] byteArray1;
ZoneTransition zoneTransition1;
int i1;
int i2;
byte[] byteArray2;
byte[] byteArray3;
byte[] byteArray4;
byte[] byteArray5;
int i3;
string string1;
string string2;
string string3;
byte[] byteArray6;
string string4;
string string5;
int i4;
int i5;
int i6;
string string6;
Exception exception1;
byte[] byteArray8;
byte[] byteArray9;
try
{
byteArray1 = new byte[] { packet[8], packet[9], packet[10], packet[11] };
zoneTransition1 = new ZoneTransition ();
i1 = 45;
i2 = 0;
byteArray9 = new byte[] { 32 };
byteArray2 = byteArray9;
byteArray9 = new byte[1];
byteArray3 = byteArray9;
byteArray4 = new byte[124];
while (! byteArray2[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i1++;
i2++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
string1 = Encoding.ASCII.GetString (byteArray5);
if ((string1.ToString () == "teleport") || (string1.ToString () == "Teleport"))
{
i1++;
i2 = 0;
byteArray4 = new byte[124];
while (! byteArray2[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i2++;
i1++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
string2 = Encoding.ASCII.GetString (byteArray5);
i1++;
i2 = 0;
byteArray4 = new byte[124];
while (! byteArray2[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i2++;
i1++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
string3 = Encoding.ASCII.GetString (byteArray5);
i1++;
i2 = 0;
byteArray4 = new byte[124];
byteArray6 = new byte[1];
byteArray6[i2] = packet[i1];
string4 = Encoding.ASCII.GetString (byteArray6);
if ((string4.ToString () == "z") || (string4.ToString () == "Z"))
{
return ((byte[]) null);
}
else
{
while (! byteArray3[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i2++;
i1++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
string5 = Encoding.ASCII.GetString (byteArray5);
i4 = Convert.ToInt32 (string2);
i5 = Convert.ToInt32 (string3);
i6 = Convert.ToInt32 (string5);
FileStream fileStream1 = new FileStream (string.Format ("Zones\\{0}.xml", i6), FileMode.Open, FileAccess.Read);
return zoneTransition1.Warp (i6, i4, i5, 10, 0);
}
}
if ((string1.ToString () == "spawn") || (string1.ToString () == "Spawn"))
{
i1++;
i2 = 0;
byteArray4 = new byte[124];
while (! byteArray2[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i2++;
i1++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
string6 = Encoding.ASCII.GetString (byteArray5);
if ((string6.ToString () == "item") || (string6.ToString () == "Item"))
{
i1++;
i2 = 0;
byteArray4 = new byte[124];
while (! byteArray2[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i2++;
i1++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
int i7 = Convert.ToInt32 (Encoding.ASCII.GetString (byteArray5));
}
else if ((string6.ToString () == "mob") || (string6.ToString () == "Mob"))
{
i1++;
i2 = 0;
byteArray4 = new byte[124];
while (! byteArray2[0].Equals (packet[i1]))
{
byteArray4[i2] = packet[i1];
i2++;
i1++;
}
byteArray5 = new byte[i2];
for (i3 = 0; (i3 < i2); i3++)
{
byteArray5[i3] = byteArray4[i3];
}
int i8 = Convert.ToInt32 (Encoding.ASCII.GetString (byteArray5));
}
return ((byte[]) null);
}
else
{
byteArray8 = ((byte[]) null);
}
}
catch (FileNotFoundException)
{
Console.WriteLine ("The zone you are trying to teleport to does not have an XML data file.");
byteArray8 = ((byte[]) null);
}
catch (Exception exception2)
{
exception1 = exception2;
Console.WriteLine (exception1.ToString ());
byteArray8 = ((byte[]) null);
}
return byteArray8;
}
public byte[] gmmessage (byte[] id, string message)
{
int i2;
byte[] byteArray1 = new byte[] { 223, 223, byte.MinValue, 10, byte.MinValue, 1, byte.MinValue, byte.MinValue, byte.MinValue, byte.MinValue,
12, 32, 95, 75, 68, 42, byte.MinValue, byte.MinValue, 195, 80,
byte.MinValue, byte.MinValue, byte.MinValue, byte.MinValue, byte.MinValue, byte.MinValue, 1 };
byte[] byteArray2 = new byte[124];
byteArray2[0] = byteArray1[0];
byteArray2[1] = byteArray1[1];
byteArray2[2] = byteArray1[2];
byteArray2[3] = byteArray1[3];
byteArray2[4] = byteArray1[4];
byteArray2[5] = byteArray1[5];
byteArray2[6] = byteArray1[6];
byteArray2[7] = byteArray1[7];
byteArray2[8] = byteArray1[8];
byteArray2[9] = byteArray1[9];
byteArray2[10] = byteArray1[10];
byteArray2[11] = byteArray1[11];
byteArray2[12] = id[0];
byteArray2[13] = id[1];
byteArray2[14] = id[2];
byteArray2[15] = id[3];
byteArray2[16] = byteArray1[12];
byteArray2[17] = byteArray1[13];
byteArray2[18] = byteArray1[14];
byteArray2[19] = byteArray1[15];
byteArray2[20] = byteArray1[16];
byteArray2[21] = byteArray1[17];
byteArray2[22] = byteArray1[18];
byteArray2[23] = byteArray1[19];
byteArray2[24] = id[0];
byteArray2[25] = id[1];
byteArray2[26] = id[2];
byteArray2[27] = id[3];
byteArray2[28] = byteArray1[20];
byteArray2[29] = byteArray1[21];
int i1 = 29;
byte[] byteArray3 = Encoding.ASCII.GetBytes (message);
byteArray3.CopyTo (((Array) byteArray2), 30);
i1 += byteArray3.Length;
i1++;
byte[] byteArray4 = new byte[i1];
for (i2 = 0; (i2 < i1); i2++)
{
byteArray4[i2] = byteArray2[i2];
}
return byteArray4;
}
#endregion
}
}