diff --git a/paper-api/src/main/java/org/bukkit/command/SimpleCommandMap.java b/paper-api/src/main/java/org/bukkit/command/SimpleCommandMap.java index 7e007c5789..292f768630 100644 --- a/paper-api/src/main/java/org/bukkit/command/SimpleCommandMap.java +++ b/paper-api/src/main/java/org/bukkit/command/SimpleCommandMap.java @@ -56,7 +56,6 @@ public class SimpleCommandMap implements CommandMap { fallbackCommands.add(new DifficultyCommand()); fallbackCommands.add(new WeatherCommand()); fallbackCommands.add(new SpawnpointCommand()); - fallbackCommands.add(new ClearCommand()); } public SimpleCommandMap(final Server server) { diff --git a/paper-api/src/main/java/org/bukkit/command/defaults/ClearCommand.java b/paper-api/src/main/java/org/bukkit/command/defaults/ClearCommand.java deleted file mode 100644 index c5fa41c1dc..0000000000 --- a/paper-api/src/main/java/org/bukkit/command/defaults/ClearCommand.java +++ /dev/null @@ -1,109 +0,0 @@ -package org.bukkit.command.defaults; - -import com.google.common.collect.ImmutableList; -import org.apache.commons.lang.Validate; -import org.bukkit.Bukkit; -import org.bukkit.ChatColor; -import org.bukkit.Material; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.util.StringUtil; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -public class ClearCommand extends VanillaCommand { - private static List materials; - static { - ArrayList materialList = new ArrayList(); - for (Material material : Material.values()) { - materialList.add(material.name()); - } - Collections.sort(materialList); - materials = ImmutableList.copyOf(materialList); - } - - public ClearCommand() { - super("clear"); - this.description = "Clears the player's inventory. Can specify item and data filters too."; - this.usageMessage = "/clear [item] [data]"; - this.setPermission("bukkit.command.clear"); - } - - @Override - public boolean execute(CommandSender sender, String currentAlias, String[] args) { - if (!testPermission(sender)) return true; - if ((args.length < 2)) { - sender.sendMessage(ChatColor.RED + "Usage: " + usageMessage); - return false; - } - - Player player = null; - if (args.length > 1) { - player = Bukkit.getPlayer(args[1]); - } else if (sender instanceof Player) { - player = (Player) sender; - } - - if (player != null) { - int id = args.length >= 2 ? getInteger(sender, args[1], 1) : -1; - int data = args.length >= 3 ? getInteger(sender, args[2], 0) : -1; - ItemStack matchItem = new ItemStack(); - player.getInventory().all(matchItem) - int count = player.getInventory().clear(id, data); - player.updateInventory(); - } else { - sender.sendMessage("Can't find user " + args[0]); - } - - return true; - } - - @Override - public boolean matches(String input) { - return input.equalsIgnoreCase("clear"); - } - - @Override - public List tabComplete(CommandSender sender, String alias, String[] args) throws IllegalArgumentException { - Validate.notNull(sender, "Sender cannot be null"); - Validate.notNull(args, "Arguments cannot be null"); - Validate.notNull(alias, "Alias cannot be null"); - - if (args.length == 1) { - return super.tabComplete(sender, alias, args); - } - if (args.length == 2) { - final String arg = args[1]; - final List materials = ClearCommand.materials; - List completion = null; - - final int size = materials.size(); - int i = Collections.binarySearch(materials, arg, String.CASE_INSENSITIVE_ORDER); - - if (i < 0) { - // Insertion (start) index - i = -1 - i; - } - - for ( ; i < size; i++) { - String material = materials.get(i); - if (StringUtil.startsWithIgnoreCase(material, arg)) { - if (completion == null) { - completion = new ArrayList(); - } - completion.add(material); - } else { - break; - } - } - - if (completion != null) { - return completion; - } - } - return ImmutableList.of(); - } -}