001 package net.minecraft.src; 002 003 import java.util.ArrayList; 004 import java.util.List; 005 import net.minecraft.server.MinecraftServer; 006 007 public class CommandServerOp extends CommandBase 008 { 009 public String getCommandName() 010 { 011 return "op"; 012 } 013 014 public String getCommandUsage(ICommandSender par1ICommandSender) 015 { 016 return par1ICommandSender.translateString("commands.op.usage", new Object[0]); 017 } 018 019 public void processCommand(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) 020 { 021 if (par2ArrayOfStr.length == 1 && par2ArrayOfStr[0].length() > 0) 022 { 023 MinecraftServer.getServer().getConfigurationManager().addOp(par2ArrayOfStr[0]); 024 notifyAdmins(par1ICommandSender, "commands.op.success", new Object[] {par2ArrayOfStr[0]}); 025 } 026 else 027 { 028 throw new WrongUsageException("commands.op.usage", new Object[0]); 029 } 030 } 031 032 /** 033 * Adds the strings available in this command to the given list of tab completion options. 034 */ 035 public List addTabCompletionOptions(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) 036 { 037 if (par2ArrayOfStr.length == 1) 038 { 039 String var3 = par2ArrayOfStr[par2ArrayOfStr.length - 1]; 040 ArrayList var4 = new ArrayList(); 041 String[] var5 = MinecraftServer.getServer().getAllUsernames(); 042 int var6 = var5.length; 043 044 for (int var7 = 0; var7 < var6; ++var7) 045 { 046 String var8 = var5[var7]; 047 048 if (!MinecraftServer.getServer().getConfigurationManager().areCommandsAllowed(var8) && doesStringStartWith(var3, var8)) 049 { 050 var4.add(var8); 051 } 052 } 053 054 return var4; 055 } 056 else 057 { 058 return null; 059 } 060 } 061 }