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 0bc6edf82d77ae88d64bd6ca0a5294c2143f2f5c..53fc44af2b9ceca0abb6c7b287eb08bdd1bf7fdb 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 42a916e89b838868967391b9c042ce5143d862d0..af79332c9c54ca314c59c6e503478e52c5970e31 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java @@ -398,6 +398,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); @@ -421,6 +422,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;