Merge similar grindstone patches

This commit is contained in:
Encode42
2022-01-17 19:07:07 -05:00
parent b639309492
commit b8235eed8d
5 changed files with 29 additions and 57 deletions

View File

@@ -1,11 +1,11 @@
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 grindstone to ignore specified enchants
Subject: [PATCH] Config for grindstones
diff --git a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
index 0bdf874ddb951daf8d469575a44144504472d12d..f8fe06c65c87b877f22ea7c0df0bfe15adc42746 100644
index 0bdf874ddb951daf8d469575a44144504472d12d..14128f5b2eb7daf0cc7868e90533acd8a0d54935 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 {
@@ -35,8 +35,23 @@ index 0bdf874ddb951daf8d469575a44144504472d12d..f8fe06c65c87b877f22ea7c0df0bfe15
}).collect(Collectors.toMap(Entry::getKey, Entry::getValue));
EnchantmentHelper.setEnchantments(map, itemstack1);
@@ -267,6 +267,14 @@ public class GrindstoneMenu extends AbstractContainerMenu {
itemstack1.setRepairCost(AnvilMenu.calculateIncreasedRepairCost(itemstack1.getBaseRepairCost()));
}
+ // Purpur start
+ if (org.purpurmc.purpur.PurpurConfig.grindstoneRemoveAttributes && itemstack1.getTag() != null) {
+ for (String key : itemstack1.getTag().getAllKeys()) {
+ itemstack1.getTag().remove(key);
+ }
+ }
+ // Purpur end
+
return itemstack1;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 258ef634bac087710c77abff0a52954aa591ddd2..db40a001cd7bb65615d5df1e7623774ccda45807 100644
index 258ef634bac087710c77abff0a52954aa591ddd2..c21e12f1a3e61a3813e678f74e3919a17a662222 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -4,9 +4,13 @@ import co.aikar.timings.TimingsManager;
@@ -66,15 +81,16 @@ index 258ef634bac087710c77abff0a52954aa591ddd2..db40a001cd7bb65615d5df1e7623774c
import java.util.logging.Level;
@SuppressWarnings("unused")
@@ -300,6 +307,7 @@ public class PurpurConfig {
@@ -300,6 +307,8 @@ public class PurpurConfig {
public static int beeInsideBeeHive = 3;
public static boolean anvilCumulativeCost = true;
public static int lightningRodRange = 128;
+ public static Set<Enchantment> grindstoneIgnoredEnchants = new HashSet<>();
+ public static boolean grindstoneRemoveAttributes = false;
private static void blockSettings() {
if (version < 3) {
boolean oldValue = getBoolean("settings.barrel.packed-barrels", true);
@@ -334,6 +342,17 @@ public class PurpurConfig {
@@ -334,6 +343,18 @@ 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);
@@ -89,6 +105,7 @@ index 258ef634bac087710c77abff0a52954aa591ddd2..db40a001cd7bb65615d5df1e7623774c
+ Enchantment enchantment = Registry.ENCHANTMENT.get(new ResourceLocation(key.toString()));
+ grindstoneIgnoredEnchants.add(enchantment);
+ });
+ grindstoneRemoveAttributes = getBoolean("settings.blocks.grindstone.remove-attributes", grindstoneRemoveAttributes);
}
public static boolean allowInfinityMending = false;

View File

@@ -67,10 +67,10 @@ index 9e83f2dea73461f698185f5ffdb6060e422b9494..6b503d7bdd0eb202ff3466dc1f691102
// CraftBukkit start
// this.setPlayerList(new DedicatedPlayerList(this, this.registryHolder, this.playerDataStorage)); // Spigot - moved up
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index db40a001cd7bb65615d5df1e7623774ccda45807..ccffa0ffac58da97334c7f1a95f28b1a485f9303 100644
index c21e12f1a3e61a3813e678f74e3919a17a662222..ee01d9b20e5d16110d57083dcf216cc279e8dfec 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -402,4 +402,9 @@ public class PurpurConfig {
@@ -404,4 +404,9 @@ public class PurpurConfig {
private static void tpsCatchup() {
tpsCatchup = getBoolean("settings.tps-catchup", tpsCatchup);
}

View File

@@ -18,10 +18,10 @@ index 3fa13053722387db199f482307559219c381f4da..fd0f5b13c4254dd976a38a6e60d9e156
char c = in.charAt(i);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index ccffa0ffac58da97334c7f1a95f28b1a485f9303..7d3f8eb6db6193b8151d732232171a9a455e1470 100644
index ee01d9b20e5d16110d57083dcf216cc279e8dfec..1a038bac86eb2af4c426556c1738af2b3b7f1045 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -407,4 +407,11 @@ public class PurpurConfig {
@@ -409,4 +409,11 @@ public class PurpurConfig {
private static void networkSettings() {
useUPnP = getBoolean("settings.network.upnp-port-forwarding", useUPnP);
}

View File

@@ -158,10 +158,10 @@ index 6b8a1535086aae7e4e3229d05615fb903188f507..60af917083de1b790b1d93d61835a669
public int getMinCost(int level) {
return 15 + (level - 1) * 9;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 7d3f8eb6db6193b8151d732232171a9a455e1470..469f40bf9a31a254950e56b85605c5e729f22e16 100644
index 1a038bac86eb2af4c426556c1738af2b3b7f1045..f36632cc8a5f842d58922d1a6b2ff41f180897ec 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -357,6 +357,7 @@ public class PurpurConfig {
@@ -359,6 +359,7 @@ public class PurpurConfig {
public static boolean allowInfinityMending = false;
public static boolean allowCrossbowInfinity = false;
@@ -169,7 +169,7 @@ index 7d3f8eb6db6193b8151d732232171a9a455e1470..469f40bf9a31a254950e56b85605c5e7
public static boolean allowUnsafeEnchants = false;
private static void enchantmentSettings() {
if (version < 5) {
@@ -366,6 +367,7 @@ public class PurpurConfig {
@@ -368,6 +369,7 @@ public class PurpurConfig {
}
allowInfinityMending = getBoolean("settings.enchantment.allow-infinity-and-mending-together", allowInfinityMending);
allowCrossbowInfinity = getBoolean("settings.enchantment.allow-infinity-on-crossbow", allowCrossbowInfinity);

View File

@@ -1,45 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Encode42 <me@encode42.dev>
Date: Sun, 16 Jan 2022 14:54:28 -0500
Subject: [PATCH] Config for grindstones to remove item attributes
diff --git a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
index f061ea886b8e87a5b24567f5f3f80187e711dc5b..a0d56616d099de0bfc28818dd4d106156fa074a4 100644
--- a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java
@@ -268,6 +268,14 @@ public class GrindstoneMenu extends AbstractContainerMenu {
itemstack1.setRepairCost(AnvilMenu.calculateIncreasedRepairCost(itemstack1.getBaseRepairCost()));
}
+ // Purpur start
+ if (org.purpurmc.purpur.PurpurConfig.grindstoneRemoveAttributes && itemstack1.getTag() != null) {
+ for (String key : itemstack1.getTag().getAllKeys()) {
+ itemstack1.getTag().remove(key);
+ }
+ }
+ // Purpur end
+
return itemstack1;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 469f40bf9a31a254950e56b85605c5e729f22e16..f36632cc8a5f842d58922d1a6b2ff41f180897ec 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -308,6 +308,7 @@ public class PurpurConfig {
public static boolean anvilCumulativeCost = true;
public static int lightningRodRange = 128;
public static Set<Enchantment> grindstoneIgnoredEnchants = new HashSet<>();
+ public static boolean grindstoneRemoveAttributes = false;
private static void blockSettings() {
if (version < 3) {
boolean oldValue = getBoolean("settings.barrel.packed-barrels", true);
@@ -353,6 +354,7 @@ public class PurpurConfig {
Enchantment enchantment = Registry.ENCHANTMENT.get(new ResourceLocation(key.toString()));
grindstoneIgnoredEnchants.add(enchantment);
});
+ grindstoneRemoveAttributes = getBoolean("settings.blocks.grindstone.remove-attributes", grindstoneRemoveAttributes);
}
public static boolean allowInfinityMending = false;