diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..83befcb --- /dev/null +++ b/.gitignore @@ -0,0 +1,74 @@ + +\.idea/libraries/Maven__com_google_code_gson_gson_2_8_0\.xml + +\.idea/libraries/Maven__com_google_guava_guava_21_0\.xml + +\.idea/libraries/Maven__com_googlecode_json_simple_json_simple_1_1_1\.xml + +\.idea/libraries/Maven__commons_lang_commons_lang_2_6\.xml + +\.idea/libraries/Maven__junit_junit_4_10\.xml + +\.idea/libraries/Maven__net_md_5_bungeecord_chat_1_13_SNAPSHOT\.xml + +\.idea/libraries/Maven__org_bukkit_bukkit_1_13_R0_1_SNAPSHOT\.xml + +\.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_1\.xml + +\.idea/libraries/Maven__org_spigotmc_spigot_api_1_13_R0_1_SNAPSHOT\.xml + +\.idea/libraries/Maven__org_yaml_snakeyaml_1_21\.xml + +\.idea/misc\.xml + +\.idea/modules\.xml + +\.idea/workspace\.xml + +target/classes/com/songoda/ultimatetimber/commands/CommandHandler\.class + +target/classes/com/songoda/ultimatetimber/commands/ReloadCommand\.class + +target/classes/com/songoda/ultimatetimber/configurations/DefaultConfig\.class + +target/classes/com/songoda/ultimatetimber/treefall/AxeDurability\.class + +target/classes/com/songoda/ultimatetimber/treefall/EventFilter\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeChecker\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeEntityDamage\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeFallAnimation\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeFallAnimation\$1\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeFallAnimation\$2\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeFallEvent\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeLoot\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeLoot\$1\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeReplant\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeReplant\$1\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeReplant\$2\.class + +target/classes/com/songoda/ultimatetimber/treefall/TreeSounds\.class + +target/classes/com/songoda/ultimatetimber/UltimateTimber\.class + +target/classes/plugin\.yml + +target/maven-archiver/pom\.properties + +target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles\.lst + +target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles\.lst + +target/UltimateTimber\.jar + +UltimateTimber\.iml diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index d30d09e..0000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml deleted file mode 100644 index 9c9a3b0..0000000 --- a/.idea/workspace.xml +++ /dev/null @@ -1,631 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - inventory - air - event.getPlayer() - axe - - - player - - - - - - - - - - - true - DEFINITION_ORDER - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1541287795357 - - - 1541288017614 - - - 1541288193654 - - - 1541391319179 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.8 - - - - - - - - \ No newline at end of file diff --git a/src/main/java/com/songoda/ultimatetimber/UltimateTimber.java b/src/main/java/com/songoda/ultimatetimber/UltimateTimber.java index 2b47dcf..0157018 100644 --- a/src/main/java/com/songoda/ultimatetimber/UltimateTimber.java +++ b/src/main/java/com/songoda/ultimatetimber/UltimateTimber.java @@ -3,12 +3,14 @@ package com.songoda.ultimatetimber; import com.songoda.ultimatetimber.commands.CommandHandler; import com.songoda.ultimatetimber.configurations.DefaultConfig; import com.songoda.ultimatetimber.treefall.TreeFallEvent; +import com.songoda.ultimatetimber.utils.Methods; import org.bukkit.Bukkit; import org.bukkit.World; -import org.bukkit.plugin.Plugin; +import org.bukkit.command.CommandSender; import org.bukkit.plugin.java.JavaPlugin; import java.util.ArrayList; +import java.util.Collections; import java.util.List; /* @@ -18,14 +20,19 @@ PS: MagmaGuy was here */ public class UltimateTimber extends JavaPlugin { + private static CommandSender console = Bukkit.getConsoleSender(); - public static Plugin plugin; - public static List validWorlds = new ArrayList<>(); + private final String prefix = "&8[&6UltimateTimber&8]"; + + private static UltimateTimber INSTANCE; + private List validWorlds = new ArrayList<>(); @Override public void onEnable() { - - plugin = this; + INSTANCE = this; + console.sendMessage(Methods.formatText("&a=============================")); + console.sendMessage(Methods.formatText("&7" + this.getDescription().getName() + " " + this.getDescription().getVersion() + " by &5Brianna <3&7!")); + console.sendMessage(Methods.formatText("&7Action: &aEnabling&7...")); /* Register the main event that handles toppling down trees */ @@ -40,18 +47,27 @@ public class UltimateTimber extends JavaPlugin { Cache valid worlds for later use */ for (World world : Bukkit.getWorlds()) - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.VALID_WORLDS + world.getName())) + if (getConfig().getBoolean(DefaultConfig.VALID_WORLDS + world.getName())) validWorlds.add(world); - this.getCommand("ultimatetimber").setExecutor(new CommandHandler()); - + this.getCommand("ultimatetimber").setExecutor(new CommandHandler(this)); + console.sendMessage(Methods.formatText("&a=============================")); } @Override public void onDisable() { - validWorlds.clear(); - } + public static UltimateTimber getInstance() { + return INSTANCE; + } + + public List getValidWorlds() { + return Collections.unmodifiableList(validWorlds); + } + + public String getPrefix() { + return prefix; + } } diff --git a/src/main/java/com/songoda/ultimatetimber/commands/CommandHandler.java b/src/main/java/com/songoda/ultimatetimber/commands/CommandHandler.java index 6b20754..d3e12b9 100644 --- a/src/main/java/com/songoda/ultimatetimber/commands/CommandHandler.java +++ b/src/main/java/com/songoda/ultimatetimber/commands/CommandHandler.java @@ -1,11 +1,19 @@ package com.songoda.ultimatetimber.commands; +import com.songoda.ultimatetimber.UltimateTimber; +import com.songoda.ultimatetimber.utils.Methods; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; public class CommandHandler implements CommandExecutor { + private final UltimateTimber plugin; + + public CommandHandler(UltimateTimber plugin) { + this.plugin = plugin; + } + @Override public boolean onCommand(CommandSender commandSender, Command command, String s, String[] args) { @@ -15,7 +23,10 @@ public class CommandHandler implements CommandExecutor { return true; } - commandSender.sendMessage("[UltimateTimber] Command usage: /em reload"); + commandSender.sendMessage(""); + commandSender.sendMessage(Methods.formatText(plugin.getPrefix() + " &7Version " + plugin.getDescription().getVersion() + " Created with <3 by &5&l&oBrianna")); + commandSender.sendMessage(Methods.formatText("&8 - &a/ut reload &7 - Reloads the config.")); + commandSender.sendMessage(""); return true; } diff --git a/src/main/java/com/songoda/ultimatetimber/commands/ReloadCommand.java b/src/main/java/com/songoda/ultimatetimber/commands/ReloadCommand.java index c3e4fde..6d9f77e 100644 --- a/src/main/java/com/songoda/ultimatetimber/commands/ReloadCommand.java +++ b/src/main/java/com/songoda/ultimatetimber/commands/ReloadCommand.java @@ -1,14 +1,15 @@ package com.songoda.ultimatetimber.commands; import com.songoda.ultimatetimber.UltimateTimber; +import com.songoda.ultimatetimber.utils.Methods; import org.bukkit.command.CommandSender; public class ReloadCommand { public static void reloadConfig(CommandSender commandSender) { - - UltimateTimber.plugin.reloadConfig(); - commandSender.sendMessage("[UltimateTimber] - Configuration reloaded"); + UltimateTimber plugin = UltimateTimber.getInstance(); + plugin.reloadConfig(); + commandSender.sendMessage(Methods.formatText(plugin.getPrefix() + " &7Configuration reloaded")); } diff --git a/src/main/java/com/songoda/ultimatetimber/configurations/DefaultConfig.java b/src/main/java/com/songoda/ultimatetimber/configurations/DefaultConfig.java index 66c11ca..2625edc 100644 --- a/src/main/java/com/songoda/ultimatetimber/configurations/DefaultConfig.java +++ b/src/main/java/com/songoda/ultimatetimber/configurations/DefaultConfig.java @@ -28,8 +28,9 @@ public class DefaultConfig { public static final String CUSTOM_AUDIO = "Use custom sounds for trees falling"; public static void initialize() { + UltimateTimber plugin = UltimateTimber.getInstance(); - Configuration configuration = UltimateTimber.plugin.getConfig(); + Configuration configuration = plugin.getConfig(); configuration.addDefault(AXES_ONLY, true); configuration.addDefault(ACCURATE_AXE_DURABILITY, true); @@ -48,8 +49,8 @@ public class DefaultConfig { configuration.options().copyDefaults(true); - UltimateTimber.plugin.saveConfig(); - UltimateTimber.plugin.saveDefaultConfig(); + plugin.saveConfig(); + plugin.saveDefaultConfig(); } diff --git a/src/main/java/com/songoda/ultimatetimber/treefall/EventFilter.java b/src/main/java/com/songoda/ultimatetimber/treefall/EventFilter.java index 4c1ee37..6713a78 100644 --- a/src/main/java/com/songoda/ultimatetimber/treefall/EventFilter.java +++ b/src/main/java/com/songoda/ultimatetimber/treefall/EventFilter.java @@ -4,6 +4,7 @@ import com.songoda.ultimatetimber.UltimateTimber; import com.songoda.ultimatetimber.configurations.DefaultConfig; import org.bukkit.GameMode; import org.bukkit.Material; +import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.event.block.BlockBreakEvent; public class EventFilter { @@ -13,22 +14,27 @@ public class EventFilter { Mostly config settings, also permissions */ public static boolean eventIsValid(BlockBreakEvent event) { + UltimateTimber plugin = UltimateTimber.getInstance(); + /* General catchers */ if (event.isCancelled()) return false; - if (!UltimateTimber.validWorlds.contains(event.getPlayer().getWorld())) return false; + if (!plugin.getValidWorlds().contains(event.getPlayer().getWorld())) return false; if (!TreeChecker.validMaterials.contains(event.getBlock().getType())) return false; + + FileConfiguration fileConfiguration = UltimateTimber.getInstance().getConfig(); + /* Config-based catchers */ - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.CREATIVE_DISALLOWED) && + if (fileConfiguration.getBoolean(DefaultConfig.CREATIVE_DISALLOWED) && event.getPlayer().getGameMode().equals(GameMode.CREATIVE)) return false; - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.AXES_ONLY) && + if (fileConfiguration.getBoolean(DefaultConfig.AXES_ONLY) && !(event.getPlayer().getInventory().getItemInMainHand().getType().equals(Material.DIAMOND_AXE) || event.getPlayer().getInventory().getItemInMainHand().getType().equals(Material.GOLDEN_AXE) || event.getPlayer().getInventory().getItemInMainHand().getType().equals(Material.IRON_AXE) || @@ -36,11 +42,8 @@ public class EventFilter { event.getPlayer().getInventory().getItemInMainHand().getType().equals(Material.WOODEN_AXE))) return false; - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.PERMISSIONS_ONLY) && - !event.getPlayer().hasPermission("ultimatetimber.chop")) - return false; - - return true; + return !fileConfiguration.getBoolean(DefaultConfig.PERMISSIONS_ONLY) || + event.getPlayer().hasPermission("ultimatetimber.chop"); } diff --git a/src/main/java/com/songoda/ultimatetimber/treefall/TreeEntityDamage.java b/src/main/java/com/songoda/ultimatetimber/treefall/TreeEntityDamage.java index 06aff62..3217d3f 100644 --- a/src/main/java/com/songoda/ultimatetimber/treefall/TreeEntityDamage.java +++ b/src/main/java/com/songoda/ultimatetimber/treefall/TreeEntityDamage.java @@ -10,11 +10,9 @@ public class TreeEntityDamage { for (Entity entity : fallingBlock.getNearbyEntities(0.5, 0.5, 0.5)) { - if (entity instanceof LivingEntity) { + if (!(entity instanceof LivingEntity)) continue; - ((LivingEntity) entity).damage(1); - - } + ((LivingEntity) entity).damage(1); } diff --git a/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallAnimation.java b/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallAnimation.java index 385d266..1f2acea 100644 --- a/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallAnimation.java +++ b/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallAnimation.java @@ -6,6 +6,7 @@ import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.Particle; import org.bukkit.block.Block; +import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.FallingBlock; import org.bukkit.entity.Player; import org.bukkit.scheduler.BukkitRunnable; @@ -46,7 +47,6 @@ public class TreeFallAnimation { startPhaseOneAnimation(fallingBlock, velocityVector, multiplier, player); - } } @@ -69,7 +69,7 @@ public class TreeFallAnimation { fallingBlock.setVelocity(fallingBlock.getVelocity().multiply(0.2)); - new BukkitRunnable() { + new BukkitRunnable() { @Override public void run() { @@ -81,7 +81,7 @@ public class TreeFallAnimation { runPhaseTwoAnimation(fallingBlock, player); } - }.runTaskLater(UltimateTimber.plugin, 20); + }.runTaskLater(UltimateTimber.getInstance(), 20); } @@ -90,7 +90,7 @@ public class TreeFallAnimation { For safety's sake, it disintegrates after a 4 seconds */ private static void runPhaseTwoAnimation(FallingBlock fallingBlock, Player player) { - + UltimateTimber plugin = UltimateTimber.getInstance(); new BukkitRunnable() { int counter = 0; @@ -103,16 +103,19 @@ public class TreeFallAnimation { TreeLoot.convertFallingBlock(fallingBlock, player); fallingBlock.remove(); fallingBlock.getLocation().getWorld().spawnParticle(Particle.SMOKE_LARGE, fallingBlock.getLocation(), 3, 0.2, 0.2, 0.2, 0.05); - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.REPLANT_FROM_LEAVES)) + + FileConfiguration fileConfiguration = plugin.getConfig(); + + if (UltimateTimber.getInstance().getConfig().getBoolean(DefaultConfig.REPLANT_FROM_LEAVES)) TreeReplant.leafFallReplant(fallingBlock); - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.DAMAGE_PLAYERS)) + if (fileConfiguration.getBoolean(DefaultConfig.DAMAGE_PLAYERS)) TreeEntityDamage.runDamage(fallingBlock); - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.CUSTOM_AUDIO)) + if (fileConfiguration.getBoolean(DefaultConfig.CUSTOM_AUDIO)) TreeSounds.fallNoise(fallingBlock, counter); } counter++; } - }.runTaskTimer(UltimateTimber.plugin, 0, 1); + }.runTaskTimer(plugin, 0, 1); } diff --git a/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallEvent.java b/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallEvent.java index 953f54b..bcc2be9 100644 --- a/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallEvent.java +++ b/src/main/java/com/songoda/ultimatetimber/treefall/TreeFallEvent.java @@ -3,6 +3,7 @@ package com.songoda.ultimatetimber.treefall; import com.songoda.ultimatetimber.UltimateTimber; import com.songoda.ultimatetimber.configurations.DefaultConfig; import org.bukkit.block.Block; +import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; @@ -22,9 +23,12 @@ public class TreeFallEvent implements Listener { if (!EventFilter.eventIsValid(event)) return; ArrayList blocks = TreeChecker.parseTree(event.getBlock()); if (blocks == null) return; - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.ACCURATE_AXE_DURABILITY)) + + FileConfiguration fileConfiguration = UltimateTimber.getInstance().getConfig(); + + if (fileConfiguration.getBoolean(DefaultConfig.ACCURATE_AXE_DURABILITY)) AxeDurability.adjustAxeDamage(blocks, event.getPlayer()); - if (UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.CUSTOM_AUDIO)) + if (fileConfiguration.getBoolean(DefaultConfig.CUSTOM_AUDIO)) TreeSounds.tipOverNoise(event.getBlock().getLocation()); TreeFallAnimation.startAnimation(event.getBlock(), blocks, event.getPlayer()); diff --git a/src/main/java/com/songoda/ultimatetimber/treefall/TreeReplant.java b/src/main/java/com/songoda/ultimatetimber/treefall/TreeReplant.java index 6b0d802..e922429 100644 --- a/src/main/java/com/songoda/ultimatetimber/treefall/TreeReplant.java +++ b/src/main/java/com/songoda/ultimatetimber/treefall/TreeReplant.java @@ -14,7 +14,7 @@ public class TreeReplant { public static void replaceOriginalBlock(Block block) { - if (!UltimateTimber.plugin.getConfig().getBoolean(DefaultConfig.REPLANT_SAPLING)) { + if (!UltimateTimber.getInstance().getConfig().getBoolean(DefaultConfig.REPLANT_SAPLING)) { block.setType(Material.AIR); return; } @@ -59,7 +59,7 @@ public class TreeReplant { block.setType(Material.AIR); } } - }.runTaskLater(UltimateTimber.plugin, 1); + }.runTaskLater(UltimateTimber.getInstance(), 1); } diff --git a/src/main/java/com/songoda/ultimatetimber/utils/Methods.java b/src/main/java/com/songoda/ultimatetimber/utils/Methods.java new file mode 100644 index 0000000..9be4e58 --- /dev/null +++ b/src/main/java/com/songoda/ultimatetimber/utils/Methods.java @@ -0,0 +1,20 @@ +package com.songoda.ultimatetimber.utils; + +import org.bukkit.ChatColor; + +public class Methods { + + public static String formatText(String text) { + if (text == null || text.equals("")) + return ""; + return formatText(text, false); + } + + public static String formatText(String text, boolean cap) { + if (text == null || text.equals("")) + return ""; + if (cap) + text = text.substring(0, 1).toUpperCase() + text.substring(1); + return ChatColor.translateAlternateColorCodes('&', text); + } +} diff --git a/target/classes/com/songoda/ultimatetimber/utils/Methods.class b/target/classes/com/songoda/ultimatetimber/utils/Methods.class new file mode 100644 index 0000000..ee098cd Binary files /dev/null and b/target/classes/com/songoda/ultimatetimber/utils/Methods.class differ diff --git a/target/classes/plugin.yml b/target/classes/plugin.yml index 0f0c891..a4051c8 100644 --- a/target/classes/plugin.yml +++ b/target/classes/plugin.yml @@ -1,5 +1,5 @@ name: UltimateTimber -version: 0.0.2 +version: 0.0.3 author: Songoda main: com.songoda.ultimatetimber.UltimateTimber api-version: 1.13 diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties index 2c17582..37a7299 100644 --- a/target/maven-archiver/pom.properties +++ b/target/maven-archiver/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven -#Mon Nov 05 21:06:51 GMT 2018 -version=1.0-SNAPSHOT +#Mon Nov 05 17:01:41 EST 2018 +version=0.0.3 groupId=ultimatetimber artifactId=UltimateTimber diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst index 2207184..4890e44 100644 --- a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst +++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -1,13 +1,13 @@ -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeFallEvent.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\AxeDurability.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\configurations\DefaultConfig.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeSounds.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\commands\ReloadCommand.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeEntityDamage.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\commands\CommandHandler.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeLoot.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\EventFilter.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeReplant.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\UltimateTimber.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeChecker.java -C:\Users\Tiago\Desktop\MineCraftProjects\UltimateTimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeFallAnimation.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeFallEvent.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeSounds.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeFallAnimation.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\EventFilter.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeChecker.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\AxeDurability.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\UltimateTimber.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\commands\CommandHandler.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeReplant.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\configurations\DefaultConfig.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\commands\ReloadCommand.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeEntityDamage.java +D:\Spigot\Sources\ultimatetimber\src\main\java\com\songoda\ultimatetimber\treefall\TreeLoot.java