the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1/*
2package net.minecraft.commands.common;
3
4import java.util.*;
5
6import net.minecraft.SharedConstants;
7import net.minecraft.commands.*;
8import net.minecraft.commands.exceptions.UsageException;
9import net.minecraft.server.MinecraftServer;
10import net.minecraft.world.level.Level;
11import net.minecraft.world.level.storage.LevelData;
12
13public class WeatherCommand extends BaseCommand {
14 @Override
15 public String getName() {
16 return "weather";
17 }
18
19 @Override
20 public int getPermissionLevel() {
21 return LEVEL_GAMEMASTERS;
22 }
23
24 @Override
25 public String getUsage(CommandSender source) {
26 return "commands.weather.usage";
27 }
28
29 @Override
30 public void execute(CommandSender source, String[] args) {
31 if (args.length < 1 || args.length > 2) {
32 throw new UsageException("commands.weather.usage");
33 }
34
35 int duration = (300 + new Random().nextInt(600)) * SharedConstants.TICKS_PER_SECOND;
36 if (args.length >= 2) {
37 duration = convertArgToInt(source, args[1], 1, 1000000) * SharedConstants.TICKS_PER_SECOND;
38 }
39
40 Level level = MinecraftServer.getInstance().levels[0];
41 LevelData levelData = level.getLevelData();
42 levelData.setRainTime(duration);
43 levelData.setThunderTime(duration);
44
45 if ("clear".equalsIgnoreCase(args[0])) {
46 levelData.setRaining(false);
47 levelData.setThundering(false);
48 logAdminAction(source, "commands.weather.clear");
49 } else if ("rain".equalsIgnoreCase(args[0])) {
50 levelData.setRaining(true);
51 levelData.setThundering(false);
52 logAdminAction(source, "commands.weather.rain");
53 } else if ("thunder".equalsIgnoreCase(args[0])) {
54 levelData.setRaining(true);
55 levelData.setThundering(true);
56 logAdminAction(source, "commands.weather.thunder");
57 } else {
58 throw new UsageException("commands.weather.usage");
59 }
60 }
61
62 @Override
63 public List<String> matchArguments(CommandSender source, String[] args) {
64 if (args.length == 1) {
65 return matchArguments(args, "clear", "rain", "thunder");
66 }
67
68 return null;
69 }
70
71}
72
73*/