From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: 12emin34 Date: Sat, 30 Apr 2022 10:32:40 +0200 Subject: [PATCH] Add toggle for enchant level clamping diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java index fb614432722ea27cd044d6cfd3c6a72f797979f1..39d5e156b129bfceae1f28dcdee4bcf6f7537099 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -1220,6 +1220,7 @@ public final class ItemStack implements DataComponentHolder { public void enchant(Enchantment enchantment, int level) { EnchantmentHelper.updateEnchantments(this, (itemenchantments_a) -> { + //org.purpurmc.purpur.PurpurConfig.clampEnchantLevels // Purpur - TODO: fix clamp enchant levels option itemenchantments_a.upgrade(enchantment, level); }); } diff --git a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java index 6d0363cec691996be416ab22ef9d825196399158..96a402b8c5bf083c6120950eacf7970226972b8b 100644 --- a/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java +++ b/src/main/java/net/minecraft/world/item/enchantment/EnchantmentHelper.java @@ -35,6 +35,7 @@ public class EnchantmentHelper { public static int getItemEnchantmentLevel(Enchantment enchantment, ItemStack stack) { ItemEnchantments itemEnchantments = stack.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY); + //org.purpurmc.purpur.PurpurConfig.clampEnchantLevels // Purpur - TODO: fix clamp enchant levels option return itemEnchantments.getLevel(enchantment); } diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java index f0c3566e6b03c88c0cb53a90d44627d0967d13eb..c5dd0979f5bce259b920c47d974f2bf6b805c045 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java @@ -382,6 +382,7 @@ public class PurpurConfig { public static boolean allowHigherEnchantsLevels = true; public static boolean allowUnsafeEnchantCommand = false; public static boolean replaceIncompatibleEnchants = false; + public static boolean clampEnchantLevels = true; private static void enchantmentSettings() { if (version < 5) { boolean oldValue = getBoolean("settings.enchantment.allow-infinite-and-mending-together", false); @@ -405,6 +406,7 @@ public class PurpurConfig { allowHigherEnchantsLevels = getBoolean("settings.enchantment.anvil.allow-higher-enchants-levels", allowHigherEnchantsLevels); allowUnsafeEnchantCommand = getBoolean("settings.enchantment.allow-unsafe-enchant-command", allowUnsafeEnchants); // allowUnsafeEnchants as default for backwards compatability replaceIncompatibleEnchants = getBoolean("settings.enchantment.anvil.replace-incompatible-enchants", replaceIncompatibleEnchants); + clampEnchantLevels = getBoolean("settings.enchantment.clamp-levels", clampEnchantLevels); } public static boolean endermanShortHeight = false;