001 package net.minecraft.command;
002
003 import java.util.List;
004 import net.minecraft.network.packet.Packet3Chat;
005 import net.minecraft.server.MinecraftServer;
006
007 public class CommandServerSay extends CommandBase
008 {
009 public String getCommandName()
010 {
011 return "say";
012 }
013
014 /**
015 * Return the required permission level for this command.
016 */
017 public int getRequiredPermissionLevel()
018 {
019 return 1;
020 }
021
022 public String getCommandUsage(ICommandSender par1ICommandSender)
023 {
024 return par1ICommandSender.translateString("commands.say.usage", new Object[0]);
025 }
026
027 public void processCommand(ICommandSender par1ICommandSender, String[] par2ArrayOfStr)
028 {
029 if (par2ArrayOfStr.length > 0 && par2ArrayOfStr[0].length() > 0)
030 {
031 String var3 = func_82361_a(par1ICommandSender, par2ArrayOfStr, 0, true);
032 MinecraftServer.getServer().getConfigurationManager().sendPacketToAllPlayers(new Packet3Chat(String.format("[%s] %s", new Object[] {par1ICommandSender.getCommandSenderName(), var3})));
033 }
034 else
035 {
036 throw new WrongUsageException("commands.say.usage", new Object[0]);
037 }
038 }
039
040 /**
041 * Adds the strings available in this command to the given list of tab completion options.
042 */
043 public List addTabCompletionOptions(ICommandSender par1ICommandSender, String[] par2ArrayOfStr)
044 {
045 return par2ArrayOfStr.length >= 1 ? getListOfStringsMatchingLastWord(par2ArrayOfStr, MinecraftServer.getServer().getAllUsernames()) : null;
046 }
047 }