diff --git a/Changelog.txt b/Changelog.txt index 40c16b40b3..e3e3e4176d 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,8 +1,15 @@ Version 2.2.017 + Added a setting in advanced.yml to ignore attack cooldowns (see notes) Fixed a bug with Mace permissions (thanks SrBedrock) Updated zh_CN locale (thanks libook) Updated pt_BR locale (thanks JesusRuescas) Updated fr locale (thanks Ted-18) + + NOTES: + Skills.General.Attack_Cooldown.Adjust_Skills_For_Attack_Cooldown is a new setting in advanced.yml that will allow you to ignore attack cooldowns for the combat skills. + When a player spams an attack, have a reduced amount of bonus damage from mcMMO and reduced chance for chance-on-hit subskills to activate. + You can have mcMMO ignore this value and apply full bonus damage and full chance to proc abilities by setting this to false. + Version 2.2.016 (SQL) Fixed a bug where skill cooldowns were being loaded for players incorrectly diff --git a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java index cf2f37eee3..607e86b2cd 100644 --- a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java +++ b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java @@ -409,6 +409,10 @@ protected void loadKeys() { /* GENERAL */ + public boolean useAttackCooldown() { + return config.getBoolean("Skills.General.Attack_Cooldown.Adjust_Skills_For_Attack_Cooldown", true); + } + public boolean canApplyLimitBreakPVE() { return config.getBoolean("Skills.General.LimitBreak.AllowPVE", false); } diff --git a/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java b/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java index c974930e04..cbf96352fa 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java +++ b/src/main/java/com/gmail/nossr50/datatypes/player/McMMOPlayer.java @@ -2,6 +2,7 @@ import com.gmail.nossr50.api.exceptions.InvalidSkillException; import com.gmail.nossr50.chat.author.PlayerAuthor; +import com.gmail.nossr50.config.AdvancedConfig; import com.gmail.nossr50.config.ChatConfig; import com.gmail.nossr50.config.WorldBlacklist; import com.gmail.nossr50.config.experience.ExperienceConfig; @@ -239,7 +240,11 @@ public String getPlayerName() { } public double getAttackStrength() { - return player.getAttackCooldown(); + if (mcMMO.p.getAdvancedConfig().useAttackCooldown()) { + return player.getAttackCooldown(); + } else { + return 1.0D; + } } public @NotNull PrimarySkillType getLastSkillShownScoreboard() { diff --git a/src/main/resources/advanced.yml b/src/main/resources/advanced.yml index bbbf2ea44e..6436e1ab7d 100644 --- a/src/main/resources/advanced.yml +++ b/src/main/resources/advanced.yml @@ -83,6 +83,11 @@ Feedback: SendCopyOfMessageToChat: false Skills: General: + # Attack Cooldown refers to the strength of attacks in Minecraft. + # If an attack is spammed, it will have less bonus damage and RNG for skills to activate from mcMMO. + # If you want, you can turn this behavior off by setting it to false. + Attack_Cooldown: + Adjust_Skills_For_Attack_Cooldown: true LimitBreak: AllowPVE: false StartingLevel: 0