001 package net.minecraft.src; 002 003 import java.util.List; 004 import java.util.Random; 005 import net.minecraft.server.MinecraftServer; 006 007 public class CommandWeather extends CommandBase 008 { 009 public String getCommandName() 010 { 011 return "weather"; 012 } 013 014 public int func_82362_a() 015 { 016 return 2; 017 } 018 019 public void processCommand(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) 020 { 021 if (par2ArrayOfStr.length < 1) 022 { 023 throw new WrongUsageException("commands.weather.usage", new Object[0]); 024 } 025 else 026 { 027 int var3 = (300 + (new Random()).nextInt(600)) * 20; 028 029 if (par2ArrayOfStr.length >= 2) 030 { 031 var3 = parseIntBounded(par1ICommandSender, par2ArrayOfStr[1], 1, 1000000) * 20; 032 } 033 034 WorldServer var4 = MinecraftServer.getServer().worldServers[0]; 035 WorldInfo var5 = var4.getWorldInfo(); 036 var5.setRainTime(var3); 037 var5.setThunderTime(var3); 038 039 if ("clear".equalsIgnoreCase(par2ArrayOfStr[0])) 040 { 041 var5.setRaining(false); 042 var5.setThundering(false); 043 notifyAdmins(par1ICommandSender, "commands.weather.clear", new Object[0]); 044 } 045 else if ("rain".equalsIgnoreCase(par2ArrayOfStr[0])) 046 { 047 var5.setRaining(true); 048 var5.setThundering(false); 049 notifyAdmins(par1ICommandSender, "commands.weather.rain", new Object[0]); 050 } 051 else if ("thunder".equalsIgnoreCase(par2ArrayOfStr[0])) 052 { 053 var5.setRaining(true); 054 var5.setThundering(true); 055 notifyAdmins(par1ICommandSender, "commands.weather.thunder", new Object[0]); 056 } 057 } 058 } 059 060 /** 061 * Adds the strings available in this command to the given list of tab completion options. 062 */ 063 public List addTabCompletionOptions(ICommandSender par1ICommandSender, String[] par2ArrayOfStr) 064 { 065 return par2ArrayOfStr.length == 1 ? getListOfStringsMatchingLastWord(par2ArrayOfStr, new String[] {"clear", "rain", "thunder"}): null; 066 } 067 }