namespace Devoid { using Devoid.Encoding; using Devoid.Net.Server.Messages; using Devoid.Properties; using System; using System.ComponentModel; using System.Drawing; using System.Runtime.CompilerServices; using System.Windows.Forms; public class frmMain : Form { private ToolStripMenuItem allFUSERightsToolStripMenuItem; private ToolStripMenuItem applyLingoInjectionsAtRoomItemsToolStripMenuItem; private MenuStrip bMenu; private ToolStripMenuItem botsShoutWhatTrackerSaysToolStripMenuItem; private ToolStripMenuItem botsToolStripMenuItem; private GroupBox boxLogger; private CheckBox chkClientServerPause; private CheckBox chkServerClientPause; private Button cmdClientServerClear; private Button cmdSendClient; private Button cmdSendServer; private Button cmdServerClientClear; private IContainer components = null; public ToolStripMenuItem connectToolStripMenuItem1; private ToolStripMenuItem controlPanelToolStripMenuItem; public ToolStripMenuItem disconnectToolStripMenuItem; private ToolStripMenuItem exitToolStripMenuItem; private ToolStripMenuItem followTrackerMovementToolStripMenuItem; private ToolStripMenuItem followTrackerToRoomsToolStripMenuItem; private Label label1; private Label label2; private Label label3; private Label label4; private Label label5; private Label label6; private ToolStripMenuItem massAccountUpdateToolStripMenuItem; private ToolStripMenuItem massUserRegisterToolStripMenuItem; private ClientServerMessageLogger mClientServerLogger; private ToolStripMenuItem mnuFile; private ToolStripMenuItem mnuScripts; private ServerClientMessageLogger mServerClientLogger; private ToolStripMenuItem reenterOnRoomkickToolStripMenuItem; private ToolStripMenuItem trackerToolStripMenuItem; public TextBox txtClientServer; private TextBox txtSendClientContent; private TextBox txtSendClientID; private TextBox txtSendServerContent; private TextBox txtSendServerID; public TextBox txtServerClient; public frmMain(bool enableDebugService) { if (enableDebugService) { Engine.DEBUG_ENABLED = true; Engine.showLog(); } this.InitializeComponent(); this.mServerClientLogger = new ServerClientMessageLogger(this.logServerClientMessage); this.mClientServerLogger = new ClientServerMessageLogger(this.logClientServerMessage); this.setTools(); } private void allFUSERightsToolStripMenuItem_Click(object sender, EventArgs e) { if ((Engine.Sessions.trackerSession != null) && (Engine.Sessions.trackerSession.Connection != null)) { byte[] bytes = Engine.Latin1Encoder.GetBytes(""); serverMessage pMessage = new serverMessage(2, bytes); Engine.Sessions.trackerSession.Connection.sendMessageToClient(pMessage); Engine.Interface.showMessageBox("Sent all FUSE rights to tracker connection user.", "Devoid : FUSE rights", MessageBoxIcon.Asterisk); } } private void applyLingoInjectionsAtRoomItemsToolStripMenuItem_Click(object sender, EventArgs e) { Engine.extSettings.applyLingoInjectionsToItems = !Engine.extSettings.applyLingoInjectionsToItems; this.setTools(); } private void botsShoutWhatTrackerSaysToolStripMenuItem_Click(object sender, EventArgs e) { Engine.extSettings.botsShoutForTrackerSay = !Engine.extSettings.botsShoutForTrackerSay; this.setTools(); } private void boxLogger_Enter(object sender, EventArgs e) { } private void cmdClientServerClear_Click(object sender, EventArgs e) { this.txtClientServer.Clear(); } private void cmdSendClient_Click(object sender, EventArgs e) { if (this.txtSendClientID.Text.Length > 0) { byte[] bytes = Engine.Latin1Encoder.GetBytes(this.txtSendClientContent.Text); serverMessage pMessage = new serverMessage(this.getMessageIdFromString(this.txtSendClientID.Text), bytes); try { Engine.Sessions.trackerSession.Connection.sendMessageToClient(pMessage); } catch { } } } private void cmdSendServer_Click(object sender, EventArgs e) { if (this.txtSendServerID.Text.Length > 0) { clientMessage pMessage = new clientMessage(this.getMessageIdFromString(this.txtSendServerID.Text), this.txtSendServerContent.Text); try { Engine.Sessions.trackerSession.Connection.sendMessageToServer(pMessage); } catch { } } } private void cmdServerClientClear_Click(object sender, EventArgs e) { this.txtServerClient.Clear(); } private void connectToolStripMenuItem1_Click(object sender, EventArgs e) { if (Engine.Sessions.trackerSession == null) { new frmLogin().Show(); } } private void controlPanelToolStripMenuItem_Click(object sender, EventArgs e) { Engine.Interface.botForm.Show(); } private void disconnectToolStripMenuItem_Click(object sender, EventArgs e) { if (Engine.Sessions.trackerSession != null) { if (Engine.Sessions.trackerSession.Connection != null) { try { Engine.Sessions.trackerSession.Connection.Disconnect(); } catch { } } Engine.Sessions.trackerSession = null; this.setTools(); } } protected override void Dispose(bool disposing) { if (disposing && (this.components != null)) { this.components.Dispose(); } base.Dispose(disposing); } private void exitToolStripMenuItem_Click(object sender, EventArgs e) { Engine.extSettings.setDefaultItemCustomDatas(); } private void followTrackerMovementToolStripMenuItem_Click(object sender, EventArgs e) { Engine.extSettings.botsFollowTrackerWalk = !Engine.extSettings.botsFollowTrackerWalk; this.setTools(); } private void followTrackerToRoomsToolStripMenuItem_Click(object sender, EventArgs e) { Engine.extSettings.botsFollowTrackerToRooms = !Engine.extSettings.botsFollowTrackerToRooms; this.setTools(); } private void frmMain_Load(object sender, EventArgs e) { } public int getMessageIdFromString(string s) { int result = -1; if (!int.TryParse(s, out result)) { result = base64Encoding.Decode(s); } return result; } private void InitializeComponent() { ComponentResourceManager manager = new ComponentResourceManager(typeof(frmMain)); this.bMenu = new MenuStrip(); this.mnuFile = new ToolStripMenuItem(); this.exitToolStripMenuItem = new ToolStripMenuItem(); this.trackerToolStripMenuItem = new ToolStripMenuItem(); this.connectToolStripMenuItem1 = new ToolStripMenuItem(); this.disconnectToolStripMenuItem = new ToolStripMenuItem(); this.allFUSERightsToolStripMenuItem = new ToolStripMenuItem(); this.mnuScripts = new ToolStripMenuItem(); this.massUserRegisterToolStripMenuItem = new ToolStripMenuItem(); this.massAccountUpdateToolStripMenuItem = new ToolStripMenuItem(); this.botsToolStripMenuItem = new ToolStripMenuItem(); this.controlPanelToolStripMenuItem = new ToolStripMenuItem(); this.followTrackerToRoomsToolStripMenuItem = new ToolStripMenuItem(); this.followTrackerMovementToolStripMenuItem = new ToolStripMenuItem(); this.reenterOnRoomkickToolStripMenuItem = new ToolStripMenuItem(); this.botsShoutWhatTrackerSaysToolStripMenuItem = new ToolStripMenuItem(); this.boxLogger = new GroupBox(); this.cmdServerClientClear = new Button(); this.cmdSendClient = new Button(); this.cmdClientServerClear = new Button(); this.chkServerClientPause = new CheckBox(); this.label4 = new Label(); this.txtSendClientID = new TextBox(); this.label5 = new Label(); this.txtSendClientContent = new TextBox(); this.label6 = new Label(); this.txtServerClient = new TextBox(); this.chkClientServerPause = new CheckBox(); this.cmdSendServer = new Button(); this.label3 = new Label(); this.txtSendServerID = new TextBox(); this.label2 = new Label(); this.txtSendServerContent = new TextBox(); this.label1 = new Label(); this.txtClientServer = new TextBox(); this.applyLingoInjectionsAtRoomItemsToolStripMenuItem = new ToolStripMenuItem(); this.bMenu.SuspendLayout(); this.boxLogger.SuspendLayout(); base.SuspendLayout(); this.bMenu.Items.AddRange(new ToolStripItem[] { this.mnuFile, this.trackerToolStripMenuItem, this.mnuScripts, this.botsToolStripMenuItem }); this.bMenu.Location = new Point(0, 0); this.bMenu.Name = "bMenu"; this.bMenu.Size = new Size(0x23e, 0x18); this.bMenu.TabIndex = 2; this.mnuFile.DropDownItems.AddRange(new ToolStripItem[] { this.exitToolStripMenuItem }); this.mnuFile.Image = Resources.application_form; this.mnuFile.Name = "mnuFile"; this.mnuFile.Size = new Size(0x33, 20); this.mnuFile.Text = "File"; this.exitToolStripMenuItem.Image = Resources.application_delete; this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; this.exitToolStripMenuItem.Size = new Size(0x67, 0x16); this.exitToolStripMenuItem.Text = "Exit"; this.exitToolStripMenuItem.Click += new EventHandler(this.exitToolStripMenuItem_Click); this.trackerToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { this.connectToolStripMenuItem1, this.disconnectToolStripMenuItem, this.allFUSERightsToolStripMenuItem, this.applyLingoInjectionsAtRoomItemsToolStripMenuItem }); this.trackerToolStripMenuItem.Image = Resources.link; this.trackerToolStripMenuItem.Name = "trackerToolStripMenuItem"; this.trackerToolStripMenuItem.Size = new Size(0x47, 20); this.trackerToolStripMenuItem.Text = "Tracker"; this.connectToolStripMenuItem1.Image = Resources.lightbulb; this.connectToolStripMenuItem1.Name = "connectToolStripMenuItem1"; this.connectToolStripMenuItem1.Size = new Size(0xfd, 0x16); this.connectToolStripMenuItem1.Text = "Connect"; this.connectToolStripMenuItem1.Click += new EventHandler(this.connectToolStripMenuItem1_Click); this.disconnectToolStripMenuItem.Enabled = false; this.disconnectToolStripMenuItem.Image = Resources.lightbulb_off; this.disconnectToolStripMenuItem.Name = "disconnectToolStripMenuItem"; this.disconnectToolStripMenuItem.Size = new Size(0xfd, 0x16); this.disconnectToolStripMenuItem.Text = "Disconnect"; this.disconnectToolStripMenuItem.Click += new EventHandler(this.disconnectToolStripMenuItem_Click); this.allFUSERightsToolStripMenuItem.Image = Resources.pill_go; this.allFUSERightsToolStripMenuItem.Name = "allFUSERightsToolStripMenuItem"; this.allFUSERightsToolStripMenuItem.Size = new Size(0xfd, 0x16); this.allFUSERightsToolStripMenuItem.Text = "All FUSE rights"; this.allFUSERightsToolStripMenuItem.Click += new EventHandler(this.allFUSERightsToolStripMenuItem_Click); this.mnuScripts.DropDownItems.AddRange(new ToolStripItem[] { this.massUserRegisterToolStripMenuItem, this.massAccountUpdateToolStripMenuItem }); this.mnuScripts.Image = Resources.script; this.mnuScripts.Name = "mnuScripts"; this.mnuScripts.Size = new Size(0x43, 20); this.mnuScripts.Text = "Scripts"; this.massUserRegisterToolStripMenuItem.Image = Resources.user_gray; this.massUserRegisterToolStripMenuItem.Name = "massUserRegisterToolStripMenuItem"; this.massUserRegisterToolStripMenuItem.Size = new Size(0xbb, 0x16); this.massUserRegisterToolStripMenuItem.Text = "Mass user register"; this.massUserRegisterToolStripMenuItem.Click += new EventHandler(this.massUserRegisterToolStripMenuItem_Click); this.massAccountUpdateToolStripMenuItem.Name = "massAccountUpdateToolStripMenuItem"; this.massAccountUpdateToolStripMenuItem.Size = new Size(0xbb, 0x16); this.massAccountUpdateToolStripMenuItem.Text = "Mass account update"; this.massAccountUpdateToolStripMenuItem.Click += new EventHandler(this.massAccountUpdateToolStripMenuItem_Click); this.botsToolStripMenuItem.DropDownItems.AddRange(new ToolStripItem[] { this.controlPanelToolStripMenuItem, this.followTrackerToRoomsToolStripMenuItem, this.followTrackerMovementToolStripMenuItem, this.reenterOnRoomkickToolStripMenuItem, this.botsShoutWhatTrackerSaysToolStripMenuItem }); this.botsToolStripMenuItem.Image = Resources.group; this.botsToolStripMenuItem.Name = "botsToolStripMenuItem"; this.botsToolStripMenuItem.Size = new Size(0x38, 20); this.botsToolStripMenuItem.Text = "Bots"; this.controlPanelToolStripMenuItem.Image = Resources.calculator; this.controlPanelToolStripMenuItem.Name = "controlPanelToolStripMenuItem"; this.controlPanelToolStripMenuItem.Size = new Size(0xe1, 0x16); this.controlPanelToolStripMenuItem.Text = "Control panel"; this.controlPanelToolStripMenuItem.Click += new EventHandler(this.controlPanelToolStripMenuItem_Click); this.followTrackerToRoomsToolStripMenuItem.CheckOnClick = true; this.followTrackerToRoomsToolStripMenuItem.Name = "followTrackerToRoomsToolStripMenuItem"; this.followTrackerToRoomsToolStripMenuItem.Size = new Size(0xe1, 0x16); this.followTrackerToRoomsToolStripMenuItem.Text = "Follow tracker to rooms"; this.followTrackerToRoomsToolStripMenuItem.Click += new EventHandler(this.followTrackerToRoomsToolStripMenuItem_Click); this.followTrackerMovementToolStripMenuItem.CheckOnClick = true; this.followTrackerMovementToolStripMenuItem.Name = "followTrackerMovementToolStripMenuItem"; this.followTrackerMovementToolStripMenuItem.Size = new Size(0xe1, 0x16); this.followTrackerMovementToolStripMenuItem.Text = "Follow tracker movement"; this.followTrackerMovementToolStripMenuItem.Click += new EventHandler(this.followTrackerMovementToolStripMenuItem_Click); this.reenterOnRoomkickToolStripMenuItem.CheckOnClick = true; this.reenterOnRoomkickToolStripMenuItem.Name = "reenterOnRoomkickToolStripMenuItem"; this.reenterOnRoomkickToolStripMenuItem.Size = new Size(0xe1, 0x16); this.reenterOnRoomkickToolStripMenuItem.Text = "Re-enter on roomkick"; this.reenterOnRoomkickToolStripMenuItem.Click += new EventHandler(this.reenterOnRoomkickToolStripMenuItem_Click); this.botsShoutWhatTrackerSaysToolStripMenuItem.CheckOnClick = true; this.botsShoutWhatTrackerSaysToolStripMenuItem.Name = "botsShoutWhatTrackerSaysToolStripMenuItem"; this.botsShoutWhatTrackerSaysToolStripMenuItem.Size = new Size(0xe1, 0x16); this.botsShoutWhatTrackerSaysToolStripMenuItem.Text = "Bots shout what tracker says"; this.botsShoutWhatTrackerSaysToolStripMenuItem.Click += new EventHandler(this.botsShoutWhatTrackerSaysToolStripMenuItem_Click); this.boxLogger.Controls.Add(this.cmdServerClientClear); this.boxLogger.Controls.Add(this.cmdSendClient); this.boxLogger.Controls.Add(this.cmdClientServerClear); this.boxLogger.Controls.Add(this.chkServerClientPause); this.boxLogger.Controls.Add(this.label4); this.boxLogger.Controls.Add(this.txtSendClientID); this.boxLogger.Controls.Add(this.label5); this.boxLogger.Controls.Add(this.txtSendClientContent); this.boxLogger.Controls.Add(this.label6); this.boxLogger.Controls.Add(this.txtServerClient); this.boxLogger.Controls.Add(this.chkClientServerPause); this.boxLogger.Controls.Add(this.cmdSendServer); this.boxLogger.Controls.Add(this.label3); this.boxLogger.Controls.Add(this.txtSendServerID); this.boxLogger.Controls.Add(this.label2); this.boxLogger.Controls.Add(this.txtSendServerContent); this.boxLogger.Controls.Add(this.label1); this.boxLogger.Controls.Add(this.txtClientServer); this.boxLogger.Location = new Point(12, 0x20); this.boxLogger.Name = "boxLogger"; this.boxLogger.Size = new Size(0x221, 0x196); this.boxLogger.TabIndex = 3; this.boxLogger.TabStop = false; this.boxLogger.Text = "Message logging"; this.boxLogger.Enter += new EventHandler(this.boxLogger_Enter); this.cmdServerClientClear.FlatStyle = FlatStyle.Flat; this.cmdServerClientClear.Location = new Point(0x1df, 0x170); this.cmdServerClientClear.Name = "cmdServerClientClear"; this.cmdServerClientClear.Size = new Size(0x38, 0x20); this.cmdServerClientClear.TabIndex = 0x12; this.cmdServerClientClear.Text = "Clear"; this.cmdServerClientClear.UseVisualStyleBackColor = true; this.cmdServerClientClear.Click += new EventHandler(this.cmdServerClientClear_Click); this.cmdSendClient.FlatStyle = FlatStyle.Flat; this.cmdSendClient.Location = new Point(0x11a, 0x170); this.cmdSendClient.Name = "cmdSendClient"; this.cmdSendClient.Size = new Size(0xbf, 0x20); this.cmdSendClient.TabIndex = 0x11; this.cmdSendClient.Text = "Send to client"; this.cmdSendClient.UseVisualStyleBackColor = true; this.cmdSendClient.Click += new EventHandler(this.cmdSendClient_Click); this.cmdClientServerClear.FlatStyle = FlatStyle.Flat; this.cmdClientServerClear.Location = new Point(0xcb, 0x170); this.cmdClientServerClear.Name = "cmdClientServerClear"; this.cmdClientServerClear.Size = new Size(0x38, 0x20); this.cmdClientServerClear.TabIndex = 0x10; this.cmdClientServerClear.Text = "Clear"; this.cmdClientServerClear.UseVisualStyleBackColor = true; this.cmdClientServerClear.Click += new EventHandler(this.cmdClientServerClear_Click); this.chkServerClientPause.AutoSize = true; this.chkServerClientPause.Location = new Point(0x1df, 0x146); this.chkServerClientPause.Name = "chkServerClientPause"; this.chkServerClientPause.Size = new Size(0x38, 0x11); this.chkServerClientPause.TabIndex = 15; this.chkServerClientPause.Text = "Pause"; this.chkServerClientPause.UseVisualStyleBackColor = true; this.label4.AutoSize = true; this.label4.Location = new Point(0x150, 330); this.label4.Name = "label4"; this.label4.Size = new Size(0x2c, 13); this.label4.TabIndex = 13; this.label4.Text = "Content"; this.txtSendClientID.BorderStyle = BorderStyle.FixedSingle; this.txtSendClientID.Location = new Point(0x11a, 0x15a); this.txtSendClientID.Name = "txtSendClientID"; this.txtSendClientID.Size = new Size(0x33, 20); this.txtSendClientID.TabIndex = 12; this.txtSendClientID.Text = "BK"; this.label5.AutoSize = true; this.label5.Location = new Point(0x117, 330); this.label5.Name = "label5"; this.label5.Size = new Size(0x3a, 13); this.label5.TabIndex = 11; this.label5.Text = "ID/Header"; this.txtSendClientContent.BorderStyle = BorderStyle.FixedSingle; this.txtSendClientContent.Location = new Point(0x153, 0x15a); this.txtSendClientContent.Name = "txtSendClientContent"; this.txtSendClientContent.Size = new Size(0xc4, 20); this.txtSendClientContent.TabIndex = 10; this.txtSendClientContent.Text = "Devoid [Nillus]"; this.label6.AutoSize = true; this.label6.Location = new Point(0x117, 0x19); this.label6.Name = "label6"; this.label6.Size = new Size(0x4e, 13); this.label6.TabIndex = 9; this.label6.Text = "Server to client"; this.txtServerClient.BackColor = SystemColors.Window; this.txtServerClient.BorderStyle = BorderStyle.FixedSingle; this.txtServerClient.Location = new Point(0x11a, 0x29); this.txtServerClient.Multiline = true; this.txtServerClient.Name = "txtServerClient"; this.txtServerClient.ReadOnly = true; this.txtServerClient.ScrollBars = ScrollBars.Vertical; this.txtServerClient.Size = new Size(0xfd, 0x117); this.txtServerClient.TabIndex = 8; this.chkClientServerPause.AutoSize = true; this.chkClientServerPause.Location = new Point(0xcb, 0x146); this.chkClientServerPause.Name = "chkClientServerPause"; this.chkClientServerPause.Size = new Size(0x38, 0x11); this.chkClientServerPause.TabIndex = 7; this.chkClientServerPause.Text = "Pause"; this.chkClientServerPause.UseVisualStyleBackColor = true; this.cmdSendServer.FlatStyle = FlatStyle.Flat; this.cmdSendServer.Location = new Point(6, 0x170); this.cmdSendServer.Name = "cmdSendServer"; this.cmdSendServer.Size = new Size(0xbf, 0x20); this.cmdSendServer.TabIndex = 6; this.cmdSendServer.Text = "Send to server"; this.cmdSendServer.UseVisualStyleBackColor = true; this.cmdSendServer.Click += new EventHandler(this.cmdSendServer_Click); this.label3.AutoSize = true; this.label3.Location = new Point(60, 330); this.label3.Name = "label3"; this.label3.Size = new Size(0x2c, 13); this.label3.TabIndex = 5; this.label3.Text = "Content"; this.txtSendServerID.BorderStyle = BorderStyle.FixedSingle; this.txtSendServerID.Location = new Point(6, 0x15a); this.txtSendServerID.Name = "txtSendServerID"; this.txtSendServerID.Size = new Size(0x33, 20); this.txtSendServerID.TabIndex = 4; this.txtSendServerID.Text = "@H"; this.label2.AutoSize = true; this.label2.Location = new Point(3, 330); this.label2.Name = "label2"; this.label2.Size = new Size(0x3a, 13); this.label2.TabIndex = 3; this.label2.Text = "ID/Header"; this.txtSendServerContent.BorderStyle = BorderStyle.FixedSingle; this.txtSendServerContent.Location = new Point(0x3f, 0x15a); this.txtSendServerContent.Name = "txtSendServerContent"; this.txtSendServerContent.Size = new Size(0xc4, 20); this.txtSendServerContent.TabIndex = 2; this.label1.AutoSize = true; this.label1.Location = new Point(3, 0x19); this.label1.Name = "label1"; this.label1.Size = new Size(0x4d, 13); this.label1.TabIndex = 1; this.label1.Text = "Client to server"; this.txtClientServer.BackColor = SystemColors.Window; this.txtClientServer.BorderStyle = BorderStyle.FixedSingle; this.txtClientServer.Location = new Point(6, 0x29); this.txtClientServer.Multiline = true; this.txtClientServer.Name = "txtClientServer"; this.txtClientServer.ReadOnly = true; this.txtClientServer.ScrollBars = ScrollBars.Vertical; this.txtClientServer.Size = new Size(0xfd, 0x117); this.txtClientServer.TabIndex = 0; this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.CheckOnClick = true; this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.Name = "applyLingoInjectionsAtRoomItemsToolStripMenuItem"; this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.Size = new Size(0xfd, 0x16); this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.Text = "Apply lingo injections at room items"; this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.Click += new EventHandler(this.applyLingoInjectionsAtRoomItemsToolStripMenuItem_Click); base.AutoScaleDimensions = new SizeF(6f, 13f); base.AutoScaleMode = AutoScaleMode.Font; this.BackColor = SystemColors.Control; base.ClientSize = new Size(0x23e, 450); base.Controls.Add(this.boxLogger); base.Controls.Add(this.bMenu); base.Icon = (Icon) manager.GetObject("$this.Icon"); base.MaximizeBox = false; base.Name = "frmMain"; this.Text = "Devoid : main"; base.Load += new EventHandler(this.frmMain_Load); this.bMenu.ResumeLayout(false); this.bMenu.PerformLayout(); this.boxLogger.ResumeLayout(false); this.boxLogger.PerformLayout(); base.ResumeLayout(false); base.PerformLayout(); } public void logClientServerMessage(clientMessage pMessage) { if (base.InvokeRequired) { base.Invoke(this.mClientServerLogger, new object[] { pMessage }); } else if (!this.chkClientServerPause.Checked) { this.txtClientServer.AppendText(string.Concat(new object[] { pMessage.ID, " (", pMessage.MethodName, ": \"", pMessage.encodedID, "\"): " })); this.txtClientServer.AppendText("\"" + pMessage.GetContent() + "\""); this.txtClientServer.AppendText("\r\n\r\n"); } } public void logServerClientMessage(serverMessage pMessage) { if (base.InvokeRequired) { base.Invoke(this.mServerClientLogger, new object[] { pMessage }); } else if (!this.chkServerClientPause.Checked) { this.txtServerClient.AppendText(string.Concat(new object[] { pMessage.ID, " (\"", pMessage.encodedID, "\"): " })); this.txtServerClient.AppendText("\"" + pMessage.GetStringData() + "\""); this.txtServerClient.AppendText("\r\n\r\n"); } } private void massAccountUpdateToolStripMenuItem_Click(object sender, EventArgs e) { new frmUpdateAccounts().Show(); } private void massUserRegisterToolStripMenuItem_Click(object sender, EventArgs e) { new frmMassRegister().Show(); } private void reenterOnRoomkickToolStripMenuItem_Click(object sender, EventArgs e) { Engine.extSettings.botsReEnterOnKick = !Engine.extSettings.botsReEnterOnKick; this.setTools(); } public void setTools() { if (base.InvokeRequired) { base.Invoke(new CrossThreadToolSetter(this.setTools)); } else { bool flag = Engine.Sessions.trackerSession != null; bool flag2 = flag && (Engine.Sessions.trackerSession.Connection != null); this.connectToolStripMenuItem1.Enabled = !flag; this.disconnectToolStripMenuItem.Enabled = flag; this.allFUSERightsToolStripMenuItem.Enabled = flag2; this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.Enabled = flag2; this.applyLingoInjectionsAtRoomItemsToolStripMenuItem.Checked = Engine.extSettings.applyLingoInjectionsToItems; this.boxLogger.Enabled = flag2; this.botsToolStripMenuItem.Enabled = flag2; this.followTrackerMovementToolStripMenuItem.Checked = Engine.extSettings.botsFollowTrackerWalk; this.followTrackerToRoomsToolStripMenuItem.Checked = Engine.extSettings.botsFollowTrackerToRooms; this.reenterOnRoomkickToolStripMenuItem.Checked = Engine.extSettings.botsReEnterOnKick; this.botsShoutWhatTrackerSaysToolStripMenuItem.Checked = Engine.extSettings.botsShoutForTrackerSay; } } private delegate void ClientServerMessageLogger(clientMessage pMessage); private delegate void CrossThreadToolSetter(); private delegate void ServerClientMessageLogger(serverMessage pMessage); } }