diff --git a/Changelog.txt b/Changelog.txt index ccd48eb01..22b5d05b0 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -7,6 +7,10 @@ Key: ! Change - Removal +Version 1.3.01 + = Fixed bug where Tree Feller had no cooldown + = Fixed bug with activating Skull Splitter after using Tree Feller + Version 1.3.00 + Added ability to customize drops for Excavation skill (treasures.yml) + Added ability to customize drops for Fishing skill (treasures.yml) diff --git a/pom.xml b/pom.xml index 5f989eb6c..5db48151e 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.gmail.nossr50.mcMMO mcMMO - 1.3.00 + 1.3.01 mcMMO https://github.com/mcMMO-Dev/mcMMO diff --git a/src/main/java/com/gmail/nossr50/skills/Skills.java b/src/main/java/com/gmail/nossr50/skills/Skills.java index a24aa36ba..f9bdde49c 100644 --- a/src/main/java/com/gmail/nossr50/skills/Skills.java +++ b/src/main/java/com/gmail/nossr50/skills/Skills.java @@ -76,7 +76,19 @@ public class Skills if(!PP.getAbilityUse() || PP.getSuperBreakerMode() || PP.getSerratedStrikesMode() || PP.getTreeFellerMode() || PP.getGreenTerraMode() || PP.getBerserkMode() || PP.getGigaDrillBreakerMode()) return; - if(ability.getPermissions(player) && tool.inHand(player.getItemInHand()) && !tool.getToolMode(PP)) + //Woodcutting & Axes need to be treated differently + //Basically the tool always needs to ready and we check to see if the cooldown is over when the user takes action + if(skill == SkillType.WOODCUTTING || skill == SkillType.AXES) + { + if(tool.inHand(player.getItemInHand()) && !tool.getToolMode(PP)) + { + if(LoadProperties.enableAbilityMessages) + player.sendMessage(tool.getRaiseTool()); + + tool.setToolATS(PP, System.currentTimeMillis()); + tool.setToolMode(PP, true); + } + } else if(ability.getPermissions(player) && tool.inHand(player.getItemInHand()) && !tool.getToolMode(PP)) { if(!ability.getMode(PP) && !cooldownOver(player, (PP.getSkillDATS(ability) * 1000), ability.getCooldown())) { @@ -272,6 +284,16 @@ public class Skills if(type.getTool().getToolMode(PP)) type.getTool().setToolMode(PP, false); + //Axes and Woodcutting are odd because they share the same tool so we show them the too tired message when they take action + if(type == SkillType.WOODCUTTING || type == SkillType.AXES) + { + if(!ability.getMode(PP) && !cooldownOver(player, (PP.getSkillDATS(ability) * 1000), ability.getCooldown())) + { + player.sendMessage(mcLocale.getString("Skills.TooTired") + ChatColor.YELLOW + " (" + calculateTimeLeft(player, (PP.getSkillDATS(ability) * 1000), ability.getCooldown()) + "s)"); + return; + } + } + int ticks = 2 + (PP.getSkillLevel(type) / 50); if(!ability.getMode(PP) && cooldownOver(player, PP.getSkillDATS(ability), ability.getCooldown())) {