Bläddra i källkod

Fixed bug where Tree Feller had no cooldown whatsoever. GJJJJ!!!!

nossr50 13 år sedan
förälder
incheckning
9a7ea3b6d0
3 ändrade filer med 28 tillägg och 2 borttagningar
  1. 4 0
      Changelog.txt
  2. 1 1
      pom.xml
  3. 23 1
      src/main/java/com/gmail/nossr50/skills/Skills.java

+ 4 - 0
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)

+ 1 - 1
pom.xml

@@ -2,7 +2,7 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>com.gmail.nossr50.mcMMO</groupId>
     <artifactId>mcMMO</artifactId>
-    <version>1.3.00</version>
+    <version>1.3.01</version>
     <name>mcMMO</name>
     <url>https://github.com/mcMMO-Dev/mcMMO</url>
     <issueManagement>

+ 23 - 1
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()))
     		{