package net.minecraft.command; import java.util.Iterator; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.scoreboard.ServerCommandScoreboard; import net.minecraft.scoreboard.ServerCommandTestFor; import net.minecraft.server.MinecraftServer; import net.minecraft.tileentity.TileEntityCommandBlock; import net.minecraft.util.EnumChatFormatting; public class ServerCommandManager extends CommandHandler implements IAdminCommand { public ServerCommandManager() { this.registerCommand(new CommandTime()); this.registerCommand(new CommandGameMode()); this.registerCommand(new CommandDifficulty()); this.registerCommand(new CommandDefaultGameMode()); this.registerCommand(new CommandKill()); this.registerCommand(new CommandToggleDownfall()); this.registerCommand(new CommandWeather()); this.registerCommand(new CommandXP()); this.registerCommand(new CommandServerTp()); this.registerCommand(new CommandGive()); this.registerCommand(new CommandEffect()); this.registerCommand(new CommandEnchant()); this.registerCommand(new CommandServerEmote()); this.registerCommand(new CommandShowSeed()); this.registerCommand(new CommandHelp()); this.registerCommand(new CommandDebug()); this.registerCommand(new CommandServerMessage()); this.registerCommand(new CommandServerSay()); this.registerCommand(new CommandSetSpawnpoint()); this.registerCommand(new CommandGameRule()); this.registerCommand(new CommandClearInventory()); this.registerCommand(new ServerCommandTestFor()); this.registerCommand(new ServerCommandScoreboard()); if (MinecraftServer.getServer().isDedicatedServer()) { this.registerCommand(new CommandServerOp()); this.registerCommand(new CommandServerDeop()); this.registerCommand(new CommandServerStop()); this.registerCommand(new CommandServerSaveAll()); this.registerCommand(new CommandServerSaveOff()); this.registerCommand(new CommandServerSaveOn()); this.registerCommand(new CommandServerBanIp()); this.registerCommand(new CommandServerPardonIp()); this.registerCommand(new CommandServerBan()); this.registerCommand(new CommandServerBanlist()); this.registerCommand(new CommandServerPardon()); this.registerCommand(new CommandServerKick()); this.registerCommand(new CommandServerList()); this.registerCommand(new CommandServerWhitelist()); } else { this.registerCommand(new CommandServerPublishLocal()); } CommandBase.setAdminCommander(this); } /** * Sends a message to the admins of the server from a given CommandSender with the given resource string and given * extra srings. If the int par2 is even or zero, the original sender is also notified. */ public void notifyAdmins(ICommandSender par1ICommandSender, int par2, String par3Str, Object ... par4ArrayOfObj) { boolean flag = true; if (par1ICommandSender instanceof TileEntityCommandBlock && !MinecraftServer.getServer().worldServers[0].getGameRules().getGameRuleBooleanValue("commandBlockOutput")) { flag = false; } if (flag) { Iterator iterator = MinecraftServer.getServer().getConfigurationManager().playerEntityList.iterator(); while (iterator.hasNext()) { EntityPlayerMP entityplayermp = (EntityPlayerMP)iterator.next(); if (entityplayermp != par1ICommandSender && MinecraftServer.getServer().getConfigurationManager().areCommandsAllowed(entityplayermp.username)) { entityplayermp.sendChatToPlayer("" + EnumChatFormatting.GRAY + "" + EnumChatFormatting.ITALIC + "[" + par1ICommandSender.getCommandSenderName() + ": " + entityplayermp.translateString(par3Str, par4ArrayOfObj) + "]"); } } } if (par1ICommandSender != MinecraftServer.getServer()) { MinecraftServer.getServer().getLogAgent().logInfo("[" + par1ICommandSender.getCommandSenderName() + ": " + MinecraftServer.getServer().translateString(par3Str, par4ArrayOfObj) + "]"); } if ((par2 & 1) != 1) { par1ICommandSender.sendChatToPlayer(par1ICommandSender.translateString(par3Str, par4ArrayOfObj)); } } }