// Code to run when used by a player public override void Use(Player p, string message) { if (message != "") { string who = message; int index = message.IndexOf(' '); string kickmessage = "kicked and banned by " + p.name + "! ("; if (index != -1) { who = message.Substring(0, index); kickmessage += message.Substring(index + 1) + ")"; } else { kickmessage += "Kicked + Banned!)"; } Player target = Player.Find(who); if (!Server.banned.Contains(who)) { if (p.Rank > Player.GetRank(who)) { if (target != null) { if (target != p) { target.Kick(kickmessage); Player.Ban(who); } else { p.SendMessage("You can't kickban yourself!"); } } else { Player.Ban(who); Player.GlobalMessage(target.name + " was " + kickmessage); IRCBot.Say(target.name + " was " + kickmessage); } } else { p.SendMessage("You can't kickban someone of equal or higher rank!"); } } else { p.SendMessage(who + " is already banned."); if (target != null) { target.Kick(kickmessage); } } } else { Help(p); } }
// Code to run when used by a player public override void Use(Player p, string message) { if (message == "") { Help(p); } else { bool stealth = false; if (message[0] == '#') { message = message.Remove(0, 1).Trim(); stealth = true; Logger.Log("Stealth Ban Atempted"); } // Ensure the name is valid if (Player.ValidName(message)) { // Ensure the player isn't banned already if (Player.GetRank(message) != GroupEnum.Banned) { if (p.Rank > Player.GetRank(message)) { // Check to see if the player is online // Send appropriate message based on status and stealth option if (Player.IsOnline(message)) { if (stealth) { } else { Player.GlobalMessage("[Server]:" + p.color + p.name + "&e has banned " + message); } } else { Player.GlobalMessage("[Server]:" + p.color + p.name + "&e has banned " + message + "(offline)"); } // Actually get around to banning the player Player.Ban(message); IRCBot.Say(message + " was banned"); } else { p.SendMessage("You can't ban someone of equal or higher rank!"); } } else { p.SendMessage(message + " is already banned."); } } else { p.SendMessage("Invalid name \"" + message + "\"."); } } }