From e0cf28a0552c4e158111f9f0a58d3f7079bd5d20 Mon Sep 17 00:00:00 2001 From: Jerom van der Sar Date: Wed, 28 Nov 2012 17:35:31 +0100 Subject: [PATCH] Added /ro --- .../Commands/Command_explosives.java | 3 + .../Commands/Command_list.java | 4 +- .../TotalFreedomMod/Commands/Command_ro.java | 81 +++++++++++++++++++ .../TotalFreedomMod/TFM_Util.java | 4 +- src/plugin.yml | 5 +- 5 files changed, 92 insertions(+), 5 deletions(-) create mode 100644 src/me/StevenLawson/TotalFreedomMod/Commands/Command_ro.java diff --git a/src/me/StevenLawson/TotalFreedomMod/Commands/Command_explosives.java b/src/me/StevenLawson/TotalFreedomMod/Commands/Command_explosives.java index 78ca75cc..5c6f9758 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Commands/Command_explosives.java +++ b/src/me/StevenLawson/TotalFreedomMod/Commands/Command_explosives.java @@ -1,5 +1,6 @@ package me.StevenLawson.TotalFreedomMod.Commands; +import me.StevenLawson.TotalFreedomMod.TFM_Util; import me.StevenLawson.TotalFreedomMod.TotalFreedomMod; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; @@ -24,6 +25,8 @@ public class Command_explosives extends TFM_Command } catch (NumberFormatException nfex) { + TFM_Util.playerMsg(sender, nfex.getMessage()); + return true; } } diff --git a/src/me/StevenLawson/TotalFreedomMod/Commands/Command_list.java b/src/me/StevenLawson/TotalFreedomMod/Commands/Command_list.java index e21f2794..2b50f9e3 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Commands/Command_list.java +++ b/src/me/StevenLawson/TotalFreedomMod/Commands/Command_list.java @@ -36,11 +36,11 @@ public class Command_list extends TFM_Command { if(TFM_SuperadminList.isSeniorAdmin(p)) { - prefix = (ChatColor.LIGHT_PURPLE + "[SenAdmin]"); + prefix = (ChatColor.LIGHT_PURPLE + "[SrA]"); } else { - prefix = (ChatColor.GOLD + "[SupAdmin]"); + prefix = (ChatColor.GOLD + "[SA]"); } } else diff --git a/src/me/StevenLawson/TotalFreedomMod/Commands/Command_ro.java b/src/me/StevenLawson/TotalFreedomMod/Commands/Command_ro.java new file mode 100644 index 00000000..480d4f22 --- /dev/null +++ b/src/me/StevenLawson/TotalFreedomMod/Commands/Command_ro.java @@ -0,0 +1,81 @@ +package me.StevenLawson.TotalFreedomMod.Commands; + +import me.StevenLawson.TotalFreedomMod.TFM_Util; +import org.bukkit.ChatColor; +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +@CommandPermissions(level = ADMIN_LEVEL.SUPER, source = SOURCE_TYPE_ALLOWED.BOTH, block_web_console = false, ignore_permissions = false) +public class Command_ro extends TFM_Command +{ + @Override + public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + { + if(args.length < 1 || args.length > 3) { + return false; + } + + int radius = 50; + Player target_player = null; + Material target_block = Material.matchMaterial(args[0]); + + if (target_block == null) + { + TFM_Util.playerMsg(sender, "Invalid block!"); + return true; + } + + if(args.length >= 2) + { + try + { + radius = Integer.parseInt(args[1]); + } + catch(NumberFormatException nfex) + { + TFM_Util.playerMsg(sender, nfex.getMessage()); + return true; + } + if(radius > 3000) + { + TFM_Util.playerMsg(sender, "What the hell are you trying to do, you stupid idiot!", ChatColor.RED); + return true; + } + } + + if(args.length == 3) + { + try + { + target_player = getPlayer(args[2]); + } + catch (CantFindPlayerException ex) + { + sender.sendMessage(ex.getMessage()); + return true; + } + } + + + if(target_player == null) + { + for(Player p : server.getOnlinePlayers()) + { + boolean is_Op = p.isOp(); + p.setOp(true); + server.dispatchCommand(p, "/removenear " + target_block.getId() + " " + radius); + p.setOp(is_Op); + } + } + else + { + boolean is_Op = target_player.isOp(); + target_player.setOp(true); + server.dispatchCommand(target_player, "/removenear " + target_block.getId() + " " + radius); + target_player.setOp(is_Op); + } + return true; + } +} \ No newline at end of file diff --git a/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java b/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java index 97cc3eb0..1ac70d6b 100644 --- a/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java +++ b/src/me/StevenLawson/TotalFreedomMod/TFM_Util.java @@ -567,11 +567,11 @@ public class TFM_Util if (admin_entry.isSeniorAdmin()) { - return "a " + ChatColor.GOLD + "Senior Admin" + ChatColor.AQUA + "."; + return "a " + ChatColor.LIGHT_PURPLE + "Senior Admin" + ChatColor.AQUA + "."; } else { - return "a " + ChatColor.RED + "Super Admin" + ChatColor.AQUA + "."; + return "a " + ChatColor.GOLD + "Super Admin" + ChatColor.AQUA + "."; } } } diff --git a/src/plugin.yml b/src/plugin.yml index bdd5ab5c..4896985c 100644 --- a/src/plugin.yml +++ b/src/plugin.yml @@ -162,8 +162,11 @@ commands: description: Owner Command - Broadcasts the given message with no extra formatting. usage: / rd: - description: Remove all projectiles, dropped items, experience orbs, primed explosives, and minecarts. Minecarts are optional, based on if "carts" is included after the command. + description: Superadmin command - Remove all projectiles, dropped items, experience orbs, primed explosives, and minecarts. Minecarts are optional, based on if "carts" is included after the command. usage: / + ro: + description: Superadmin Command - Remove all blocks of a certain type in the radius of certain players. + usage: / [radius (default=50)] [player] saconfig: description: Owner command - Manage superadmins. usage: / >