From e9f32846d1e7887f2cca0bdd107a5b927ca77721 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Ducho=C5=88?= Date: Thu, 15 Feb 2018 23:55:15 +0100 Subject: [PATCH] Cleaning --- .../treechopper/client/gui/GuiTCHFactory.java | 14 +- .../common/command/TCHCommand.java | 236 ++++---- .../common/config/ConfigurationHandler.java | 502 +++++++++--------- .../common/handler/EventHandler.java | 8 +- .../common/handler/TreeHandler.java | 318 +++++------ .../common/network/ClientSettingsMessage.java | 58 +- .../common/network/ServerSettingsMessage.java | 58 +- .../java/treechopper/common/tree/Tree.java | 80 +-- .../java/treechopper/core/TreeChopper.java | 68 +-- .../java/treechopper/proxy/CommonProxy.java | 188 +++---- .../java/treechopper/proxy/ServerProxy.java | 90 ++-- 11 files changed, 813 insertions(+), 807 deletions(-) diff --git a/src/main/java/treechopper/client/gui/GuiTCHFactory.java b/src/main/java/treechopper/client/gui/GuiTCHFactory.java index dd9f339..faae04e 100644 --- a/src/main/java/treechopper/client/gui/GuiTCHFactory.java +++ b/src/main/java/treechopper/client/gui/GuiTCHFactory.java @@ -9,12 +9,12 @@ public class GuiTCHFactory extends DefaultGuiFactory { - public GuiTCHFactory() { - super(TreeChopper.MOD_ID, TreeChopper.MOD_NAME); - } + public GuiTCHFactory() { + super(TreeChopper.MOD_ID, TreeChopper.MOD_NAME); + } - @Override - public GuiScreen createConfigGui(GuiScreen guiScreen) { - return new GuiConfig(guiScreen, new ConfigElement(ConfigurationHandler.config.getCategory("Settings")).getChildElements(), modid, false, false, title); - } + @Override + public GuiScreen createConfigGui(GuiScreen guiScreen) { + return new GuiConfig(guiScreen, new ConfigElement(ConfigurationHandler.config.getCategory("Settings")).getChildElements(), modid, false, false, title); + } } \ No newline at end of file diff --git a/src/main/java/treechopper/common/command/TCHCommand.java b/src/main/java/treechopper/common/command/TCHCommand.java index 63ca2d0..8e1addf 100644 --- a/src/main/java/treechopper/common/command/TCHCommand.java +++ b/src/main/java/treechopper/common/command/TCHCommand.java @@ -20,147 +20,147 @@ public class TCHCommand extends CommandBase { - @Override - public String getName() { - return "treechopper"; + @Override + public String getName() { + return "treechopper"; + } + + @Override + public List getAliases() { + return Lists.newArrayList("tch"); + } + + @Override + public String getUsage(ICommandSender sender) { + return GetTranslatedText(sender, "command.errorMessage", "Type \"/tch help\" for help"); + } + + @Override + public boolean checkPermission(MinecraftServer server, ICommandSender sender) { + return true; + } + + @Override + public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException { + + if (args.length > 0 && args[0].equals("printName")) { + if (args.length != 2) { + throw new WrongUsageException("/tch printName 0/1"); + } + + try { + CommonProxy.m_PlayerPrintNames.put(sender.getCommandSenderEntity().getPersistentID(), parseBoolean(args[1])); + } catch (Exception e) { + System.out.printf("Not a player"); + } + return; } - @Override - public List getAliases() { - return Lists.newArrayList("tch"); - } + if (sender.canUseCommand(this.getRequiredPermissionLevel(), this.getName())) { + if (args.length < 1) { + throw new WrongUsageException(GetTranslatedText(sender, "command.errorMessage", "Type \"/tch help\" for help")); - @Override - public String getUsage(ICommandSender sender) { - return GetTranslatedText(sender, "command.errorMessage", "Type \"/tch help\" for help"); - } + } else if (args[0].equals("help")) { + GetUsage(sender); - @Override - public boolean checkPermission(MinecraftServer server, ICommandSender sender) { - return true; - } + } else if (args[0].equals("info")) { + GetInfo(sender); - @Override - public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException { + } else if (args[0].equals("decLeaves")) { + if (args.length != 2) { + throw new WrongUsageException("/tch decLeaves 0/1"); + } - if (args.length > 0 && args[0].equals("printName")) { - if (args.length != 2) { - throw new WrongUsageException("/tch printName 0/1"); - } + ConfigurationHandler.setDecayLea(parseBoolean(args[1])); + if (ConfigurationHandler.decayLeaves) { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.decayLeavesSwitch", "Decay leaves has been switched") + " " + TextFormatting.GREEN + "ON")); + } else { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.decayLeavesSwitch", "Decay leaves has been switched") + " " + TextFormatting.RED + "OFF")); + } - try { - CommonProxy.m_PlayerPrintNames.put(sender.getCommandSenderEntity().getPersistentID(), parseBoolean(args[1])); - } catch (Exception e) { - System.out.printf("Not a player"); - } - return; + } else if (args[0].equals("plantSap")) { + if (args.length != 2) { + throw new WrongUsageException("/tch plantSap 0/1"); } - if (sender.canUseCommand(this.getRequiredPermissionLevel(), this.getName())) { - if (args.length < 1) { - throw new WrongUsageException(GetTranslatedText(sender, "command.errorMessage", "Type \"/tch help\" for help")); - - } else if (args[0].equals("help")) { - GetUsage(sender); - - } else if (args[0].equals("info")) { - GetInfo(sender); - - } else if (args[0].equals("decLeaves")) { - if (args.length != 2) { - throw new WrongUsageException("/tch decLeaves 0/1"); - } - - ConfigurationHandler.setDecayLea(parseBoolean(args[1])); - if (ConfigurationHandler.decayLeaves) { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.decayLeavesSwitch", "Decay leaves has been switched") + " " + TextFormatting.GREEN + "ON")); - } else { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.decayLeavesSwitch", "Decay leaves has been switched") + " " + TextFormatting.RED + "OFF")); - } - - } else if (args[0].equals("plantSap")) { - if (args.length != 2) { - throw new WrongUsageException("/tch plantSap 0/1"); - } - - ConfigurationHandler.setPlantSap(parseBoolean(args[1])); - if (ConfigurationHandler.plantSapling) { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.plantSaplingSwitch", "Auto planting has been switched") + " " + TextFormatting.GREEN + "ON")); - } else { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.plantSaplingSwitch", "Auto planting has been switched") + " " + TextFormatting.RED + "OFF")); - } - - } else if (args[0].equals("revShift")) { - if (args.length != 2) { - throw new WrongUsageException("/tch revShift 0/1"); - } - - ConfigurationHandler.setReverseShi(parseBoolean(args[1])); - if (ConfigurationHandler.reverseShift) { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.reverseShiftSwitch", "Reverse function has been switched") + " " + TextFormatting.GREEN + "ON")); - } else { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.reverseShiftSwitch", "Reverse function has been switched") + " " + TextFormatting.RED + "OFF")); - } - - TreeChopper.m_Network.sendToAll(new ClientSettingsMessage(ConfigurationHandler.reverseShift, ConfigurationHandler.disableShift)); - - } else if (args[0].equals("disShift")) { - if (args.length != 2) { - throw new WrongUsageException("/tch disShift 0/1"); - } - - ConfigurationHandler.setDisableShi(parseBoolean(args[1])); - if (ConfigurationHandler.disableShift) { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.disableShiftSwitch", "Disable shift function has been switched") + " " + TextFormatting.GREEN + "ON")); - } else { - sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.disableShiftSwitch", "Disable shift function has been switched") + " " + TextFormatting.RED + "OFF")); - } - - TreeChopper.m_Network.sendToAll(new ClientSettingsMessage(ConfigurationHandler.disableShift, ConfigurationHandler.disableShift)); - - } else { - throw new WrongUsageException(GetTranslatedText(sender, "command.errorMessage", "Type \"/tch help\" for help")); - } + ConfigurationHandler.setPlantSap(parseBoolean(args[1])); + if (ConfigurationHandler.plantSapling) { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.plantSaplingSwitch", "Auto planting has been switched") + " " + TextFormatting.GREEN + "ON")); } else { - sender.sendMessage(new TextComponentTranslation(TextFormatting.RED + GetTranslatedText(sender, "command.permissions", "You do not have permission to use this command"))); + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.plantSaplingSwitch", "Auto planting has been switched") + " " + TextFormatting.RED + "OFF")); } - } - @Override - public List getTabCompletions(MinecraftServer server, ICommandSender sender, String[] args, @Nullable BlockPos targetPos) { + } else if (args[0].equals("revShift")) { + if (args.length != 2) { + throw new WrongUsageException("/tch revShift 0/1"); + } - if (args.length == 1) { - return getListOfStringsMatchingLastWord(args, "info", "plantSap", "decLeaves", "revShift", "help", "printName", "disShift"); + ConfigurationHandler.setReverseShi(parseBoolean(args[1])); + if (ConfigurationHandler.reverseShift) { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.reverseShiftSwitch", "Reverse function has been switched") + " " + TextFormatting.GREEN + "ON")); + } else { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.reverseShiftSwitch", "Reverse function has been switched") + " " + TextFormatting.RED + "OFF")); } - return null; - } + TreeChopper.m_Network.sendToAll(new ClientSettingsMessage(ConfigurationHandler.reverseShift, ConfigurationHandler.disableShift)); - private void GetUsage(ICommandSender sender) { - sender.sendMessage(new TextComponentTranslation(TextFormatting.GOLD + "Tree Chopper")); + } else if (args[0].equals("disShift")) { + if (args.length != 2) { + throw new WrongUsageException("/tch disShift 0/1"); + } - sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch info" + TextFormatting.RESET + " -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.infoInfo", " Print info about server settings"))); - sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch plantSap" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.plantSaplingInfo", " Auto plant sapling, around his trunk"))); - sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch decLeaves" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.decayLeavesInfo", " Decay leaves with tree fall"))); - sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch revShift" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.reverseShiftInfo", " Reverse shift function"))); - sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch disShift" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.disableShiftInfo", " Disable shift function"))); + ConfigurationHandler.setDisableShi(parseBoolean(args[1])); + if (ConfigurationHandler.disableShift) { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.disableShiftSwitch", "Disable shift function has been switched") + " " + TextFormatting.GREEN + "ON")); + } else { + sender.sendMessage(new TextComponentTranslation("[" + TextFormatting.GOLD + "TCH" + TextFormatting.RESET + "] " + GetTranslatedText(sender, "command.disableShiftSwitch", "Disable shift function has been switched") + " " + TextFormatting.RED + "OFF")); + } + + TreeChopper.m_Network.sendToAll(new ClientSettingsMessage(ConfigurationHandler.disableShift, ConfigurationHandler.disableShift)); + + } else { + throw new WrongUsageException(GetTranslatedText(sender, "command.errorMessage", "Type \"/tch help\" for help")); + } + } else { + sender.sendMessage(new TextComponentTranslation(TextFormatting.RED + GetTranslatedText(sender, "command.permissions", "You do not have permission to use this command"))); } + } - private void GetInfo(ICommandSender sender) { - sender.sendMessage(new TextComponentTranslation(TextFormatting.GOLD + "Tree Chopper")); + @Override + public List getTabCompletions(MinecraftServer server, ICommandSender sender, String[] args, @Nullable BlockPos targetPos) { - sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.decayLeaves", "Leaves decay:") + " " + TextFormatting.ITALIC + ConfigurationHandler.decayLeaves)); - sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.plantSapling", "Automatic sapling plant:") + " " + TextFormatting.ITALIC + ConfigurationHandler.plantSapling)); - sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.reverseShift", "Reverse func:") + " " + TextFormatting.ITALIC + ConfigurationHandler.reverseShift)); - sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.disableShift", "Disable shift:") + " " + TextFormatting.ITALIC + ConfigurationHandler.disableShift)); + if (args.length == 1) { + return getListOfStringsMatchingLastWord(args, "info", "plantSap", "decLeaves", "revShift", "help", "printName", "disShift"); } - private String GetTranslatedText(ICommandSender sender, String translateKey, String text) { + return null; + } - if (sender.getServer() != null && sender.getServer().isSinglePlayer()) { - return I18n.format(translateKey); - } + private void GetUsage(ICommandSender sender) { + sender.sendMessage(new TextComponentTranslation(TextFormatting.GOLD + "Tree Chopper")); - return text; + sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch info" + TextFormatting.RESET + " -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.infoInfo", " Print info about server settings"))); + sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch plantSap" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.plantSaplingInfo", " Auto plant sapling, around his trunk"))); + sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch decLeaves" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.decayLeavesInfo", " Decay leaves with tree fall"))); + sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch revShift" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.reverseShiftInfo", " Reverse shift function"))); + sender.sendMessage(new TextComponentTranslation(TextFormatting.AQUA + "/tch disShift" + TextFormatting.RESET + " 0/1 -" + TextFormatting.ITALIC + GetTranslatedText(sender, "command.disableShiftInfo", " Disable shift function"))); + } + + private void GetInfo(ICommandSender sender) { + sender.sendMessage(new TextComponentTranslation(TextFormatting.GOLD + "Tree Chopper")); + + sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.decayLeaves", "Leaves decay:") + " " + TextFormatting.ITALIC + ConfigurationHandler.decayLeaves)); + sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.plantSapling", "Automatic sapling plant:") + " " + TextFormatting.ITALIC + ConfigurationHandler.plantSapling)); + sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.reverseShift", "Reverse func:") + " " + TextFormatting.ITALIC + ConfigurationHandler.reverseShift)); + sender.sendMessage(new TextComponentTranslation(GetTranslatedText(sender, "command.disableShift", "Disable shift:") + " " + TextFormatting.ITALIC + ConfigurationHandler.disableShift)); + } + + private String GetTranslatedText(ICommandSender sender, String translateKey, String text) { + + if (sender.getServer() != null && sender.getServer().isSinglePlayer()) { + return I18n.format(translateKey); } + + return text; + } } diff --git a/src/main/java/treechopper/common/config/ConfigurationHandler.java b/src/main/java/treechopper/common/config/ConfigurationHandler.java index c5daf54..20e4785 100644 --- a/src/main/java/treechopper/common/config/ConfigurationHandler.java +++ b/src/main/java/treechopper/common/config/ConfigurationHandler.java @@ -11,274 +11,276 @@ import java.util.List; public class ConfigurationHandler { - public static Configuration config; + public static Configuration config; - public static boolean decayLeaves; - public static boolean reverseShift; - public static boolean disableShift; - public static boolean plantSapling; + public static boolean decayLeaves; + public static boolean reverseShift; + public static boolean disableShift; + public static boolean plantSapling; - public static List axeTypes = new ArrayList<>(); - public static List blockWhiteList = new ArrayList<>(); - public static List leafWhiteList = new ArrayList<>(); + public static boolean modActivation; - public static void init(File configFile) { - if (config == null) { - config = new Configuration(configFile); - loadConfiguration(); - } + public static List axeTypes = new ArrayList<>(); + public static List blockWhiteList = new ArrayList<>(); + public static List leafWhiteList = new ArrayList<>(); + + public static void init(File configFile) { + if (config == null) { + config = new Configuration(configFile); + loadConfiguration(); } + } - private static void loadConfiguration() { - try { - decayLeaves = config.getBoolean("Decay leaves", "Settings", true, "Cut down whole tree - wooden blocks and leaves"); - reverseShift = config.getBoolean("Reverse shift", "Settings", false, "Reverse shift function - Mod works with shift pressing"); - disableShift = config.getBoolean("Disable shift", "Settings", false, "Disable shift function - Always chop trees regardless of shift pressing"); - plantSapling = config.getBoolean("Plant sapling", "Settings", false, "Automatic sapling plant on tree chop"); + private static void loadConfiguration() { + try { + decayLeaves = config.getBoolean("Decay leaves", "Settings", true, "Cut down whole tree - wooden blocks and leaves"); + reverseShift = config.getBoolean("Reverse shift", "Settings", false, "Reverse shift function - Mod works with shift pressing"); + disableShift = config.getBoolean("Disable shift", "Settings", false, "Disable shift function - Always chop trees regardless of shift pressing"); + plantSapling = config.getBoolean("Plant sapling", "Settings", false, "Automatic sapling plant on tree chop"); - axeTypes = ImmutableList.copyOf(config.getStringList("Whitelisted items", "Data", new String[]{ - "item.hatchetWood", - "item.hatchetStone", - "item.hatchetIron", - "item.hatchetGold", - "item.hatchetDiamond", - "item.mud_axe", - "item.psi:psimetalAxe", - "item.tconstruct.lumberaxe", - "item.tconstruct.mattock", - "item.tconstruct.hatchet", - "item.brain_stone_axe", - "item.stable_pulsating_brain_stone_axe", - "item.adobe_axe", - "item.ObsidianAxe", - "item.LazuliAxe", - "item.OsmiumAxe", - "item.BronzeAxe", - "item.GlowstoneAxe", - "item.SteelAxe", - "item.LapisLazuliAxe", - "item.peridotAxe", - "item.rubyAxe", - "item.sapphireAxe", - "item.bronzeAxe", - "item.mud_axe", - "ic2.chainsaw", - "item.itemcrystalaxe", - "item.itemchargedcrystalaxe", - "item.axe_copper", - "item.axe_silver", - "item.axe_lead", - "item.axe_dawnstone", - "item.axe_aluminum", - "item.axe_bronze", - "item.axe_electrum", - "item.axe_nickel", - "item.axe_tin", - "item.WoodPaxel", - "item.StonePaxel", - "item.IronPaxel", - "item.DiamondPaxel", - "item.GoldPaxel", - "item.ObsidianPaxel", - "item.LapisLazuliPaxel", - "item.OsmiumPaxel", - "item.BronzePaxel", - "item.GlowstonePaxel", - "item.SteelPaxel", - "item.ma.inferium_axe", - "item.ma.prudentium_axe", - "item.ma.intermedium_axe", - "item.ma.superium_axe", - "item.ma.supremium_axe", - "item.psimetal_axe", - "item.netheraxt", - "item.stahlaxt", - "item.teufelseisenaxt", - "item.flintAxt", - "item.flint_axe", - "item.bone_axe", - "item.emerald_axe", - "item.obsidian_axe", - "item.diamond_multi", - "item.emerald_multi", - "item.golden_multi", - "item.iron_multi", - "item.obsidian_multi", - "item.stone_multi", - "item.wooden_multi", - "item.natura.ghostwood_axe", - "item.natura.bloodwood_axe", - "item.natura.darkwood_axe", - "item.natura.fusewood_axe", - "item.natura.netherquartz_axe", - "item.terraAxe", - "item.elementiumAxe", - "item.manasteelAxe", - "item.actuallyadditions.item_axe_quartz", - "item.actuallyadditions.item_axe_emerald", - "item.actuallyadditions.item_axe_obsidian", - "item.actuallyadditions.item_axe_crystal_red", - "item.actuallyadditions.item_axe_crystal_blue", - "item.actuallyadditions.item_axe_crystal_light_blue", - "item.actuallyadditions.item_axe_crystal_black", - "item.actuallyadditions.item_axe_crystal_green", - "item.actuallyadditions.item_axe_crystal_white", - "item.daxe", - "item.aaxe", - "item.coraxe", - "item.dreadiumaxe", - "item.ethaxiumaxe", - "item.crystal_axe", - "item.crystal_axe_bone", - "item.dungeontactics:gilded_axe", - "item.dungeontactics:jewelled_axe", - "item.flint_axe", - "item.quartz_axe", - "item.obsidian_axe", - "item.opal_axe", - "item.diamond_axe", - "item.thermalfoundation.tool.copperAxe", - "item.thermalfoundation.tool.tinAxe", - "item.thermalfoundation.tool.silverAxe", - "item.thermalfoundation.tool.leadAxe", - "item.thermalfoundation.tool.aluminumAxe", - "item.thermalfoundation.tool.nickelAxe", - "item.thermalfoundation.tool.platinumAxe", - "item.thermalfoundation.tool.steelAxe", - "item.thermalfoundation.tool.electrumAxe", - "item.thermalfoundation.tool.invarAxe", - "item.thermalfoundation.tool.bronzeAxe", - "item.thermalfoundation.tool.constantanAxe", - "item.next:toolAxeBone", - "item.ironwoodAxe", - "item.steeleafAxe", - "item.minotaurAxe", - "item.knightlyAxe", - }, "Put here allowed items(axes), ")); + axeTypes = ImmutableList.copyOf(config.getStringList("Whitelisted items", "Data", new String[]{ + "item.hatchetWood", + "item.hatchetStone", + "item.hatchetIron", + "item.hatchetGold", + "item.hatchetDiamond", + "item.mud_axe", + "item.psi:psimetalAxe", + "item.tconstruct.lumberaxe", + "item.tconstruct.mattock", + "item.tconstruct.hatchet", + "item.brain_stone_axe", + "item.stable_pulsating_brain_stone_axe", + "item.adobe_axe", + "item.ObsidianAxe", + "item.LazuliAxe", + "item.OsmiumAxe", + "item.BronzeAxe", + "item.GlowstoneAxe", + "item.SteelAxe", + "item.LapisLazuliAxe", + "item.peridotAxe", + "item.rubyAxe", + "item.sapphireAxe", + "item.bronzeAxe", + "item.mud_axe", + "ic2.chainsaw", + "item.itemcrystalaxe", + "item.itemchargedcrystalaxe", + "item.axe_copper", + "item.axe_silver", + "item.axe_lead", + "item.axe_dawnstone", + "item.axe_aluminum", + "item.axe_bronze", + "item.axe_electrum", + "item.axe_nickel", + "item.axe_tin", + "item.WoodPaxel", + "item.StonePaxel", + "item.IronPaxel", + "item.DiamondPaxel", + "item.GoldPaxel", + "item.ObsidianPaxel", + "item.LapisLazuliPaxel", + "item.OsmiumPaxel", + "item.BronzePaxel", + "item.GlowstonePaxel", + "item.SteelPaxel", + "item.ma.inferium_axe", + "item.ma.prudentium_axe", + "item.ma.intermedium_axe", + "item.ma.superium_axe", + "item.ma.supremium_axe", + "item.psimetal_axe", + "item.netheraxt", + "item.stahlaxt", + "item.teufelseisenaxt", + "item.flintAxt", + "item.flint_axe", + "item.bone_axe", + "item.emerald_axe", + "item.obsidian_axe", + "item.diamond_multi", + "item.emerald_multi", + "item.golden_multi", + "item.iron_multi", + "item.obsidian_multi", + "item.stone_multi", + "item.wooden_multi", + "item.natura.ghostwood_axe", + "item.natura.bloodwood_axe", + "item.natura.darkwood_axe", + "item.natura.fusewood_axe", + "item.natura.netherquartz_axe", + "item.terraAxe", + "item.elementiumAxe", + "item.manasteelAxe", + "item.actuallyadditions.item_axe_quartz", + "item.actuallyadditions.item_axe_emerald", + "item.actuallyadditions.item_axe_obsidian", + "item.actuallyadditions.item_axe_crystal_red", + "item.actuallyadditions.item_axe_crystal_blue", + "item.actuallyadditions.item_axe_crystal_light_blue", + "item.actuallyadditions.item_axe_crystal_black", + "item.actuallyadditions.item_axe_crystal_green", + "item.actuallyadditions.item_axe_crystal_white", + "item.daxe", + "item.aaxe", + "item.coraxe", + "item.dreadiumaxe", + "item.ethaxiumaxe", + "item.crystal_axe", + "item.crystal_axe_bone", + "item.dungeontactics:gilded_axe", + "item.dungeontactics:jewelled_axe", + "item.flint_axe", + "item.quartz_axe", + "item.obsidian_axe", + "item.opal_axe", + "item.diamond_axe", + "item.thermalfoundation.tool.copperAxe", + "item.thermalfoundation.tool.tinAxe", + "item.thermalfoundation.tool.silverAxe", + "item.thermalfoundation.tool.leadAxe", + "item.thermalfoundation.tool.aluminumAxe", + "item.thermalfoundation.tool.nickelAxe", + "item.thermalfoundation.tool.platinumAxe", + "item.thermalfoundation.tool.steelAxe", + "item.thermalfoundation.tool.electrumAxe", + "item.thermalfoundation.tool.invarAxe", + "item.thermalfoundation.tool.bronzeAxe", + "item.thermalfoundation.tool.constantanAxe", + "item.next:toolAxeBone", + "item.ironwoodAxe", + "item.steeleafAxe", + "item.minotaurAxe", + "item.knightlyAxe", + }, "Put here allowed items(axes), ")); - blockWhiteList = ImmutableList.copyOf(config.getStringList("Whitelisted blocks", "Data", new String[]{ - "tile.log", - "tile.log_0", - "tile.log_1", - "tile.log_2", - "tile.log_3", - "tile.log_4", - "tile.pamCinnamon", - "tile.pamPaperbark", - "tile.pamMaple", - "tile.for.pile_wood", - "tile.for.logs.vanilla.fireproof.1", - "tile.for.logs.vanilla.fireproof.0", - "tile.for.logs.fireproof.7", - "tile.for.logs.fireproof.6", - "tile.for.logs.fireproof.5", - "tile.for.logs.fireproof.4", - "tile.for.logs.fireproof.3", - "tile.for.logs.fireproof.2", - "tile.for.logs.fireproof.1", - "tile.for.logs.fireproof.0", - "tile.for.logs.7", - "tile.for.logs.6", - "tile.for.logs.5", - "tile.for.logs.4", - "tile.for.logs.3", - "tile.for.logs.2", - "tile.for.logs.1", - "tile.for.logs.0", - "ic2.rubber_wood", - "tile.terraqueous.trunk", - "tile.techreborn.rubberlog", - "tile.dendrology:log", - "tile.livingwood", - "tile.totemic:cedar_log", - "tile.rustic.log", - "tile.natura.nether_logs", - "tile.natura.nether_logs2", - "tile.natura.overworld_logs", - "tile.natura.overworld_logs2", - }, "Put here allowed blocks(wood), ")); + blockWhiteList = ImmutableList.copyOf(config.getStringList("Whitelisted blocks", "Data", new String[]{ + "tile.log", + "tile.log_0", + "tile.log_1", + "tile.log_2", + "tile.log_3", + "tile.log_4", + "tile.pamCinnamon", + "tile.pamPaperbark", + "tile.pamMaple", + "tile.for.pile_wood", + "tile.for.logs.vanilla.fireproof.1", + "tile.for.logs.vanilla.fireproof.0", + "tile.for.logs.fireproof.7", + "tile.for.logs.fireproof.6", + "tile.for.logs.fireproof.5", + "tile.for.logs.fireproof.4", + "tile.for.logs.fireproof.3", + "tile.for.logs.fireproof.2", + "tile.for.logs.fireproof.1", + "tile.for.logs.fireproof.0", + "tile.for.logs.7", + "tile.for.logs.6", + "tile.for.logs.5", + "tile.for.logs.4", + "tile.for.logs.3", + "tile.for.logs.2", + "tile.for.logs.1", + "tile.for.logs.0", + "ic2.rubber_wood", + "tile.terraqueous.trunk", + "tile.techreborn.rubberlog", + "tile.dendrology:log", + "tile.livingwood", + "tile.totemic:cedar_log", + "tile.rustic.log", + "tile.natura.nether_logs", + "tile.natura.nether_logs2", + "tile.natura.overworld_logs", + "tile.natura.overworld_logs2", + }, "Put here allowed blocks(wood), ")); - leafWhiteList = ImmutableList.copyOf(config.getStringList("Whitelisted leaves", "Data", new String[]{ - "tile.pamdate", - "tile.pampistachio", - "tile.pampapaya", - "tile.pamwalnut", - "tile.pamcherry", - "tile.pamfig", - "tile.pamdragonfruit", - "tile.pamapple", - "tile.pamlemon", - "tile.pampear", - "tile.pamolive", - "tile.pamgrapefruit", - "tile.pampomegranate", - "tile.pamcashew", - "tile.pamvanilla", - "tile.pamstarfruit", - "tile.pambanana", - "tile.pamplum", - "tile.pamavocadu", - "tile.pampecan", - "tile.pampistachio", - "tile.pamlime", - "tile.pampeppercorn", - "tile.pamalmond", - "tile.pamgooseberry", - "tile.pampeach", - "tile.pamchestnut", - "tile.pamcoconut", - "tile.pammango", - "tile.pamapricot", - "tile.pamorange", - "tile.pampersimmon", - "tile.pamnutmeg", - "tile.pamdurian", - "tile.pamcinnamon", - "tile.pammaple", - "tile.pampaperbark" - }, "Put here allowed special blocks - e.g. fruit, ")); + leafWhiteList = ImmutableList.copyOf(config.getStringList("Whitelisted leaves", "Data", new String[]{ + "tile.pamdate", + "tile.pampistachio", + "tile.pampapaya", + "tile.pamwalnut", + "tile.pamcherry", + "tile.pamfig", + "tile.pamdragonfruit", + "tile.pamapple", + "tile.pamlemon", + "tile.pampear", + "tile.pamolive", + "tile.pamgrapefruit", + "tile.pampomegranate", + "tile.pamcashew", + "tile.pamvanilla", + "tile.pamstarfruit", + "tile.pambanana", + "tile.pamplum", + "tile.pamavocadu", + "tile.pampecan", + "tile.pampistachio", + "tile.pamlime", + "tile.pampeppercorn", + "tile.pamalmond", + "tile.pamgooseberry", + "tile.pampeach", + "tile.pamchestnut", + "tile.pamcoconut", + "tile.pammango", + "tile.pamapricot", + "tile.pamorange", + "tile.pampersimmon", + "tile.pamnutmeg", + "tile.pamdurian", + "tile.pamcinnamon", + "tile.pammaple", + "tile.pampaperbark" + }, "Put here allowed special blocks - e.g. fruit, ")); - } catch (Exception e) { - System.out.printf("Cannot load Tree Chopper config."); - } finally { - if (config.hasChanged()) { - config.save(); - } - } + } catch (Exception e) { + System.out.printf("Cannot load Tree Chopper config."); + } finally { + if (config.hasChanged()) { + config.save(); + } } + } - public static void setPlantSap(boolean plantSap) { - ConfigurationHandler.plantSapling = plantSap; - config.get("Settings", "Plant sapling", false, "Automatic sapling plant on tree chop").set(plantSap); + public static void setPlantSap(boolean plantSap) { + ConfigurationHandler.plantSapling = plantSap; + config.get("Settings", "Plant sapling", false, "Automatic sapling plant on tree chop").set(plantSap); - config.save(); - } + config.save(); + } - public static void setReverseShi(boolean reverseShi) { - ConfigurationHandler.reverseShift = reverseShi; - config.get("Settings", "Reverse shift", false, "Reverse shift function - Mod works with shift pressing").set(reverseShi); + public static void setReverseShi(boolean reverseShi) { + ConfigurationHandler.reverseShift = reverseShi; + config.get("Settings", "Reverse shift", false, "Reverse shift function - Mod works with shift pressing").set(reverseShi); - config.save(); - } + config.save(); + } - public static void setDisableShi(boolean disableShi) { - ConfigurationHandler.disableShift = disableShi; - config.get("Setting", "Disable shift", false, "Disable shift function - Always chop trees regardless of shift pressing").set(disableShi); + public static void setDisableShi(boolean disableShi) { + ConfigurationHandler.disableShift = disableShi; + config.get("Setting", "Disable shift", false, "Disable shift function - Always chop trees regardless of shift pressing").set(disableShi); - config.save(); - } + config.save(); + } - public static void setDecayLea(boolean decayLea) { - ConfigurationHandler.decayLeaves = decayLea; - config.get("Settings", "Decay leaves", true, "Cut down whole tree - wooden blocks and leaves").set(decayLea); + public static void setDecayLea(boolean decayLea) { + ConfigurationHandler.decayLeaves = decayLea; + config.get("Settings", "Decay leaves", true, "Cut down whole tree - wooden blocks and leaves").set(decayLea); - config.save(); - } + config.save(); + } - @SubscribeEvent - public void onConfigurationChangedEvent(ConfigChangedEvent.OnConfigChangedEvent event) { - if (event.getModID().equalsIgnoreCase(TreeChopper.MOD_ID)) { - loadConfiguration(); - } + @SubscribeEvent + public void onConfigurationChangedEvent(ConfigChangedEvent.OnConfigChangedEvent event) { + if (event.getModID().equalsIgnoreCase(TreeChopper.MOD_ID)) { + loadConfiguration(); } + } } diff --git a/src/main/java/treechopper/common/handler/EventHandler.java b/src/main/java/treechopper/common/handler/EventHandler.java index b4b363d..90ee6d1 100644 --- a/src/main/java/treechopper/common/handler/EventHandler.java +++ b/src/main/java/treechopper/common/handler/EventHandler.java @@ -9,8 +9,8 @@ public class EventHandler { - @SubscribeEvent - public void OnServerConnect(PlayerEvent.PlayerLoggedInEvent loggedInEvent) { - TreeChopper.m_Network.sendTo(new ServerSettingsMessage(ConfigurationHandler.reverseShift, ConfigurationHandler.disableShift), (EntityPlayerMP) loggedInEvent.player); - } + @SubscribeEvent + public void OnServerConnect(PlayerEvent.PlayerLoggedInEvent loggedInEvent) { + TreeChopper.m_Network.sendTo(new ServerSettingsMessage(ConfigurationHandler.reverseShift, ConfigurationHandler.disableShift), (EntityPlayerMP) loggedInEvent.player); + } } diff --git a/src/main/java/treechopper/common/handler/TreeHandler.java b/src/main/java/treechopper/common/handler/TreeHandler.java index c362089..85e577a 100644 --- a/src/main/java/treechopper/common/handler/TreeHandler.java +++ b/src/main/java/treechopper/common/handler/TreeHandler.java @@ -18,214 +18,214 @@ public class TreeHandler { - private static Map m_Trees = new HashMap<>(); - private Tree tree; + private static Map m_Trees = new HashMap<>(); + private Tree tree; - private static T getLastElement(final Iterable elements) { - final Iterator itr = elements.iterator(); - T lastElement = itr.next(); + private static T getLastElement(final Iterable elements) { + final Iterator itr = elements.iterator(); + T lastElement = itr.next(); - while (itr.hasNext()) { - lastElement = itr.next(); - } - - return lastElement; + while (itr.hasNext()) { + lastElement = itr.next(); } - public int AnalyzeTree(World world, BlockPos blockPos, EntityPlayer entityPlayer) { - - Queue queuedBlocks = new LinkedList<>(); - Set tmpBlocks = new HashSet<>(); - Set checkedBlocks = new HashSet<>(); - BlockPos currentPos; - Block logBlock = world.getBlockState(blockPos).getBlock(); - tree = new Tree(); - - queuedBlocks.add(blockPos); - tree.InsertWood(blockPos); - - while (!queuedBlocks.isEmpty()) { + return lastElement; + } - currentPos = queuedBlocks.remove(); - checkedBlocks.add(currentPos); + public int AnalyzeTree(World world, BlockPos blockPos, EntityPlayer entityPlayer) { - tmpBlocks.addAll(LookAroundBlock(logBlock, currentPos, world, checkedBlocks)); - queuedBlocks.addAll(tmpBlocks); - checkedBlocks.addAll(tmpBlocks); - tmpBlocks.clear(); - } + Queue queuedBlocks = new LinkedList<>(); + Set tmpBlocks = new HashSet<>(); + Set checkedBlocks = new HashSet<>(); + BlockPos currentPos; + Block logBlock = world.getBlockState(blockPos).getBlock(); + tree = new Tree(); - Set tmpLeaves = new HashSet<>(); - tmpLeaves.addAll(tree.GetM_Leaves()); + queuedBlocks.add(blockPos); + tree.InsertWood(blockPos); - for (BlockPos blockPos1 : tmpLeaves) { - checkedBlocks.add(blockPos1); - LookAroundBlock(null, blockPos1, world, checkedBlocks); - } + while (!queuedBlocks.isEmpty()) { - tree.setM_Position(blockPos); - m_Trees.put(entityPlayer.getPersistentID(), tree); + currentPos = queuedBlocks.remove(); + checkedBlocks.add(currentPos); - return tree.GetLogCount(); + tmpBlocks.addAll(LookAroundBlock(logBlock, currentPos, world, checkedBlocks)); + queuedBlocks.addAll(tmpBlocks); + checkedBlocks.addAll(tmpBlocks); + tmpBlocks.clear(); } - private Queue LookAroundBlock(Block logBlock, BlockPos currentPos, World world, Set checkedBlocks) { - - Queue queuedBlocks = new LinkedList<>(); - BlockPos tmpPos; - - for (int i = -1; i <= 1; i++) { - tmpPos = new BlockPos(currentPos.getX() + 1, currentPos.getY() + i, currentPos.getZ()); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX(), currentPos.getY() + i, currentPos.getZ() + 1); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX() - 1, currentPos.getY() + i, currentPos.getZ()); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX(), currentPos.getY() + i, currentPos.getZ() - 1); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX() + 1, currentPos.getY() + i, currentPos.getZ() + 1); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX() - 1, currentPos.getY() + i, currentPos.getZ() - 1); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX() - 1, currentPos.getY() + i, currentPos.getZ() + 1); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX() + 1, currentPos.getY() + i, currentPos.getZ() - 1); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - - tmpPos = new BlockPos(currentPos.getX(), currentPos.getY() + i, currentPos.getZ()); - if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { - queuedBlocks.add(tmpPos); - } - } + Set tmpLeaves = new HashSet<>(); + tmpLeaves.addAll(tree.GetM_Leaves()); - return queuedBlocks; + for (BlockPos blockPos1 : tmpLeaves) { + checkedBlocks.add(blockPos1); + LookAroundBlock(null, blockPos1, world, checkedBlocks); } - private boolean CheckBlock(World world, BlockPos blockPos, Set checkedBlocks, Block originBlock) { + tree.setM_Position(blockPos); + m_Trees.put(entityPlayer.getPersistentID(), tree); + + return tree.GetLogCount(); + } + + private Queue LookAroundBlock(Block logBlock, BlockPos currentPos, World world, Set checkedBlocks) { + + Queue queuedBlocks = new LinkedList<>(); + BlockPos tmpPos; + + for (int i = -1; i <= 1; i++) { + tmpPos = new BlockPos(currentPos.getX() + 1, currentPos.getY() + i, currentPos.getZ()); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX(), currentPos.getY() + i, currentPos.getZ() + 1); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX() - 1, currentPos.getY() + i, currentPos.getZ()); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX(), currentPos.getY() + i, currentPos.getZ() - 1); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX() + 1, currentPos.getY() + i, currentPos.getZ() + 1); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX() - 1, currentPos.getY() + i, currentPos.getZ() - 1); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX() - 1, currentPos.getY() + i, currentPos.getZ() + 1); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX() + 1, currentPos.getY() + i, currentPos.getZ() - 1); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + + tmpPos = new BlockPos(currentPos.getX(), currentPos.getY() + i, currentPos.getZ()); + if (CheckBlock(world, tmpPos, checkedBlocks, logBlock)) { + queuedBlocks.add(tmpPos); + } + } - if (checkedBlocks.contains(blockPos)) { - return false; - } + return queuedBlocks; + } - if (world.getBlockState(blockPos).getBlock() != originBlock) { + private boolean CheckBlock(World world, BlockPos blockPos, Set checkedBlocks, Block originBlock) { - if (ConfigurationHandler.plantSapling && world.getBlockState(blockPos).getBlock().isLeaves(world.getBlockState(blockPos), world, blockPos) && tree.GetM_Leaves().isEmpty()) { - tree.InsertLeaf(blockPos); - } + if (checkedBlocks.contains(blockPos)) { + return false; + } - if (ConfigurationHandler.decayLeaves && ConfigurationHandler.leafWhiteList.contains(world.getBlockState(blockPos).getBlock().getUnlocalizedName())) { - tree.InsertLeaf(blockPos); + if (world.getBlockState(blockPos).getBlock() != originBlock) { - return false; - } + if (ConfigurationHandler.plantSapling && world.getBlockState(blockPos).getBlock().isLeaves(world.getBlockState(blockPos), world, blockPos) && tree.GetM_Leaves().isEmpty()) { + tree.InsertLeaf(blockPos); + } - if (ConfigurationHandler.decayLeaves && world.getBlockState(blockPos).getBlock().isLeaves(world.getBlockState(blockPos), world, blockPos)) { - tree.InsertLeaf(blockPos); + if (ConfigurationHandler.decayLeaves && ConfigurationHandler.leafWhiteList.contains(world.getBlockState(blockPos).getBlock().getUnlocalizedName())) { + tree.InsertLeaf(blockPos); - return false; - } else { - return false; - } - } + return false; + } - tree.InsertWood(blockPos); + if (ConfigurationHandler.decayLeaves && world.getBlockState(blockPos).getBlock().isLeaves(world.getBlockState(blockPos), world, blockPos)) { + tree.InsertLeaf(blockPos); - return true; + return false; + } else { + return false; + } } - public void DestroyTree(World world, EntityPlayer entityPlayer) { + tree.InsertWood(blockPos); + + return true; + } - int soundReduced = 0; + public void DestroyTree(World world, EntityPlayer entityPlayer) { - if (m_Trees.containsKey(entityPlayer.getPersistentID())) { + int soundReduced = 0; - Tree tmpTree = m_Trees.get(entityPlayer.getPersistentID()); + if (m_Trees.containsKey(entityPlayer.getPersistentID())) { - for (BlockPos blockPos : tmpTree.GetM_Wood()) { + Tree tmpTree = m_Trees.get(entityPlayer.getPersistentID()); - if (soundReduced <= 1) { - world.destroyBlock(blockPos, true); - } else { - world.getBlockState(blockPos).getBlock().dropBlockAsItem(world, blockPos, world.getBlockState(blockPos), 1); - } + for (BlockPos blockPos : tmpTree.GetM_Wood()) { + + if (soundReduced <= 1) { + world.destroyBlock(blockPos, true); + } else { + world.getBlockState(blockPos).getBlock().dropBlockAsItem(world, blockPos, world.getBlockState(blockPos), 1); + } - world.setBlockToAir(blockPos); + world.setBlockToAir(blockPos); - soundReduced++; - } + soundReduced++; + } - if (ConfigurationHandler.plantSapling && !tmpTree.GetM_Leaves().isEmpty()) { + if (ConfigurationHandler.plantSapling && !tmpTree.GetM_Leaves().isEmpty()) { - BlockPos tmpPosition = getLastElement(tmpTree.GetM_Leaves()); - PlantSapling(world, tmpPosition, tmpTree.getM_Position()); - } + BlockPos tmpPosition = getLastElement(tmpTree.GetM_Leaves()); + PlantSapling(world, tmpPosition, tmpTree.getM_Position()); + } - soundReduced = 0; + soundReduced = 0; - if (ConfigurationHandler.decayLeaves) { + if (ConfigurationHandler.decayLeaves) { - for (BlockPos blockPos : tmpTree.GetM_Leaves()) { + for (BlockPos blockPos : tmpTree.GetM_Leaves()) { - if (soundReduced <= 1) { - world.destroyBlock(blockPos, true); - } else { - world.getBlockState(blockPos).getBlock().dropBlockAsItem(world, blockPos, world.getBlockState(blockPos), 1); - } + if (soundReduced <= 1) { + world.destroyBlock(blockPos, true); + } else { + world.getBlockState(blockPos).getBlock().dropBlockAsItem(world, blockPos, world.getBlockState(blockPos), 1); + } - world.setBlockToAir(blockPos); + world.setBlockToAir(blockPos); - soundReduced++; - } - } + soundReduced++; } + } } + } - private void PlantSapling(World world, BlockPos blockPos, BlockPos originPos) { + private void PlantSapling(World world, BlockPos blockPos, BlockPos originPos) { - Set leafDrop = new HashSet<>(); - BlockPos plantPos1 = new BlockPos(originPos.getX() - 1, originPos.getY(), originPos.getZ() - 1); - int counter = 0; + Set leafDrop = new HashSet<>(); + BlockPos plantPos1 = new BlockPos(originPos.getX() - 1, originPos.getY(), originPos.getZ() - 1); + int counter = 0; - while (leafDrop.isEmpty() && counter <= 100) { - NonNullList tmpList = NonNullList.create(); - world.getBlockState(blockPos).getBlock().getDrops(tmpList, world, blockPos, world.getBlockState(blockPos), 3); - leafDrop.addAll(tmpList); + while (leafDrop.isEmpty() && counter <= 100) { + NonNullList tmpList = NonNullList.create(); + world.getBlockState(blockPos).getBlock().getDrops(tmpList, world, blockPos, world.getBlockState(blockPos), 3); + leafDrop.addAll(tmpList); - counter++; - } + counter++; + } - if (leafDrop.isEmpty()) { - return; - } + if (leafDrop.isEmpty()) { + return; + } - FakePlayer fakePlayer = FakePlayerFactory.getMinecraft((WorldServer) world); - fakePlayer.setHeldItem(EnumHand.MAIN_HAND, leafDrop.iterator().next()); + FakePlayer fakePlayer = FakePlayerFactory.getMinecraft((WorldServer) world); + fakePlayer.setHeldItem(EnumHand.MAIN_HAND, leafDrop.iterator().next()); - for (ItemStack itemStack : leafDrop) { - itemStack.onItemUse(fakePlayer, world, plantPos1, EnumHand.MAIN_HAND, EnumFacing.NORTH, 0, 0, 0); - } + for (ItemStack itemStack : leafDrop) { + itemStack.onItemUse(fakePlayer, world, plantPos1, EnumHand.MAIN_HAND, EnumFacing.NORTH, 0, 0, 0); } + } } diff --git a/src/main/java/treechopper/common/network/ClientSettingsMessage.java b/src/main/java/treechopper/common/network/ClientSettingsMessage.java index 45d9578..2977536 100644 --- a/src/main/java/treechopper/common/network/ClientSettingsMessage.java +++ b/src/main/java/treechopper/common/network/ClientSettingsMessage.java @@ -9,42 +9,42 @@ public class ClientSettingsMessage implements IMessage { - private boolean m_ReverseShift; - private boolean m_DisableShift; + private boolean m_ReverseShift; + private boolean m_DisableShift; - public ClientSettingsMessage() { - } + public ClientSettingsMessage() { + } - public ClientSettingsMessage(boolean reverseShift, boolean disableShift) { - m_ReverseShift = reverseShift; - m_DisableShift = disableShift; - } + public ClientSettingsMessage(boolean reverseShift, boolean disableShift) { + m_ReverseShift = reverseShift; + m_DisableShift = disableShift; + } - @Override - public void fromBytes(ByteBuf buf) { - m_ReverseShift = buf.readBoolean(); - m_DisableShift = buf.readBoolean(); - } + @Override + public void fromBytes(ByteBuf buf) { + m_ReverseShift = buf.readBoolean(); + m_DisableShift = buf.readBoolean(); + } - @Override - public void toBytes(ByteBuf buf) { - buf.writeBoolean(m_ReverseShift); - buf.writeBoolean(m_DisableShift); - } + @Override + public void toBytes(ByteBuf buf) { + buf.writeBoolean(m_ReverseShift); + buf.writeBoolean(m_DisableShift); + } - public static class MsgHandler implements IMessageHandler { + public static class MsgHandler implements IMessageHandler { + @Override + public IMessage onMessage(ClientSettingsMessage message, MessageContext ctx) { + IThreadListener mainThread = ctx.getServerHandler().player.getServerWorld(); + mainThread.addScheduledTask(new Runnable() { @Override - public IMessage onMessage(ClientSettingsMessage message, MessageContext ctx) { - IThreadListener mainThread = ctx.getServerHandler().player.getServerWorld(); - mainThread.addScheduledTask(new Runnable() { - @Override - public void run() { - ConfigurationHandler.reverseShift = message.m_ReverseShift; - ConfigurationHandler.disableShift = message.m_DisableShift; - } - }); - return null; + public void run() { + ConfigurationHandler.reverseShift = message.m_ReverseShift; + ConfigurationHandler.disableShift = message.m_DisableShift; } + }); + return null; } + } } diff --git a/src/main/java/treechopper/common/network/ServerSettingsMessage.java b/src/main/java/treechopper/common/network/ServerSettingsMessage.java index 6fef3c3..87a7c60 100644 --- a/src/main/java/treechopper/common/network/ServerSettingsMessage.java +++ b/src/main/java/treechopper/common/network/ServerSettingsMessage.java @@ -10,42 +10,42 @@ public class ServerSettingsMessage implements IMessage { - private boolean m_ReverseShift; - private boolean m_DisableShift; + private boolean m_ReverseShift; + private boolean m_DisableShift; - public ServerSettingsMessage() { - } + public ServerSettingsMessage() { + } - public ServerSettingsMessage(boolean reverseShift, boolean disableShift) { - m_ReverseShift = reverseShift; - m_DisableShift = disableShift; - } + public ServerSettingsMessage(boolean reverseShift, boolean disableShift) { + m_ReverseShift = reverseShift; + m_DisableShift = disableShift; + } - @Override - public void fromBytes(ByteBuf buf) { - m_ReverseShift = buf.readBoolean(); - m_DisableShift = buf.readBoolean(); - } + @Override + public void fromBytes(ByteBuf buf) { + m_ReverseShift = buf.readBoolean(); + m_DisableShift = buf.readBoolean(); + } - @Override - public void toBytes(ByteBuf buf) { - buf.writeBoolean(m_ReverseShift); - buf.writeBoolean(m_DisableShift); - } + @Override + public void toBytes(ByteBuf buf) { + buf.writeBoolean(m_ReverseShift); + buf.writeBoolean(m_DisableShift); + } - public static class MsgHandler implements IMessageHandler { + public static class MsgHandler implements IMessageHandler { + @Override + public IMessage onMessage(ServerSettingsMessage message, MessageContext ctx) { + IThreadListener mainThread = Minecraft.getMinecraft(); + mainThread.addScheduledTask(new Runnable() { @Override - public IMessage onMessage(ServerSettingsMessage message, MessageContext ctx) { - IThreadListener mainThread = Minecraft.getMinecraft(); - mainThread.addScheduledTask(new Runnable() { - @Override - public void run() { - ConfigurationHandler.reverseShift = message.m_ReverseShift; - ConfigurationHandler.disableShift = message.m_DisableShift; - } - }); - return null; + public void run() { + ConfigurationHandler.reverseShift = message.m_ReverseShift; + ConfigurationHandler.disableShift = message.m_DisableShift; } + }); + return null; } + } } diff --git a/src/main/java/treechopper/common/tree/Tree.java b/src/main/java/treechopper/common/tree/Tree.java index 0741c6c..ef1da19 100644 --- a/src/main/java/treechopper/common/tree/Tree.java +++ b/src/main/java/treechopper/common/tree/Tree.java @@ -7,44 +7,44 @@ public class Tree { - private Set m_Wood; - private Set m_Leaves; - private BlockPos m_Position; - - public Tree() { - m_Wood = new HashSet<>(); - m_Leaves = new HashSet<>(); - } - - public void InsertWood(BlockPos blockPos) { - m_Wood.add(blockPos); - } - - public void InsertLeaf(BlockPos blockPos) { - m_Leaves.add(blockPos); - } - - public int GetLogCount() { - return m_Wood.size(); - } - - public int GetLeavesCount() { - return m_Leaves.size(); - } - - public Set GetM_Wood() { - return m_Wood; - } - - public Set GetM_Leaves() { - return m_Leaves; - } - - public BlockPos getM_Position() { - return m_Position; - } - - public void setM_Position(BlockPos m_Position) { - this.m_Position = m_Position; - } + private Set m_Wood; + private Set m_Leaves; + private BlockPos m_Position; + + public Tree() { + m_Wood = new HashSet<>(); + m_Leaves = new HashSet<>(); + } + + public void InsertWood(BlockPos blockPos) { + m_Wood.add(blockPos); + } + + public void InsertLeaf(BlockPos blockPos) { + m_Leaves.add(blockPos); + } + + public int GetLogCount() { + return m_Wood.size(); + } + + public int GetLeavesCount() { + return m_Leaves.size(); + } + + public Set GetM_Wood() { + return m_Wood; + } + + public Set GetM_Leaves() { + return m_Leaves; + } + + public BlockPos getM_Position() { + return m_Position; + } + + public void setM_Position(BlockPos m_Position) { + this.m_Position = m_Position; + } } diff --git a/src/main/java/treechopper/core/TreeChopper.java b/src/main/java/treechopper/core/TreeChopper.java index 6e26fac..f7d5979 100644 --- a/src/main/java/treechopper/core/TreeChopper.java +++ b/src/main/java/treechopper/core/TreeChopper.java @@ -25,38 +25,38 @@ public class TreeChopper { - public static final String MOD_ID = "treechopper"; - public static final String MOD_NAME = "Tree Chopper"; - public static final String MOD_VERSION = "1.2.5"; - public static final String GUI_FACTORY = "treechopper.client.gui.GuiTCHFactory"; - public static final String MOD_DEPENDENCIES = "required-after:forge@[14.23.0.2486,)"; - public static SimpleNetworkWrapper m_Network; - - @SidedProxy(serverSide = "treechopper.proxy.ServerProxy", clientSide = "treechopper.proxy.CommonProxy") - private static CommonProxy commonProxy; - - @Mod.EventHandler - public void preInit(FMLPreInitializationEvent event) { - ConfigurationHandler.init(new File(new File(event.getModConfigurationDirectory(), "treechopper"), "treechopper.cfg")); - - m_Network = NetworkRegistry.INSTANCE.newSimpleChannel(MOD_ID); - m_Network.registerMessage(ServerSettingsMessage.MsgHandler.class, ServerSettingsMessage.class, 0, Side.CLIENT); - m_Network.registerMessage(ClientSettingsMessage.MsgHandler.class, ClientSettingsMessage.class, 1, Side.SERVER); - } - - @Mod.EventHandler - public void init(FMLInitializationEvent event) { - MinecraftForge.EVENT_BUS.register(commonProxy); - MinecraftForge.EVENT_BUS.register(new ConfigurationHandler()); - MinecraftForge.EVENT_BUS.register(new EventHandler()); - } - - @Mod.EventHandler - public void postInit(FMLPostInitializationEvent event) { - } - - @Mod.EventHandler - public void serverStarting(FMLServerStartingEvent event) { - event.registerServerCommand(new TCHCommand()); - } + public static final String MOD_ID = "treechopper"; + public static final String MOD_NAME = "Tree Chopper"; + public static final String MOD_VERSION = "1.2.5"; + public static final String GUI_FACTORY = "treechopper.client.gui.GuiTCHFactory"; + public static final String MOD_DEPENDENCIES = "required-after:forge@[14.23.0.2486,)"; + public static SimpleNetworkWrapper m_Network; + + @SidedProxy(serverSide = "treechopper.proxy.ServerProxy", clientSide = "treechopper.proxy.CommonProxy") + private static CommonProxy commonProxy; + + @Mod.EventHandler + public void preInit(FMLPreInitializationEvent event) { + ConfigurationHandler.init(new File(new File(event.getModConfigurationDirectory(), "treechopper"), "treechopper.cfg")); + + m_Network = NetworkRegistry.INSTANCE.newSimpleChannel(MOD_ID); + m_Network.registerMessage(ServerSettingsMessage.MsgHandler.class, ServerSettingsMessage.class, 0, Side.CLIENT); + m_Network.registerMessage(ClientSettingsMessage.MsgHandler.class, ClientSettingsMessage.class, 1, Side.SERVER); + } + + @Mod.EventHandler + public void init(FMLInitializationEvent event) { + MinecraftForge.EVENT_BUS.register(commonProxy); + MinecraftForge.EVENT_BUS.register(new ConfigurationHandler()); + MinecraftForge.EVENT_BUS.register(new EventHandler()); + } + + @Mod.EventHandler + public void postInit(FMLPostInitializationEvent event) { + } + + @Mod.EventHandler + public void serverStarting(FMLServerStartingEvent event) { + event.registerServerCommand(new TCHCommand()); + } } diff --git a/src/main/java/treechopper/proxy/CommonProxy.java b/src/main/java/treechopper/proxy/CommonProxy.java index def81e1..745b0ae 100644 --- a/src/main/java/treechopper/proxy/CommonProxy.java +++ b/src/main/java/treechopper/proxy/CommonProxy.java @@ -18,140 +18,144 @@ class PlayerInteract { - public BlockPos m_BlockPos; // Interact block position - public float m_LogCount; - public int m_AxeDurability; - - public PlayerInteract(BlockPos blockPos, float logCount, int axeDurability) { - m_BlockPos = blockPos; - m_LogCount = logCount; - m_AxeDurability = axeDurability; - } + public BlockPos m_BlockPos; // Interact block position + public float m_LogCount; + public int m_AxeDurability; + + public PlayerInteract(BlockPos blockPos, float logCount, int axeDurability) { + m_BlockPos = blockPos; + m_LogCount = logCount; + m_AxeDurability = axeDurability; + } }; public class CommonProxy { - public static Map m_PlayerPrintNames = new HashMap<>(); - protected static Map m_PlayerData = new HashMap<>(); - protected TreeHandler treeHandler; + public static Map m_PlayerPrintNames = new HashMap<>(); + protected static Map m_PlayerData = new HashMap<>(); + protected TreeHandler treeHandler; - @SubscribeEvent - public void InteractWithTree(PlayerInteractEvent interactEvent) { + @SubscribeEvent + public void InteractWithTree(PlayerInteractEvent interactEvent) { - if (interactEvent.getSide().isClient() && m_PlayerPrintNames.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && m_PlayerPrintNames.get(interactEvent.getEntityPlayer().getPersistentID())) { - interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation(I18n.format("proxy.printBlock") + " " + interactEvent.getWorld().getBlockState(interactEvent.getPos()).getBlock().getUnlocalizedName())); - interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation(I18n.format("proxy.printMainHand") + " " + interactEvent.getEntityPlayer().getHeldItemMainhand().getUnlocalizedName())); - } + if (!ConfigurationHandler.modActivation) { + return; + } - int logCount; - boolean shifting = true; + if (interactEvent.getSide().isClient() && m_PlayerPrintNames.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && m_PlayerPrintNames.get(interactEvent.getEntityPlayer().getPersistentID())) { + interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation(I18n.format("proxy.printBlock") + " " + interactEvent.getWorld().getBlockState(interactEvent.getPos()).getBlock().getUnlocalizedName())); + interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation(I18n.format("proxy.printMainHand") + " " + interactEvent.getEntityPlayer().getHeldItemMainhand().getUnlocalizedName())); + } - if (!ConfigurationHandler.disableShift) { - if (interactEvent.getEntityPlayer().isSneaking() && !ConfigurationHandler.reverseShift) { - shifting = false; - } + int logCount; + boolean shifting = true; - if (!interactEvent.getEntityPlayer().isSneaking() && ConfigurationHandler.reverseShift) { - shifting = false; - } - } + if (!ConfigurationHandler.disableShift) { + if (interactEvent.getEntityPlayer().isSneaking() && !ConfigurationHandler.reverseShift) { + shifting = false; + } - if (CheckWoodenBlock(interactEvent.getWorld(), interactEvent.getPos()) && CheckItemInHand(interactEvent.getEntityPlayer()) && shifting) { + if (!interactEvent.getEntityPlayer().isSneaking() && ConfigurationHandler.reverseShift) { + shifting = false; + } + } + + if (CheckWoodenBlock(interactEvent.getWorld(), interactEvent.getPos()) && CheckItemInHand(interactEvent.getEntityPlayer()) && shifting) { - int axeDurability = interactEvent.getEntityPlayer().getHeldItemMainhand().getMaxDamage() - interactEvent.getEntityPlayer().getHeldItemMainhand().getItemDamage(); + int axeDurability = interactEvent.getEntityPlayer().getHeldItemMainhand().getMaxDamage() - interactEvent.getEntityPlayer().getHeldItemMainhand().getItemDamage(); - if (m_PlayerData.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && - m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_BlockPos.equals(interactEvent.getPos()) && - m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_AxeDurability == axeDurability) { - return; - } + if (m_PlayerData.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && + m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_BlockPos.equals(interactEvent.getPos()) && + m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_AxeDurability == axeDurability) { + return; + } - treeHandler = new TreeHandler(); - logCount = treeHandler.AnalyzeTree(interactEvent.getWorld(), interactEvent.getPos(), interactEvent.getEntityPlayer()); + treeHandler = new TreeHandler(); + logCount = treeHandler.AnalyzeTree(interactEvent.getWorld(), interactEvent.getPos(), interactEvent.getEntityPlayer()); /*System.out.println("Max damage: " + interactEvent.getEntityPlayer().getHeldItemMainhand().getMaxDamage()); System.out.println("Item damage: " + interactEvent.getEntityPlayer().getHeldItemMainhand().getItemDamage());*/ - if (interactEvent.getEntityPlayer().getHeldItemMainhand().isItemStackDamageable() && axeDurability < logCount) { - m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); - return; - } + if (interactEvent.getEntityPlayer().getHeldItemMainhand().isItemStackDamageable() && axeDurability < logCount) { + m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); + return; + } - if (logCount > 1) { - m_PlayerData.put(interactEvent.getEntityPlayer().getPersistentID(), new PlayerInteract(interactEvent.getPos(), logCount, axeDurability)); - } - } else { - m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); - } + if (logCount > 1) { + m_PlayerData.put(interactEvent.getEntityPlayer().getPersistentID(), new PlayerInteract(interactEvent.getPos(), logCount, axeDurability)); + } + } else { + m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); } + } - @SubscribeEvent - public void BreakingBlock(net.minecraftforge.event.entity.player.PlayerEvent.BreakSpeed breakSpeed) { + @SubscribeEvent + public void BreakingBlock(net.minecraftforge.event.entity.player.PlayerEvent.BreakSpeed breakSpeed) { - if (m_PlayerData.containsKey(breakSpeed.getEntityPlayer().getPersistentID())) { + if (m_PlayerData.containsKey(breakSpeed.getEntityPlayer().getPersistentID())) { - BlockPos blockPos = m_PlayerData.get(breakSpeed.getEntityPlayer().getPersistentID()).m_BlockPos; + BlockPos blockPos = m_PlayerData.get(breakSpeed.getEntityPlayer().getPersistentID()).m_BlockPos; - if (blockPos.equals(breakSpeed.getPos())) { - breakSpeed.setNewSpeed(breakSpeed.getOriginalSpeed() / (m_PlayerData.get(breakSpeed.getEntityPlayer().getPersistentID()).m_LogCount / 2.0f)); - } else { - breakSpeed.setNewSpeed(breakSpeed.getOriginalSpeed()); - } - } + if (blockPos.equals(breakSpeed.getPos())) { + breakSpeed.setNewSpeed(breakSpeed.getOriginalSpeed() / (m_PlayerData.get(breakSpeed.getEntityPlayer().getPersistentID()).m_LogCount / 2.0f)); + } else { + breakSpeed.setNewSpeed(breakSpeed.getOriginalSpeed()); + } } + } - @SubscribeEvent - public void DestroyWoodBlock(BlockEvent.BreakEvent breakEvent) { + @SubscribeEvent + public void DestroyWoodBlock(BlockEvent.BreakEvent breakEvent) { - if (m_PlayerData.containsKey(breakEvent.getPlayer().getPersistentID())) { + if (m_PlayerData.containsKey(breakEvent.getPlayer().getPersistentID())) { - BlockPos blockPos = m_PlayerData.get(breakEvent.getPlayer().getPersistentID()).m_BlockPos; + BlockPos blockPos = m_PlayerData.get(breakEvent.getPlayer().getPersistentID()).m_BlockPos; - if (blockPos.equals(breakEvent.getPos())) { - treeHandler.DestroyTree(breakEvent.getWorld(), breakEvent.getPlayer()); + if (blockPos.equals(breakEvent.getPos())) { + treeHandler.DestroyTree(breakEvent.getWorld(), breakEvent.getPlayer()); - if (!breakEvent.getPlayer().isCreative() && breakEvent.getPlayer().getHeldItemMainhand().isItemStackDamageable()) { + if (!breakEvent.getPlayer().isCreative() && breakEvent.getPlayer().getHeldItemMainhand().isItemStackDamageable()) { - int axeDurability = breakEvent.getPlayer().getHeldItemMainhand().getItemDamage() + (int) (m_PlayerData.get(breakEvent.getPlayer().getPersistentID()).m_LogCount * 1.5); + int axeDurability = breakEvent.getPlayer().getHeldItemMainhand().getItemDamage() + (int) (m_PlayerData.get(breakEvent.getPlayer().getPersistentID()).m_LogCount * 1.5); - breakEvent.getPlayer().getHeldItemMainhand().setItemDamage(axeDurability); - } - } + breakEvent.getPlayer().getHeldItemMainhand().setItemDamage(axeDurability); } + } } + } - protected boolean CheckWoodenBlock(World world, BlockPos blockPos) { + protected boolean CheckWoodenBlock(World world, BlockPos blockPos) { - if (ConfigurationHandler.blockWhiteList.contains(world.getBlockState(blockPos).getBlock().getUnlocalizedName())) { - return true; - } - - if (!world.getBlockState(blockPos).getBlock().isWood(world, blockPos)) { - return false; - } + if (ConfigurationHandler.blockWhiteList.contains(world.getBlockState(blockPos).getBlock().getUnlocalizedName())) { + return true; + } - return true; + if (!world.getBlockState(blockPos).getBlock().isWood(world, blockPos)) { + return false; } - protected boolean CheckItemInHand(EntityPlayer entityPlayer) { + return true; + } - if (entityPlayer.getHeldItemMainhand().isEmpty()) { - return false; - } + protected boolean CheckItemInHand(EntityPlayer entityPlayer) { - if (ConfigurationHandler.axeTypes.contains(entityPlayer.getHeldItemMainhand().getItem().getUnlocalizedName())) { - return true; - } + if (entityPlayer.getHeldItemMainhand().isEmpty()) { + return false; + } - boolean test; + if (ConfigurationHandler.axeTypes.contains(entityPlayer.getHeldItemMainhand().getItem().getUnlocalizedName())) { + return true; + } - try { - ItemAxe tmp = (ItemAxe) entityPlayer.getHeldItemMainhand().getItem(); - test = true; - } catch (Exception e) { - test = false; - } + boolean test; - return test; + try { + ItemAxe tmp = (ItemAxe) entityPlayer.getHeldItemMainhand().getItem(); + test = true; + } catch (Exception e) { + test = false; } + + return test; + } } \ No newline at end of file diff --git a/src/main/java/treechopper/proxy/ServerProxy.java b/src/main/java/treechopper/proxy/ServerProxy.java index 69e960b..07825d3 100644 --- a/src/main/java/treechopper/proxy/ServerProxy.java +++ b/src/main/java/treechopper/proxy/ServerProxy.java @@ -7,50 +7,50 @@ public class ServerProxy extends CommonProxy { - @Override - public void InteractWithTree(PlayerInteractEvent interactEvent) { - - if (m_PlayerPrintNames.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && m_PlayerPrintNames.get(interactEvent.getEntityPlayer().getPersistentID())) { - interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation("Block: " + interactEvent.getWorld().getBlockState(interactEvent.getPos()).getBlock().getUnlocalizedName())); - interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation("Main hand item: " + interactEvent.getEntityPlayer().getHeldItemMainhand().getUnlocalizedName())); - } - - int logCount; - boolean shifting = true; - - if (!ConfigurationHandler.disableShift) { - if (interactEvent.getEntityPlayer().isSneaking() && !ConfigurationHandler.reverseShift) { - shifting = false; - } - - if (!interactEvent.getEntityPlayer().isSneaking() && ConfigurationHandler.reverseShift) { - shifting = false; - } - } - - if (CheckWoodenBlock(interactEvent.getWorld(), interactEvent.getPos()) && CheckItemInHand(interactEvent.getEntityPlayer()) && shifting) { - - int axeDurability = interactEvent.getEntityPlayer().getHeldItemMainhand().getMaxDamage() - interactEvent.getEntityPlayer().getHeldItemMainhand().getItemDamage(); - - if (m_PlayerData.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && - m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_BlockPos.equals(interactEvent.getPos()) && - m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_AxeDurability == axeDurability) { - return; - } - - treeHandler = new TreeHandler(); - logCount = treeHandler.AnalyzeTree(interactEvent.getWorld(), interactEvent.getPos(), interactEvent.getEntityPlayer()); - - if (interactEvent.getEntityPlayer().getHeldItemMainhand().isItemStackDamageable() && axeDurability < logCount) { - m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); - return; - } - - if (logCount > 1) { - m_PlayerData.put(interactEvent.getEntityPlayer().getPersistentID(), new PlayerInteract(interactEvent.getPos(), logCount, axeDurability)); - } - } else { - m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); - } + @Override + public void InteractWithTree(PlayerInteractEvent interactEvent) { + + if (m_PlayerPrintNames.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && m_PlayerPrintNames.get(interactEvent.getEntityPlayer().getPersistentID())) { + interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation("Block: " + interactEvent.getWorld().getBlockState(interactEvent.getPos()).getBlock().getUnlocalizedName())); + interactEvent.getEntityPlayer().sendMessage(new TextComponentTranslation("Main hand item: " + interactEvent.getEntityPlayer().getHeldItemMainhand().getUnlocalizedName())); + } + + int logCount; + boolean shifting = true; + + if (!ConfigurationHandler.disableShift) { + if (interactEvent.getEntityPlayer().isSneaking() && !ConfigurationHandler.reverseShift) { + shifting = false; + } + + if (!interactEvent.getEntityPlayer().isSneaking() && ConfigurationHandler.reverseShift) { + shifting = false; + } + } + + if (CheckWoodenBlock(interactEvent.getWorld(), interactEvent.getPos()) && CheckItemInHand(interactEvent.getEntityPlayer()) && shifting) { + + int axeDurability = interactEvent.getEntityPlayer().getHeldItemMainhand().getMaxDamage() - interactEvent.getEntityPlayer().getHeldItemMainhand().getItemDamage(); + + if (m_PlayerData.containsKey(interactEvent.getEntityPlayer().getPersistentID()) && + m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_BlockPos.equals(interactEvent.getPos()) && + m_PlayerData.get(interactEvent.getEntityPlayer().getPersistentID()).m_AxeDurability == axeDurability) { + return; + } + + treeHandler = new TreeHandler(); + logCount = treeHandler.AnalyzeTree(interactEvent.getWorld(), interactEvent.getPos(), interactEvent.getEntityPlayer()); + + if (interactEvent.getEntityPlayer().getHeldItemMainhand().isItemStackDamageable() && axeDurability < logCount) { + m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); + return; + } + + if (logCount > 1) { + m_PlayerData.put(interactEvent.getEntityPlayer().getPersistentID(), new PlayerInteract(interactEvent.getPos(), logCount, axeDurability)); + } + } else { + m_PlayerData.remove(interactEvent.getEntityPlayer().getPersistentID()); } + } }