001 package net.minecraft.src; 002 003 import java.util.Iterator; 004 import net.minecraft.server.MinecraftServer; 005 006 public class ServerCommandManager extends CommandHandler implements IAdminCommand 007 { 008 public ServerCommandManager() 009 { 010 this.registerCommand(new CommandTime()); 011 this.registerCommand(new CommandGameMode()); 012 this.registerCommand(new CommandDifficulty()); 013 this.registerCommand(new CommandDefaultGameMode()); 014 this.registerCommand(new CommandKill()); 015 this.registerCommand(new CommandToggleDownfall()); 016 this.registerCommand(new CommandWeather()); 017 this.registerCommand(new CommandXP()); 018 this.registerCommand(new CommandServerTp()); 019 this.registerCommand(new CommandGive()); 020 this.registerCommand(new CommandServerEmote()); 021 this.registerCommand(new CommandShowSeed()); 022 this.registerCommand(new CommandHelp()); 023 this.registerCommand(new CommandDebug()); 024 this.registerCommand(new CommandServerMessage()); 025 this.registerCommand(new CommandServerSay()); 026 this.registerCommand(new CommandSetSpawnpoint()); 027 this.registerCommand(new CommandGameRule()); 028 this.registerCommand(new CommandClearInventory()); 029 030 if (MinecraftServer.getServer().isDedicatedServer()) 031 { 032 this.registerCommand(new CommandServerOp()); 033 this.registerCommand(new CommandServerDeop()); 034 this.registerCommand(new CommandServerStop()); 035 this.registerCommand(new CommandServerSaveAll()); 036 this.registerCommand(new CommandServerSaveOff()); 037 this.registerCommand(new CommandServerSaveOn()); 038 this.registerCommand(new CommandServerBanIp()); 039 this.registerCommand(new CommandServerPardonIp()); 040 this.registerCommand(new CommandServerBan()); 041 this.registerCommand(new CommandServerBanlist()); 042 this.registerCommand(new CommandServerPardon()); 043 this.registerCommand(new CommandServerKick()); 044 this.registerCommand(new CommandServerList()); 045 this.registerCommand(new CommandServerWhitelist()); 046 } 047 else 048 { 049 this.registerCommand(new CommandServerPublishLocal()); 050 } 051 052 CommandBase.setAdminCommander(this); 053 } 054 055 /** 056 * Sends a message to the admins of the server from a given CommandSender with the given resource string and given 057 * extra srings. If the int par2 is even or zero, the original sender is also notified. 058 */ 059 public void notifyAdmins(ICommandSender par1ICommandSender, int par2, String par3Str, Object ... par4ArrayOfObj) 060 { 061 boolean var5 = true; 062 063 if (par1ICommandSender instanceof TileEntityCommandBlock && !MinecraftServer.getServer().worldServers[0].func_82736_K().func_82766_b("commandBlockOutput")) 064 { 065 var5 = false; 066 } 067 068 if (var5) 069 { 070 Iterator var6 = MinecraftServer.getServer().getConfigurationManager().playerEntityList.iterator(); 071 072 while (var6.hasNext()) 073 { 074 EntityPlayerMP var7 = (EntityPlayerMP)var6.next(); 075 076 if (var7 != par1ICommandSender && MinecraftServer.getServer().getConfigurationManager().areCommandsAllowed(var7.username)) 077 { 078 var7.sendChatToPlayer("\u00a77\u00a7o[" + par1ICommandSender.getCommandSenderName() + ": " + var7.translateString(par3Str, par4ArrayOfObj) + "]"); 079 } 080 } 081 } 082 083 if (par1ICommandSender != MinecraftServer.getServer()) 084 { 085 MinecraftServer.logger.info("[" + par1ICommandSender.getCommandSenderName() + ": " + MinecraftServer.getServer().translateString(par3Str, par4ArrayOfObj) + "]"); 086 } 087 088 if ((par2 & 1) != 1) 089 { 090 par1ICommandSender.sendChatToPlayer(par1ICommandSender.translateString(par3Str, par4ArrayOfObj)); 091 } 092 } 093 }