using Filter; using Filter.Database.Account; using Filter.Database.Character; using Filter.Database.GameFilter; using Filter.Networking.Instances; using Filter.Networking.IRC; using Filter.Networking.Manager; using System; using System.Collections.Generic; using System.Data.Entity; using System.Data.Entity.Infrastructure; using System.Linq; using System.Linq.Expressions; using System.Runtime.CompilerServices; using System.Security.Cryptography; using System.Text; using System.Threading; namespace Filter.Utilities { internal class Command { public Command() { } private static string GetMD5Hash(string Value) { MD5 mD5 = MD5.Create(); byte[] numArray = mD5.ComputeHash(Encoding.UTF8.GetBytes(Value)); StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < (int)numArray.Length; i++) { stringBuilder.Append(numArray[i].ToString("x2")); } return stringBuilder.ToString(); } private static string GetSlot(int nStorage) { switch (nStorage) { case 1: { return "Helmet"; } case 2: case 3: case 4: case 5: case 8: case 9: case 14: case 18: case 20: case 22: case 24: case 26: case 27: { return "Unknown"; } case 6: { return "Necklace"; } case 7: { return "Armor"; } case 10: { return "Weapon Slot #1"; } case 11: { return "Skin Slot #1"; } case 12: { return "Weapon Slot #2"; } case 13: { return "Skin Slot #1"; } case 15: { return "Ring Slot #1"; } case 16: { return "Ring Slot #2"; } case 17: { return "Badge"; } case 19: { return "Pants"; } case 21: { return "Boots"; } case 23: { return "Earring"; } case 25: { return "Aura"; } case 28: { return "Pet"; } default: { return "Unknown"; } } } public static void HandleCommand(ManagerClient ClientSocket, Packet ClientPacket, string Command) { tGuild _tGuild; string str; string str1; char chr; object[] length; Dictionary.KeyCollection.Enumerator enumerator; string[] strArrays = Command.Split(new char[] { ' ' }); if (strArrays[0].ToLower() == "&antitrade") { AntiTrade antiTrade = ( from nCharNo in Program.GameFilterData.AntiTrades where nCharNo.nCharNo == ClientSocket.Character.nCharNo select nCharNo).FirstOrDefault(); if ((int)strArrays.Length == 1) { if (antiTrade != null) { Echo.SendWhisper(ClientSocket, "The anti trade module is currently enabled on you. This means that no one can trade you.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "The anti trade module is currently disabled on you. This means that you can be traded.", new object[0]); return; } if (strArrays[1].ToLower() == "on") { if (antiTrade != null) { Echo.SendWhisper(ClientSocket, "Anti trade module is already enabled.", new object[0]); return; } antiTrade = new AntiTrade() { nCharNo = ClientSocket.Character.nCharNo }; Program.GameFilterData.AntiTrades.Add(antiTrade); Program.GameFilterData.SaveChanges(); Echo.SendWhisper(ClientSocket, "Anti trade module has been enabled.", new object[0]); return; } if (strArrays[1].ToLower() != "off") { Echo.SendWhisper(ClientSocket, "Sorry that state is not recognised. Useage: &AntiTrade >>ON/OFF", new object[0]); return; } if (antiTrade == null) { Echo.SendWhisper(ClientSocket, "Anti trade module is already disabled.", new object[0]); return; } Program.GameFilterData.AntiTrades.Remove(( from nCharNo in Program.GameFilterData.AntiTrades where nCharNo.nCharNo == antiTrade.nCharNo select nCharNo).FirstOrDefault()); Program.GameFilterData.SaveChanges(); Echo.SendWhisper(ClientSocket, "Anti trade module has been disabled.", new object[0]); return; } if (strArrays[0].ToLower() == "&antiwhisper") { AntiWhisper antiWhisper = ( from nCharNo in Program.GameFilterData.AntiWhispers where nCharNo.nCharNo == ClientSocket.Character.nCharNo select nCharNo).FirstOrDefault(); if ((int)strArrays.Length == 1) { if (antiWhisper != null) { Echo.SendWhisper(ClientSocket, "The anti whisper module is currently enabled on you. This means that no one can whisper you.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "The anti whisper module is currently disabled on you. This means that you can be whispered.", new object[0]); return; } if (strArrays[1].ToLower() == "on") { if (antiWhisper != null) { Echo.SendWhisper(ClientSocket, "Anti whisper module is already enabled.", new object[0]); return; } antiWhisper = new AntiWhisper() { nCharNo = ClientSocket.Character.nCharNo }; Program.GameFilterData.AntiWhispers.Add(antiWhisper); Program.GameFilterData.SaveChanges(); Echo.SendWhisper(ClientSocket, "Anti whisper module has been enabled.", new object[0]); return; } if (strArrays[1].ToLower() != "off") { Echo.SendWhisper(ClientSocket, "Sorry that state is not recognised. Useage: &AntiWhisper >>ON/OFF", new object[0]); return; } if (antiWhisper == null) { Echo.SendWhisper(ClientSocket, "Anti whisper module is already disabled.", new object[0]); return; } Program.GameFilterData.AntiWhispers.Remove(( from nCharNo in Program.GameFilterData.AntiWhispers where nCharNo.nCharNo == antiWhisper.nCharNo select nCharNo).FirstOrDefault()); Program.GameFilterData.SaveChanges(); Echo.SendWhisper(ClientSocket, "Anti whisper module has been disabled.", new object[0]); return; } if (strArrays[0].ToLower() == "&changepassword") { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a new password. Useage: &ChangePassword >>New Password<<.", new object[0]); return; } if (strArrays[1].Length > 31) { ManagerClient clientSocket = ClientSocket; length = new object[] { strArrays[1].Length }; Echo.SendWhisper(clientSocket, "New password too long. Your Length: {0}. Maximum Length: 31.", length); return; } if (!Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection.", new object[0]); return; } tAccount mD5Hash = ( from nEMID in Program.AccountData.tAccounts where nEMID.nEMID == ClientSocket.Account.nEMID select nEMID).FirstOrDefault(); if (!Convert.ToBoolean(Program.ConfigValues["MD5Passwords"])) { mD5Hash.sUserPass = strArrays[1]; } else { mD5Hash.sUserPass = Filter.Utilities.Command.GetMD5Hash(strArrays[1]); } Program.AccountData.tAccounts.Attach(mD5Hash); DbEntityEntry dbEntityEntry = Program.AccountData.Entry(mD5Hash); dbEntityEntry.Property((tAccount Propery) => Propery.sUserPass).IsModified = true; Program.AccountData.SaveChanges(); ClientSocket.ReloadAccount(); ManagerClient managerClient = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(managerClient, "Your password has been updated to {0}.", length); return; } if (strArrays[0].ToLower() != "&equipment") { if (strArrays[0].ToLower() == "&expclear") { Echo.SendWhisper(ClientSocket, "You will be disconnected in 5 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 4 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 3 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 2 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 1 seconds", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected to fix your exp.", new object[0]); EXPClear eXPClear = new EXPClear() { nCharNo = ClientSocket.Character.nCharNo }; Program.GameFilterData.EXPClears.Add(eXPClear); Program.GameFilterData.SaveChanges(); ClientSocket.Disconnect(); return; } if (strArrays[0].ToLower() == "&help") { if ((int)strArrays.Length == 1 || strArrays[1] == "1") { Echo.SendWhisper(ClientSocket, "The following commands can be used:", new object[0]); Echo.SendWhisper(ClientSocket, "&AntiTrade >>ON/OFF<< - Stops people trading you.", new object[0]); Echo.SendWhisper(ClientSocket, "&AntiWhisper >>ON/OFF<< - Gets a list of anti whisper commands.", new object[0]); Echo.SendWhisper(ClientSocket, "&ChangePassword >>New Password<< - Changes your password.", new object[0]); Echo.SendWhisper(ClientSocket, "&Equipment >>Player Name<< - Gets the equiped items of a player.", new object[0]); Echo.SendWhisper(ClientSocket, "&ExpClear - Disconnects you and sets your exp to 0.", new object[0]); Echo.SendWhisper(ClientSocket, "Page 1/3 To access other pages type &Help >>Page Number<<.", new object[0]); return; } if (strArrays[1] == "2") { Echo.SendWhisper(ClientSocket, "The following commands can be used:", new object[0]); Echo.SendWhisper(ClientSocket, "&Info >>Player Name<< - Gets information about a player.", new object[0]); Echo.SendWhisper(ClientSocket, "&IRC - Gets a list of IRC commands.", new object[0]); Echo.SendWhisper(ClientSocket, "&Link - Gets a list of available links.", new object[0]); Echo.SendWhisper(ClientSocket, "&Lottery - Gets a list of available lottery commands.", new object[0]); Echo.SendWhisper(ClientSocket, "&Online - Gets total number of players online.", new object[0]); Echo.SendWhisper(ClientSocket, "Page 2/3 To access other pages type &Help >>Page Number<<.", new object[0]); return; } if (strArrays[1] == "3") { Echo.SendWhisper(ClientSocket, "The following commands can be used:", new object[0]); Echo.SendWhisper(ClientSocket, "&Ping - Pings the server.", new object[0]); Echo.SendWhisper(ClientSocket, "&PlayerOnline >>Player Name<< - Tells you if a player is online.", new object[0]); Echo.SendWhisper(ClientSocket, "&RespawnTime >>Boss Name<< - Gets the status of a world boss.", new object[0]); Echo.SendWhisper(ClientSocket, "&RequireHelp - Sends a message to a active staff member for you.", new object[0]); Echo.SendWhisper(ClientSocket, "&Unstuck - Disconnects you from the server and moves you to Bera.", new object[0]); Echo.SendWhisper(ClientSocket, "Page 3/3 To access other pages type &Help >>Page Number<<.", new object[0]); return; } if (!(strArrays[1].ToLower() == "staff") || ClientSocket.Character.nAdminLevel < Convert.ToInt32(Program.ConfigValues["Connection_AdminLevel"])) { Echo.SendWhisper(ClientSocket, "Sorry i dont understand. Useage: &Help >>Page Number<<.", new object[0]); return; } if ((int)strArrays.Length != 2 && !(strArrays[2].ToLower() == "1")) { if (strArrays[2].ToLower() != "2") { Echo.SendWhisper(ClientSocket, "Sorry i dont understand. Useage: &Help Staff >>Page Number<<.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "The following commands can be used:", new object[0]); Echo.SendWhisper(ClientSocket, "&WorldMessage >>Message<< [10] - Sends a world message.", new object[0]); Echo.SendWhisper(ClientSocket, "Page 2/2 To access other pages type &Help Staff >>Page Number<<.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "The following commands can be used:", new object[0]); Echo.SendWhisper(ClientSocket, "&Jail >>Player Name<< >>Time (Hours)<< - Jails a player for the time specified. Default hours: 6.", new object[0]); Echo.SendWhisper(ClientSocket, "&KickOut >>Player Name<< [10] - Kicks a player from the server.", new object[0]); Echo.SendWhisper(ClientSocket, "&Mute >>Player Name<< [50] - Mutes a player.", new object[0]); Echo.SendWhisper(ClientSocket, "&SpawnMob >>Mob Index<< >>Mob Amount<< [50] - Spawns mobs.", new object[0]); Echo.SendWhisper(ClientSocket, "&UnMute >>Player Name<< [50] - Unmutes a player.", new object[0]); Echo.SendWhisper(ClientSocket, "Page 1/2 To access other pages type &Help Staff >>Page Number<<.", new object[0]); return; } if (strArrays[0].ToLower() == "&info") { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a players name. Useage: &Info >>Player Name<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection thanks. ~Kobalt.", new object[0]); return; } tCharacter _tCharacter = ( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); Program.CharacterData.Entry(_tCharacter).Reload(); if (_tCharacter == null) { ManagerClient clientSocket1 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket1, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } tCharacterShape _tCharacterShape = ( from nCharNo in Program.CharacterData.tCharacterShapes where nCharNo.nCharNo == _tCharacter.nCharNo select nCharNo).FirstOrDefault(); Program.CharacterData.Entry(_tCharacterShape).Reload(); ManagerClient managerClient1 = ClientSocket; length = new object[] { _tCharacter.sID }; Echo.SendWhisper(managerClient1, "Information about {0}:", length); ManagerClient clientSocket2 = ClientSocket; length = new object[] { _tCharacter.nLevel }; Echo.SendWhisper(clientSocket2, "Level: {0}", length); ManagerClient managerClient2 = ClientSocket; length = new object[] { _tCharacter.nFame }; Echo.SendWhisper(managerClient2, "Fame: {0}", length); ManagerClient clientSocket3 = ClientSocket; length = new object[] { Money.ConvertMoney(_tCharacter.nMoney) }; Echo.SendWhisper(clientSocket3, "Money: {0}", length); ManagerClient managerClient3 = ClientSocket; length = new object[] { _tCharacter.nStrength }; Echo.SendWhisper(managerClient3, "STR: {0}", length); ManagerClient clientSocket4 = ClientSocket; length = new object[] { _tCharacter.nDexterity }; Echo.SendWhisper(clientSocket4, "DEX: {0}", length); ManagerClient managerClient4 = ClientSocket; length = new object[] { _tCharacter.nConstitute }; Echo.SendWhisper(managerClient4, "END: {0}", length); ManagerClient clientSocket5 = ClientSocket; length = new object[] { _tCharacter.nIntelligence }; Echo.SendWhisper(clientSocket5, "INT: {0}", length); ManagerClient managerClient5 = ClientSocket; length = new object[] { _tCharacter.nMentalPower }; Echo.SendWhisper(managerClient5, "SPR: {0}", length); ManagerClient clientSocket6 = ClientSocket; length = new object[] { Program.ClassNames[_tCharacterShape.nClass] }; Echo.SendWhisper(clientSocket6, "Class: {0}", length); if (_tCharacterShape.nGender != 1) { Echo.SendWhisper(ClientSocket, "Gender: Female", new object[0]); } else { Echo.SendWhisper(ClientSocket, "Gender: Male", new object[0]); } tGuildMember _tGuildMember = ( from nCharNo in Program.CharacterData.tGuildMembers where nCharNo.nCharNo == _tCharacter.nCharNo select nCharNo).FirstOrDefault(); Program.CharacterData.Entry(_tGuildMember).Reload(); tGuildAcademyMember _tGuildAcademyMember = ( from nCharNo in Program.CharacterData.tGuildAcademyMembers where nCharNo.nCharNo == _tCharacter.nCharNo select nCharNo).FirstOrDefault(); Program.CharacterData.Entry(_tGuildAcademyMember).Reload(); tMarriage _tMarriage = ( from nCharNo in Program.CharacterData.tMarriages where nCharNo.nCharNo == _tCharacter.nCharNo select nCharNo into nStatus where (int)nStatus.nStatus != 0 select nStatus).FirstOrDefault(); Program.CharacterData.Entry(_tMarriage).Reload(); if (_tGuildMember != null) { tGuild _tGuild1 = ( from nNo in Program.CharacterData.tGuilds where nNo.nNo == _tGuildMember.nNo select nNo).FirstOrDefault(); _tGuild = _tGuild1; if (_tGuild1 == null) { goto Label1; } Program.CharacterData.Entry(_tGuild).Reload(); ManagerClient managerClient6 = ClientSocket; length = new object[] { _tGuild.sName }; Echo.SendWhisper(managerClient6, "Guild: {0}", length); goto Label0; } Label1: if (_tGuildAcademyMember != null) { tGuild _tGuild2 = ( from nNo in Program.CharacterData.tGuilds where nNo.nNo == _tGuildAcademyMember.nNo select nNo).FirstOrDefault(); _tGuild = _tGuild2; if (_tGuild2 != null) { Program.CharacterData.Entry(_tGuild).Reload(); ManagerClient clientSocket7 = ClientSocket; length = new object[] { _tGuild.sName }; Echo.SendWhisper(clientSocket7, "Academy: {0}", length); } } Label0: if (_tMarriage == null) { Echo.SendWhisper(ClientSocket, "Marriage Status: Alone", new object[0]); return; } Echo.SendWhisper(ClientSocket, "Marriage Status: In relationship", new object[0]); tCharacter _tCharacter1 = ( from nCharNo in Program.CharacterData.tCharacters where nCharNo.nCharNo == _tMarriage.nPartnerCharNo select nCharNo).FirstOrDefault(); Program.CharacterData.Entry(_tCharacter1).Reload(); if (_tMarriage.nStatus == 1) { ManagerClient managerClient7 = ClientSocket; length = new object[] { _tCharacter1.sID }; Echo.SendWhisper(managerClient7, "Partner name: {0}", length); return; } ManagerClient clientSocket8 = ClientSocket; length = new object[] { _tCharacter1.sID }; Echo.SendWhisper(clientSocket8, "Spouse name: {0}", length); return; } if (strArrays[0].ToLower() != "&irc") { if (strArrays[0].ToLower() == "&link") { goto Label3; } if (strArrays[0].ToLower() != "&lottery") { if (strArrays[0].ToLower() == "&online") { ManagerClient managerClient8 = ClientSocket; length = new object[] { Program.ManagerLoggedIn.Count }; Echo.SendWhisper(managerClient8, "There are a total of {0} currently playing.", length); return; } if (strArrays[0].ToLower() == "&ping") { Echo.SendWhisper(ClientSocket, "Pong", new object[0]); return; } if (strArrays[0].ToLower() == "&playeronline") { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Player enter a player to check the status of. Useage: &PlayerOnline >>Player Name<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection thanks. ~Kobalt.", new object[0]); return; } if (( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault() == null) { ManagerClient clientSocket9 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket9, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } ManagerClient managerClient9 = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into sID where sID.Character.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); ManagerClient managerClient10 = managerClient9; if (managerClient9 != null) { ManagerClient clientSocket10 = ClientSocket; length = new object[] { managerClient10.Character.sID }; Echo.SendWhisper(clientSocket10, "{0} is currently online.", length); return; } ManagerClient clientSocket11 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket11, "{0} is currently offline.", length); return; } if (strArrays[0].ToLower() != "&respawntime") { if (strArrays[0].ToLower() == "&requirehelp") { List list = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into nAdminLevel where nAdminLevel.Character.nAdminLevel >= Convert.ToInt32(Program.ConfigValues["Connection_AdminLevel"]) select nAdminLevel).ToList(); List managerClients = list; if (list == null) { Echo.SendWhisper(ClientSocket, "Sorry but i could not find any staff online.", new object[0]); return; } Random random = new Random(); ManagerClient item = managerClients[random.Next(0, managerClients.Count)]; ManagerClient managerClient11 = ClientSocket; length = new object[] { item.Character.sID }; Echo.SendWhisper(managerClient11, "{0} is currently active, i will message them for you.", length); length = new object[] { ClientSocket.Character.sID }; Echo.SendWhisper(item, "{0} requires your help, please message them.", length); return; } if (strArrays[0].ToLower() == "&unstuck") { Echo.SendWhisper(ClientSocket, "You will be disconnected in 5 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 4 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 3 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 2 seconds.", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected in 1 seconds", new object[0]); Thread.Sleep(1000); Echo.SendWhisper(ClientSocket, "You will be disconnected to fix your location.", new object[0]); LocationUpdate locationUpdate = new LocationUpdate() { nCharNo = ClientSocket.Character.nCharNo }; Program.GameFilterData.LocationUpdates.Add(locationUpdate); Program.GameFilterData.SaveChanges(); ClientSocket.Disconnect(); return; } if (!(strArrays[0].ToLower() == "&jail") || ClientSocket.Character.nAdminLevel < 10) { if (strArrays[0].ToLower() == "&kickout" && ClientSocket.Character.nAdminLevel >= 10) { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a player to be kicked. Useage: &KickOut >>Player Name<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection thanks. ~Kobalt.", new object[0]); return; } ManagerClient managerClient12 = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into sID where sID.Character.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); ManagerClient managerClient13 = managerClient12; if (managerClient12 != null) { Echo.SendWhisper(ClientSocket, "Player has been kicked from the server.", new object[0]); Echo.SendWhisper(managerClient13, "You have been kicked from the server.", new object[0]); managerClient13.Disconnect(); return; } ManagerClient clientSocket12 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket12, "Player is not online. Input: {0}", length); return; } if (strArrays[0].ToLower() == "&mute" && ClientSocket.Character.nAdminLevel >= 50) { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a player to mute. Useage: &Mute >>Player Name<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection.", new object[0]); return; } tCharacter _tCharacter2 = ( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); if (_tCharacter2 == null) { ManagerClient clientSocket13 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket13, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } Muted muted = ( from nCharNo in Program.GameFilterData.Muteds where nCharNo.nCharNo == _tCharacter2.nCharNo select nCharNo).FirstOrDefault(); if (muted != null) { ManagerClient clientSocket14 = ClientSocket; length = new object[] { _tCharacter2.sID }; Echo.SendWhisper(clientSocket14, "{0} is already muted.", length); return; } muted = new Muted() { nCharNo = _tCharacter2.nCharNo }; Program.GameFilterData.Muteds.Add(muted); Program.GameFilterData.SaveChanges(); ManagerClient managerClient14 = ClientSocket; length = new object[] { _tCharacter2.sID }; Echo.SendWhisper(managerClient14, "{0} has been muted.", length); ManagerClient managerClient15 = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into nCharNo where nCharNo.Character.nCharNo == _tCharacter2.nCharNo select nCharNo).FirstOrDefault(); ManagerClient managerClient16 = managerClient15; if (managerClient15 != null) { Echo.SendWhisper(managerClient16, "You have been muted.", new object[0]); return; } else { return; } } else if (strArrays[0].ToLower() == "&unjail" && ClientSocket.Character.nAdminLevel >= 10) { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a player to be jailed. Useage: &UnJail >>Player Name<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection.", new object[0]); return; } tCharacter _tCharacter3 = ( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); if (_tCharacter3 == null) { ManagerClient clientSocket15 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket15, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } Jail now = ( from nCharNo in Program.GameFilterData.Jails where nCharNo.nCharNo == _tCharacter3.nCharNo select nCharNo).FirstOrDefault(); if (now == null) { Echo.SendWhisper(ClientSocket, "Player is not jailed.", new object[0]); return; } now = ( from nCharNo in Program.GameFilterData.Jails where nCharNo.nCharNo == now.nCharNo select nCharNo).FirstOrDefault(); now.OutTime = DateTime.Now; Program.GameFilterData.SaveChanges(); Echo.SendWhisper(ClientSocket, "Player will be taken out of jail next time they login.", new object[0]); ManagerClient managerClient17 = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into nCharNo where nCharNo.Character.nCharNo == _tCharacter3.nCharNo select nCharNo).FirstOrDefault(); ManagerClient managerClient18 = managerClient17; if (managerClient17 != null) { Echo.SendWhisper(managerClient18, "You have been unjailed.", new object[0]); managerClient18.Disconnect(); return; } else { return; } } else if (!(strArrays[0].ToLower() == "&unmute") || ClientSocket.Character.nAdminLevel < 50) { if (strArrays[0].ToLower() == "&worldmessage" && ClientSocket.Character.nAdminLevel >= 10) { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a world message to send. Useage: &WorldMessage >>Message<<.", new object[0]); return; } if (!Injection.ContainsInvalidSymbol(Command.Substring(14, Command.Length - 14), out chr)) { Echo.SendWorldMessage(true, Command.Substring(14, Command.Length - 14), new object[0]); return; } ManagerClient clientSocket16 = ClientSocket; length = new object[] { chr }; Echo.SendWhisper(clientSocket16, "The roar you tried to send had a invalid symbol in. Invalid Symbol: {0}.", length); return; } ClientSocket.Server.SendPacket(ClientPacket); return; } else { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a player to mute. Useage: &Mute >>Player Name<<.", new object[0]); } else if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection.", new object[0]); } tCharacter _tCharacter4 = ( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); if (_tCharacter4 == null) { ManagerClient clientSocket17 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket17, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } Muted muted1 = ( from nCharNo in Program.GameFilterData.Muteds where nCharNo.nCharNo == _tCharacter4.nCharNo select nCharNo).FirstOrDefault(); if (muted1 == null) { ManagerClient clientSocket18 = ClientSocket; length = new object[] { _tCharacter4.sID }; Echo.SendWhisper(clientSocket18, "{0} is not muted.", length); return; } muted1 = ( from nCharNo in Program.GameFilterData.Muteds where nCharNo.nCharNo == muted1.nCharNo select nCharNo).FirstOrDefault(); Program.GameFilterData.Muteds.Remove(muted1); Program.GameFilterData.SaveChanges(); ManagerClient clientSocket19 = ClientSocket; length = new object[] { _tCharacter4.sID }; Echo.SendWhisper(clientSocket19, "{0} has been unmuted.", length); ManagerClient managerClient19 = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into nCharNo where nCharNo.Character.nCharNo == _tCharacter4.nCharNo select nCharNo).FirstOrDefault(); ManagerClient managerClient20 = managerClient19; if (managerClient19 != null) { Echo.SendWhisper(managerClient20, "You have been unmuted.", new object[0]); return; } else { return; } } } else { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a player to be jailed. Useage: &Jail >>Player Name<< >>Time (Hours)<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection.", new object[0]); return; } if ((int)strArrays.Length == 3 && Injection.IsInt32(strArrays[2]) && Convert.ToInt32(strArrays[2]) > 72) { ManagerClient clientSocket20 = ClientSocket; length = new object[] { strArrays[2] }; Echo.SendWhisper(clientSocket20, "You cannot jail for more then 72 hours. You tried to jail for {0} hours.", length); return; } int num = 6; if ((int)strArrays.Length == 3) { num = Convert.ToInt32(strArrays[2]); } tCharacter _tCharacter5 = ( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); if (_tCharacter5 == null) { ManagerClient clientSocket21 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket21, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } Jail jail = ( from nCharNo in Program.GameFilterData.Jails where nCharNo.nCharNo == _tCharacter5.nCharNo select nCharNo).FirstOrDefault(); if (jail != null) { Echo.SendWhisper(ClientSocket, "Player is already jailed.", new object[0]); return; } jail = new Jail() { nCharNo = _tCharacter5.nCharNo, OutTime = DateTime.Now.AddHours((double)num) }; Program.GameFilterData.Jails.Add(jail); Program.GameFilterData.SaveChanges(); ManagerClient managerClient21 = ClientSocket; length = new object[] { num }; Echo.SendWhisper(managerClient21, "Player will be jailed next time they join the game. Time: {0} hours.", length); ManagerClient managerClient22 = ( from Character in Program.ManagerLoggedIn where Character.Character != null select Character into nCharNo where nCharNo.Character.nCharNo == _tCharacter5.nCharNo select nCharNo).FirstOrDefault(); ManagerClient managerClient23 = managerClient22; if (managerClient22 != null) { length = new object[] { num }; Echo.SendWhisper(managerClient23, "You have been jailed for {0} hours.", length); managerClient23.Disconnect(); return; } else { return; } } } else { if ((int)strArrays.Length != 1) { RespawnTimer respawnTimer = ( from CheckName in Program.BossRespawns where CheckName.CheckName.ToLower() == strArrays[1].ToLower() select CheckName).FirstOrDefault(); RespawnTimer respawnTimer1 = respawnTimer; if (respawnTimer == null) { ManagerClient clientSocket22 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket22, "World boss not found. Input: {0}.", length); return; } if (respawnTimer1.RespawnDate <= DateTime.Now) { ManagerClient clientSocket23 = ClientSocket; length = new object[] { respawnTimer1.BossName }; Echo.SendWhisper(clientSocket23, "{0} is still alive.", length); return; } ManagerClient clientSocket24 = ClientSocket; length = new object[] { respawnTimer1.BossName, respawnTimer1.RespawnTime() }; Echo.SendWhisper(clientSocket24, "{0} will respawn in: {1}", length); return; } Echo.SendWhisper(ClientSocket, "Please specify one of the following bosses:", new object[0]); List.Enumerator enumerator1 = Program.BossRespawns.GetEnumerator(); try { while (enumerator1.MoveNext()) { RespawnTimer current = enumerator1.Current; ManagerClient managerClient24 = ClientSocket; length = new object[] { current.CheckName }; Echo.SendWhisper(managerClient24, "&RespawnTime {0}.", length); } return; } finally { ((IDisposable)enumerator1).Dispose(); } } } else { if (!Convert.ToBoolean(Program.ConfigValues["Lottery_Enabled"])) { Echo.SendWhisper(ClientSocket, "The lottery system is not enabled on this server.", new object[0]); return; } if ((int)strArrays.Length != 1) { if (strArrays[1].ToLower() != "buy") { if (strArrays[1].ToLower() == "draw") { ManagerClient clientSocket25 = ClientSocket; length = new object[] { Program.TheLottery.LotteryTime() }; Echo.SendWhisper(clientSocket25, "The lottery will be drawn in: {0}.", length); return; } if (strArrays[1].ToLower() == "jackpot") { List lotteryTickets = Program.GameFilterData.LotteryTickets.ToList(); int ticketCount = 0; foreach (LotteryTicket lotteryTicket in lotteryTickets) { ticketCount = ticketCount + lotteryTicket.TicketCount; } ManagerClient managerClient25 = ClientSocket; length = new object[] { Money.ConvertMoney((long)(ticketCount * Convert.ToInt32(Program.ConfigValues["Lottery_Price"]))) }; Echo.SendWhisper(managerClient25, "There is a total of {0} in the lottery.", length); return; } if (strArrays[1].ToLower() != "status") { if (!(strArrays[1].ToLower() == "forcedraw") || ClientSocket.Character.nAdminLevel < 50) { Echo.SendWhisper(ClientSocket, "Sorry i dont recognise that command, please type &Lottery for commands.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "Force drawing the lottery...", new object[0]); Program.TheLottery.LotteryTimer_Elapsed(null, null); return; } LotteryTicket lotteryTicket1 = ( from nUserNo in Program.GameFilterData.LotteryTickets where nUserNo.nUserNo == ClientSocket.Account.nEMID select nUserNo).FirstOrDefault(); if (lotteryTicket1 == null) { Echo.SendWhisper(ClientSocket, "You have not bought any tickets yet.", new object[0]); return; } ManagerClient clientSocket26 = ClientSocket; length = new object[] { lotteryTicket1.TicketCount }; Echo.SendWhisper(clientSocket26, "You currently have {0} tickets.", length); return; } if ((int)strArrays.Length == 2) { Echo.SendWhisper(ClientSocket, "Please enter the amount of tickets you would like to buy. Useage: &Lottery Buy >>Ticket Amount<<.", new object[0]); return; } if (strArrays[2].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[2])) { Echo.SendWhisper(ClientSocket, "No injection thanks.", new object[0]); return; } if (!Injection.IsOnlyDigit(strArrays[2])) { ManagerClient managerClient26 = ClientSocket; length = new object[] { strArrays[2] }; Echo.SendWhisper(managerClient26, "Please enter a valid amount. Input: {0}.", length); return; } if (!Injection.IsInt32(strArrays[2])) { ManagerClient clientSocket27 = ClientSocket; length = new object[] { strArrays[2] }; Echo.SendWhisper(clientSocket27, "Please enter a valid amount. Input: {0}.", length); return; } if (Convert.ToInt32(strArrays[2]) > Convert.ToInt32(Program.ConfigValues["Lottery_MaxTickets"])) { ManagerClient managerClient27 = ClientSocket; length = new object[] { Program.ConfigValues["Lottery_MaxTickets"], strArrays[2] }; Echo.SendWhisper(managerClient27, "Sorry you cant buy more then {0} tickets. Input: {1}.", length); return; } LotteryTicket lotteryTicket2 = ( from nUserNo in Program.GameFilterData.LotteryTickets where nUserNo.nUserNo == ClientSocket.Account.nEMID select nUserNo).FirstOrDefault(); if (lotteryTicket2 == null) { lotteryTicket2 = new LotteryTicket() { nUserNo = ClientSocket.Account.nEMID, TicketCount = Convert.ToInt32(strArrays[2]) }; tUserMoney _tUserMoney = ( from nUserNo in Program.CharacterData.tUserMoneys where nUserNo.nUserNo == ClientSocket.Account.nEMID select nUserNo).FirstOrDefault(); if (_tUserMoney == null) { Echo.SendWhisper(ClientSocket, "I cannot find your storage, please place some money in and try again.", new object[0]); return; } Program.CharacterData.Entry(_tUserMoney).Reload(); if (_tUserMoney == null) { Echo.SendWhisper(ClientSocket, "There was a problem loading your storage, please try again.", new object[0]); return; } if ((long)(Convert.ToInt32(strArrays[2]) * Convert.ToInt32(Program.ConfigValues["Lottery_Price"])) > _tUserMoney.nUserMoney) { ManagerClient clientSocket28 = ClientSocket; length = new object[] { Money.ConvertMoney((long)(Convert.ToInt32(strArrays[2]) * 500000) - _tUserMoney.nUserMoney), Money.ConvertMoney(_tUserMoney.nUserMoney) }; Echo.SendWhisper(clientSocket28, "You do not have the right amount of money in your storage. Need: {0}. Have: {1}.", length); return; } _tUserMoney = ( from nUserNo in Program.CharacterData.tUserMoneys where nUserNo.nUserNo == _tUserMoney.nUserNo select nUserNo).FirstOrDefault(); _tUserMoney.nUserMoney = _tUserMoney.nUserMoney - (long)(Convert.ToInt32(strArrays[2]) * Convert.ToInt32(Program.ConfigValues["Lottery_Price"])); Program.CharacterData.SaveChanges(); lotteryTicket2 = new LotteryTicket() { nUserNo = ClientSocket.Account.nEMID, TicketCount = Convert.ToInt32(strArrays[2]) }; Program.GameFilterData.LotteryTickets.Add(lotteryTicket2); Program.GameFilterData.SaveChanges(); ManagerClient managerClient28 = ClientSocket; length = new object[] { strArrays[2] }; Echo.SendWhisper(managerClient28, "You bought {0} lottery tickets. Good Luck.", length); return; } if (lotteryTicket2.TicketCount + Convert.ToInt32(strArrays[2]) > Convert.ToInt32(Program.ConfigValues["Lottery_MaxTickets"])) { ManagerClient clientSocket29 = ClientSocket; length = new object[] { lotteryTicket2.TicketCount, strArrays[2], Convert.ToInt32(Program.ConfigValues["Lottery_MaxTickets"]) }; Echo.SendWhisper(clientSocket29, "You currently have {0} tickets, you cannot buy {1} more. You can only buy {2} maximum.", length); return; } tUserMoney num1 = ( from nUserNo in Program.CharacterData.tUserMoneys where nUserNo.nUserNo == ClientSocket.Account.nEMID select nUserNo).FirstOrDefault(); Program.CharacterData.Entry(num1).Reload(); if (num1 == null) { Echo.SendWhisper(ClientSocket, "There was a problem loading your storage, please try again.", new object[0]); return; } if ((long)(Convert.ToInt32(strArrays[2]) * Convert.ToInt32(Program.ConfigValues["Lottery_Price"])) > num1.nUserMoney) { ManagerClient managerClient29 = ClientSocket; length = new object[] { Money.ConvertMoney((long)(Convert.ToInt32(strArrays[2]) * Convert.ToInt32(Program.ConfigValues["Lottery_Price"])) - num1.nUserMoney), Money.ConvertMoney(num1.nUserMoney) }; Echo.SendWhisper(managerClient29, "You do not have the right amount of money in your storage. Need: {0}. Have: {1}.", length); return; } num1 = ( from nUserNo in Program.CharacterData.tUserMoneys where nUserNo.nUserNo == num1.nUserNo select nUserNo).FirstOrDefault(); num1.nUserMoney = num1.nUserMoney - (long)(Convert.ToInt32(strArrays[2]) * Convert.ToInt32(Program.ConfigValues["Lottery_Price"])); Program.CharacterData.tUserMoneys.Attach(num1); DbEntityEntry dbEntityEntry1 = Program.AccountData.Entry(num1); dbEntityEntry1.Property((tUserMoney Propery) => Propery.nUserMoney).IsModified = true; Program.CharacterData.SaveChanges(); LotteryTicket ticketCount1 = ( from nUserNo in Program.GameFilterData.LotteryTickets where nUserNo.nUserNo == num1.nUserNo select nUserNo).FirstOrDefault(); ticketCount1.TicketCount = lotteryTicket2.TicketCount + Convert.ToInt32(strArrays[2]); Program.GameFilterData.LotteryTickets.Attach(ticketCount1); DbEntityEntry dbEntityEntry2 = Program.AccountData.Entry(ticketCount1); dbEntityEntry2.Property((LotteryTicket Propery) => Propery.TicketCount).IsModified = true; Program.GameFilterData.SaveChanges(); ManagerClient clientSocket30 = ClientSocket; length = new object[] { strArrays[2] }; Echo.SendWhisper(clientSocket30, "You bought {0} lottery tickets. Good Luck.", length); return; } Echo.SendWhisper(ClientSocket, "The following sub-commands can be used:", new object[0]); ManagerClient managerClient30 = ClientSocket; length = new object[] { Program.ConfigValues["Lottery_MaxTickets"] }; Echo.SendWhisper(managerClient30, "&Lottery Buy >>Ticket Amount<< - Buys lottery tickets. Maximum: {0}.", length); Echo.SendWhisper(ClientSocket, "&Lottery Draw - Checks when the lottery will be drawn.", new object[0]); Echo.SendWhisper(ClientSocket, "&Lottery Jackpot - Shows you how much you could win.", new object[0]); Echo.SendWhisper(ClientSocket, "&Lottery Status - Checks how many lottery tickets you bought.", new object[0]); if (ClientSocket.Character.nAdminLevel >= 1) { Echo.SendWhisper(ClientSocket, "&Lottery ForceDraw [50] - Draws the lottery.", new object[0]); return; } else { return; } } } else { if (!Convert.ToBoolean(Program.ConfigValues["IRC_Enabled"])) { Echo.SendWhisper(ClientSocket, "The IRC is not enabled on this server.", new object[0]); return; } if ((int)strArrays.Length != 1) { if (strArrays[1].ToLower() == "servers") { goto Label4; } if (strArrays[1].ToLower() != "status") { if (!(strArrays[1].ToLower() == "restart") || ClientSocket.Character.nAdminLevel < Convert.ToInt32(Program.ConfigValues["IRC_AdminLevel"])) { Echo.SendWhisper(ClientSocket, "Sorry i dont recognise that command, please type &IRC for commands.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "Restarting the IRC...", new object[0]); if (Convert.ToBoolean(Program.ConfigValues["IRC_MainServer"])) { Program.IRCListen.Recreate(1); Echo.SendWhisper(ClientSocket, "IRC successfully restarted.", new object[0]); return; } Program.IRCConnect.Disconnect(); Program.IRCConnect = new IRCServer(Program.ConfigValues["IRC_ConnectIP"]); if (Program.IRCConnect.IsConnected != 0) { Echo.SendWhisper(ClientSocket, "Could not connect to IRC server.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "IRC successfully restarted.", new object[0]); return; } if ((int)strArrays.Length == 2) { Echo.SendWhisper(ClientSocket, "Please enter a server to check the status of. Useage: &IRC Status >>Server Name<<.", new object[0]); return; } foreach (int key in Program.IRCConnections.Keys) { if (!Program.ConfigValues.TryGetValue(string.Format("IRC{0}_SendName", key), out str) || !(strArrays[2].ToLower() == str.ToLower())) { continue; } Echo.SendWhisper(ClientSocket, "The server is currently connected.", new object[0]); return; } for (int i = 1; i < Convert.ToInt32(Program.ConfigValues["IRC_Count"]) + 1; i++) { if (Program.ConfigValues.TryGetValue(string.Format("IRC{0}_SendName", i), out str1)) { Console.WriteLine(str1); if (strArrays[2].ToLower() == str1.ToLower()) { Echo.SendWhisper(ClientSocket, "The server is currently disconnected.", new object[0]); } else if (i == Convert.ToInt32(Program.ConfigValues["IRC_Count"])) { Echo.SendWhisper(ClientSocket, "Server not found. Please type &IRC Servers.", new object[0]); } } } return; } else { Echo.SendWhisper(ClientSocket, "The following sub-commands can be used:", new object[0]); Echo.SendWhisper(ClientSocket, "&IRC Servers - Shows a list of servers you can send messages to.", new object[0]); Echo.SendWhisper(ClientSocket, "&IRC Status >>Server Name<< - Tells you if a server is connected.", new object[0]); Echo.SendWhisper(ClientSocket, "&IRC Whisper >>Server Name<< >>Player Name<< - Sends a whisper to the player on specified server.", new object[0]); Echo.SendWhisper(ClientSocket, "&IRC WorldMessage >>Server Name<< - Sends a message to the entire server specified.", new object[0]); if (ClientSocket.Character.nAdminLevel >= 1) { ManagerClient clientSocket31 = ClientSocket; length = new object[] { Program.ConfigValues["IRC_AdminLevel"] }; Echo.SendWhisper(clientSocket31, "&IRC Restart [{0}] - Restarts the IRC.", length); return; } else { return; } } } return; } else { if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please enter a players name. Useage: &Equipment >>Player Name<<.", new object[0]); return; } if (strArrays[1].Length > 31 || !Injection.IsOnlyLetterOrDigit(strArrays[1])) { Echo.SendWhisper(ClientSocket, "No injection thanks.", new object[0]); return; } tCharacter _tCharacter6 = ( from sID in Program.CharacterData.tCharacters.AsEnumerable() where sID.sID.ToLower() == strArrays[1].ToLower() select sID).FirstOrDefault(); if (_tCharacter6 == null) { ManagerClient managerClient31 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(managerClient31, "Player does not exist, please make sure you typed the name correctly. Input: {0}.", length); return; } List tItems = ( from nOwner in Program.CharacterData.tItems where nOwner.nOwner == (long)_tCharacter6.nCharNo select nOwner into nStorageType where (int)nStorageType.nStorageType == 8 select nStorageType).ToList(); if (tItems == null) { ManagerClient clientSocket32 = ClientSocket; length = new object[] { _tCharacter6.sID }; Echo.SendWhisper(clientSocket32, "{0} seems to have nothing equiped.", length); return; } ManagerClient managerClient32 = ClientSocket; length = new object[] { _tCharacter6.sID }; Echo.SendWhisper(managerClient32, "{0} has the following equiped:", length); foreach (tItem _tItem in tItems) { if (Filter.Utilities.Command.GetSlot(_tItem.nStorage) == "Unknown") { continue; } ManagerClient clientSocket33 = ClientSocket; length = new object[] { Filter.Utilities.Command.GetSlot(_tItem.nStorage), Program.ItemNames[_tItem.nItemID] }; Echo.SendWhisper(clientSocket33, "- {0}: {1}.", length); } } return; Label3: if ((int)strArrays.Length == 1) { Echo.SendWhisper(ClientSocket, "Please speify the link you require:", new object[0]); for (int j = 1; j < Convert.ToInt32(Program.ConfigValues["Link_Count"]) + 1; j++) { ManagerClient managerClient33 = ClientSocket; length = new object[] { Program.ConfigValues[string.Format("Link{0}_CheckName", j)] }; Echo.SendWhisper(managerClient33, "&Link {0}.", length); } return; } int num2 = 1; while (num2 < Convert.ToInt32(Program.ConfigValues["Link_Count"]) + 1) { if (Program.ConfigValues[string.Format("Link{0}_CheckName", num2)].ToLower() != strArrays[1].ToLower()) { num2++; } else { Echo.SendWhisper(ClientSocket, Program.ConfigValues[string.Format("Link{0}_Text", num2)], new object[0]); return; } } ManagerClient clientSocket34 = ClientSocket; length = new object[] { strArrays[1] }; Echo.SendWhisper(clientSocket34, "Link not found. Input: {0}.", length); return; Label4: if (Program.IRCConnections.Count == 0) { Echo.SendWhisper(ClientSocket, "There are no servers connected to the IRC.", new object[0]); return; } Echo.SendWhisper(ClientSocket, "The servers currently connected are:", new object[0]); enumerator = Program.IRCConnections.Keys.GetEnumerator(); try { while (enumerator.MoveNext()) { int current1 = enumerator.Current; ManagerClient managerClient34 = ClientSocket; length = new object[] { Program.ConfigValues["IRC{0}_CheckName"] }; Echo.SendWhisper(managerClient34, "- {0}", length); } return; } finally { ((IDisposable)enumerator).Dispose(); } } } }