001 package net.minecraft.command; 002 003 import java.util.List; 004 import net.minecraft.server.MinecraftServer; 005 006 public class CommandServerPardon extends CommandBase 007 { 008 public String getCommandName() 009 { 010 return "pardon"; 011 } 012 013 /** 014 * Return the required permission level for this command. 015 */ 016 public int getRequiredPermissionLevel() 017 { 018 return 3; 019 } 020 021 public String getCommandUsage(ICommandSender par1ICommandSender) 022 { 023 return par1ICommandSender.translateString("commands.unban.usage", new Object[0]); 024 } 025 026 /** 027 * Returns true if the given command sender is allowed to use this command. 028 */ 029 public boolean canCommandSenderUseCommand(ICommandSender par1ICommandSender) 030 { 031 return MinecraftServer.getServer().getConfigurationManager().getBannedPlayers().isListActive() && super.canCommandSenderUseCommand(par1ICommandSender); 032 } 033 034 public void processCommand(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) 035 { 036 if (par2ArrayOfStr.length == 1 && par2ArrayOfStr[0].length() > 0) 037 { 038 MinecraftServer.getServer().getConfigurationManager().getBannedPlayers().remove(par2ArrayOfStr[0]); 039 notifyAdmins(par1ICommandSender, "commands.unban.success", new Object[] {par2ArrayOfStr[0]}); 040 } 041 else 042 { 043 throw new WrongUsageException("commands.unban.usage", new Object[0]); 044 } 045 } 046 047 /** 048 * Adds the strings available in this command to the given list of tab completion options. 049 */ 050 public List addTabCompletionOptions(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) 051 { 052 return par2ArrayOfStr.length == 1 ? getListOfStringsFromIterableMatchingLastWord(par2ArrayOfStr, MinecraftServer.getServer().getConfigurationManager().getBannedPlayers().getBannedList().keySet()) : null; 053 } 054 }