mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 08:27:43 +01:00
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@6178609 Fix tripwire state inconsistency PaperMC/Paper@ae6fec6 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#7116) PaperMC/Paper@5cb2942 Update paperweight to 1.3.3 and shadow to 7.1.1 PaperMC/Paper@8a9979c Update gradle wrapper to 7.3.2 PaperMC/Paper@df8d28a Update checker framework & log4j-api for paper-api (also rebuild patches)
58 lines
3.5 KiB
Diff
58 lines
3.5 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Encode42 <me@encode42.dev>
|
|
Date: Wed, 29 Sep 2021 13:37:57 -0400
|
|
Subject: [PATCH] Config for Grindstones ignoring curses
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
|
|
index 0bdf874ddb951daf8d469575a44144504472d12d..66d1b438227e004d7ffb6e7c5d0cd3e6da3d2a49 100644
|
|
--- a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
|
|
+++ b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
|
|
@@ -130,7 +130,7 @@ public class GrindstoneMenu extends AbstractContainerMenu {
|
|
Enchantment enchantment = (Enchantment) entry.getKey();
|
|
Integer integer = (Integer) entry.getValue();
|
|
|
|
- if (!enchantment.isCurse()) {
|
|
+ if (!org.purpurmc.purpur.PurpurConfig.grindstoneIgnoreCurses || !enchantment.isCurse()) { // Purpur
|
|
j += enchantment.getMinCost(integer);
|
|
}
|
|
}
|
|
@@ -230,7 +230,7 @@ public class GrindstoneMenu extends AbstractContainerMenu {
|
|
Entry<Enchantment, Integer> entry = (Entry) iterator.next();
|
|
Enchantment enchantment = (Enchantment) entry.getKey();
|
|
|
|
- if (!enchantment.isCurse() || EnchantmentHelper.getItemEnchantmentLevel(enchantment, itemstack2) == 0) {
|
|
+ if (!org.purpurmc.purpur.PurpurConfig.grindstoneIgnoreCurses || !enchantment.isCurse() || EnchantmentHelper.getItemEnchantmentLevel(enchantment, itemstack2) == 0) { // Purpur
|
|
itemstack2.enchant(enchantment, (Integer) entry.getValue());
|
|
}
|
|
}
|
|
@@ -251,7 +251,7 @@ public class GrindstoneMenu extends AbstractContainerMenu {
|
|
|
|
itemstack1.setCount(amount);
|
|
Map<Enchantment, Integer> map = (Map) EnchantmentHelper.getEnchantments(item).entrySet().stream().filter((entry) -> {
|
|
- return ((Enchantment) entry.getKey()).isCurse();
|
|
+ return org.purpurmc.purpur.PurpurConfig.grindstoneIgnoreCurses && ((Enchantment) entry.getKey()).isCurse(); // Purpur
|
|
}).collect(Collectors.toMap(Entry::getKey, Entry::getValue));
|
|
|
|
EnchantmentHelper.setEnchantments(map, itemstack1);
|
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
index a75db67d2ed1d3440903396181b4cd6cf982f15d..3b07195c1255bdac9bdc8b1286edb5d5c1eb7cf4 100644
|
|
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
@@ -293,6 +293,7 @@ public class PurpurConfig {
|
|
public static int beeInsideBeeHive = 3;
|
|
public static boolean anvilCumulativeCost = true;
|
|
public static int lightningRodRange = 128;
|
|
+ public static boolean grindstoneIgnoreCurses = true;
|
|
private static void blockSettings() {
|
|
if (version < 3) {
|
|
boolean oldValue = getBoolean("settings.barrel.packed-barrels", true);
|
|
@@ -327,6 +328,7 @@ public class PurpurConfig {
|
|
beeInsideBeeHive = getInt("settings.blocks.beehive.max-bees-inside", beeInsideBeeHive);
|
|
anvilCumulativeCost = getBoolean("settings.blocks.anvil.cumulative-cost", anvilCumulativeCost);
|
|
lightningRodRange = getInt("settings.blocks.lightning_rod.range", lightningRodRange);
|
|
+ grindstoneIgnoreCurses = getBoolean("settings.blocks.grindstone.ignore-curses", grindstoneIgnoreCurses);
|
|
}
|
|
|
|
public static boolean allowInfinityMending = false;
|