diff --git a/Changelog.txt b/Changelog.txt index 01e963a4b..7cf558e61 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,3 +1,6 @@ +Version 2.1.219 + Added 'Skills.Mining.BlastMining.Bonus_Drops.Enabled' to advanced.yml to enable/disable bonus drops from Blast Mining + Version 2.1.218 Fixed locale pt_BR type (thanks MrPowerGamerBR) Updated Russian Locale (thanks imDaniX) diff --git a/pom.xml b/pom.xml index 1b70bbae7..cac58a15e 100755 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.gmail.nossr50.mcMMO mcMMO - 2.1.218 + 2.1.219-SNAPSHOT mcMMO https://github.com/mcMMO-Dev/mcMMO diff --git a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java index 84da46281..25425a0a3 100644 --- a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java +++ b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java @@ -777,6 +777,10 @@ public class AdvancedConfig extends BukkitConfig { return config.getDouble("Skills.Mining.BlastMining.OreBonus.Rank_" + rank); } + public boolean isBlastMiningBonusDropsEnabled() { + return config.getBoolean("Skills.Mining.BlastMining.Bonus_Drops.Enabled", true); + } + public double getDebrisReduction(int rank) { return config.getDouble("Skills.Mining.BlastMining.DebrisReduction.Rank_" + rank); } diff --git a/src/main/java/com/gmail/nossr50/datatypes/skills/PrimarySkillType.java b/src/main/java/com/gmail/nossr50/datatypes/skills/PrimarySkillType.java index 22ab7f4a6..5b513c280 100644 --- a/src/main/java/com/gmail/nossr50/datatypes/skills/PrimarySkillType.java +++ b/src/main/java/com/gmail/nossr50/datatypes/skills/PrimarySkillType.java @@ -27,40 +27,6 @@ public enum PrimarySkillType { TAMING, UNARMED, WOODCUTTING; -// boolean issueWarning = true; - - /* - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - * Everything below here will be removed in 2.2 (Tridents & Crossbows) - */ - - -// private void processWarning() { -// if(issueWarning) { -// StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace(); -// Bukkit.getScheduler().scheduleSyncDelayedTask(mcMMO.p, () -> { -// mcMMO.p.getLogger().severe("A plugin that hooks into mcMMO via the mcMMO API is using soon to be deprecated API calls. Contact the plugin author and inform them to update their code before it breaks."); -// mcMMO.p.getLogger().severe("Deprecation Call from: " + stackTraceElements[2].toString()); -// mcMMO.p.getLogger().severe("This warning will not repeat itself. Nothing is broken for now, but in the future it will be."); -// }); -// -// issueWarning = !issueWarning; -// } -// } /** * WARNING: Being removed in an upcoming update, you should be using mcMMO.getSkillTools() instead diff --git a/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java b/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java index 6205173aa..1e2dacc88 100644 --- a/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java +++ b/src/main/java/com/gmail/nossr50/skills/mining/MiningManager.java @@ -1,6 +1,7 @@ package com.gmail.nossr50.skills.mining; import com.gmail.nossr50.api.ItemSpawnReason; +import com.gmail.nossr50.config.AdvancedConfig; import com.gmail.nossr50.config.experience.ExperienceConfig; import com.gmail.nossr50.datatypes.experience.XPGainReason; import com.gmail.nossr50.datatypes.interactions.NotificationType; @@ -188,7 +189,7 @@ public class MiningManager extends SkillManager { Misc.spawnItem(getPlayer(), Misc.getBlockCenter(blockState), new ItemStack(blockState.getType()), ItemSpawnReason.BLAST_MINING_ORES); // Initial block that would have been dropped - if (!mcMMO.getPlaceStore().isTrue(blockState)) { + if (mcMMO.p.getAdvancedConfig().isBlastMiningBonusDropsEnabled() && !mcMMO.getPlaceStore().isTrue(blockState)) { for (int i = 1; i < dropMultiplier; i++) { // Bukkit.broadcastMessage("Bonus Drop on Ore: "+blockState.getType().toString()); Misc.spawnItem(getPlayer(), Misc.getBlockCenter(blockState), new ItemStack(blockState.getType()), ItemSpawnReason.BLAST_MINING_ORES_BONUS_DROP); // Initial block that would have been dropped @@ -275,21 +276,16 @@ public class MiningManager extends SkillManager { * @return the Blast Mining tier */ public int getDropMultiplier() { - switch(getBlastMiningTier()) { - case 8: - case 7: - return 3; - case 6: - case 5: - case 4: - case 3: - return 2; - case 2: - case 1: - return 1; - default: - return 0; + if (mcMMO.p.getAdvancedConfig().isBlastMiningBonusDropsEnabled()) { + return 0; } + + return switch (getBlastMiningTier()) { + case 8, 7 -> 3; + case 6, 5, 4, 3 -> 2; + case 2, 1 -> 1; + default -> 0; + }; } /** diff --git a/src/main/resources/advanced.yml b/src/main/resources/advanced.yml index 66b79f79a..4ade2d77c 100644 --- a/src/main/resources/advanced.yml +++ b/src/main/resources/advanced.yml @@ -289,6 +289,8 @@ Skills: RetroMode: 1000 BlastMining: + Bonus_Drops: + Enabled: true # BlastDamageDecrease Ranks: % of damage reduced from TNT explosions BlastDamageDecrease: Rank_1: 0.0