Browse Source

time to cut some corners :sick:

nossr50 5 years ago
parent
commit
810a29cb9d
2 changed files with 32 additions and 2 deletions
  1. 1 0
      Changelog.txt
  2. 31 2
      src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java

+ 1 - 0
Changelog.txt

@@ -15,6 +15,7 @@ Version 2.2.0
     Fixed a bug where salvage anvil noises wouldn't play for a player that lacked repair permissions nodes
     Sharpened Claws now has settings to change its damage for PVE or PVP instead of a flat setting that applied to both
     Gore tick length is now customizable
+    Limit Breaks are now configurable per skill instead of one shared setting across all limit breaks skills
     Removed the following Repair/Salvage permissions
         mcmmo.ability.repair.stonerepair
         mcmmo.ability.repair.stringrepair

+ 31 - 2
src/main/java/com/gmail/nossr50/commands/skills/SkillCommand.java

@@ -232,8 +232,37 @@ public abstract class SkillCommand implements TabExecutor {
 
     protected abstract void dataCalculations(Player player, double skillValue);
 
-    protected String getLimitBreakDescriptionParameter() {
-        if(AdvancedConfig.getInstance().canApplyLimitBreakPVE()) {
+    protected String getLimitBreakDescriptionParameter(SubSkillType subSkillType) {
+        //TODO: Hacky gross code below
+
+        boolean pveAllowed = false;
+
+        switch(subSkillType) {
+            case ARCHERY_ARCHERY_LIMIT_BREAK:
+                if(pluginRef.getConfigManager().getConfigArchery().getLimitBreak().isEnabledForPVE()) {
+                    pveAllowed = true;
+                }
+                break;
+            case AXES_AXES_LIMIT_BREAK:
+                if(pluginRef.getConfigManager().getConfigAxes().getSubSkills().getConfigAxesLimitBreak().isEnabledForPVE()) {
+                    pveAllowed = true;
+                }
+                break;
+            case SWORDS_SWORDS_LIMIT_BREAK:
+                if(pluginRef.getConfigManager().getConfigSwords().getSubSkills().getSwordsLimitBreak().isEnabledForPVE()) {
+                    pveAllowed = true;
+                }
+                break;
+            case UNARMED_UNARMED_LIMIT_BREAK:
+                if(pluginRef.getConfigManager().getConfigUnarmed().getSubSkills().getUnarmedLimitBreak().isEnabledForPVE()) {
+                    pveAllowed = true;
+                }
+                break;
+            default:
+                pluginRef.getLogger().severe("This skill has no limit break PVE setting defined!");
+        }
+
+        if(pveAllowed) {
             return "(PVP/PVE)";
         } else {
             return "(PVP)";