diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/kubatech/commands/CommandBees.java | 22 | ||||
-rw-r--r-- | src/main/java/kubatech/commands/CommandConfig.java | 27 | ||||
-rw-r--r-- | src/main/java/kubatech/commands/CommandHandler.java | 78 | ||||
-rw-r--r-- | src/main/java/kubatech/commands/CommandHelp.java | 16 | ||||
-rw-r--r-- | src/main/java/kubatech/commands/CommandTea.java | 40 | ||||
-rw-r--r-- | src/main/java/kubatech/kubatech.java | 21 |
6 files changed, 75 insertions, 129 deletions
diff --git a/src/main/java/kubatech/commands/CommandBees.java b/src/main/java/kubatech/commands/CommandBees.java index 2df0c294a6..23a90fe2ea 100644 --- a/src/main/java/kubatech/commands/CommandBees.java +++ b/src/main/java/kubatech/commands/CommandBees.java @@ -30,8 +30,10 @@ import java.util.List; import net.minecraft.command.CommandBase; import net.minecraft.command.ICommandSender; +import net.minecraft.event.ClickEvent; import net.minecraft.item.ItemStack; import net.minecraft.util.ChatComponentText; +import net.minecraft.util.ChatStyle; import net.minecraft.util.EnumChatFormatting; import com.google.common.io.Files; @@ -41,7 +43,6 @@ import forestry.api.apiculture.IBee; import forestry.api.apiculture.IBeeGenome; import kubatech.api.utils.ModUtils; -@CommandHandler.ChildCommand public class CommandBees extends CommandBase { @Override @@ -50,21 +51,16 @@ public class CommandBees extends CommandBase { } @Override - public String getCommandUsage(ICommandSender p_71518_1_) { + public String getCommandUsage(ICommandSender sender) { return "bees"; } - @Override - public int getRequiredPermissionLevel() { - return 4; - } - @SuppressWarnings("UnstableApiUsage") @Override - public void processCommand(ICommandSender p_71515_1_, String[] p_71515_2_) { + public void processCommand(ICommandSender sender, String[] args) { if (!ModUtils.isClientSided) { - p_71515_1_ + sender .addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "This command is single-player only!")); return; } @@ -97,7 +93,13 @@ public class CommandBees extends CommandBase { writer.flush(); writer.close(); - p_71515_1_.addChatMessage(new ChatComponentText(f.getAbsolutePath())); + sender.addChatMessage( + new ChatComponentText( + EnumChatFormatting.YELLOW + "Click to open file : " + + EnumChatFormatting.RESET + + f.getAbsolutePath()).setChatStyle( + new ChatStyle() + .setChatClickEvent(new ClickEvent(ClickEvent.Action.OPEN_FILE, f.getAbsolutePath())))); } catch (IOException e) { throw new RuntimeException(e); } diff --git a/src/main/java/kubatech/commands/CommandConfig.java b/src/main/java/kubatech/commands/CommandConfig.java index be759be2c9..642ef8f0a3 100644 --- a/src/main/java/kubatech/commands/CommandConfig.java +++ b/src/main/java/kubatech/commands/CommandConfig.java @@ -35,14 +35,13 @@ import kubatech.config.Config; import kubatech.kubatech; import kubatech.network.LoadConfigPacket; -@CommandHandler.ChildCommand public class CommandConfig extends CommandBase { enum Translations { INVALID_OPTION, SUCCESS, - USAGE,; + USAGE; final String key; @@ -75,29 +74,23 @@ public class CommandConfig extends CommandBase { } @Override - public String getCommandUsage(ICommandSender p_71518_1_) { + public String getCommandUsage(ICommandSender sender) { return "config " + USAGE.get(); } @Override - public int getRequiredPermissionLevel() { - return 4; - } - - @SuppressWarnings("unchecked") - @Override - public void processCommand(ICommandSender p_71515_1_, String[] p_71515_2_) { - if (p_71515_2_.length == 0 || !p_71515_2_[0].equals("reload")) { - p_71515_1_.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); + public void processCommand(ICommandSender sender, String[] args) { + if (args.length == 0 || !args[0].equals("reload")) { + sender.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); return; } Config.synchronizeConfiguration(); MinecraftServer.getServer() - .getConfigurationManager().playerEntityList.forEach(p -> { - if (!(p instanceof EntityPlayerMP)) return; - kubatech.info("Sending config to " + ((EntityPlayerMP) p).getDisplayName()); - kubatech.NETWORK.sendTo(LoadConfigPacket.instance, (EntityPlayerMP) p); + .getConfigurationManager().playerEntityList.forEach(player -> { + if (!(player instanceof EntityPlayerMP)) return; + kubatech.info("Sending config to " + player.getDisplayName()); + kubatech.NETWORK.sendTo(LoadConfigPacket.instance, player); }); - p_71515_1_.addChatMessage(new ChatComponentText(SUCCESS.get())); + sender.addChatMessage(new ChatComponentText(SUCCESS.get())); } } diff --git a/src/main/java/kubatech/commands/CommandHandler.java b/src/main/java/kubatech/commands/CommandHandler.java index b0957c9572..e3d93534c5 100644 --- a/src/main/java/kubatech/commands/CommandHandler.java +++ b/src/main/java/kubatech/commands/CommandHandler.java @@ -25,10 +25,6 @@ import static kubatech.commands.CommandHandler.Translations.GENERIC_HELP; import static kubatech.commands.CommandHandler.Translations.INVALID; import static kubatech.commands.CommandHandler.Translations.USAGE; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; import java.util.Arrays; import java.util.Collections; import java.util.HashMap; @@ -42,8 +38,6 @@ import net.minecraft.util.ChatComponentTranslation; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.StatCollector; -import kubatech.kubatech; - public class CommandHandler extends CommandBase { enum Translations { @@ -78,8 +72,18 @@ public class CommandHandler extends CommandBase { } } - private static final List<String> aliases = Collections.singletonList("kt"); - public static final HashMap<String, ICommand> commands = new HashMap<>(); + public static final HashMap<String, ICommand> childCommands = new HashMap<>(); + + static { + registerChildCommand(new CommandBees()); + registerChildCommand(new CommandConfig()); + registerChildCommand(new CommandHelp()); + registerChildCommand(new CommandTea()); + } + + private static void registerChildCommand(ICommand command) { + childCommands.put(command.getCommandName(), command); + } @Override public String getCommandName() { @@ -87,70 +91,42 @@ public class CommandHandler extends CommandBase { } @Override - public String getCommandUsage(ICommandSender p_71518_1_) { + public String getCommandUsage(ICommandSender sender) { return "kubatech " + USAGE.get(); } @SuppressWarnings("rawtypes") @Override public List getCommandAliases() { - return aliases; + return Collections.singletonList("kt"); } @Override - public void processCommand(ICommandSender p_71515_1_, String[] p_71515_2_) { - if (p_71515_1_.getEntityWorld().isRemote) return; - if (p_71515_2_.length == 0) { - p_71515_1_.addChatMessage(new ChatComponentText(INVALID.get(getCommandUsage(p_71515_1_)))); - p_71515_1_.addChatMessage(new ChatComponentText(GENERIC_HELP.get())); + public void processCommand(ICommandSender sender, String[] args) { + if (sender.getEntityWorld().isRemote) return; + if (args.length == 0) { + sender.addChatMessage(new ChatComponentText(INVALID.get(getCommandUsage(sender)))); + sender.addChatMessage(new ChatComponentText(GENERIC_HELP.get())); return; } - if (!commands.containsKey(p_71515_2_[0])) { - p_71515_1_.addChatMessage(new ChatComponentText(CANT_FIND.get(p_71515_2_[0]))); - p_71515_1_.addChatMessage(new ChatComponentText(GENERIC_HELP.get())); + if (!childCommands.containsKey(args[0])) { + sender.addChatMessage(new ChatComponentText(CANT_FIND.get(args[0]))); + sender.addChatMessage(new ChatComponentText(GENERIC_HELP.get())); return; } - ICommand cmd = commands.get(p_71515_2_[0]); - if (!cmd.canCommandSenderUseCommand(p_71515_1_)) { + ICommand cmd = childCommands.get(args[0]); + if (!cmd.canCommandSenderUseCommand(sender)) { ChatComponentTranslation chatcomponenttranslation2 = new ChatComponentTranslation( "commands.generic.permission"); chatcomponenttranslation2.getChatStyle() .setColor(EnumChatFormatting.RED); - p_71515_1_.addChatMessage(chatcomponenttranslation2); - } else cmd.processCommand( - p_71515_1_, - p_71515_2_.length > 1 ? Arrays.copyOfRange(p_71515_2_, 1, p_71515_2_.length) : new String[0]); + sender.addChatMessage(chatcomponenttranslation2); + } else cmd.processCommand(sender, args.length > 1 ? Arrays.copyOfRange(args, 1, args.length) : new String[0]); } @Override - public boolean canCommandSenderUseCommand(ICommandSender p_71519_1_) { + public boolean canCommandSenderUseCommand(ICommandSender sender) { return true; } - public static void addCommand(ICommand command) { - commands.put(command.getCommandName(), command); - } - - static { - String ChildCommandDesc = "L" + ChildCommand.class.getName() - .replace(".", "/") + ";"; - kubatech.myClasses.stream() - .filter( - clazz -> clazz.invisibleAnnotations != null && clazz.invisibleAnnotations.stream() - .anyMatch(ann -> ann.desc.equals(ChildCommandDesc))) - .forEach(clazz -> { - try { - addCommand( - (ICommand) Class.forName(clazz.name.replace("/", ".")) - .getConstructor() - .newInstance()); - } catch (Exception e) { - throw new RuntimeException(e); - } - }); - } - - @Target(ElementType.TYPE) - @Retention(RetentionPolicy.CLASS) - public @interface ChildCommand {} } diff --git a/src/main/java/kubatech/commands/CommandHelp.java b/src/main/java/kubatech/commands/CommandHelp.java index 610f330ede..fb8e107174 100644 --- a/src/main/java/kubatech/commands/CommandHelp.java +++ b/src/main/java/kubatech/commands/CommandHelp.java @@ -28,13 +28,12 @@ import net.minecraft.command.ICommandSender; import net.minecraft.util.ChatComponentText; import net.minecraft.util.StatCollector; -@CommandHandler.ChildCommand public class CommandHelp extends CommandBase { enum Translations { POSSIBLE_COMMANDS, - USAGE,; + USAGE; final String key; @@ -67,20 +66,19 @@ public class CommandHelp extends CommandBase { } @Override - public String getCommandUsage(ICommandSender p_71518_1_) { + public String getCommandUsage(ICommandSender sender) { return "help " + USAGE.get(); } @Override - public boolean canCommandSenderUseCommand(ICommandSender p_71519_1_) { + public boolean canCommandSenderUseCommand(ICommandSender sender) { return true; } @Override - public void processCommand(ICommandSender p_71515_1_, String[] p_71515_2_) { - p_71515_1_.addChatMessage(new ChatComponentText(POSSIBLE_COMMANDS.get())); - CommandHandler.commands.values() - .forEach( - c -> p_71515_1_.addChatMessage(new ChatComponentText("/kubatech " + c.getCommandUsage(p_71515_1_)))); + public void processCommand(ICommandSender sender, String[] args) { + sender.addChatMessage(new ChatComponentText(POSSIBLE_COMMANDS.get())); + CommandHandler.childCommands.values() + .forEach(c -> sender.addChatMessage(new ChatComponentText("/kubatech " + c.getCommandUsage(sender)))); } } diff --git a/src/main/java/kubatech/commands/CommandTea.java b/src/main/java/kubatech/commands/CommandTea.java index 057d2bca69..27f82398ed 100644 --- a/src/main/java/kubatech/commands/CommandTea.java +++ b/src/main/java/kubatech/commands/CommandTea.java @@ -38,7 +38,6 @@ import net.minecraft.util.StatCollector; import kubatech.api.helpers.UUIDFinder; import kubatech.api.tea.TeaNetwork; -@CommandHandler.ChildCommand public class CommandTea extends CommandBase { enum Translations { @@ -48,7 +47,7 @@ public class CommandTea extends CommandBase { SUCCESS_GET, SUCCESS_SET, SUCCESS_ADD, - USAGE,; + USAGE; final String key; @@ -81,58 +80,53 @@ public class CommandTea extends CommandBase { } @Override - public String getCommandUsage(ICommandSender p_71518_1_) { + public String getCommandUsage(ICommandSender sender) { return "tea " + USAGE.get(); } @Override - public int getRequiredPermissionLevel() { - return 4; - } - - @Override - public void processCommand(ICommandSender p_71515_1_, String[] p_71515_2_) { - if (p_71515_2_.length < 2) { - p_71515_1_.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); + public void processCommand(ICommandSender sender, String[] args) { + if (args.length < 2) { + sender.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); return; } - UUID player = UUIDFinder.getUUID(p_71515_2_[0]); + UUID player = UUIDFinder.getUUID(args[0]); if (player == null) { - p_71515_1_.addChatMessage(new ChatComponentText(PLAYER_NOT_FOUND.get())); + sender.addChatMessage(new ChatComponentText(PLAYER_NOT_FOUND.get())); return; } TeaNetwork teaNetwork = TeaNetwork.getNetwork(player); - if (!p_71515_2_[1].equalsIgnoreCase("get") && p_71515_2_.length < 3) { - p_71515_1_.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); + if (!args[1].equalsIgnoreCase("get") && args.length < 3) { + sender.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); return; } - switch (p_71515_2_[1].toLowerCase()) { + switch (args[1].toLowerCase()) { case "get": - p_71515_1_.addChatMessage(new ChatComponentText(SUCCESS_GET.get(p_71515_2_[0], teaNetwork.teaAmount))); + sender.addChatMessage(new ChatComponentText(SUCCESS_GET.get(args[0], teaNetwork.teaAmount))); break; case "set": { BigInteger tea; try { - tea = new BigInteger(p_71515_2_[2]); + tea = new BigInteger(args[2]); } catch (NumberFormatException ex) { - p_71515_1_.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); + sender.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); return; } teaNetwork.teaAmount = tea; teaNetwork.markDirty(); - p_71515_1_.addChatMessage(new ChatComponentText(SUCCESS_SET.get(p_71515_2_[0], teaNetwork.teaAmount))); + sender.addChatMessage(new ChatComponentText(SUCCESS_SET.get(args[0], teaNetwork.teaAmount))); break; } case "add": { BigInteger tea; try { - tea = new BigInteger(p_71515_2_[2]); + tea = new BigInteger(args[2]); } catch (NumberFormatException ex) { - p_71515_1_.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); + sender.addChatMessage(new ChatComponentText(INVALID_OPTION.get())); return; } teaNetwork.addTea(tea); - p_71515_1_.addChatMessage(new ChatComponentText(SUCCESS_ADD.get(p_71515_2_[0], teaNetwork.teaAmount))); + sender.addChatMessage(new ChatComponentText(SUCCESS_ADD.get(args[0], teaNetwork.teaAmount))); break; } default: diff --git a/src/main/java/kubatech/kubatech.java b/src/main/java/kubatech/kubatech.java index e847780c61..2e0ae0eccb 100644 --- a/src/main/java/kubatech/kubatech.java +++ b/src/main/java/kubatech/kubatech.java @@ -22,8 +22,6 @@ package kubatech; import static kubatech.api.enums.ItemList.LegendaryRedTea; -import java.io.IOException; -import java.util.Collection; import java.util.List; import net.minecraft.creativetab.CreativeTabs; @@ -32,7 +30,6 @@ import net.minecraft.item.ItemStack; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -import org.objectweb.asm.tree.ClassNode; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.SidedProxy; @@ -50,7 +47,6 @@ import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import kubatech.api.enums.ItemList; -import kubatech.api.helpers.ReflectionHelper; import kubatech.loaders.BlockLoader; import kubatech.network.CustomTileEntityPacket; import kubatech.network.LoadConfigPacket; @@ -78,7 +74,8 @@ import kubatech.network.LoadConfigPacket; + "after: dreamcraft; ") public class kubatech { - public static kubatech instance = null; + @Mod.Instance(Tags.MODID) + public static kubatech instance; public static final SimpleNetworkWrapper NETWORK = new SimpleNetworkWrapper(Tags.MODID); public static final CreativeTabs KT = new CreativeTabs(Tags.MODID) { @@ -123,22 +120,8 @@ public class kubatech { @SidedProxy(clientSide = Tags.MODID + ".ClientProxy", serverSide = Tags.MODID + ".CommonProxy") public static CommonProxy proxy; - public static Collection<ClassNode> myClasses; - @Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { - instance = this; - final long timeStart = System.currentTimeMillis(); - try { - myClasses = ReflectionHelper.getClasses( - this.getClass() - .getPackage() - .getName()); - } catch (IOException e) { - throw new RuntimeException(e); - } - final long timeToLoad = System.currentTimeMillis() - timeStart; - info("Class discovery took " + timeToLoad + "ms ! Found " + myClasses.size() + " classes."); proxy.preInit(event); } |