|
@@ -15,6 +15,8 @@ import com.gmail.nossr50.util.Misc;
|
|
|
import com.gmail.nossr50.util.Permissions;
|
|
|
import com.gmail.nossr50.util.StringUtils;
|
|
|
import com.gmail.nossr50.util.player.NotificationManager;
|
|
|
+import com.gmail.nossr50.util.random.RandomChanceSkillStatic;
|
|
|
+import com.gmail.nossr50.util.random.RandomChanceUtil;
|
|
|
import com.gmail.nossr50.util.skills.RankUtils;
|
|
|
import com.gmail.nossr50.util.skills.SkillUtils;
|
|
|
import com.gmail.nossr50.util.sounds.SoundManager;
|
|
@@ -196,12 +198,14 @@ public class SalvageManager extends SkillManager {
|
|
|
boolean downgraded = false;
|
|
|
|
|
|
for (Entry<Enchantment, Integer> enchant : enchants.entrySet()) {
|
|
|
- int successChance = Misc.getRandom().nextInt(activationChance);
|
|
|
|
|
|
- if (!Salvage.arcaneSalvageEnchantLoss || getExtractFullEnchantChance() > successChance) {
|
|
|
+ if (!Salvage.arcaneSalvageEnchantLoss
|
|
|
+ || RandomChanceUtil.checkRandomChanceExecutionSuccess(new RandomChanceSkillStatic(getExtractFullEnchantChance(), getPlayer(), SubSkillType.SALVAGE_ARCANE_SALVAGE))) {
|
|
|
enchantMeta.addStoredEnchant(enchant.getKey(), enchant.getValue(), true);
|
|
|
}
|
|
|
- else if (enchant.getValue() > 1 && Salvage.arcaneSalvageDowngrades && getExtractPartialEnchantChance() > successChance) {
|
|
|
+ else if (enchant.getValue() > 1
|
|
|
+ && Salvage.arcaneSalvageDowngrades
|
|
|
+ && !RandomChanceUtil.checkRandomChanceExecutionSuccess(new RandomChanceSkillStatic(getExtractPartialEnchantChance(), getPlayer(), SubSkillType.SALVAGE_ARCANE_SALVAGE))) {
|
|
|
enchantMeta.addStoredEnchant(enchant.getKey(), enchant.getValue() - 1, true);
|
|
|
downgraded = true;
|
|
|
}
|