mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-26 07:06:45 +01:00
Add setting for enable/disable triple drops on super breaker
This commit is contained in:
parent
d4699c0e20
commit
80f910fc67
@ -5,6 +5,7 @@ Version 2.1.148
|
|||||||
New experience multiplier labeled 'Eggs' in experience.yml with a default value of 0 (previously mobs from eggs were using the Mobspawner experience multiplier)
|
New experience multiplier labeled 'Eggs' in experience.yml with a default value of 0 (previously mobs from eggs were using the Mobspawner experience multiplier)
|
||||||
New experience multiplier labeled 'Nether_Portal' in experience.yml with a default value of 0
|
New experience multiplier labeled 'Nether_Portal' in experience.yml with a default value of 0
|
||||||
New experience multiplier labeled 'Player_Tamed' in experience.yml with a default value of 0
|
New experience multiplier labeled 'Player_Tamed' in experience.yml with a default value of 0
|
||||||
|
New advanced.yml config setting 'Skills.Mining.SuperBreaker.AllowTripleDrops' defaults to true
|
||||||
|
|
||||||
Fixed a bug where mobs from eggs were only tracked if it was dispensed (egg tracking now tracks from egg items as well)
|
Fixed a bug where mobs from eggs were only tracked if it was dispensed (egg tracking now tracks from egg items as well)
|
||||||
Fixed a bug where egg spawned mobs were sometimes not marked as being from an egg (used in experience multipliers)
|
Fixed a bug where egg spawned mobs were sometimes not marked as being from an egg (used in experience multipliers)
|
||||||
|
@ -275,62 +275,6 @@ public class AdvancedConfig extends AutoUpdateConfigLoader {
|
|||||||
reason.add("Skills.Mining.DoubleDrops.MaxBonusLevel should be at least 1!");
|
reason.add("Skills.Mining.DoubleDrops.MaxBonusLevel should be at least 1!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*List<BlastMining.Tier> blastMiningTierList = Arrays.asList(BlastMining.Tier.values());
|
|
||||||
|
|
||||||
for (int rank : blastMiningTierList) {
|
|
||||||
if (getBlastMiningRankLevel(tier) < 0) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.Rank_Levels.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getBlastDamageDecrease(tier) < 0) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.BlastDamageDecrease.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getOreBonus(tier) < 0) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.OreBonus.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getDebrisReduction(tier) < 0) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.DebrisReduction.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getDropMultiplier(tier) < 0) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.DropMultiplier.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getBlastRadiusModifier(tier) < 0) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.BlastRadiusModifier.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tier != BlastMining.Tier.EIGHT) {
|
|
||||||
BlastMining.Tier nextTier = blastMiningTierList.get(blastMiningTierList.indexOf(tier) - 1);
|
|
||||||
|
|
||||||
if (getBlastMiningRankLevel(tier) > getBlastMiningRankLevel(nextTier)) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.Rank_Levels.Rank_" + rank + " should be less than or equal to Skills.Mining.BlastMining.Rank_Levels.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getBlastDamageDecrease(tier) > getBlastDamageDecrease(nextTier)) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.BlastDamageDecrease.Rank_" + rank + " should be less than or equal to Skills.Mining.BlastMining.BlastDamageDecrease.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getOreBonus(tier) > getOreBonus(nextTier)) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.OreBonus.Rank_" + rank + " should be less than or equal to Skills.Mining.BlastMining.OreBonus.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getDebrisReduction(tier) > getDebrisReduction(nextTier)) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.DebrisReduction.Rank_" + rank + " should be less than or equal to Skills.Mining.BlastMining.DebrisReduction.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getDropMultiplier(tier) > getDropMultiplier(nextTier)) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.DropMultiplier.Rank_" + rank + " should be less than or equal to Skills.Mining.BlastMining.DropMultiplier.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getBlastRadiusModifier(tier) > getBlastRadiusModifier(nextTier)) {
|
|
||||||
reason.add("Skills.Mining.BlastMining.BlastRadiusModifier.Rank_" + rank + " should be less than or equal to Skills.Mining.BlastMining.BlastRadiusModifier.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/* REPAIR */
|
/* REPAIR */
|
||||||
if (getRepairMasteryMaxBonus() < 1) {
|
if (getRepairMasteryMaxBonus() < 1) {
|
||||||
reason.add("Skills.Repair.RepairMastery.MaxBonusPercentage should be at least 1!");
|
reason.add("Skills.Repair.RepairMastery.MaxBonusPercentage should be at least 1!");
|
||||||
@ -348,83 +292,6 @@ public class AdvancedConfig extends AutoUpdateConfigLoader {
|
|||||||
reason.add("Skills.Repair.SuperRepair.MaxBonusLevel should be at least 1!");
|
reason.add("Skills.Repair.SuperRepair.MaxBonusLevel should be at least 1!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*List<ArcaneForging.Tier> arcaneForgingTierList = Arrays.asList(ArcaneForging.Tier.values());
|
|
||||||
|
|
||||||
for (ArcaneForging.Tier tier : arcaneForgingTierList) {
|
|
||||||
if (getArcaneForgingRankLevel(tier) < 0) {
|
|
||||||
reason.add("Skills.Repair.ArcaneForging.Rank_Levels.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneForgingDowngradeChance(tier) < 0 || getArcaneForgingDowngradeChance(tier) > 100) {
|
|
||||||
reason.add("Skills.Repair.ArcaneForging.Downgrades.Chance.Rank_" + rank + " only accepts values from 0 to 100!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneForgingKeepEnchantsChance(tier) < 0 || getArcaneForgingKeepEnchantsChance(tier) > 100) {
|
|
||||||
reason.add("Skills.Repair.ArcaneForging.Keep_Enchants.Chance.Rank_" + rank + " only accepts values from 0 to 100!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tier != ArcaneForging.Tier.EIGHT) {
|
|
||||||
ArcaneForging.Tier nextTier = arcaneForgingTierList.get(arcaneForgingTierList.indexOf(tier) - 1);
|
|
||||||
|
|
||||||
if (getArcaneForgingRankLevel(tier) > getArcaneForgingRankLevel(nextTier)) {
|
|
||||||
reason.add("Skills.Repair.ArcaneForging.Rank_Levels.Rank_" + rank + " should be less than or equal to Skills.Repair.ArcaneForging.Rank_Levels.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneForgingDowngradeChance(nextTier) > getArcaneForgingDowngradeChance(tier)) {
|
|
||||||
reason.add("Skills.Repair.ArcaneForging.Downgrades.Chance.Rank_" + nextrank + " should be less than or equal to Skills.Repair.ArcaneForging.Downgrades.Chance.Rank_" + rank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneForgingKeepEnchantsChance(tier) > getArcaneForgingKeepEnchantsChance(nextTier)) {
|
|
||||||
reason.add("Skills.Repair.ArcaneForging.Keep_Enchants.Chance.Rank_" + rank + " should be less than or equal to Skills.Repair.ArcaneForging.Keep_Enchants.Chance.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/* SALVAGE */
|
|
||||||
/*if (getSalvageMaxPercentage() < 1) {
|
|
||||||
reason.add("Skills.Salvage.MaxPercentage should be at least 1!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getSalvageMaxPercentageLevel() < 1) {
|
|
||||||
reason.add("Skills.Salvage.MaxPercentageLevel should be at least 1!");
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/*if (getAdvancedSalvageUnlockLevel() < 0) {
|
|
||||||
reason.add("Skills.Salvage.AdvancedSalvage.UnlockLevel should be at least 0!");
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/*List<Salvage.Tier> salvageTierList = Arrays.asList(Salvage.Tier.values());
|
|
||||||
|
|
||||||
for (Salvage.Tier tier : salvageTierList) {
|
|
||||||
if (getArcaneSalvageRankLevel(tier) < 0) {
|
|
||||||
reason.add("Skills.Salvage.ArcaneSalvage.Rank_Levels.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneSalvageExtractFullEnchantsChance(tier) < 0 || getArcaneSalvageExtractFullEnchantsChance(tier) > 100) {
|
|
||||||
reason.add("Skills.Salvage.ArcaneSalvage.ExtractFullEnchant.Rank_" + rank + " only accepts values from 0 to 100!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneSalvageExtractPartialEnchantsChance(tier) < 0 || getArcaneSalvageExtractPartialEnchantsChance(tier) > 100) {
|
|
||||||
reason.add("Skills.Salvage.ArcaneSalvage.ExtractPartialEnchant.Rank_" + rank + " only accepts values from 0 to 100!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tier != Salvage.Tier.EIGHT) {
|
|
||||||
Salvage.Tier nextTier = salvageTierList.get(salvageTierList.indexOf(tier) - 1);
|
|
||||||
|
|
||||||
if (getArcaneSalvageRankLevel(tier) > getArcaneSalvageRankLevel(nextTier)) {
|
|
||||||
reason.add("Skills.Salvage.ArcaneSalvage.Rank_Levels.Rank_" + rank + " should be less than or equal to Skills.Salvage.ArcaneSalvage.Rank_Levels.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneSalvageExtractFullEnchantsChance(tier) > getArcaneSalvageExtractFullEnchantsChance(nextTier)) {
|
|
||||||
reason.add("Skills.Salvage.ArcaneSalvage.ExtractFullEnchant.Rank_" + rank + " should be less than or equal to Skills.Salvage.ArcaneSalvage.ExtractFullEnchant.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getArcaneSalvageExtractPartialEnchantsChance(tier) > getArcaneSalvageExtractPartialEnchantsChance(nextTier)) {
|
|
||||||
reason.add("Skills.Salvage.ArcaneSalvage.ExtractPartialEnchant.Rank_" + rank + " should be less than or equal to Skills.Salvage.ArcaneSalvage.ExtractPartialEnchant.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/* SMELTING */
|
/* SMELTING */
|
||||||
if (getBurnModifierMaxLevel() < 1) {
|
if (getBurnModifierMaxLevel() < 1) {
|
||||||
reason.add("Skills.Smelting.FuelEfficiency.MaxBonusLevel should be at least 1!");
|
reason.add("Skills.Smelting.FuelEfficiency.MaxBonusLevel should be at least 1!");
|
||||||
@ -438,38 +305,10 @@ public class AdvancedConfig extends AutoUpdateConfigLoader {
|
|||||||
reason.add("Skills.Smelting.SecondSmelt.ChanceMax should be at least 1!");
|
reason.add("Skills.Smelting.SecondSmelt.ChanceMax should be at least 1!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*if (getFluxMiningUnlockLevel() < 0) {
|
|
||||||
reason.add("Skills.Smelting.FluxMining.UnlockLevel should be at least 0!");
|
|
||||||
}*/
|
|
||||||
|
|
||||||
if (getFluxMiningChance() < 1) {
|
if (getFluxMiningChance() < 1) {
|
||||||
reason.add("Skills.Smelting.FluxMining.Chance should be at least 1!");
|
reason.add("Skills.Smelting.FluxMining.Chance should be at least 1!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*List<Smelting.Tier> smeltingTierList = Arrays.asList(Smelting.Tier.values());
|
|
||||||
|
|
||||||
for (int rank : smeltingTierList) {
|
|
||||||
if (getSmeltingRankLevel(tier) < 0) {
|
|
||||||
reason.add("Skills.Smelting.Rank_Levels.Rank_" + rank + " should be at least 0!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getSmeltingVanillaXPBoostMultiplier(tier) < 1) {
|
|
||||||
reason.add("Skills.Smelting.VanillaXPMultiplier.Rank_" + rank + " should be at least 1!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tier != Smelting.Tier.EIGHT) {
|
|
||||||
Smelting.Tier nextTier = smeltingTierList.get(smeltingTierList.indexOf(tier) - 1);
|
|
||||||
|
|
||||||
if (getSmeltingRankLevel(tier) > getSmeltingRankLevel(nextTier)) {
|
|
||||||
reason.add("Skills.Smelting.Rank_Levels.Rank_" + rank + " should be less than or equal to Skills.Smelting.Rank_Levels.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (getSmeltingVanillaXPBoostMultiplier(tier) > getSmeltingVanillaXPBoostMultiplier(nextTier)) {
|
|
||||||
reason.add("Skills.Smelting.VanillaXPMultiplier.Rank_" + rank + " should be less than or equal to Skills.Smelting.VanillaXPMultiplier.Rank_" + nextrank + "!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/* SWORDS */
|
/* SWORDS */
|
||||||
if (getMaximumProbability(SubSkillType.SWORDS_RUPTURE) < 1) {
|
if (getMaximumProbability(SubSkillType.SWORDS_RUPTURE) < 1) {
|
||||||
reason.add("Skills.Swords.Rupture.ChanceMax should be at least 1!");
|
reason.add("Skills.Swords.Rupture.ChanceMax should be at least 1!");
|
||||||
@ -897,6 +736,7 @@ public class AdvancedConfig extends AutoUpdateConfigLoader {
|
|||||||
|
|
||||||
/* MINING */
|
/* MINING */
|
||||||
public boolean getDoubleDropSilkTouchEnabled() { return config.getBoolean("Skills.Mining.DoubleDrops.SilkTouch", true); }
|
public boolean getDoubleDropSilkTouchEnabled() { return config.getBoolean("Skills.Mining.DoubleDrops.SilkTouch", true); }
|
||||||
|
public boolean getAllowMiningTripleDrops() { return config.getBoolean("Skills.Mining.SuperBreaker.AllowTripleDrops", true); }
|
||||||
public int getBlastMiningRankLevel(int rank) { return config.getInt("Skills.Mining.BlastMining.Rank_Levels.Rank_" + rank); }
|
public int getBlastMiningRankLevel(int rank) { return config.getInt("Skills.Mining.BlastMining.Rank_Levels.Rank_" + rank); }
|
||||||
public double getBlastDamageDecrease(int rank) { return config.getDouble("Skills.Mining.BlastMining.BlastDamageDecrease.Rank_" + rank); }
|
public double getBlastDamageDecrease(int rank) { return config.getDouble("Skills.Mining.BlastMining.BlastDamageDecrease.Rank_" + rank); }
|
||||||
public double getOreBonus(int rank) { return config.getDouble("Skills.Mining.BlastMining.OreBonus.Rank_" + rank); }
|
public double getOreBonus(int rank) { return config.getDouble("Skills.Mining.BlastMining.OreBonus.Rank_" + rank); }
|
||||||
@ -904,6 +744,7 @@ public class AdvancedConfig extends AutoUpdateConfigLoader {
|
|||||||
public int getDropMultiplier(int rank) { return config.getInt("Skills.Mining.BlastMining.DropMultiplier.Rank_" + rank); }
|
public int getDropMultiplier(int rank) { return config.getInt("Skills.Mining.BlastMining.DropMultiplier.Rank_" + rank); }
|
||||||
public double getBlastRadiusModifier(int rank) { return config.getDouble("Skills.Mining.BlastMining.BlastRadiusModifier.Rank_" + rank); }
|
public double getBlastRadiusModifier(int rank) { return config.getDouble("Skills.Mining.BlastMining.BlastRadiusModifier.Rank_" + rank); }
|
||||||
|
|
||||||
|
|
||||||
/* REPAIR */
|
/* REPAIR */
|
||||||
public double getRepairMasteryMaxBonus() { return config.getDouble("Skills.Repair.RepairMastery.MaxBonusPercentage", 200.0D); }
|
public double getRepairMasteryMaxBonus() { return config.getDouble("Skills.Repair.RepairMastery.MaxBonusPercentage", 200.0D); }
|
||||||
public int getRepairMasteryMaxLevel() { return config.getInt("Skills.Repair.RepairMastery.MaxBonusLevel", 100); }
|
public int getRepairMasteryMaxLevel() { return config.getInt("Skills.Repair.RepairMastery.MaxBonusLevel", 100); }
|
||||||
|
@ -95,7 +95,8 @@ public class MiningManager extends SkillManager {
|
|||||||
|
|
||||||
//TODO: Make this readable
|
//TODO: Make this readable
|
||||||
if (RandomChanceUtil.checkRandomChanceExecutionSuccess(getPlayer(), SubSkillType.MINING_DOUBLE_DROPS, true)) {
|
if (RandomChanceUtil.checkRandomChanceExecutionSuccess(getPlayer(), SubSkillType.MINING_DOUBLE_DROPS, true)) {
|
||||||
BlockUtils.markDropsAsBonus(blockState, mcMMOPlayer.getAbilityMode(skill.getAbility()));
|
boolean useTriple = mcMMOPlayer.getAbilityMode(skill.getAbility()) && AdvancedConfig.getInstance().getAllowMiningTripleDrops();
|
||||||
|
BlockUtils.markDropsAsBonus(blockState, useTriple);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -275,6 +275,8 @@ Skills:
|
|||||||
# Settings for Mining
|
# Settings for Mining
|
||||||
###
|
###
|
||||||
Mining:
|
Mining:
|
||||||
|
SuperBreaker:
|
||||||
|
AllowTripleDrops: true
|
||||||
DoubleDrops:
|
DoubleDrops:
|
||||||
SilkTouch: true
|
SilkTouch: true
|
||||||
# ChanceMax: Maximum chance of receiving double drops when on <MaxBonusLevel> or higher
|
# ChanceMax: Maximum chance of receiving double drops when on <MaxBonusLevel> or higher
|
||||||
|
Loading…
Reference in New Issue
Block a user