diff --git a/patches/api/0023-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch b/patches/api/0023-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch deleted file mode 100644 index af1641fb88..0000000000 --- a/patches/api/0023-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: William Blake Galbreath -Date: Fri, 2 Oct 2020 17:43:24 -0500 -Subject: [PATCH] Add predicate to recipe's ExactChoice ingredient - - -diff --git a/src/main/java/org/bukkit/inventory/RecipeChoice.java b/src/main/java/org/bukkit/inventory/RecipeChoice.java -index 523818cbb0d6c90481ec97123e7fe0e2ff4eea14..bfeb8171a723d84b94bfaacd8aaf7d4d48ecd051 100644 ---- a/src/main/java/org/bukkit/inventory/RecipeChoice.java -+++ b/src/main/java/org/bukkit/inventory/RecipeChoice.java -@@ -10,6 +10,7 @@ import java.util.function.Predicate; - import org.bukkit.Material; - import org.bukkit.Tag; - import org.jetbrains.annotations.NotNull; -+import org.jetbrains.annotations.Nullable; // Purpur - - /** - * Represents a potential item match within a recipe. All choices within a -@@ -150,6 +151,7 @@ public interface RecipeChoice extends Predicate, Cloneable { - public static class ExactChoice implements RecipeChoice { - - private List choices; -+ private Predicate predicate; // Purpur - - public ExactChoice(@NotNull ItemStack stack) { - this(Arrays.asList(stack)); -@@ -194,6 +196,7 @@ public interface RecipeChoice extends Predicate, Cloneable { - - @Override - public boolean test(@NotNull ItemStack t) { -+ if (predicate != null) return predicate.test(t); // Purpur - for (ItemStack match : choices) { - if (t.isSimilar(match)) { - return true; -@@ -203,6 +206,17 @@ public interface RecipeChoice extends Predicate, Cloneable { - return false; - } - -+ // Purpur start -+ @Nullable -+ public Predicate getPredicate() { -+ return predicate; -+ } -+ -+ public void setPredicate(@Nullable Predicate predicate) { -+ this.predicate = predicate; -+ } -+ // Purpur end -+ - @Override - public int hashCode() { - int hash = 7; diff --git a/patches/api/0024-Rabid-Wolf-API.patch b/patches/api/0023-Rabid-Wolf-API.patch similarity index 100% rename from patches/api/0024-Rabid-Wolf-API.patch rename to patches/api/0023-Rabid-Wolf-API.patch diff --git a/patches/api/0025-PlayerBookTooLargeEvent.patch b/patches/api/0024-PlayerBookTooLargeEvent.patch similarity index 100% rename from patches/api/0025-PlayerBookTooLargeEvent.patch rename to patches/api/0024-PlayerBookTooLargeEvent.patch diff --git a/patches/api/0026-Full-netherite-armor-grants-fire-resistance.patch b/patches/api/0025-Full-netherite-armor-grants-fire-resistance.patch similarity index 100% rename from patches/api/0026-Full-netherite-armor-grants-fire-resistance.patch rename to patches/api/0025-Full-netherite-armor-grants-fire-resistance.patch diff --git a/patches/api/0027-Add-EntityTeleportHinderedEvent.patch b/patches/api/0026-Add-EntityTeleportHinderedEvent.patch similarity index 100% rename from patches/api/0027-Add-EntityTeleportHinderedEvent.patch rename to patches/api/0026-Add-EntityTeleportHinderedEvent.patch diff --git a/patches/api/0028-Add-enchantment-target-for-bows-and-crossbows.patch b/patches/api/0027-Add-enchantment-target-for-bows-and-crossbows.patch similarity index 100% rename from patches/api/0028-Add-enchantment-target-for-bows-and-crossbows.patch rename to patches/api/0027-Add-enchantment-target-for-bows-and-crossbows.patch diff --git a/patches/api/0029-Iron-golem-poppy-calms-anger.patch b/patches/api/0028-Iron-golem-poppy-calms-anger.patch similarity index 100% rename from patches/api/0029-Iron-golem-poppy-calms-anger.patch rename to patches/api/0028-Iron-golem-poppy-calms-anger.patch diff --git a/patches/api/0030-API-for-any-mob-to-burn-daylight.patch b/patches/api/0029-API-for-any-mob-to-burn-daylight.patch similarity index 100% rename from patches/api/0030-API-for-any-mob-to-burn-daylight.patch rename to patches/api/0029-API-for-any-mob-to-burn-daylight.patch diff --git a/patches/api/0031-Add-back-player-spawned-endermite-API.patch b/patches/api/0030-Add-back-player-spawned-endermite-API.patch similarity index 100% rename from patches/api/0031-Add-back-player-spawned-endermite-API.patch rename to patches/api/0030-Add-back-player-spawned-endermite-API.patch diff --git a/patches/api/0032-Fix-default-permission-system.patch b/patches/api/0031-Fix-default-permission-system.patch similarity index 100% rename from patches/api/0032-Fix-default-permission-system.patch rename to patches/api/0031-Fix-default-permission-system.patch diff --git a/patches/api/0033-Summoner-API.patch b/patches/api/0032-Summoner-API.patch similarity index 100% rename from patches/api/0033-Summoner-API.patch rename to patches/api/0032-Summoner-API.patch diff --git a/patches/api/0034-Clean-up-version-command-output.patch b/patches/api/0033-Clean-up-version-command-output.patch similarity index 100% rename from patches/api/0034-Clean-up-version-command-output.patch rename to patches/api/0033-Clean-up-version-command-output.patch diff --git a/patches/api/0035-Extended-OfflinePlayer-API.patch b/patches/api/0034-Extended-OfflinePlayer-API.patch similarity index 100% rename from patches/api/0035-Extended-OfflinePlayer-API.patch rename to patches/api/0034-Extended-OfflinePlayer-API.patch diff --git a/patches/api/0036-Added-the-ability-to-add-combustible-items.patch b/patches/api/0035-Added-the-ability-to-add-combustible-items.patch similarity index 91% rename from patches/api/0036-Added-the-ability-to-add-combustible-items.patch rename to patches/api/0035-Added-the-ability-to-add-combustible-items.patch index 080f2a0cd0..9fc989cc65 100644 --- a/patches/api/0036-Added-the-ability-to-add-combustible-items.patch +++ b/patches/api/0035-Added-the-ability-to-add-combustible-items.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Added the ability to add combustible items diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index b948c38f32f94afa1708820dbbda9c7f4f9c685c..4127ae56afb05196ff46a5313e9d141adc27802b 100644 +index e008983503a4ae45e9dd7f7858291dc4d3746520..4d375b95459698284f1c27eefe8adc29fc0e7871 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java @@ -2851,5 +2851,24 @@ public final class Bukkit { @@ -34,7 +34,7 @@ index b948c38f32f94afa1708820dbbda9c7f4f9c685c..4127ae56afb05196ff46a5313e9d141a // Purpur end } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index f87583244ba9ea07ffd2a438ea32f0328782dbf3..6795f2c0c1e974c4fe3181cd6838a68f7437c846 100644 +index 410aa885770c3f8be73277e90c4de6409b926f77..9217a021cd6e54fda334f637a0bfbbdbc7ad14b0 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java @@ -2500,5 +2500,20 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi diff --git a/patches/api/0037-Potion-NamespacedKey.patch b/patches/api/0036-Potion-NamespacedKey.patch similarity index 100% rename from patches/api/0037-Potion-NamespacedKey.patch rename to patches/api/0036-Potion-NamespacedKey.patch diff --git a/patches/api/0038-Grindstone-API.patch b/patches/api/0037-Grindstone-API.patch similarity index 100% rename from patches/api/0038-Grindstone-API.patch rename to patches/api/0037-Grindstone-API.patch diff --git a/patches/api/0039-Shears-can-have-looting-enchantment.patch b/patches/api/0038-Shears-can-have-looting-enchantment.patch similarity index 100% rename from patches/api/0039-Shears-can-have-looting-enchantment.patch rename to patches/api/0038-Shears-can-have-looting-enchantment.patch diff --git a/patches/api/0040-Lobotomize-stuck-villagers.patch b/patches/api/0039-Lobotomize-stuck-villagers.patch similarity index 100% rename from patches/api/0040-Lobotomize-stuck-villagers.patch rename to patches/api/0039-Lobotomize-stuck-villagers.patch diff --git a/patches/api/0041-Add-local-difficulty-api.patch b/patches/api/0040-Add-local-difficulty-api.patch similarity index 100% rename from patches/api/0041-Add-local-difficulty-api.patch rename to patches/api/0040-Add-local-difficulty-api.patch diff --git a/patches/api/0042-Remove-Timings.patch b/patches/api/0041-Remove-Timings.patch similarity index 100% rename from patches/api/0042-Remove-Timings.patch rename to patches/api/0041-Remove-Timings.patch diff --git a/patches/api/0043-Add-Bee-API.patch b/patches/api/0042-Add-Bee-API.patch similarity index 100% rename from patches/api/0043-Add-Bee-API.patch rename to patches/api/0042-Add-Bee-API.patch diff --git a/patches/api/0044-Debug-Marker-API.patch b/patches/api/0043-Debug-Marker-API.patch similarity index 100% rename from patches/api/0044-Debug-Marker-API.patch rename to patches/api/0043-Debug-Marker-API.patch diff --git a/patches/api/0045-Add-death-screen-API.patch b/patches/api/0044-Add-death-screen-API.patch similarity index 100% rename from patches/api/0045-Add-death-screen-API.patch rename to patches/api/0044-Add-death-screen-API.patch diff --git a/patches/api/0046-Add-item-packet-serialize-event.patch b/patches/api/0045-Add-item-packet-serialize-event.patch similarity index 100% rename from patches/api/0046-Add-item-packet-serialize-event.patch rename to patches/api/0045-Add-item-packet-serialize-event.patch diff --git a/patches/api/0047-Language-API.patch b/patches/api/0046-Language-API.patch similarity index 100% rename from patches/api/0047-Language-API.patch rename to patches/api/0046-Language-API.patch diff --git a/patches/api/0048-Add-log-suppression-for-LibraryLoader.patch b/patches/api/0047-Add-log-suppression-for-LibraryLoader.patch similarity index 100% rename from patches/api/0048-Add-log-suppression-for-LibraryLoader.patch rename to patches/api/0047-Add-log-suppression-for-LibraryLoader.patch diff --git a/patches/api/0049-Fire-Immunity-API.patch b/patches/api/0048-Fire-Immunity-API.patch similarity index 100% rename from patches/api/0049-Fire-Immunity-API.patch rename to patches/api/0048-Fire-Immunity-API.patch diff --git a/patches/api/0050-Added-goat-ram-event.patch b/patches/api/0049-Added-goat-ram-event.patch similarity index 100% rename from patches/api/0050-Added-goat-ram-event.patch rename to patches/api/0049-Added-goat-ram-event.patch diff --git a/patches/api/0051-Add-PreExplodeEvents.patch b/patches/api/0050-Add-PreExplodeEvents.patch similarity index 100% rename from patches/api/0051-Add-PreExplodeEvents.patch rename to patches/api/0050-Add-PreExplodeEvents.patch diff --git a/patches/api/0052-Stored-Bee-API.patch b/patches/api/0051-Stored-Bee-API.patch similarity index 100% rename from patches/api/0052-Stored-Bee-API.patch rename to patches/api/0051-Stored-Bee-API.patch diff --git a/patches/api/0053-Explorer-Map-API.patch b/patches/api/0052-Explorer-Map-API.patch similarity index 100% rename from patches/api/0053-Explorer-Map-API.patch rename to patches/api/0052-Explorer-Map-API.patch diff --git a/patches/api/0054-Add-hover-lines-API.patch b/patches/api/0053-Add-hover-lines-API.patch similarity index 100% rename from patches/api/0054-Add-hover-lines-API.patch rename to patches/api/0053-Add-hover-lines-API.patch diff --git a/patches/api/0055-Add-LootableInventoryFirstFillEvent.patch b/patches/api/0054-Add-LootableInventoryFirstFillEvent.patch similarity index 100% rename from patches/api/0055-Add-LootableInventoryFirstFillEvent.patch rename to patches/api/0054-Add-LootableInventoryFirstFillEvent.patch diff --git a/patches/api/0055-Adding-PredicateChoice-to-Paper-API.patch b/patches/api/0055-Adding-PredicateChoice-to-Paper-API.patch new file mode 100644 index 0000000000..3f524b7d16 --- /dev/null +++ b/patches/api/0055-Adding-PredicateChoice-to-Paper-API.patch @@ -0,0 +1,78 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: derverdox +Date: Mon, 4 Dec 2023 01:54:38 +0100 +Subject: [PATCH] Adding PredicateChoice to Paper API + + +diff --git a/src/main/java/org/bukkit/inventory/RecipeChoice.java b/src/main/java/org/bukkit/inventory/RecipeChoice.java +index 523818cbb0d6c90481ec97123e7fe0e2ff4eea14..63fa194621b68f3c25567a1acb59d08b0506bdd2 100644 +--- a/src/main/java/org/bukkit/inventory/RecipeChoice.java ++++ b/src/main/java/org/bukkit/inventory/RecipeChoice.java +@@ -233,4 +233,67 @@ public interface RecipeChoice extends Predicate, Cloneable { + return "ExactChoice{" + "choices=" + choices + '}'; + } + } ++ ++ /** ++ * Represents a choice that matches when the item predicate is fulfilled. ++ */ ++ public static class PredicateChoice implements RecipeChoice { ++ private final ItemPredicate itemPredicate; ++ ++ public PredicateChoice(@NotNull ItemPredicate itemPredicate) { ++ Preconditions.checkArgument(itemPredicate != null, "itemPredicate"); ++ Preconditions.checkArgument(!itemPredicate.recipeBookExamples().isEmpty(), "Must have at least one template"); ++ this.itemPredicate = itemPredicate; ++ } ++ ++ @NotNull ++ @Override ++ public final boolean test(final @NotNull ItemStack stack) { ++ return itemPredicate.test(stack); ++ } ++ ++ @Override ++ public @NotNull ItemStack getItemStack() { ++ ItemStack stack = new ItemStack(itemPredicate.recipeBookExamples().get(0)); ++ // For compat ++ if (itemPredicate.recipeBookExamples().size() > 1) { ++ stack.setDurability(Short.MAX_VALUE); ++ } ++ ++ return stack; ++ } ++ ++ @NotNull ++ @Override ++ public PredicateChoice clone() { ++ return new PredicateChoice(new ItemPredicate() { ++ @NotNull ++ @Override ++ public List<@NotNull ItemStack> recipeBookExamples() { ++ return List.copyOf(itemPredicate.recipeBookExamples()); ++ } ++ ++ @Override ++ public boolean test(final @NotNull ItemStack stack) { ++ return itemPredicate.test(stack); ++ } ++ }); ++ } ++ ++ public @NotNull ItemPredicate getItemPredicate() { ++ return itemPredicate; ++ } ++ ++ @Override ++ public boolean equals(final Object o) { ++ if (this == o) return true; ++ if (o == null || getClass() != o.getClass()) return false; ++ PredicateChoice that = (PredicateChoice) o; ++ return Objects.equals(itemPredicate, that.itemPredicate); ++ } ++ ++ public static interface ItemPredicate extends Predicate { ++ List<@NotNull ItemStack> recipeBookExamples(); ++ } ++ } + } diff --git a/patches/server/0093-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch b/patches/server/0093-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch deleted file mode 100644 index c0c6e71ef3..0000000000 --- a/patches/server/0093-Add-predicate-to-recipe-s-ExactChoice-ingredient.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: William Blake Galbreath -Date: Sat, 3 Oct 2020 17:40:52 -0500 -Subject: [PATCH] Add predicate to recipe's ExactChoice ingredient - - -diff --git a/src/main/java/net/minecraft/world/item/crafting/Ingredient.java b/src/main/java/net/minecraft/world/item/crafting/Ingredient.java -index 06fe5b056d78d42cdf78437eeabe1786d596b7f8..3532db21cee82c18f95c540d24b2071585d71c4e 100644 ---- a/src/main/java/net/minecraft/world/item/crafting/Ingredient.java -+++ b/src/main/java/net/minecraft/world/item/crafting/Ingredient.java -@@ -39,6 +39,7 @@ public final class Ingredient implements Predicate { - @Nullable - private IntList stackingIds; - public boolean exact; // CraftBukkit -+ public Predicate predicate; // Purpur - public static final Codec CODEC = Ingredient.codec(true); - public static final Codec CODEC_NONEMPTY = Ingredient.codec(false); - -@@ -70,6 +71,12 @@ public final class Ingredient implements Predicate { - } else if (this.isEmpty()) { - return itemstack.isEmpty(); - } else { -+ // Purpur start -+ if (predicate != null) { -+ return predicate.test(itemstack.asBukkitCopy()); -+ } -+ // Purpur end -+ - ItemStack[] aitemstack = this.getItems(); - int i = aitemstack.length; - -diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java -index 13d25d118eb4d3ef35a4cdfb9bbde9ed83f6c04b..553ecc9b5631ffc0848a798bb3295f16d1722c1f 100644 ---- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java -+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java -@@ -30,6 +30,7 @@ public interface CraftRecipe extends Recipe { - } else if (bukkit instanceof RecipeChoice.ExactChoice) { - stack = new Ingredient(((RecipeChoice.ExactChoice) bukkit).getChoices().stream().map((mat) -> new net.minecraft.world.item.crafting.Ingredient.ItemValue(CraftItemStack.asNMSCopy(mat)))); - stack.exact = true; -+ stack.predicate = ((RecipeChoice.ExactChoice) bukkit).getPredicate(); // Purpur - } else { - throw new IllegalArgumentException("Unknown recipe stack instance " + bukkit); - } diff --git a/patches/server/0094-Flying-squids-Oh-my.patch b/patches/server/0093-Flying-squids-Oh-my.patch similarity index 100% rename from patches/server/0094-Flying-squids-Oh-my.patch rename to patches/server/0093-Flying-squids-Oh-my.patch diff --git a/patches/server/0095-Infinity-bow-settings.patch b/patches/server/0094-Infinity-bow-settings.patch similarity index 97% rename from patches/server/0095-Infinity-bow-settings.patch rename to patches/server/0094-Infinity-bow-settings.patch index 3ce820a59e..e4d138d9da 100644 --- a/patches/server/0095-Infinity-bow-settings.patch +++ b/patches/server/0094-Infinity-bow-settings.patch @@ -27,7 +27,7 @@ index 08d597db1a5345a343777a01427655e6bf2c926b..33df0ca406dc8321b76b393f317bbd1c } else { user.startUsingItem(hand); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a85d4a9c2583f8233032b680c89b147a230bca41..598a9f2dae899513cf10e33c8baad5991597b55c 100644 +index 8af34a04370ebb0b62137387c7eb082443f68c5b..2122658e5f5b6d0d9019f79f6c53717f7094abc0 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -140,6 +140,17 @@ public class PurpurWorldConfig { diff --git a/patches/server/0096-Configurable-daylight-cycle.patch b/patches/server/0095-Configurable-daylight-cycle.patch similarity index 95% rename from patches/server/0096-Configurable-daylight-cycle.patch rename to patches/server/0095-Configurable-daylight-cycle.patch index 18b7454d52..ce14b204ba 100644 --- a/patches/server/0096-Configurable-daylight-cycle.patch +++ b/patches/server/0095-Configurable-daylight-cycle.patch @@ -18,7 +18,7 @@ index 9ec6145fe04ec64bbee8ec6a837719caebdbc6f5..358d610ad020cada1bb83e393deeeaae public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) { this.gameTime = time; diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index c29f8291b43a2e92e3444ab72dd23065a006f11f..cdf770adf641844caf0290a8354046aeb8e00cb3 100644 +index c5a93bb3f0ae907d3abb63f97567ab0e54a25b42..cef1f7169880560a9c79667320e63d552fa4aa03 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1523,7 +1523,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop recipe, NonNullList slots, int count) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 7e8816a3bd9c60844ca0fbb8674abf6c53b4d81c..02aa54fbd0605b92de9263ba852ac04e24b2fdef 100644 +index efc2accce3eada889e919c19724206eab52dd627..e1701bd63540f1672ceb821f0e37d29587847da9 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -409,6 +409,17 @@ public class PurpurWorldConfig { diff --git a/patches/server/0099-Arrows-should-not-reset-despawn-counter.patch b/patches/server/0098-Arrows-should-not-reset-despawn-counter.patch similarity index 91% rename from patches/server/0099-Arrows-should-not-reset-despawn-counter.patch rename to patches/server/0098-Arrows-should-not-reset-despawn-counter.patch index 0b60a66968..aa438992ba 100644 --- a/patches/server/0099-Arrows-should-not-reset-despawn-counter.patch +++ b/patches/server/0098-Arrows-should-not-reset-despawn-counter.patch @@ -7,7 +7,7 @@ This prevents keeping arrows alive indefinitely (such as when the block the arrow is stuck in gets removed, like a piston head going up/down) diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -index 8affdd74769aed9aa92a76ba539cd9d27208827c..9710d1cd31d263b29c80923c56134b1f8f6702b0 100644 +index 6c176933967f6ee98da3026f16a10efe4c3842fe..dbd98ad09ca60507533c9525177deef820257f06 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java @@ -312,7 +312,7 @@ public abstract class AbstractArrow extends Projectile { @@ -20,7 +20,7 @@ index 8affdd74769aed9aa92a76ba539cd9d27208827c..9710d1cd31d263b29c80923c56134b1f @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 02aa54fbd0605b92de9263ba852ac04e24b2fdef..41d694ec386530f97044ff6aa98f4e436cadddd7 100644 +index e1701bd63540f1672ceb821f0e37d29587847da9..c0f3f52068d147ca06dbb87da51d628b56cf51e4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -101,6 +101,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch b/patches/server/0099-Ability-to-re-add-farmland-mechanics-from-Alpha.patch similarity index 95% rename from patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch rename to patches/server/0099-Ability-to-re-add-farmland-mechanics-from-Alpha.patch index 1d51e5a295..5b4f9bc768 100644 --- a/patches/server/0100-Ability-to-re-add-farmland-mechanics-from-Alpha.patch +++ b/patches/server/0099-Ability-to-re-add-farmland-mechanics-from-Alpha.patch @@ -24,7 +24,7 @@ index 1776906e886edd511bfbe96b8a345438a3cd66f8..7efae60a9a9269703a1fa7cd280b5b96 return; } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 41d694ec386530f97044ff6aa98f4e436cadddd7..957fb2554554be7912f434b999a9ddd31681b92a 100644 +index c0f3f52068d147ca06dbb87da51d628b56cf51e4..30cc6cf6911fef48454a213370e4759f6f71e357 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -410,8 +410,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0101-Add-adjustable-breeding-cooldown-to-config.patch b/patches/server/0100-Add-adjustable-breeding-cooldown-to-config.patch similarity index 98% rename from patches/server/0101-Add-adjustable-breeding-cooldown-to-config.patch rename to patches/server/0100-Add-adjustable-breeding-cooldown-to-config.patch index a8262cfebb..2f24662001 100644 --- a/patches/server/0101-Add-adjustable-breeding-cooldown-to-config.patch +++ b/patches/server/0100-Add-adjustable-breeding-cooldown-to-config.patch @@ -104,7 +104,7 @@ index a8a494df6019230f7a301176580db9eb2d552030..80b4d8d1283c03681106853fd83bf6df this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 957fb2554554be7912f434b999a9ddd31681b92a..ff50c24f3a6e2dd0eb5d4e23cc9a38647e2c1194 100644 +index 30cc6cf6911fef48454a213370e4759f6f71e357..7ebc466f72e61e11e73ab20a98f72d16cea7c077 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -115,6 +115,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0102-Make-entity-breeding-times-configurable.patch b/patches/server/0101-Make-entity-breeding-times-configurable.patch similarity index 100% rename from patches/server/0102-Make-entity-breeding-times-configurable.patch rename to patches/server/0101-Make-entity-breeding-times-configurable.patch diff --git a/patches/server/0103-Apply-display-names-from-item-forms-of-entities-to-e.patch b/patches/server/0102-Apply-display-names-from-item-forms-of-entities-to-e.patch similarity index 98% rename from patches/server/0103-Apply-display-names-from-item-forms-of-entities-to-e.patch rename to patches/server/0102-Apply-display-names-from-item-forms-of-entities-to-e.patch index 08750963bd..80ee25f178 100644 --- a/patches/server/0103-Apply-display-names-from-item-forms-of-entities-to-e.patch +++ b/patches/server/0102-Apply-display-names-from-item-forms-of-entities-to-e.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Apply display names from item forms of entities to entities diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java -index 14424afdb708df7f93caf6df45412ec721b5e1dd..a164e13ddfe64b212fc5937b455096287d3151d8 100644 +index 43e562d740b628d5abf961312ea5ce7a23e8ac56..3238e9e8bfff4dc33247d8bf29d408f262e4172e 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java +++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java @@ -619,7 +619,7 @@ public class ArmorStand extends LivingEntity { @@ -136,7 +136,7 @@ index b2ad6d230de2c29f371178bccde1111c7532ee70..6667926519a0f1c151e53f59cce36e74 if (((HangingEntity) object).survives()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 48de43f61f90e2610e04d04803b374cead07f655..6f08b0556b0c8e4d4547ee7982c083972a8e1043 100644 +index 569a09a73c9d800e78a77c430494292457453ab1..82d7028c1fc2ddfbb8bbcee9205375f4807c8e25 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -97,8 +97,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0104-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch b/patches/server/0103-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch similarity index 96% rename from patches/server/0104-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch rename to patches/server/0103-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch index 05866acfb3..5874d723d6 100644 --- a/patches/server/0104-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch +++ b/patches/server/0103-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch @@ -17,7 +17,7 @@ index 2941c16ef486345b57ab2dfcd26f0272285d3b5a..7cc6812bf6f2ba015f65fd1fc1eaac02 ((Mob) newEntityLiving).setPersistenceRequired(); // Paper end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 6f08b0556b0c8e4d4547ee7982c083972a8e1043..28584fe38e7eebf6c4a4e5e84ff064db18067d63 100644 +index 82d7028c1fc2ddfbb8bbcee9205375f4807c8e25..725c942c6c9b26c9fa0b3aeb65f51a34996f72d3 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -98,9 +98,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0105-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch b/patches/server/0104-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch similarity index 92% rename from patches/server/0105-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch rename to patches/server/0104-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch index fb4ad129e5..b803c2a6a0 100644 --- a/patches/server/0105-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch +++ b/patches/server/0104-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch @@ -8,7 +8,7 @@ This should help to reduce the amount of dirt, gravel, grass, and etc. that Endermen like to randomly place all over the world. diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index ebef4f39af4928ed5bd206a82aa0e3992e67db78..aecccc96a1ea7fbd774a4ccbd45c11be1da1b43b 100644 +index 760a26722144da3f547802975484b01c377afe17..c8f1d2de8682761ef8d4d50302c211f32b086783 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java @@ -501,7 +501,7 @@ public class EnderMan extends Monster implements NeutralMob { @@ -21,7 +21,7 @@ index ebef4f39af4928ed5bd206a82aa0e3992e67db78..aecccc96a1ea7fbd774a4ccbd45c11be private static class EndermanFreezeWhenLookedAt extends Goal { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 28584fe38e7eebf6c4a4e5e84ff064db18067d63..da8485add57441b426a526cde2a83fd7d0cd8d22 100644 +index 725c942c6c9b26c9fa0b3aeb65f51a34996f72d3..b2c8ec43768c1a3243bca0998350400d8ea51b89 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -833,6 +833,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0106-Add-configurable-snowball-damage.patch b/patches/server/0105-Add-configurable-snowball-damage.patch similarity index 95% rename from patches/server/0106-Add-configurable-snowball-damage.patch rename to patches/server/0105-Add-configurable-snowball-damage.patch index fc62adeca7..6a739bed79 100644 --- a/patches/server/0106-Add-configurable-snowball-damage.patch +++ b/patches/server/0105-Add-configurable-snowball-damage.patch @@ -18,7 +18,7 @@ index 718e120c9768cf716b32d3d652f53f1dda925168..b90cedad282e95a067aca176fafa9f72 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index da8485add57441b426a526cde2a83fd7d0cd8d22..d6c4a63fad4bf17ea2aa2f0e364ccd99478e5c70 100644 +index b2c8ec43768c1a3243bca0998350400d8ea51b89..06558480c2f3b9b1e81ba48fe7c7a80ea5652599 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -350,6 +350,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch b/patches/server/0106-Changeable-Mob-Left-Handed-Chance.patch similarity index 95% rename from patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch rename to patches/server/0106-Changeable-Mob-Left-Handed-Chance.patch index a78775c650..68518698a8 100644 --- a/patches/server/0107-Changeable-Mob-Left-Handed-Chance.patch +++ b/patches/server/0106-Changeable-Mob-Left-Handed-Chance.patch @@ -18,7 +18,7 @@ index 19688acdd615068b37b928c3608074c5607919ec..dd75a1115d02506f1e99688817cb724b } else { this.setLeftHanded(false); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index d6c4a63fad4bf17ea2aa2f0e364ccd99478e5c70..ed11a1ca61ef0401936cd612e463a2ad4111585f 100644 +index 06558480c2f3b9b1e81ba48fe7c7a80ea5652599..d1792d16fe745c22a2408ca7b6446348563e5b63 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -156,8 +156,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0108-Add-boat-fall-damage-config.patch b/patches/server/0107-Add-boat-fall-damage-config.patch similarity index 94% rename from patches/server/0108-Add-boat-fall-damage-config.patch rename to patches/server/0107-Add-boat-fall-damage-config.patch index 69b7d65be1..c575d802d1 100644 --- a/patches/server/0108-Add-boat-fall-damage-config.patch +++ b/patches/server/0107-Add-boat-fall-damage-config.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add boat fall damage config diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 8b05588b480af39d25bfcb84a5241e9e055c81f8..48337c143a825c2107b9f1c4b086050ad02e553a 100644 +index 4146146d6b79783fe68ed3611c62d5621d53ddcb..f239e64197055df979f01414aa83bc31835168a5 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1109,7 +1109,16 @@ public class ServerPlayer extends Player { @@ -27,7 +27,7 @@ index 8b05588b480af39d25bfcb84a5241e9e055c81f8..48337c143a825c2107b9f1c4b086050a if (!flag && this.spawnInvulnerableTime > 0 && !source.is(DamageTypeTags.BYPASSES_INVULNERABILITY)) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ed11a1ca61ef0401936cd612e463a2ad4111585f..3ecf34286db35cebad22bf09bd1f15d61908a2a1 100644 +index d1792d16fe745c22a2408ca7b6446348563e5b63..68fa6b3492d9ad309f305560afe6f767c9c56fe0 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -112,6 +112,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0109-Snow-Golem-rate-of-fire-config.patch b/patches/server/0108-Snow-Golem-rate-of-fire-config.patch similarity index 100% rename from patches/server/0109-Snow-Golem-rate-of-fire-config.patch rename to patches/server/0108-Snow-Golem-rate-of-fire-config.patch diff --git a/patches/server/0110-EMC-Configurable-disable-give-dropping.patch b/patches/server/0109-EMC-Configurable-disable-give-dropping.patch similarity index 100% rename from patches/server/0110-EMC-Configurable-disable-give-dropping.patch rename to patches/server/0109-EMC-Configurable-disable-give-dropping.patch diff --git a/patches/server/0111-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch b/patches/server/0110-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch similarity index 100% rename from patches/server/0111-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch rename to patches/server/0110-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch diff --git a/patches/server/0112-Toggle-for-Zombified-Piglin-death-always-counting-as.patch b/patches/server/0111-Toggle-for-Zombified-Piglin-death-always-counting-as.patch similarity index 100% rename from patches/server/0112-Toggle-for-Zombified-Piglin-death-always-counting-as.patch rename to patches/server/0111-Toggle-for-Zombified-Piglin-death-always-counting-as.patch diff --git a/patches/server/0113-Configurable-chance-for-wolves-to-spawn-rabid.patch b/patches/server/0112-Configurable-chance-for-wolves-to-spawn-rabid.patch similarity index 100% rename from patches/server/0113-Configurable-chance-for-wolves-to-spawn-rabid.patch rename to patches/server/0112-Configurable-chance-for-wolves-to-spawn-rabid.patch diff --git a/patches/server/0114-Configurable-default-collar-color.patch b/patches/server/0113-Configurable-default-collar-color.patch similarity index 100% rename from patches/server/0114-Configurable-default-collar-color.patch rename to patches/server/0113-Configurable-default-collar-color.patch diff --git a/patches/server/0115-Phantom-flames-on-swoop.patch b/patches/server/0114-Phantom-flames-on-swoop.patch similarity index 95% rename from patches/server/0115-Phantom-flames-on-swoop.patch rename to patches/server/0114-Phantom-flames-on-swoop.patch index 74e54c2018..b9427eaa1c 100644 --- a/patches/server/0115-Phantom-flames-on-swoop.patch +++ b/patches/server/0114-Phantom-flames-on-swoop.patch @@ -17,7 +17,7 @@ index 6849b2ad3b2db840a1af35ef069490506449c861..0f13a3f38760f1117bd545702db7a5b1 @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 96d21c69da492eb6646e3cc71029cbe6208c6406..e7a9a9c1a5261076f810d58a7be137354ac14d1a 100644 +index 9df131e8e3c14aedfafa491b4765dc05f468d01f..6bd5bcebc0d5a080ebc5d711fb7a942576a26f9c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1299,6 +1299,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0116-Option-for-chests-to-open-even-with-a-solid-block-on.patch b/patches/server/0115-Option-for-chests-to-open-even-with-a-solid-block-on.patch similarity index 89% rename from patches/server/0116-Option-for-chests-to-open-even-with-a-solid-block-on.patch rename to patches/server/0115-Option-for-chests-to-open-even-with-a-solid-block-on.patch index b843cf0e69..da970b8272 100644 --- a/patches/server/0116-Option-for-chests-to-open-even-with-a-solid-block-on.patch +++ b/patches/server/0115-Option-for-chests-to-open-even-with-a-solid-block-on.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Option for chests to open even with a solid block on top diff --git a/src/main/java/net/minecraft/world/level/block/ChestBlock.java b/src/main/java/net/minecraft/world/level/block/ChestBlock.java -index 5e22d175b1048a58802cdf64ac70a8b56329e915..d81946b400f208c39941128ce823ff7709741c10 100644 +index af6e245b02d5fb78764d2db0ac200056277b212a..4ee31c5a6053237b15ddb8e3208cdb9a35a0d08d 100644 --- a/src/main/java/net/minecraft/world/level/block/ChestBlock.java +++ b/src/main/java/net/minecraft/world/level/block/ChestBlock.java @@ -355,6 +355,7 @@ public class ChestBlock extends AbstractChestBlock implements @@ -17,7 +17,7 @@ index 5e22d175b1048a58802cdf64ac70a8b56329e915..d81946b400f208c39941128ce823ff77 return world.getBlockState(blockposition1).isRedstoneConductor(world, blockposition1); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index e7a9a9c1a5261076f810d58a7be137354ac14d1a..74a210a911211d38be77a6d00a0c032c14f48aad 100644 +index 6bd5bcebc0d5a080ebc5d711fb7a942576a26f9c..ef40f177856981c16c667c202480591ad1334109 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -419,6 +419,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0117-Implement-TPSBar.patch b/patches/server/0116-Implement-TPSBar.patch similarity index 99% rename from patches/server/0117-Implement-TPSBar.patch rename to patches/server/0116-Implement-TPSBar.patch index 366800ba5e..69eb28ea97 100644 --- a/patches/server/0117-Implement-TPSBar.patch +++ b/patches/server/0116-Implement-TPSBar.patch @@ -29,7 +29,7 @@ index cef1f7169880560a9c79667320e63d552fa4aa03..13b57942eb63b2a9460f96ec59bb9ba3 this.hasLoggedStop = true; // Paper if (isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 6ea42811c1e7ae1b6bf17b7edad921861c7fa2e0..8b647e6f3dd576b1984ad099eb21912e0c193eb7 100644 +index 40527db18b7177d887b65825ac51613097803be8..a4063f19e5371b77e20c36746a4750bdfcc67e5f 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -350,6 +350,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -41,7 +41,7 @@ index 6ea42811c1e7ae1b6bf17b7edad921861c7fa2e0..8b647e6f3dd576b1984ad099eb21912e } } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 8c709fdd4328e83e44bf976ff674db66b10a8ac2..51efe3a87ca54423e8bb8c23d226bf3e23ac8862 100644 +index f239e64197055df979f01414aa83bc31835168a5..dd140c35c197669df2e111a2ac69764c843df663 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -275,6 +275,7 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0118-Striders-give-saddle-back.patch b/patches/server/0117-Striders-give-saddle-back.patch similarity index 100% rename from patches/server/0118-Striders-give-saddle-back.patch rename to patches/server/0117-Striders-give-saddle-back.patch diff --git a/patches/server/0119-PlayerBookTooLargeEvent.patch b/patches/server/0118-PlayerBookTooLargeEvent.patch similarity index 100% rename from patches/server/0119-PlayerBookTooLargeEvent.patch rename to patches/server/0118-PlayerBookTooLargeEvent.patch diff --git a/patches/server/0120-Full-netherite-armor-grants-fire-resistance.patch b/patches/server/0119-Full-netherite-armor-grants-fire-resistance.patch similarity index 94% rename from patches/server/0120-Full-netherite-armor-grants-fire-resistance.patch rename to patches/server/0119-Full-netherite-armor-grants-fire-resistance.patch index 05957c47a4..304b98241d 100644 --- a/patches/server/0120-Full-netherite-armor-grants-fire-resistance.patch +++ b/patches/server/0119-Full-netherite-armor-grants-fire-resistance.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Full netherite armor grants fire resistance diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index dd7e47ddde00e0b4f3b9833c1793246547ba0cf2..a21feaa31c6aa3c7f2198b3b4a84af101aa16988 100644 +index 39f49f8638a84e93de6f9ad31ec61e1deb0e4f14..ba045dfe00af46c11800c1033106247baafca90c 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -367,6 +367,16 @@ public abstract class Player extends LivingEntity { @@ -26,7 +26,7 @@ index dd7e47ddde00e0b4f3b9833c1793246547ba0cf2..a21feaa31c6aa3c7f2198b3b4a84af10 protected ItemCooldowns createItemCooldowns() { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a877974c3b3336ae49da1bcf56b66427d1748c35..be24ad68043d014d23879dfe4730c582a7b81689 100644 +index 810745ee8b2f3dedf50533e31000ed29c2929718..88609510c379d0e7d94f3d821f828ed0313a9fe3 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -295,6 +295,19 @@ public class PurpurWorldConfig { diff --git a/patches/server/0121-Fix-rotating-UP-DOWN-CW-and-CCW.patch b/patches/server/0120-Fix-rotating-UP-DOWN-CW-and-CCW.patch similarity index 100% rename from patches/server/0121-Fix-rotating-UP-DOWN-CW-and-CCW.patch rename to patches/server/0120-Fix-rotating-UP-DOWN-CW-and-CCW.patch diff --git a/patches/server/0122-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0121-Add-mobGriefing-bypass-to-everything-affected.patch similarity index 100% rename from patches/server/0122-Add-mobGriefing-bypass-to-everything-affected.patch rename to patches/server/0121-Add-mobGriefing-bypass-to-everything-affected.patch diff --git a/patches/server/0123-Config-to-allow-Note-Block-sounds-when-blocked.patch b/patches/server/0122-Config-to-allow-Note-Block-sounds-when-blocked.patch similarity index 97% rename from patches/server/0123-Config-to-allow-Note-Block-sounds-when-blocked.patch rename to patches/server/0122-Config-to-allow-Note-Block-sounds-when-blocked.patch index 7d3285485e..f06dd47e31 100644 --- a/patches/server/0123-Config-to-allow-Note-Block-sounds-when-blocked.patch +++ b/patches/server/0122-Config-to-allow-Note-Block-sounds-when-blocked.patch @@ -22,7 +22,7 @@ index e46d84750bdd7c940f400efda226e12a3fdc3848..6343cd0c33cafb30225cfae17ea1cf15 // org.bukkit.event.block.NotePlayEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callNotePlayEvent(world, pos, state.getValue(NoteBlock.INSTRUMENT), state.getValue(NoteBlock.NOTE)); // if (event.isCancelled()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 499595ee7ab97559f562ecfbf4479a6b75506d9d..8c624ac93c3a24bb472217ae89dc8c9c82192407 100644 +index 1ee8dfb7d6efea66293cfd8059b8a84a77999fb2..647b58652a87d1d1b4b022853052ea19afa80152 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -118,6 +118,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0124-Add-EntityTeleportHinderedEvent.patch b/patches/server/0123-Add-EntityTeleportHinderedEvent.patch similarity index 100% rename from patches/server/0124-Add-EntityTeleportHinderedEvent.patch rename to patches/server/0123-Add-EntityTeleportHinderedEvent.patch diff --git a/patches/server/0125-Farmland-trampling-changes.patch b/patches/server/0124-Farmland-trampling-changes.patch similarity index 97% rename from patches/server/0125-Farmland-trampling-changes.patch rename to patches/server/0124-Farmland-trampling-changes.patch index 16a6842c8b..978e5f294d 100644 --- a/patches/server/0125-Farmland-trampling-changes.patch +++ b/patches/server/0124-Farmland-trampling-changes.patch @@ -37,7 +37,7 @@ index e7b5f54d2fc53878e9466ccca972df21f10a7d67..56e66fcd840d0d3681ba671d1ffc51b2 if (!CraftEventFactory.callEntityChangeBlockEvent(entity, pos, Blocks.DIRT.defaultBlockState())) { return; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index d430af5942337e7f19a5085dc9124c9266c137c7..a27a2fb4d9643ed0d2cb4bbad8c09052978e123c 100644 +index 68a3f2be0b4d99041dcdb9e37c0e1dbcb9c1ae87..87daca07c8f22475921fb8ee968e3d5bfbb0a41c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -457,10 +457,16 @@ public class PurpurWorldConfig { diff --git a/patches/server/0126-Movement-options-for-armor-stands.patch b/patches/server/0125-Movement-options-for-armor-stands.patch similarity index 96% rename from patches/server/0126-Movement-options-for-armor-stands.patch rename to patches/server/0125-Movement-options-for-armor-stands.patch index 7d43f24dba..56dac49acd 100644 --- a/patches/server/0126-Movement-options-for-armor-stands.patch +++ b/patches/server/0125-Movement-options-for-armor-stands.patch @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 95fecfaaffe6c7b6a46490518917285ea8551c05..bfd8eb90479bdb1cad6343c04995788b31b3e05c 100644 +index 25ec69f13cb39b5216d52b5da0d9ca77b22e88a6..be1a5e9050e3dbacfe7565fabee075fe41239f1b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1870,7 +1870,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -66,7 +66,7 @@ index 3238e9e8bfff4dc33247d8bf29d408f262e4172e..aa2b21c2f96b096499cf9d8e077a0aed + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a27a2fb4d9643ed0d2cb4bbad8c09052978e123c..4352f37b8568c7e9ce8cce66c2a1b36d6d9f8520 100644 +index 87daca07c8f22475921fb8ee968e3d5bfbb0a41c..08136dfa12437d4d4bf7b5d3d9404db671e6925c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -99,10 +99,16 @@ public class PurpurWorldConfig { diff --git a/patches/server/0127-Fix-stuck-in-portals.patch b/patches/server/0126-Fix-stuck-in-portals.patch similarity index 92% rename from patches/server/0127-Fix-stuck-in-portals.patch rename to patches/server/0126-Fix-stuck-in-portals.patch index 897a9630d9..81dd4f05ae 100644 --- a/patches/server/0127-Fix-stuck-in-portals.patch +++ b/patches/server/0126-Fix-stuck-in-portals.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix stuck in portals diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 51efe3a87ca54423e8bb8c23d226bf3e23ac8862..6ecabc14a4f50086790536b28e68b6ea25b27495 100644 +index dd140c35c197669df2e111a2ac69764c843df663..11c05420a3eb3f94bbac66389d17ca6d03162a97 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1268,6 +1268,7 @@ public class ServerPlayer extends Player { @@ -17,7 +17,7 @@ index 51efe3a87ca54423e8bb8c23d226bf3e23ac8862..6ecabc14a4f50086790536b28e68b6ea // CraftBukkit end this.setServerLevel(worldserver); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index bfd8eb90479bdb1cad6343c04995788b31b3e05c..5790e3f1d5e2c43f401bfd93e85ddee799a6aad2 100644 +index be1a5e9050e3dbacfe7565fabee075fe41239f1b..cb806c8c44174626eb88b30e49c6e6f0f8b31b8e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3096,12 +3096,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -37,7 +37,7 @@ index bfd8eb90479bdb1cad6343c04995788b31b3e05c..5790e3f1d5e2c43f401bfd93e85ddee7 this.isInsidePortal = true; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 4352f37b8568c7e9ce8cce66c2a1b36d6d9f8520..10c019d14fb20835a01c31dc4546d1c70cde6948 100644 +index 08136dfa12437d4d4bf7b5d3d9404db671e6925c..7d576796981ce7b6a292499ed755d86c86bf51db 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -333,6 +333,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0128-Toggle-for-water-sensitive-mob-damage.patch b/patches/server/0127-Toggle-for-water-sensitive-mob-damage.patch similarity index 99% rename from patches/server/0128-Toggle-for-water-sensitive-mob-damage.patch rename to patches/server/0127-Toggle-for-water-sensitive-mob-damage.patch index f66339a288..df7524e673 100644 --- a/patches/server/0128-Toggle-for-water-sensitive-mob-damage.patch +++ b/patches/server/0127-Toggle-for-water-sensitive-mob-damage.patch @@ -935,7 +935,7 @@ index 3870314f5d45ed1908b45ed08ff7932da66a0bad..38fc8668f3c9da15d97f2dd15bc3fad0 public boolean dismountsUnderwater() { return level().purpurConfig.useDismountsUnderwaterTag ? super.dismountsUnderwater() : !level().purpurConfig.slimeRidableInWater; diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java -index 52fa3d5426bb44cc9b9c0ebfd9c9d3b1adbc17a4..c3caf3afa377474fe0a7d1f37ebee94ee5bb0e84 100644 +index f8e842327375497416783aef486e6960653b0184..0f41e7127ece3c60500ab3cbb2e5bbc9c0bf013b 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Spider.java +++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java @@ -75,6 +75,11 @@ public class Spider extends Monster { diff --git a/patches/server/0129-Config-to-always-tame-in-Creative.patch b/patches/server/0128-Config-to-always-tame-in-Creative.patch similarity index 98% rename from patches/server/0129-Config-to-always-tame-in-Creative.patch rename to patches/server/0128-Config-to-always-tame-in-Creative.patch index e3736e49f8..78dd155359 100644 --- a/patches/server/0129-Config-to-always-tame-in-Creative.patch +++ b/patches/server/0128-Config-to-always-tame-in-Creative.patch @@ -59,7 +59,7 @@ index f79dff635b09300f8d2cff0562f71587496ed33d..6b51886e383992f35e0313bd9cc01235 this.navigation.stop(); this.setTarget((LivingEntity) null); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 8c16a4920f484fb0dfd58daf7d3ec87c1eec6135..9a358b9fef97017d019a1779254221ff66ea0c9f 100644 +index e8d642f0bffb2a12b91b125d3f0536d76fd285e9..bab096e2c073510f4e91ab34c4555fad966b7141 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -117,6 +117,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0130-End-crystal-explosion-options.patch b/patches/server/0129-End-crystal-explosion-options.patch similarity index 98% rename from patches/server/0130-End-crystal-explosion-options.patch rename to patches/server/0129-End-crystal-explosion-options.patch index 98924d0a0c..9be626ee72 100644 --- a/patches/server/0130-End-crystal-explosion-options.patch +++ b/patches/server/0129-End-crystal-explosion-options.patch @@ -53,7 +53,7 @@ index ef0098e46bda8abc456f2bb5929d874c6aeb8698..564d17bc460e2a04947ff9676fbf4c8b this.onDestroyedBy(source); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 9a358b9fef97017d019a1779254221ff66ea0c9f..af6ef0660e5d0a6c5c2033105ee29328dd06418a 100644 +index bab096e2c073510f4e91ab34c4555fad966b7141..f7ca9e256524e1b080631d7cda5ed80edeeaf73b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -464,6 +464,43 @@ public class PurpurWorldConfig { diff --git a/patches/server/0131-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch b/patches/server/0130-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch similarity index 100% rename from patches/server/0131-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch rename to patches/server/0130-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch diff --git a/patches/server/0132-Dont-run-with-scissors.patch b/patches/server/0131-Dont-run-with-scissors.patch similarity index 98% rename from patches/server/0132-Dont-run-with-scissors.patch rename to patches/server/0131-Dont-run-with-scissors.patch index afc7c1e784..15ffb11aba 100644 --- a/patches/server/0132-Dont-run-with-scissors.patch +++ b/patches/server/0131-Dont-run-with-scissors.patch @@ -107,7 +107,7 @@ index 61e3bce901bdbf111ffc06521b0e6d5369fce051..ea9d99990b718beaef4bee3ff7534065 public static String serverModName = "Purpur"; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 55941d33fd619db4f25e29d51b1bc8a522bb29ba..651448bc3b84686b675349f0e72c699ce506ab82 100644 +index 1af0f19760426f108d32d202b087323d0ef60845..9bd8d873933c4441d5055ea49239623d0fb480b1 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -197,6 +197,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0133-One-Punch-Man.patch b/patches/server/0132-One-Punch-Man.patch similarity index 100% rename from patches/server/0133-One-Punch-Man.patch rename to patches/server/0132-One-Punch-Man.patch diff --git a/patches/server/0134-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch b/patches/server/0133-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch similarity index 96% rename from patches/server/0134-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch rename to patches/server/0133-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch index 0e0fbdefc9..9da2269d32 100644 --- a/patches/server/0134-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch +++ b/patches/server/0133-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch @@ -8,7 +8,7 @@ Subject: [PATCH] Configurable Ender Pearl cooldown, damage, and Endermite RNG - Endermite spawn chance diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java -index e02d5dcbf69bd68b2f567c1a16a44ab59955f871..daf6701b20d03090ab4896e0c1897850300a2fea 100644 +index f5db60cbecbe69941873e064315931089fe0e48a..dd2999850b68dc899da2b9d2a004e7bfba0fd516 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java +++ b/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java @@ -67,7 +67,7 @@ public class ThrownEnderpearl extends ThrowableItemProjectile { @@ -43,7 +43,7 @@ index 749ab72edc0d2e9c6f1161415ab8d59d3d6ca976..897c202c0905040072a06fdfa2032a7f // Paper end if (user instanceof net.minecraft.server.level.ServerPlayer) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 50d10795981069b031170ef0de3a50603541f1c8..c09528388118f2386de3de14b8c1cb8896ebf556 100644 +index a58369d384604e37906cc0d15aad40a9e44019da..c4c1e27efbc121f120f68a554cd5bf37443923e1 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -201,6 +201,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0135-Config-to-ignore-nearby-mobs-when-sleeping.patch b/patches/server/0134-Config-to-ignore-nearby-mobs-when-sleeping.patch similarity index 92% rename from patches/server/0135-Config-to-ignore-nearby-mobs-when-sleeping.patch rename to patches/server/0134-Config-to-ignore-nearby-mobs-when-sleeping.patch index fad7952472..c89568d4b7 100644 --- a/patches/server/0135-Config-to-ignore-nearby-mobs-when-sleeping.patch +++ b/patches/server/0134-Config-to-ignore-nearby-mobs-when-sleeping.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Config to ignore nearby mobs when sleeping diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 4c68d45f481d97d9fba7ac2eee44ca9c9261591e..b5de1fc5d352de4ba978cb718e57a913431a7c9a 100644 +index 11c05420a3eb3f94bbac66389d17ca6d03162a97..19064b1dbb13e671f0faf67c5efdfd08891c0f5c 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1425,7 +1425,7 @@ public class ServerPlayer extends Player { @@ -18,7 +18,7 @@ index 4c68d45f481d97d9fba7ac2eee44ca9c9261591e..b5de1fc5d352de4ba978cb718e57a913 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c09528388118f2386de3de14b8c1cb8896ebf556..33db128ff2046a7a36eb5d70b35d10947f83a931 100644 +index c4c1e27efbc121f120f68a554cd5bf37443923e1..f2dc663616d7c78cf448ab3e3e8758e1e6716d2b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -353,6 +353,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0136-Add-back-player-spawned-endermite-API.patch b/patches/server/0135-Add-back-player-spawned-endermite-API.patch similarity index 97% rename from patches/server/0136-Add-back-player-spawned-endermite-API.patch rename to patches/server/0135-Add-back-player-spawned-endermite-API.patch index 4c423c0cae..fe61908d8c 100644 --- a/patches/server/0136-Add-back-player-spawned-endermite-API.patch +++ b/patches/server/0135-Add-back-player-spawned-endermite-API.patch @@ -47,7 +47,7 @@ index 936add0eb7204af7dc507c786cb82e0d7a76d5dc..c0c3ab5dbf5987e543e6cdd1a814d2ec @Override diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java -index daf6701b20d03090ab4896e0c1897850300a2fea..fb0f29b714344f0ac3e7f6bd809ac57a21061156 100644 +index dd2999850b68dc899da2b9d2a004e7bfba0fd516..2728eaaf0a9b761d932bd22639ef4e1ccc428482 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java +++ b/src/main/java/net/minecraft/world/entity/projectile/ThrownEnderpearl.java @@ -71,6 +71,7 @@ public class ThrownEnderpearl extends ThrowableItemProjectile { diff --git a/patches/server/0137-Config-Enderman-aggressiveness-towards-Endermites.patch b/patches/server/0136-Config-Enderman-aggressiveness-towards-Endermites.patch similarity index 94% rename from patches/server/0137-Config-Enderman-aggressiveness-towards-Endermites.patch rename to patches/server/0136-Config-Enderman-aggressiveness-towards-Endermites.patch index 52cc9b418a..c3a9201ece 100644 --- a/patches/server/0137-Config-Enderman-aggressiveness-towards-Endermites.patch +++ b/patches/server/0136-Config-Enderman-aggressiveness-towards-Endermites.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Config Enderman aggressiveness towards Endermites diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index 4fe5b9babd51a2123a76384c2fd9ec0147cac785..787d57f18568b8c2fd4694fc29492345dbe43564 100644 +index 013fd016d384f1bf94b875bc71139e0ea4e12d21..cf9eb1ac36a5c9d3c73b981e1649bb23c7bfaf39 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java @@ -134,7 +134,7 @@ public class EnderMan extends Monster implements NeutralMob { @@ -18,7 +18,7 @@ index 4fe5b9babd51a2123a76384c2fd9ec0147cac785..787d57f18568b8c2fd4694fc29492345 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 33db128ff2046a7a36eb5d70b35d10947f83a931..fd7d88ed631d4b4675ce457f4e2de731223254aa 100644 +index f2dc663616d7c78cf448ab3e3e8758e1e6716d2b..f64597083c7505d27b57a0fb31d52ee347151e8a 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -997,6 +997,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0138-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch b/patches/server/0137-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch similarity index 93% rename from patches/server/0138-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch rename to patches/server/0137-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch index f252c2fbbf..4a11dbbb07 100644 --- a/patches/server/0138-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch +++ b/patches/server/0137-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch @@ -7,7 +7,7 @@ Prevents Enderman from becoming aggresive towards players that are wearing a Dra Adds functionality to a useless item! diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index 787d57f18568b8c2fd4694fc29492345dbe43564..db05006ca159a91165a7392cb57d0905e3732fe1 100644 +index cf9eb1ac36a5c9d3c73b981e1649bb23c7bfaf39..ca0269c2977b07cf77f7e0e1faa4cb16008ac74d 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java @@ -271,7 +271,7 @@ public class EnderMan extends Monster implements NeutralMob { @@ -20,7 +20,7 @@ index 787d57f18568b8c2fd4694fc29492345dbe43564..db05006ca159a91165a7392cb57d0905 } else { Vec3 vec3d = player.getViewVector(1.0F).normalize(); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index fd7d88ed631d4b4675ce457f4e2de731223254aa..de246177d3fd248f0d926321b8696b1d13c507ed 100644 +index f64597083c7505d27b57a0fb31d52ee347151e8a..59a46ebdf7c96d388251ad87b8420088729e94fe 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -999,6 +999,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0139-Tick-fluids-config.patch b/patches/server/0138-Tick-fluids-config.patch similarity index 97% rename from patches/server/0139-Tick-fluids-config.patch rename to patches/server/0138-Tick-fluids-config.patch index 431b1e9275..8c82345fc1 100644 --- a/patches/server/0139-Tick-fluids-config.patch +++ b/patches/server/0138-Tick-fluids-config.patch @@ -36,7 +36,7 @@ index 4a1830f85f47014da63e4584f411d13f0f0cd8b3..17b3dbb83fd9eb6ecdd58c1ac6446410 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index de246177d3fd248f0d926321b8696b1d13c507ed..1e3825e70f7e9baeb76d520d945d51369457377f 100644 +index 59a46ebdf7c96d388251ad87b8420088729e94fe..90ee419cc60748233ac8b8903ca154182bfe727d 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -129,6 +129,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0140-Config-to-disable-Llama-caravans.patch b/patches/server/0139-Config-to-disable-Llama-caravans.patch similarity index 94% rename from patches/server/0140-Config-to-disable-Llama-caravans.patch rename to patches/server/0139-Config-to-disable-Llama-caravans.patch index 8b967f7ffd..9ef0233af7 100644 --- a/patches/server/0140-Config-to-disable-Llama-caravans.patch +++ b/patches/server/0139-Config-to-disable-Llama-caravans.patch @@ -19,7 +19,7 @@ index 849f0c7c6d13df00d90211a48d8b56ab156812b8..3fc9528201fb96d6a0f905afe0b6a82e List list = this.llama.level().getEntities(this.llama, this.llama.getBoundingBox().inflate(9.0D, 4.0D, 9.0D), (entity) -> { EntityType entityType = entity.getType(); diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java -index d0717a81ae7b3c55fb47917508b456408484658b..fb6bca763fcbb249c86c1e360274d4458df19bfc 100644 +index 58175824dc315134b03b9dabfcae04e192af0b86..8d57bf9bbd1f61e6f1509c8b5cf01756ef145571 100644 --- a/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java +++ b/src/main/java/net/minecraft/world/entity/animal/horse/Llama.java @@ -519,7 +519,7 @@ public class Llama extends AbstractChestedHorse implements VariantHolder transaction = new java.util.ArrayList(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6ab05085b4ba01ae1d6e4decc38cff56a571e20b..dd6d5ed8beb6d090c2aaafc540fa857a4815558f 100644 +index f6023e7f52c9f56d3561b13e673afdefae86226f..85546e81f90676df985de1ba6d6aa066aef4762a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1540,6 +1540,19 @@ public final class CraftServer implements Server { diff --git a/patches/server/0211-Option-for-if-rain-and-thunder-should-stop-on-sleep.patch b/patches/server/0210-Option-for-if-rain-and-thunder-should-stop-on-sleep.patch similarity index 94% rename from patches/server/0211-Option-for-if-rain-and-thunder-should-stop-on-sleep.patch rename to patches/server/0210-Option-for-if-rain-and-thunder-should-stop-on-sleep.patch index 5d2e91e3a5..53d7d247ec 100644 --- a/patches/server/0211-Option-for-if-rain-and-thunder-should-stop-on-sleep.patch +++ b/patches/server/0210-Option-for-if-rain-and-thunder-should-stop-on-sleep.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Option for if rain and thunder should stop on sleep diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index f7d9398c9a73c8a02a2515b9d43b49433e5f883c..492a50f3b619753f8a353c739a3f10c44dfa7861 100644 +index 331985ee26b9491b7ff71c6a104fafd08f983554..0317c93e6d7d7e2b7f9b3ec8c218dce6b24823f2 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1378,6 +1378,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -25,7 +25,7 @@ index f7d9398c9a73c8a02a2515b9d43b49433e5f883c..492a50f3b619753f8a353c739a3f10c4 // CraftBukkit start // If we stop due to everyone sleeping we should reset the weather duration to some other random value. diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a8cddd10832e6be2704569b6c1fb995bd9caf0b9..1da30e052c08c27370755cae3e1890a397a2f323 100644 +index 0a60ca69e4e94356ec569ea9168c5da8030597e8..f37d59656a55159a1bf0c62012b0cd223ad6577d 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -139,6 +139,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0212-Chance-for-azalea-blocks-to-grow-into-trees-naturall.patch b/patches/server/0211-Chance-for-azalea-blocks-to-grow-into-trees-naturall.patch similarity index 98% rename from patches/server/0212-Chance-for-azalea-blocks-to-grow-into-trees-naturall.patch rename to patches/server/0211-Chance-for-azalea-blocks-to-grow-into-trees-naturall.patch index abbd59590a..28cae48b1a 100644 --- a/patches/server/0212-Chance-for-azalea-blocks-to-grow-into-trees-naturall.patch +++ b/patches/server/0211-Chance-for-azalea-blocks-to-grow-into-trees-naturall.patch @@ -45,7 +45,7 @@ index b49e02ac7b3db9a5b79ce3f106ead19af4e7cfa6..6425bc42bb8024aa7936b841d6c2ee2c public static final Block PINK_PETALS = register("pink_petals", new PinkPetalsBlock(BlockBehaviour.Properties.of().mapColor(MapColor.PLANT).noCollission().sound(SoundType.PINK_PETALS).pushReaction(PushReaction.DESTROY))); public static final Block MOSS_BLOCK = register("moss_block", new MossBlock(BlockBehaviour.Properties.of().mapColor(MapColor.COLOR_GREEN).strength(0.1F).sound(SoundType.MOSS).pushReaction(PushReaction.DESTROY))); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1da30e052c08c27370755cae3e1890a397a2f323..a3a5decf6586569c347d36f4416cf3cb3b0bef78 100644 +index f37d59656a55159a1bf0c62012b0cd223ad6577d..e3c83c9cd122fb4917f1292d3623a5a902562579 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -735,6 +735,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch b/patches/server/0212-Shift-right-click-to-use-exp-for-mending.patch similarity index 98% rename from patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch rename to patches/server/0212-Shift-right-click-to-use-exp-for-mending.patch index a5ff82e2ac..757f4c6861 100644 --- a/patches/server/0213-Shift-right-click-to-use-exp-for-mending.patch +++ b/patches/server/0212-Shift-right-click-to-use-exp-for-mending.patch @@ -48,7 +48,7 @@ index a541c642ef5132ec41dedac770fd31d96401806c..2152abc4ea04515a688af1dca8174f96 cancelled = event.useItemInHand() == Event.Result.DENY; } else { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a3a5decf6586569c347d36f4416cf3cb3b0bef78..8e658c5e81b85fa4fa36b9e18a02bd0634e42554 100644 +index e3c83c9cd122fb4917f1292d3623a5a902562579..1147ae92fb688d57cf4e831bd43be203064a0e88 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -413,6 +413,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0214-Dolphins-naturally-aggressive-to-players-chance.patch b/patches/server/0213-Dolphins-naturally-aggressive-to-players-chance.patch similarity index 96% rename from patches/server/0214-Dolphins-naturally-aggressive-to-players-chance.patch rename to patches/server/0213-Dolphins-naturally-aggressive-to-players-chance.patch index ec76f54a5b..dc0349dddf 100644 --- a/patches/server/0214-Dolphins-naturally-aggressive-to-players-chance.patch +++ b/patches/server/0213-Dolphins-naturally-aggressive-to-players-chance.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Dolphins naturally aggressive to players chance diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java -index 77746eeffdc612793a6c907f222753bce5cd0ed4..b6342637f1b42b6368dcda17eea4b39a22ec3b79 100644 +index 5533b667b983fe6f2375ca8f21c8580dc373628a..9a1e9a69adf97ab92d9df817716750b7da6e6742 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java +++ b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java @@ -82,6 +82,7 @@ public class Dolphin extends WaterAnimal { @@ -48,7 +48,7 @@ index 77746eeffdc612793a6c907f222753bce5cd0ed4..b6342637f1b42b6368dcda17eea4b39a public static AttributeSupplier.Builder createAttributes() { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 8e658c5e81b85fa4fa36b9e18a02bd0634e42554..c146356aa04126f2cd74aabf50c1436fa111aa6a 100644 +index 1147ae92fb688d57cf4e831bd43be203064a0e88..21d8dd0eb5b5f7cef2aadf478166219e8c6b5f4f 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1277,6 +1277,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0215-Cows-naturally-aggressive-to-players-chance.patch b/patches/server/0214-Cows-naturally-aggressive-to-players-chance.patch similarity index 98% rename from patches/server/0215-Cows-naturally-aggressive-to-players-chance.patch rename to patches/server/0214-Cows-naturally-aggressive-to-players-chance.patch index 054fdd9236..c1baede1f1 100644 --- a/patches/server/0215-Cows-naturally-aggressive-to-players-chance.patch +++ b/patches/server/0214-Cows-naturally-aggressive-to-players-chance.patch @@ -57,7 +57,7 @@ index f76b0d92150fd985a8fc699f6f884527d589dfd3..3c12e179861b5514e081d0db1664f717 @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c146356aa04126f2cd74aabf50c1436fa111aa6a..e752c2050b696a0f1db12c5301fbe940488d87d1 100644 +index 21d8dd0eb5b5f7cef2aadf478166219e8c6b5f4f..6cf90c458d6c772cb6a99011f80ad4819fef67fe 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1226,7 +1226,14 @@ public class PurpurWorldConfig { diff --git a/patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch b/patches/server/0215-Option-for-beds-to-explode-on-villager-sleep.patch similarity index 96% rename from patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch rename to patches/server/0215-Option-for-beds-to-explode-on-villager-sleep.patch index cb62f99ceb..1f1456bc51 100644 --- a/patches/server/0216-Option-for-beds-to-explode-on-villager-sleep.patch +++ b/patches/server/0215-Option-for-beds-to-explode-on-villager-sleep.patch @@ -22,7 +22,7 @@ index 28d940393f387387fa0a2b0dea8de24324e2e55e..6146f3e52eb1d8f47b5a41eff634d2c7 this.brain.setMemory(MemoryModuleType.LAST_SLEPT, this.level().getGameTime()); // CraftBukkit - decompile error this.brain.eraseMemory(MemoryModuleType.WALK_TARGET); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index e752c2050b696a0f1db12c5301fbe940488d87d1..dae834b637164fabea2b17d2d752a04df31ee88a 100644 +index 6cf90c458d6c772cb6a99011f80ad4819fef67fe..8cd9c31975dd79335e962992404335a1058b19b4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -754,6 +754,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0217-Halloween-options-and-optimizations.patch b/patches/server/0216-Halloween-options-and-optimizations.patch similarity index 96% rename from patches/server/0217-Halloween-options-and-optimizations.patch rename to patches/server/0216-Halloween-options-and-optimizations.patch index 4df7eb1788..f9d6af2fee 100644 --- a/patches/server/0217-Halloween-options-and-optimizations.patch +++ b/patches/server/0216-Halloween-options-and-optimizations.patch @@ -43,7 +43,7 @@ index f35637a105d5aa12fb57c2456f2b2a7db12a49f0..f3e1fa62d9f067c0fe8aacb88bf30b01 this.armorDropChances[EquipmentSlot.HEAD.getIndex()] = 0.0F; } diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java -index 15baaf9c358019b1ce2152086e8d16591eec7dbb..79f791188a14a319a19b55674c891384fcb750c9 100644 +index fab8e4ffa083e3d436fd4d6d19cf8ea8a7b5a6a6..c95d76c696d9ee39e284e7798bf624d339c98799 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java +++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java @@ -586,11 +586,7 @@ public class Zombie extends Monster { @@ -60,7 +60,7 @@ index 15baaf9c358019b1ce2152086e8d16591eec7dbb..79f791188a14a319a19b55674c891384 this.armorDropChances[EquipmentSlot.HEAD.getIndex()] = 0.0F; } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index dae834b637164fabea2b17d2d752a04df31ee88a..9f3fe0265904da5a4be55fd3bc0ed1d283d241a9 100644 +index 8cd9c31975dd79335e962992404335a1058b19b4..0cba11e41c6fee975316f10e02e7c61ea37de90f 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1619,6 +1619,13 @@ public class PurpurWorldConfig { diff --git a/patches/server/0218-Config-for-grindstones.patch b/patches/server/0217-Config-for-grindstones.patch similarity index 98% rename from patches/server/0218-Config-for-grindstones.patch rename to patches/server/0217-Config-for-grindstones.patch index 65da4266df..39bb5e3d8c 100644 --- a/patches/server/0218-Config-for-grindstones.patch +++ b/patches/server/0217-Config-for-grindstones.patch @@ -5,7 +5,7 @@ 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 a21eadcdfbdc4be803c5793bc97996db3e706071..132a07e226ae3ac6b5abc6f53c62345e2ab2f31f 100644 +index 076c2b2938c9b88b7e71dbc2aa9d8c7e90d4fe75..c79e87fde9de55dbfe8c3deaf725e2a73dc2af38 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 { diff --git a/patches/server/0219-UPnP-Port-Forwarding.patch b/patches/server/0218-UPnP-Port-Forwarding.patch similarity index 95% rename from patches/server/0219-UPnP-Port-Forwarding.patch rename to patches/server/0218-UPnP-Port-Forwarding.patch index a6ed332a2b..aa5dcd520f 100644 --- a/patches/server/0219-UPnP-Port-Forwarding.patch +++ b/patches/server/0218-UPnP-Port-Forwarding.patch @@ -5,7 +5,7 @@ Subject: [PATCH] UPnP Port Forwarding diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 615de0c4baf7797d03c43e5e164b198ebb70b341..ef25e6f4a36e98279061a8f066b37be956b92d49 100644 +index 95a10bd371bdc68456b1e9eb94589c41e11586ff..5d8f661cba43ecf193b0aa5f1c9edb74d4d0ffbb 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -303,6 +303,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop(this, Zombie.class, 8.0F, 0.5D, 0.5D)); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1a8a1a9bca5c2f92b87fb1a21bdff194718caa8e..1bec2760e6ae3022dbcef1bb40d7749cf3b0609e 100644 +index 87852157252629ae00ffe34ba654028c3a530f66..e53ad703b9b3b92ec8594b3921589985599dd632 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -128,6 +128,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0283-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch b/patches/server/0282-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch similarity index 100% rename from patches/server/0283-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch rename to patches/server/0282-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch diff --git a/patches/server/0284-Add-log-suppression-for-LibraryLoader.patch b/patches/server/0283-Add-log-suppression-for-LibraryLoader.patch similarity index 100% rename from patches/server/0284-Add-log-suppression-for-LibraryLoader.patch rename to patches/server/0283-Add-log-suppression-for-LibraryLoader.patch diff --git a/patches/server/0285-Add-option-to-allow-creeper-to-encircle-target-when-.patch b/patches/server/0284-Add-option-to-allow-creeper-to-encircle-target-when-.patch similarity index 96% rename from patches/server/0285-Add-option-to-allow-creeper-to-encircle-target-when-.patch rename to patches/server/0284-Add-option-to-allow-creeper-to-encircle-target-when-.patch index 4655518aec..8c8ad574f1 100644 --- a/patches/server/0285-Add-option-to-allow-creeper-to-encircle-target-when-.patch +++ b/patches/server/0284-Add-option-to-allow-creeper-to-encircle-target-when-.patch @@ -24,7 +24,7 @@ index e241ae250f4f04a17ef2c583d00b065a4ca56a4c..7b99c3446b50939241d3e220d93e0564 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1bec2760e6ae3022dbcef1bb40d7749cf3b0609e..c04befc0e4d97497087bc8961daefe814e199a84 100644 +index e53ad703b9b3b92ec8594b3921589985599dd632..a2a5d054fa0b91dcf7e951905444ab07afde2073 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1357,6 +1357,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0286-Fire-Immunity-API.patch b/patches/server/0285-Fire-Immunity-API.patch similarity index 95% rename from patches/server/0286-Fire-Immunity-API.patch rename to patches/server/0285-Fire-Immunity-API.patch index 8e400970fb..453b091a65 100644 --- a/patches/server/0286-Fire-Immunity-API.patch +++ b/patches/server/0285-Fire-Immunity-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fire Immunity API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5d46d35db653d58ccb850794282e8613b33e2393..1b58e4c4919d6e697533dd2f29f7c91ff5074987 100644 +index 4254946d3f993478e44a8dda18d8a4e612ca8dad..f72558c619fcc2fd6a0181170c39621af69ca3ef 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -418,6 +418,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -50,7 +50,7 @@ index 5d46d35db653d58ccb850794282e8613b33e2393..1b58e4c4919d6e697533dd2f29f7c91f } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 38ff078ae636218d157d4c885fca19be5666b52a..a18bc175d0a6d55492edd02cdc407a52d58346c1 100644 +index 7ca35289068dbece3f9f19384fe202fc844eceea..aa8efff39ca3b2c2ed69a19f1872a295b7103c6b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -223,6 +223,16 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch b/patches/server/0286-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch similarity index 93% rename from patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch rename to patches/server/0286-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch index 1f4e956145..5d971fba31 100644 --- a/patches/server/0287-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch +++ b/patches/server/0286-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add option to teleport to spawn on nether ceiling damage diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 1b58e4c4919d6e697533dd2f29f7c91ff5074987..d61d7ae47285d9779221011212f871c4ef7de830 100644 +index f72558c619fcc2fd6a0181170c39621af69ca3ef..c53f071d183fb7e13f7d7c4e5c82589b33bd7147 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -917,6 +917,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -17,7 +17,7 @@ index 1b58e4c4919d6e697533dd2f29f7c91ff5074987..d61d7ae47285d9779221011212f871c4 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c04befc0e4d97497087bc8961daefe814e199a84..443871290764e6863509acd0847f8c4c8f8566b6 100644 +index a2a5d054fa0b91dcf7e951905444ab07afde2073..22440350524b7637269b836bfccb6455a5873650 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -417,6 +417,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0288-Added-got-ram-event.patch b/patches/server/0287-Added-got-ram-event.patch similarity index 100% rename from patches/server/0288-Added-got-ram-event.patch rename to patches/server/0287-Added-got-ram-event.patch diff --git a/patches/server/0289-Log-skipped-entity-s-position.patch b/patches/server/0288-Log-skipped-entity-s-position.patch similarity index 100% rename from patches/server/0289-Log-skipped-entity-s-position.patch rename to patches/server/0288-Log-skipped-entity-s-position.patch diff --git a/patches/server/0290-End-Crystal-Cramming.patch b/patches/server/0289-End-Crystal-Cramming.patch similarity index 96% rename from patches/server/0290-End-Crystal-Cramming.patch rename to patches/server/0289-End-Crystal-Cramming.patch index fc73557186..bb9af19766 100644 --- a/patches/server/0290-End-Crystal-Cramming.patch +++ b/patches/server/0289-End-Crystal-Cramming.patch @@ -17,7 +17,7 @@ index 564d17bc460e2a04947ff9676fbf4c8b1569659c..440add62fcfa62d483409e1aecfc9159 // Purpur start diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 443871290764e6863509acd0847f8c4c8f8566b6..829f3a7542460ef71bd934ff3dea0321168a9fac 100644 +index 22440350524b7637269b836bfccb6455a5873650..6fe53ae74629a74149fc9fecc088cc77b16e6965 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -877,6 +877,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0291-Option-to-allow-beacon-effects-when-covered-by-tinte.patch b/patches/server/0290-Option-to-allow-beacon-effects-when-covered-by-tinte.patch similarity index 97% rename from patches/server/0291-Option-to-allow-beacon-effects-when-covered-by-tinte.patch rename to patches/server/0290-Option-to-allow-beacon-effects-when-covered-by-tinte.patch index 2ff083b986..692999ea09 100644 --- a/patches/server/0291-Option-to-allow-beacon-effects-when-covered-by-tinte.patch +++ b/patches/server/0290-Option-to-allow-beacon-effects-when-covered-by-tinte.patch @@ -36,7 +36,7 @@ index a5f9747be5503dd24abd98f11cfa8229448ca3bf..99ef8d7e3ee0ee9777d12ad825e728c3 BeaconBlockEntity.playSound(world, pos, SoundEvents.BEACON_AMBIENT); } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 829f3a7542460ef71bd934ff3dea0321168a9fac..78e8043f85f65e81db0d4192fbe93df952849490 100644 +index 6fe53ae74629a74149fc9fecc088cc77b16e6965..513e63fe366e511a7f02105bc249a4013d7bbf29 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -776,11 +776,13 @@ public class PurpurWorldConfig { diff --git a/patches/server/0292-Add-attribute-clamping-and-armor-limit-config.patch b/patches/server/0291-Add-attribute-clamping-and-armor-limit-config.patch similarity index 100% rename from patches/server/0292-Add-attribute-clamping-and-armor-limit-config.patch rename to patches/server/0291-Add-attribute-clamping-and-armor-limit-config.patch diff --git a/patches/server/0293-Config-to-remove-explosion-radius-clamp.patch b/patches/server/0292-Config-to-remove-explosion-radius-clamp.patch similarity index 93% rename from patches/server/0293-Config-to-remove-explosion-radius-clamp.patch rename to patches/server/0292-Config-to-remove-explosion-radius-clamp.patch index d9f022418e..d741889c7b 100644 --- a/patches/server/0293-Config-to-remove-explosion-radius-clamp.patch +++ b/patches/server/0292-Config-to-remove-explosion-radius-clamp.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Config to remove explosion radius clamp diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java -index 82d81fd2edff9df0bb4ff116d9274887a316d0a8..823f0e36119079eb827767c08391f18d75b66610 100644 +index d706a20583d24fbd739a680538ba3324b4200d94..7f3c914358a3d623b07dbb69abc23e1341f0e58a 100644 --- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java +++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java @@ -111,6 +111,7 @@ public class EnderDragon extends Mob implements Enemy { @@ -39,7 +39,7 @@ index b26cea981a876fd42c9ab91923d507b3c11a0425..b6c8f19a7d919fc56deb3518a28d725e } // CraftBukkit end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 78e8043f85f65e81db0d4192fbe93df952849490..ba7fa9386b494c38e44717529f20c9341e26d9c2 100644 +index 513e63fe366e511a7f02105bc249a4013d7bbf29..09df9bcfe623de49914d6bed1d55285597631185 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -213,6 +213,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0294-bonemealable-sugarcane-cactus-and-netherwart.patch b/patches/server/0293-bonemealable-sugarcane-cactus-and-netherwart.patch similarity index 98% rename from patches/server/0294-bonemealable-sugarcane-cactus-and-netherwart.patch rename to patches/server/0293-bonemealable-sugarcane-cactus-and-netherwart.patch index 8da96d245c..8744c6e9cc 100644 --- a/patches/server/0294-bonemealable-sugarcane-cactus-and-netherwart.patch +++ b/patches/server/0293-bonemealable-sugarcane-cactus-and-netherwart.patch @@ -137,7 +137,7 @@ index c3f500580d257e1397f2eb7c47b063a6fe6bb405..21a194fadb7d1f0a30f94caf999dabdd + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ba7fa9386b494c38e44717529f20c9341e26d9c2..2870a23c01ab5bdb45e355b2f1fd277395ef4771 100644 +index 09df9bcfe623de49914d6bed1d55285597631185..62f8058b26fb7d1973a72ec4a7e4c4f6a621f41a 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -830,8 +830,20 @@ public class PurpurWorldConfig { diff --git a/patches/server/0295-Add-PreExplodeEvents.patch b/patches/server/0294-Add-PreExplodeEvents.patch similarity index 100% rename from patches/server/0295-Add-PreExplodeEvents.patch rename to patches/server/0294-Add-PreExplodeEvents.patch diff --git a/patches/server/0296-Improve-output-of-plugins-command.patch b/patches/server/0295-Improve-output-of-plugins-command.patch similarity index 100% rename from patches/server/0296-Improve-output-of-plugins-command.patch rename to patches/server/0295-Improve-output-of-plugins-command.patch diff --git a/patches/server/0297-Add-mending-multiplier.patch b/patches/server/0296-Add-mending-multiplier.patch similarity index 92% rename from patches/server/0297-Add-mending-multiplier.patch rename to patches/server/0296-Add-mending-multiplier.patch index cf095aedcc..de384050e7 100644 --- a/patches/server/0297-Add-mending-multiplier.patch +++ b/patches/server/0296-Add-mending-multiplier.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add mending multiplier diff --git a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java -index b2233635b6acc35ea3668c36c56e57f15420ac62..724bf857bf1b89cb0947b8a82e0ce09a0bec0335 100644 +index cb47b4d3b4aa36c2e43f9672ffdf62904617303b..2bcbfe5516e30a150aa133cf8c1561b784443778 100644 --- a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java +++ b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java @@ -359,13 +359,15 @@ public class ExperienceOrb extends Entity { @@ -27,7 +27,7 @@ index b2233635b6acc35ea3668c36c56e57f15420ac62..724bf857bf1b89cb0947b8a82e0ce09a public int getValue() { return this.value; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 2870a23c01ab5bdb45e355b2f1fd277395ef4771..e7a794ce230c481e39436506facdb77726f96199 100644 +index 62f8058b26fb7d1973a72ec4a7e4c4f6a621f41a..5019942bbbabef9a73f34d3b3c84c7c6f2a014b1 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -119,6 +119,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0298-Make-GUI-Great-Again.patch b/patches/server/0297-Make-GUI-Great-Again.patch similarity index 99% rename from patches/server/0298-Make-GUI-Great-Again.patch rename to patches/server/0297-Make-GUI-Great-Again.patch index 193a40bd48..6a8beea4e2 100644 --- a/patches/server/0298-Make-GUI-Great-Again.patch +++ b/patches/server/0297-Make-GUI-Great-Again.patch @@ -96,7 +96,7 @@ index 0000000000000000000000000000000000000000..15a226e3854d731f7724025ea3459c8a + } +} diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index db17a6ce62bdaa5018e79f0fe0fac9838e6b07d6..a51306bb36d403ab627cd8b2fc8d8f7a3e6ca918 100644 +index 4fbb575922cb382f458a8d883e35a5733befff32..5c6027a3ab7c52087dfebb1e21468a511ec09fa1 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -99,6 +99,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface diff --git a/patches/server/0299-Stored-Bee-API.patch b/patches/server/0298-Stored-Bee-API.patch similarity index 100% rename from patches/server/0299-Stored-Bee-API.patch rename to patches/server/0298-Stored-Bee-API.patch diff --git a/patches/server/0300-Shears-can-defuse-TNT.patch b/patches/server/0299-Shears-can-defuse-TNT.patch similarity index 100% rename from patches/server/0300-Shears-can-defuse-TNT.patch rename to patches/server/0299-Shears-can-defuse-TNT.patch diff --git a/patches/server/0301-Explorer-Map-API.patch b/patches/server/0300-Explorer-Map-API.patch similarity index 95% rename from patches/server/0301-Explorer-Map-API.patch rename to patches/server/0300-Explorer-Map-API.patch index f4039b1934..bb259035dd 100644 --- a/patches/server/0301-Explorer-Map-API.patch +++ b/patches/server/0300-Explorer-Map-API.patch @@ -29,7 +29,7 @@ index e4c4948e076cd64686dfd16ae0568fafc1437140..804c342783baccdc12e8ca49a362770e // CraftBukkit start public final CraftMapView mapView; diff --git a/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java b/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java -index 2d2bf5c37709b8e747fbfa2db5ce86f258e86224..f6413ab181208d729afb532dca5e96e4c938e83c 100644 +index 15e9dd8844f893de5e8372b847c9e8295d6f69ca..b4b105c0190502328d5aeb680dd8e67c2875618f 100644 --- a/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java +++ b/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java @@ -46,4 +46,10 @@ public class CraftMapRenderer extends MapRenderer { diff --git a/patches/server/0302-Option-Ocelot-Spawn-Under-Sea-Level.patch b/patches/server/0301-Option-Ocelot-Spawn-Under-Sea-Level.patch similarity index 95% rename from patches/server/0302-Option-Ocelot-Spawn-Under-Sea-Level.patch rename to patches/server/0301-Option-Ocelot-Spawn-Under-Sea-Level.patch index f0ebe5b253..a112ab7405 100644 --- a/patches/server/0302-Option-Ocelot-Spawn-Under-Sea-Level.patch +++ b/patches/server/0301-Option-Ocelot-Spawn-Under-Sea-Level.patch @@ -18,7 +18,7 @@ index af275fc579d66bb098c08e88e4186846a1174c02..3c5f25300d1c7800144a459cc8bf5983 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ec7c1b39a87f253c52de4d0f3b01e8329aaa723a..39236dc4d7c70edff091bb1df54b2158e6dd5e2c 100644 +index 469aa0c5d2080394f0a9cbbb3891f0de36da72a3..bb5b1acf54f8347ef19c50f50bc6e9ff90fa87f5 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2036,6 +2036,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0303-add-an-option-for-piglins-to-ignore-gold-trimmed-arm.patch b/patches/server/0302-add-an-option-for-piglins-to-ignore-gold-trimmed-arm.patch similarity index 100% rename from patches/server/0303-add-an-option-for-piglins-to-ignore-gold-trimmed-arm.patch rename to patches/server/0302-add-an-option-for-piglins-to-ignore-gold-trimmed-arm.patch diff --git a/patches/server/0304-Add-option-for-always-showing-item-in-player-death-m.patch b/patches/server/0303-Add-option-for-always-showing-item-in-player-death-m.patch similarity index 100% rename from patches/server/0304-Add-option-for-always-showing-item-in-player-death-m.patch rename to patches/server/0303-Add-option-for-always-showing-item-in-player-death-m.patch diff --git a/patches/server/0305-place-end-crystal-on-any-block.patch b/patches/server/0304-place-end-crystal-on-any-block.patch similarity index 96% rename from patches/server/0305-place-end-crystal-on-any-block.patch rename to patches/server/0304-place-end-crystal-on-any-block.patch index 617d264094..ffd2609601 100644 --- a/patches/server/0305-place-end-crystal-on-any-block.patch +++ b/patches/server/0304-place-end-crystal-on-any-block.patch @@ -18,7 +18,7 @@ index 3688e9f8c6c6d1239095e3a87060ccca90386d0c..34254eec36d34ae343733fa1abbaaba6 } else { BlockPos blockposition1 = blockposition.above(); final BlockPos aboveBlockPosition = blockposition1; // Paper - OBFHELPER diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index cd7f347e46f4fa08e291bfdbbb01ea4f3271a877..d4d9f748d259df8b6f4566efa21c15c470de5ba2 100644 +index cc9aa6b7a76b1d993f0e3eb3d8e9374fffd87176..79ebab1b9bc8ff36a12a8f28d48cf1122ef44ccc 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -899,6 +899,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0306-Add-hover-lines-API.patch b/patches/server/0305-Add-hover-lines-API.patch similarity index 100% rename from patches/server/0306-Add-hover-lines-API.patch rename to patches/server/0305-Add-hover-lines-API.patch diff --git a/patches/server/0307-Add-option-to-disable-the-copper-oxidation-proximity.patch b/patches/server/0306-Add-option-to-disable-the-copper-oxidation-proximity.patch similarity index 96% rename from patches/server/0307-Add-option-to-disable-the-copper-oxidation-proximity.patch rename to patches/server/0306-Add-option-to-disable-the-copper-oxidation-proximity.patch index 0ed6de5c59..a33d20b428 100644 --- a/patches/server/0307-Add-option-to-disable-the-copper-oxidation-proximity.patch +++ b/patches/server/0306-Add-option-to-disable-the-copper-oxidation-proximity.patch @@ -18,7 +18,7 @@ index 8512b977b44a0a4d3a2521e27a60d65f7ac967be..dd270f67388c8663e0418875c88cb1e2 if (random.nextFloat() < f1) { this.getNext(state).ifPresent((iblockdata2) -> { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index d4d9f748d259df8b6f4566efa21c15c470de5ba2..64e172e6cbfb8134c2b36bce8279e1ef44085257 100644 +index 79ebab1b9bc8ff36a12a8f28d48cf1122ef44ccc..b9d1117885a8dd15f207e55ce5e402d8cefe0226 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -145,6 +145,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0308-Origin-centered-maps.patch b/patches/server/0307-Origin-centered-maps.patch similarity index 100% rename from patches/server/0308-Origin-centered-maps.patch rename to patches/server/0307-Origin-centered-maps.patch diff --git a/patches/server/0309-Map-ID-randomization.patch b/patches/server/0308-Map-ID-randomization.patch similarity index 100% rename from patches/server/0309-Map-ID-randomization.patch rename to patches/server/0308-Map-ID-randomization.patch diff --git a/patches/server/0310-Amethyst-cluster-self-support.patch b/patches/server/0309-Amethyst-cluster-self-support.patch similarity index 100% rename from patches/server/0310-Amethyst-cluster-self-support.patch rename to patches/server/0309-Amethyst-cluster-self-support.patch diff --git a/patches/server/0311-Add-LootableInventoryFirstFillEvent.patch b/patches/server/0310-Add-LootableInventoryFirstFillEvent.patch similarity index 100% rename from patches/server/0311-Add-LootableInventoryFirstFillEvent.patch rename to patches/server/0310-Add-LootableInventoryFirstFillEvent.patch diff --git a/patches/server/0311-Adding-PredicateChoice-to-Paper-API.patch b/patches/server/0311-Adding-PredicateChoice-to-Paper-API.patch new file mode 100644 index 0000000000..c84359246a --- /dev/null +++ b/patches/server/0311-Adding-PredicateChoice-to-Paper-API.patch @@ -0,0 +1,212 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: derverdox +Date: Mon, 4 Dec 2023 01:54:37 +0100 +Subject: [PATCH] Adding PredicateChoice to Paper API + + +diff --git a/src/main/java/io/papermc/paper/inventory/recipe/RecipeBookExactChoiceRecipe.java b/src/main/java/io/papermc/paper/inventory/recipe/RecipeBookExactChoiceRecipe.java +index 2a2f8327a5bd3983a3a13fd663beb98906f27312..a4b4d8fe73a5d626906ed859abbdee9591263645 100644 +--- a/src/main/java/io/papermc/paper/inventory/recipe/RecipeBookExactChoiceRecipe.java ++++ b/src/main/java/io/papermc/paper/inventory/recipe/RecipeBookExactChoiceRecipe.java +@@ -6,25 +6,28 @@ import net.minecraft.world.item.crafting.Recipe; + + public abstract class RecipeBookExactChoiceRecipe implements Recipe { + +- private boolean hasExactIngredients; ++ private boolean hasSpecialIngredients; + + protected final void checkExactIngredients() { + // skip any special recipes + if (this.isSpecial()) { +- this.hasExactIngredients = false; ++ this.hasSpecialIngredients = false; + return; + } + for (final Ingredient ingredient : this.getIngredients()) { + if (!ingredient.isEmpty() && ingredient.exact) { +- this.hasExactIngredients = true; ++ this.hasSpecialIngredients = true; ++ return; ++ } else if (!ingredient.isEmpty() && ingredient.getItemPredicate() != null) { ++ this.hasSpecialIngredients = true; + return; + } + } +- this.hasExactIngredients = false; ++ this.hasSpecialIngredients = false; + } + + @Override +- public final boolean hasExactIngredients() { +- return this.hasExactIngredients; ++ public final boolean hasSpecialIngredients() { ++ return this.hasSpecialIngredients; + } + } +diff --git a/src/main/java/io/papermc/paper/inventory/recipe/StackedContentsExtraMap.java b/src/main/java/io/papermc/paper/inventory/recipe/StackedContentsExtraMap.java +index 63db0b843c5bd11f979e613ba6cfac9d9da956bb..63a161ca3c228263d71d2da86b92970a13d28181 100644 +--- a/src/main/java/io/papermc/paper/inventory/recipe/StackedContentsExtraMap.java ++++ b/src/main/java/io/papermc/paper/inventory/recipe/StackedContentsExtraMap.java +@@ -7,7 +7,9 @@ import it.unimi.dsi.fastutil.ints.IntComparators; + import it.unimi.dsi.fastutil.ints.IntList; + import it.unimi.dsi.fastutil.objects.Object2IntMap; + import it.unimi.dsi.fastutil.objects.Object2IntOpenCustomHashMap; ++import java.util.ArrayList; + import java.util.IdentityHashMap; ++import java.util.List; + import java.util.Map; + import java.util.concurrent.atomic.AtomicInteger; + import net.minecraft.core.registries.BuiltInRegistries; +@@ -18,12 +20,12 @@ import net.minecraft.world.item.crafting.Ingredient; + import net.minecraft.world.item.crafting.Recipe; + + public final class StackedContentsExtraMap { +- + private final AtomicInteger idCounter = new AtomicInteger(BuiltInRegistries.ITEM.size()); // start at max vanilla stacked contents idx + private final Object2IntMap exactChoiceIds = new Object2IntOpenCustomHashMap<>(ItemStackLinkedSet.TYPE_AND_TAG); + private final Int2ObjectMap idToExactChoice = new Int2ObjectOpenHashMap<>(); + private final StackedContents contents; + public final Map extraStackingIds = new IdentityHashMap<>(); ++ public final List predicateChoices = new ArrayList<>(); // Adding PredicateChoice + + public StackedContentsExtraMap(final StackedContents contents, final Recipe recipe) { + this.exactChoiceIds.defaultReturnValue(-1); +@@ -32,7 +34,7 @@ public final class StackedContentsExtraMap { + } + + private void initialize(final Recipe recipe) { +- if (recipe.hasExactIngredients()) { ++ if (recipe.hasSpecialIngredients()) { + for (final Ingredient ingredient : recipe.getIngredients()) { + if (!ingredient.isEmpty() && ingredient.exact) { + final net.minecraft.world.item.ItemStack[] items = ingredient.getItems(); +@@ -47,6 +49,11 @@ public final class StackedContentsExtraMap { + idList.sort(IntComparators.NATURAL_COMPARATOR); + this.extraStackingIds.put(ingredient, idList); + } ++ // Adding PredicateChoice ++ else if(!ingredient.isEmpty() && ingredient.getItemPredicate() != null){ ++ this.predicateChoices.add(ingredient); ++ this.extraStackingIds.put(ingredient, new IntArrayList()); // fill id list when accounting stacks ++ } + } + } + } +@@ -67,6 +74,16 @@ public final class StackedContentsExtraMap { + } + + public boolean accountStack(final ItemStack stack, final int count) { ++ // We are adding items that pass the predicate test. ++ for(final Ingredient predicateChoice : this.predicateChoices){ ++ if(predicateChoice.test(stack)){ ++ boolean isStackTypeRegistered = this.exactChoiceIds.getInt(stack) > -1; ++ final int id = this.registerExact(stack); ++ // We only want to add the stacking id to the list one time ++ if(!isStackTypeRegistered) ++ this.extraStackingIds.get(predicateChoice).add(id); ++ } ++ } + if (!this.exactChoiceIds.isEmpty()) { + final int id = this.exactChoiceIds.getInt(stack); + if (id >= 0) { +diff --git a/src/main/java/net/minecraft/world/item/crafting/Ingredient.java b/src/main/java/net/minecraft/world/item/crafting/Ingredient.java +index 06fe5b056d78d42cdf78437eeabe1786d596b7f8..d98201d34c5863a9c1588d64aa0e72b1529a980c 100644 +--- a/src/main/java/net/minecraft/world/item/crafting/Ingredient.java ++++ b/src/main/java/net/minecraft/world/item/crafting/Ingredient.java +@@ -29,11 +29,14 @@ import net.minecraft.world.entity.player.StackedContents; + import net.minecraft.world.item.Item; + import net.minecraft.world.item.ItemStack; + import net.minecraft.world.level.ItemLike; ++import org.bukkit.craftbukkit.inventory.CraftItemStack; ++import org.bukkit.inventory.RecipeChoice; + + public final class Ingredient implements Predicate { + + public static final Ingredient EMPTY = new Ingredient(Stream.empty()); + private final Ingredient.Value[] values; ++ @Nullable private RecipeChoice.PredicateChoice.ItemPredicate itemPredicate; // Paper + @Nullable + public ItemStack[] itemStacks; + @Nullable +@@ -41,7 +44,13 @@ public final class Ingredient implements Predicate { + public boolean exact; // CraftBukkit + public static final Codec CODEC = Ingredient.codec(true); + public static final Codec CODEC_NONEMPTY = Ingredient.codec(false); +- ++ // Paper start - Adding PredicateChoice ++ public Ingredient(RecipeChoice.PredicateChoice.ItemPredicate itemPredicate) { ++ List bukkitChoices = itemPredicate.recipeBookExamples(); ++ this.itemPredicate = itemPredicate; ++ this.values = bukkitChoices.stream().map(CraftItemStack::asNMSCopy).map(ItemValue::new).toArray(Value[]::new); ++ } ++ // Paper end - Adding PredicateChoice + public Ingredient(Stream entries) { + this.values = (Ingredient.Value[]) entries.toArray((i) -> { + return new Ingredient.Value[i]; +@@ -70,6 +79,11 @@ public final class Ingredient implements Predicate { + } else if (this.isEmpty()) { + return itemstack.isEmpty(); + } else { ++ // Paper start - Adding PredicateChoice ++ if (itemPredicate != null) { ++ return itemPredicate.test(itemstack.getBukkitStack()); ++ } ++ // Paper end - Adding PredicateChoice + ItemStack[] aitemstack = this.getItems(); + int i = aitemstack.length; + +@@ -269,4 +283,10 @@ public final class Ingredient implements Predicate { + return Collections.singleton(this.item); + } + } ++ // Paper start - Adding PredicateChoice ++ @Nullable ++ public RecipeChoice.PredicateChoice.ItemPredicate getItemPredicate() { ++ return itemPredicate; ++ } ++ // Paper end - Adding PredicateChoice + } +diff --git a/src/main/java/net/minecraft/world/item/crafting/Recipe.java b/src/main/java/net/minecraft/world/item/crafting/Recipe.java +index 80387cd1bee2bd4c024073cee74222828f9f2c17..6fbbf255fe061943b72324d1484c7b9e885f8535 100644 +--- a/src/main/java/net/minecraft/world/item/crafting/Recipe.java ++++ b/src/main/java/net/minecraft/world/item/crafting/Recipe.java +@@ -67,7 +67,7 @@ public interface Recipe { + org.bukkit.inventory.Recipe toBukkitRecipe(org.bukkit.NamespacedKey id); // CraftBukkit + + // Paper start - improved exact choice recipes +- default boolean hasExactIngredients() { ++ default boolean hasSpecialIngredients() { + return false; + } + // Paper end +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java +index 13d25d118eb4d3ef35a4cdfb9bbde9ed83f6c04b..8b308da84b59c04e0b80d419d4eea602f01abcbf 100644 +--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java ++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java +@@ -30,7 +30,13 @@ public interface CraftRecipe extends Recipe { + } else if (bukkit instanceof RecipeChoice.ExactChoice) { + stack = new Ingredient(((RecipeChoice.ExactChoice) bukkit).getChoices().stream().map((mat) -> new net.minecraft.world.item.crafting.Ingredient.ItemValue(CraftItemStack.asNMSCopy(mat)))); + stack.exact = true; +- } else { ++ } ++ // Paper start - Adding PredicateChoice ++ else if(bukkit instanceof RecipeChoice.PredicateChoice predicateChoice){ ++ stack = new Ingredient(predicateChoice.getItemPredicate()); ++ } ++ // Paper end - Adding PredicateChoice ++ else { + throw new IllegalArgumentException("Unknown recipe stack instance " + bukkit); + } + +@@ -48,7 +54,10 @@ public interface CraftRecipe extends Recipe { + if (list.itemStacks.length == 0) { + return null; + } +- ++ // Paper start - Adding PredicateChoice ++ if(list.getItemPredicate() != null) ++ return new RecipeChoice.PredicateChoice(list.getItemPredicate()); ++ // Paper end - Adding PredicateChoice + if (list.exact) { + List choices = new ArrayList<>(list.itemStacks.length); + for (net.minecraft.world.item.ItemStack i : list.itemStacks) {