New salvage enchant bypass permission node

This commit is contained in:
nossr50
2019-04-13 13:17:28 -07:00
parent f6e01ea910
commit d542098f8a
6 changed files with 35 additions and 2 deletions

View File

@ -139,7 +139,7 @@ public class RepairManager extends SkillManager {
}
// Handle the enchants
if (ArcaneForging.arcaneForgingEnchantLoss) {
if (ArcaneForging.arcaneForgingEnchantLoss && !Permissions.hasRepairEnchantBypassPerk(player)) {
addEnchants(item);
}

View File

@ -182,6 +182,9 @@ public class SalvageManager extends SkillManager {
}*/
public double getExtractFullEnchantChance() {
if(Permissions.hasSalvageEnchantBypassPerk(getPlayer()))
return 100.0D;
return AdvancedConfig.getInstance().getArcaneSalvageExtractFullEnchantsChance(getArcaneSalvageRank());
}
@ -205,6 +208,7 @@ public class SalvageManager extends SkillManager {
for (Entry<Enchantment, Integer> enchant : enchants.entrySet()) {
if (!Salvage.arcaneSalvageEnchantLoss
|| Permissions.hasSalvageEnchantBypassPerk(player)
|| RandomChanceUtil.checkRandomChanceExecutionSuccess(new RandomChanceSkillStatic(getExtractFullEnchantChance(), getPlayer(), SubSkillType.SALVAGE_ARCANE_SALVAGE))) {
enchantMeta.addStoredEnchant(enchant.getKey(), enchant.getValue(), true);
}