mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-18 17:07:43 +01:00
51 lines
3.2 KiB
Diff
51 lines
3.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: 12emin34 <macanovic.emin@gmail.com>
|
|
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;
|