diff --git a/purpur-server/build.gradle.kts.patch b/purpur-server/build.gradle.kts.patch index f3c1d01f9..326a1cfef 100644 --- a/purpur-server/build.gradle.kts.patch +++ b/purpur-server/build.gradle.kts.patch @@ -1,9 +1,10 @@ --- a/paper-server/build.gradle.kts +++ b/paper-server/build.gradle.kts -@@ -2,6 +_,7 @@ +@@ -2,6 +_,8 @@ import io.papermc.paperweight.attribute.DevBundleOutput import io.papermc.paperweight.util.* import java.time.Instant ++import kotlin.io.path.createParentDirectories +import kotlin.io.path.writeText plugins { @@ -116,7 +117,7 @@ project("paper") versionFamily(paperweight.minecraftVersion.map { it.split(".", "-").takeWhile { part -> part.toIntOrNull() != null }.take(2).joinToString(".") }) version(paperweight.minecraftVersion) -@@ -371,4 +_,44 @@ +@@ -371,4 +_,47 @@ } } } @@ -129,6 +130,9 @@ +// val patchDir = project.rootDir.resolve("purpur-server/minecraft-patches/sources").convertToPath().cleanDir() +// val inputDir = this.project.rootDir.resolve("purpur-server/src/minecraft/java").convertToPath() +// ++// //val patchDir = project.rootDir.resolve("purpur-server/paper-patches/files").convertToPath().cleanDir() ++// //val inputDir = this.project.rootDir.resolve("paper-server").convertToPath() ++// +// val git = Git(inputDir) +// git("stash", "push").executeSilently(silenceErr = true) +// git("checkout", "file").executeSilently(silenceErr = true) diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/gametest/framework/GameTestHelper.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/gametest/framework/GameTestHelper.java.patch deleted file mode 100644 index 5a40e03dc..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/gametest/framework/GameTestHelper.java.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/net/minecraft/gametest/framework/GameTestHelper.java -+++ b/net/minecraft/gametest/framework/GameTestHelper.java -@@ -322,6 +_,8 @@ - return gameType; - } - -+ public void setAfk(final boolean afk) {} // Purpur - AFK API -+ - @Override - public boolean isClientAuthoritative() { - return false; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/attributes/RangedAttribute.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/attributes/RangedAttribute.java.patch deleted file mode 100644 index 4cd99d012..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/attributes/RangedAttribute.java.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/net/minecraft/world/entity/ai/attributes/RangedAttribute.java -+++ b/net/minecraft/world/entity/ai/attributes/RangedAttribute.java -@@ -29,6 +_,7 @@ - - @Override - public double sanitizeValue(double value) { -+ if (!org.purpurmc.purpur.PurpurConfig.clampAttributes) return Double.isNaN(value) ? this.minValue : value; // Purpur - Add attribute clamping and armor limit config - return Double.isNaN(value) ? this.minValue : Mth.clamp(value, this.minValue, this.maxValue); - } - } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/ItemCombinerMenu.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/ItemCombinerMenu.java.patch deleted file mode 100644 index 9899e30a5..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/ItemCombinerMenu.java.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/net/minecraft/world/inventory/ItemCombinerMenu.java -+++ b/net/minecraft/world/inventory/ItemCombinerMenu.java -@@ -156,7 +_,9 @@ - return ItemStack.EMPTY; - } - -+ this.activeQuickItem = itemStack; // Purpur - Anvil API - slot.onTake(player, item); -+ this.activeQuickItem = null; // Purpur - Anvil API - } - - return itemStack; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ProjectileWeaponItem.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ProjectileWeaponItem.java.patch deleted file mode 100644 index 3fa0c2dfa..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ProjectileWeaponItem.java.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/net/minecraft/world/item/ProjectileWeaponItem.java -+++ b/net/minecraft/world/item/ProjectileWeaponItem.java -@@ -106,6 +_,8 @@ - abstractArrow.setCritArrow(true); - } - -+ abstractArrow.setActualEnchantments(weapon.getEnchantments()); // Purpur - Add an option to fix MC-3304 projectile looting -+ - return abstractArrow; - } - diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java.patch deleted file mode 100644 index fd6497469..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java -+++ b/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java -@@ -39,6 +_,7 @@ - } - - protected static boolean scanForWater(BlockState state, BlockGetter level, BlockPos pos) { -+ if (!((net.minecraft.world.level.LevelAccessor) level).getMinecraftWorld().purpurConfig.coralDieOutsideWater) return true; // Purpur - Config to not let coral die - if (state.getValue(WATERLOGGED)) { - return true; - } else { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BigDripleafBlock.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BigDripleafBlock.java.patch deleted file mode 100644 index 5db370adf..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BigDripleafBlock.java.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/net/minecraft/world/level/block/BigDripleafBlock.java -+++ b/net/minecraft/world/level/block/BigDripleafBlock.java -@@ -251,7 +_,7 @@ - playTiltSound(level, pos, sound); - } - -- int _int = DELAY_UNTIL_NEXT_TILT_STATE.getInt(tilt); -+ int _int = level.purpurConfig.bigDripleafTiltDelay.getOrDefault(tilt, -1); // Purpur - Big dripleaf tilt delay - if (_int != -1) { - level.scheduleTick(pos, this, _int); - } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/DragonEggBlock.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/DragonEggBlock.java.patch deleted file mode 100644 index d08f61da6..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/DragonEggBlock.java.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/net/minecraft/world/level/block/DragonEggBlock.java -+++ b/net/minecraft/world/level/block/DragonEggBlock.java -@@ -46,6 +_,7 @@ - } - - private void teleport(BlockState state, Level level, BlockPos pos) { -+ if (!level.purpurConfig.dragonEggTeleport) return; // Purpur - Option to disable dragon egg teleporting - WorldBorder worldBorder = level.getWorldBorder(); - - for (int i = 0; i < 1000; i++) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/HayBlock.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/HayBlock.java.patch deleted file mode 100644 index 1b21c6e0a..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/HayBlock.java.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/net/minecraft/world/level/block/HayBlock.java -+++ b/net/minecraft/world/level/block/HayBlock.java -@@ -23,6 +_,6 @@ - - @Override - public void fallOn(Level level, BlockState state, BlockPos pos, Entity entity, double fallDistance) { -- entity.causeFallDamage(fallDistance, 0.2F, level.damageSources().fall()); -+ super.fallOn(level, state, pos, entity, fallDistance); // Purpur - Configurable block fall damage modifiers - } - } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/KelpBlock.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/KelpBlock.java.patch deleted file mode 100644 index dd74c4921..000000000 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/KelpBlock.java.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/net/minecraft/world/level/block/KelpBlock.java -+++ b/net/minecraft/world/level/block/KelpBlock.java -@@ -71,4 +_,11 @@ - protected FluidState getFluidState(BlockState state) { - return Fluids.WATER.getSource(false); - } -+ -+ // Purpur start - kelp vines configurable max growth age -+ @Override -+ public int getMaxGrowthAge() { -+ return org.purpurmc.purpur.PurpurConfig.kelpMaxGrowthAge; -+ } -+ // Purpur end - kelp vines configurable max growth age - } diff --git a/purpur-server/minecraft-patches/features/0001-Ridables.patch b/purpur-server/minecraft-patches/unapplied-features/0001-Ridables.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0001-Ridables.patch rename to purpur-server/minecraft-patches/unapplied-features/0001-Ridables.patch diff --git a/purpur-server/minecraft-patches/features/0002-Configurable-entity-base-attributes.patch b/purpur-server/minecraft-patches/unapplied-features/0002-Configurable-entity-base-attributes.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0002-Configurable-entity-base-attributes.patch rename to purpur-server/minecraft-patches/unapplied-features/0002-Configurable-entity-base-attributes.patch diff --git a/purpur-server/minecraft-patches/features/0003-Barrels-and-enderchests-6-rows.patch b/purpur-server/minecraft-patches/unapplied-features/0003-Barrels-and-enderchests-6-rows.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0003-Barrels-and-enderchests-6-rows.patch rename to purpur-server/minecraft-patches/unapplied-features/0003-Barrels-and-enderchests-6-rows.patch diff --git a/purpur-server/minecraft-patches/features/0004-Giants-AI-settings.patch b/purpur-server/minecraft-patches/unapplied-features/0004-Giants-AI-settings.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0004-Giants-AI-settings.patch rename to purpur-server/minecraft-patches/unapplied-features/0004-Giants-AI-settings.patch diff --git a/purpur-server/minecraft-patches/features/0005-Chickens-can-retaliate.patch b/purpur-server/minecraft-patches/unapplied-features/0005-Chickens-can-retaliate.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0005-Chickens-can-retaliate.patch rename to purpur-server/minecraft-patches/unapplied-features/0005-Chickens-can-retaliate.patch diff --git a/purpur-server/minecraft-patches/features/0006-Minecart-settings-and-WASD-controls.patch b/purpur-server/minecraft-patches/unapplied-features/0006-Minecart-settings-and-WASD-controls.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0006-Minecart-settings-and-WASD-controls.patch rename to purpur-server/minecraft-patches/unapplied-features/0006-Minecart-settings-and-WASD-controls.patch diff --git a/purpur-server/minecraft-patches/features/0007-Villagers-follow-emerald-blocks.patch b/purpur-server/minecraft-patches/unapplied-features/0007-Villagers-follow-emerald-blocks.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0007-Villagers-follow-emerald-blocks.patch rename to purpur-server/minecraft-patches/unapplied-features/0007-Villagers-follow-emerald-blocks.patch diff --git a/purpur-server/minecraft-patches/features/0008-Implement-elytra-settings.patch b/purpur-server/minecraft-patches/unapplied-features/0008-Implement-elytra-settings.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0008-Implement-elytra-settings.patch rename to purpur-server/minecraft-patches/unapplied-features/0008-Implement-elytra-settings.patch diff --git a/purpur-server/minecraft-patches/features/0009-Configurable-jockey-options.patch b/purpur-server/minecraft-patches/unapplied-features/0009-Configurable-jockey-options.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0009-Configurable-jockey-options.patch rename to purpur-server/minecraft-patches/unapplied-features/0009-Configurable-jockey-options.patch diff --git a/purpur-server/minecraft-patches/features/0010-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch b/purpur-server/minecraft-patches/unapplied-features/0010-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0010-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch rename to purpur-server/minecraft-patches/unapplied-features/0010-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch diff --git a/purpur-server/minecraft-patches/features/0011-Phantoms-burn-in-light.patch b/purpur-server/minecraft-patches/unapplied-features/0011-Phantoms-burn-in-light.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0011-Phantoms-burn-in-light.patch rename to purpur-server/minecraft-patches/unapplied-features/0011-Phantoms-burn-in-light.patch diff --git a/purpur-server/minecraft-patches/features/0012-Make-entity-breeding-times-configurable.patch b/purpur-server/minecraft-patches/unapplied-features/0012-Make-entity-breeding-times-configurable.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0012-Make-entity-breeding-times-configurable.patch rename to purpur-server/minecraft-patches/unapplied-features/0012-Make-entity-breeding-times-configurable.patch diff --git a/purpur-server/minecraft-patches/features/0013-Apply-display-names-from-item-forms-of-entities-to-e.patch b/purpur-server/minecraft-patches/unapplied-features/0013-Apply-display-names-from-item-forms-of-entities-to-e.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0013-Apply-display-names-from-item-forms-of-entities-to-e.patch rename to purpur-server/minecraft-patches/unapplied-features/0013-Apply-display-names-from-item-forms-of-entities-to-e.patch diff --git a/purpur-server/minecraft-patches/features/0014-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch b/purpur-server/minecraft-patches/unapplied-features/0014-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0014-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch rename to purpur-server/minecraft-patches/unapplied-features/0014-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch diff --git a/purpur-server/minecraft-patches/features/0015-Add-mobGriefing-override-to-everything-affected.patch b/purpur-server/minecraft-patches/unapplied-features/0015-Add-mobGriefing-override-to-everything-affected.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0015-Add-mobGriefing-override-to-everything-affected.patch rename to purpur-server/minecraft-patches/unapplied-features/0015-Add-mobGriefing-override-to-everything-affected.patch diff --git a/purpur-server/minecraft-patches/features/0016-Toggle-for-water-sensitive-mob-damage.patch b/purpur-server/minecraft-patches/unapplied-features/0016-Toggle-for-water-sensitive-mob-damage.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0016-Toggle-for-water-sensitive-mob-damage.patch rename to purpur-server/minecraft-patches/unapplied-features/0016-Toggle-for-water-sensitive-mob-damage.patch diff --git a/purpur-server/minecraft-patches/features/0017-API-for-any-mob-to-burn-daylight.patch b/purpur-server/minecraft-patches/unapplied-features/0017-API-for-any-mob-to-burn-daylight.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0017-API-for-any-mob-to-burn-daylight.patch rename to purpur-server/minecraft-patches/unapplied-features/0017-API-for-any-mob-to-burn-daylight.patch diff --git a/purpur-server/minecraft-patches/features/0018-Cows-naturally-aggressive-to-players-chance.patch b/purpur-server/minecraft-patches/unapplied-features/0018-Cows-naturally-aggressive-to-players-chance.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0018-Cows-naturally-aggressive-to-players-chance.patch rename to purpur-server/minecraft-patches/unapplied-features/0018-Cows-naturally-aggressive-to-players-chance.patch diff --git a/purpur-server/minecraft-patches/features/0019-Mobs-always-drop-experience.patch b/purpur-server/minecraft-patches/unapplied-features/0019-Mobs-always-drop-experience.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0019-Mobs-always-drop-experience.patch rename to purpur-server/minecraft-patches/unapplied-features/0019-Mobs-always-drop-experience.patch diff --git a/purpur-server/minecraft-patches/features/0020-Setting-to-reintroduce-end-void-rings.patch b/purpur-server/minecraft-patches/unapplied-features/0020-Setting-to-reintroduce-end-void-rings.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0020-Setting-to-reintroduce-end-void-rings.patch rename to purpur-server/minecraft-patches/unapplied-features/0020-Setting-to-reintroduce-end-void-rings.patch diff --git a/purpur-server/minecraft-patches/features/0021-Per-mob-mob_griefing-loot-pickup-override.patch b/purpur-server/minecraft-patches/unapplied-features/0021-Per-mob-mob_griefing-loot-pickup-override.patch similarity index 100% rename from purpur-server/minecraft-patches/features/0021-Per-mob-mob_griefing-loot-pickup-override.patch rename to purpur-server/minecraft-patches/unapplied-features/0021-Per-mob-mob_griefing-loot-pickup-override.patch diff --git a/purpur-server/minecraft-patches/sources/io/papermc/paper/entity/activation/ActivationRange.java.patch b/purpur-server/minecraft-patches/unapplied-sources/io/papermc/paper/entity/activation/ActivationRange.java.patch similarity index 67% rename from purpur-server/minecraft-patches/sources/io/papermc/paper/entity/activation/ActivationRange.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/io/papermc/paper/entity/activation/ActivationRange.java.patch index 70f8de868..f10bea231 100644 --- a/purpur-server/minecraft-patches/sources/io/papermc/paper/entity/activation/ActivationRange.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/io/papermc/paper/entity/activation/ActivationRange.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/io/papermc/paper/entity/activation/ActivationRange.java b/io/papermc/paper/entity/activation/ActivationRange.java +index c18823746ab2edcab536cb1589b7720e3af07e0f..bc62da127a01b33ce8fc0f958bc232d6287d57ec 100644 --- a/io/papermc/paper/entity/activation/ActivationRange.java +++ b/io/papermc/paper/entity/activation/ActivationRange.java -@@ -147,6 +_,8 @@ +@@ -147,6 +147,8 @@ public final class ActivationRange { continue; } @@ -9,7 +17,7 @@ final int worldHeight = world.getHeight(); ActivationRange.maxBB = player.getBoundingBox().inflate(maxRange, worldHeight, maxRange); ActivationType.MISC.boundingBox = player.getBoundingBox().inflate(miscActivationRange, worldHeight, miscActivationRange); -@@ -288,6 +_,7 @@ +@@ -288,6 +290,7 @@ public final class ActivationRange { * @return */ public static boolean checkIfActive(final Entity entity) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/CrashReport.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/CrashReport.java.patch similarity index 66% rename from purpur-server/minecraft-patches/sources/net/minecraft/CrashReport.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/CrashReport.java.patch index 010fd44e2..58071343c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/CrashReport.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/CrashReport.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/CrashReport.java b/net/minecraft/CrashReport.java +index ad10eda79e6b76fc1896b4cdb27546b515d1cfa4..2c60f1d955b17cbc79b5372c536e5463f6c0a186 100644 --- a/net/minecraft/CrashReport.java +++ b/net/minecraft/CrashReport.java -@@ -30,6 +_,7 @@ +@@ -30,6 +30,7 @@ public class CrashReport { private boolean trackingStackTrace = true; private StackTraceElement[] uncategorizedStackTrace = new StackTraceElement[0]; private final SystemReport systemReport = new SystemReport(); @@ -8,7 +16,7 @@ public CrashReport(String title, Throwable exception) { this.title = title; -@@ -129,7 +_,7 @@ +@@ -129,7 +130,7 @@ public class CrashReport { } public String getFriendlyReport(ReportType type) { @@ -17,7 +25,7 @@ } public @Nullable Path getSaveFile() { -@@ -159,7 +_,7 @@ +@@ -159,7 +160,7 @@ public class CrashReport { } public boolean saveToFile(Path path, ReportType type) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/commands/CommandSourceStack.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/CommandSourceStack.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/commands/CommandSourceStack.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/CommandSourceStack.java.patch index a94b0ea45..aba60d83c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/commands/CommandSourceStack.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/CommandSourceStack.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/commands/CommandSourceStack.java b/net/minecraft/commands/CommandSourceStack.java +index 566304106fd4f1c677a56e7c66282d1570e7b974..21d135189a4d67605e0dfb991283d48268ce5d5c 100644 --- a/net/minecraft/commands/CommandSourceStack.java +++ b/net/minecraft/commands/CommandSourceStack.java -@@ -430,6 +_,19 @@ +@@ -430,6 +430,19 @@ public class CommandSourceStack implements ExecutionCommandSource io.papermc.paper.adventure.PaperAdventure.asVanilla(message), broadcastToOps); + } + // Purpur end - Purpur config files - ++ public void sendSuccess(Supplier messageSupplier, boolean allowLogging) { boolean flag = this.source.acceptsSuccess() && !this.silent; + boolean flag1 = allowLogging && this.source.shouldInformAdmins() && !this.silent; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/commands/Commands.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/Commands.java.patch similarity index 84% rename from purpur-server/minecraft-patches/sources/net/minecraft/commands/Commands.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/Commands.java.patch index 85a32af62..00a6f9cb4 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/commands/Commands.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/Commands.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/commands/Commands.java b/net/minecraft/commands/Commands.java +index 668eb52d71d77f75c24d4840be9a6c49d96dfc34..83148f756ecc77ae45abffbd1d7cbfacf6c99e7f 100644 --- a/net/minecraft/commands/Commands.java +++ b/net/minecraft/commands/Commands.java -@@ -265,11 +_,11 @@ +@@ -265,11 +265,11 @@ public class Commands { JfrCommand.register(this.dispatcher); } @@ -14,7 +22,7 @@ RaidCommand.register(this.dispatcher, context); DebugPathCommand.register(this.dispatcher); DebugMobSpawningCommand.register(this.dispatcher); -@@ -297,6 +_,14 @@ +@@ -297,6 +297,14 @@ public class Commands { StopCommand.register(this.dispatcher); TransferCommand.register(this.dispatcher); WhitelistCommand.register(this.dispatcher); @@ -29,7 +37,7 @@ } if (selection.includeIntegrated) { -@@ -522,6 +_,7 @@ +@@ -522,6 +530,7 @@ public class Commands { private void runSync(ServerPlayer player, java.util.Collection bukkit, RootCommandNode rootCommandNode) { // Paper end - Perf: Async command map building new com.destroystokyo.paper.event.brigadier.AsyncPlayerSendCommandsEvent(player.getBukkitEntity(), (RootCommandNode) rootCommandNode, true).callEvent(); // Paper - Brigadier API @@ -37,7 +45,7 @@ org.bukkit.event.player.PlayerCommandSendEvent event = new org.bukkit.event.player.PlayerCommandSendEvent(player.getBukkitEntity(), new java.util.LinkedHashSet<>(bukkit)); event.getPlayer().getServer().getPluginManager().callEvent(event); -@@ -532,6 +_,8 @@ +@@ -532,6 +541,8 @@ public class Commands { } } // CraftBukkit end diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/commands/arguments/selector/EntitySelector.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/arguments/selector/EntitySelector.java.patch similarity index 85% rename from purpur-server/minecraft-patches/sources/net/minecraft/commands/arguments/selector/EntitySelector.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/arguments/selector/EntitySelector.java.patch index 9c23cd46d..b97128433 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/commands/arguments/selector/EntitySelector.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/commands/arguments/selector/EntitySelector.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/commands/arguments/selector/EntitySelector.java b/net/minecraft/commands/arguments/selector/EntitySelector.java +index af71e0e1eb1c93745f3e4954ecc8fbd2ad4808a3..fbab3e2f4e3a9cdc1c148fc794036c5655368666 100644 --- a/net/minecraft/commands/arguments/selector/EntitySelector.java +++ b/net/minecraft/commands/arguments/selector/EntitySelector.java -@@ -190,26 +_,27 @@ +@@ -190,26 +190,27 @@ public class EntitySelector { this.checkPermissions(source); if (this.playerName != null) { ServerPlayer playerByName = source.getServer().getPlayerList().getPlayerByName(this.playerName); @@ -32,7 +40,7 @@ players.add(serverPlayer1); if (players.size() >= resultLimit) { return players; -@@ -267,4 +_,10 @@ +@@ -267,4 +268,10 @@ public class EntitySelector { public static Component joinNames(List names) { return ComponentUtils.formatList(names, Entity::getDisplayName); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/core/BlockPos.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/BlockPos.java.patch similarity index 53% rename from purpur-server/minecraft-patches/sources/net/minecraft/core/BlockPos.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/BlockPos.java.patch index 0d1842e69..752f0f76f 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/core/BlockPos.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/BlockPos.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/core/BlockPos.java b/net/minecraft/core/BlockPos.java +index e87473fcb36e18d960ef3e4082995785d64b9c0f..e4dee5426e186d44d4d929967c65710848ace11d 100644 --- a/net/minecraft/core/BlockPos.java +++ b/net/minecraft/core/BlockPos.java -@@ -61,6 +_,12 @@ +@@ -61,6 +61,12 @@ public class BlockPos extends Vec3i { public static final int MAX_HORIZONTAL_COORDINATE = 33554431; // Paper end - Optimize Bit Operations by inlining diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/core/dispenser/DispenseItemBehavior.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/dispenser/DispenseItemBehavior.java.patch similarity index 77% rename from purpur-server/minecraft-patches/sources/net/minecraft/core/dispenser/DispenseItemBehavior.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/dispenser/DispenseItemBehavior.java.patch index 533c3c88a..879aa1ae0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/core/dispenser/DispenseItemBehavior.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/dispenser/DispenseItemBehavior.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/core/dispenser/DispenseItemBehavior.java b/net/minecraft/core/dispenser/DispenseItemBehavior.java +index bfefb5031544caa59230f0073e8880c2b39ebf4d..ff32a89a720676c5a9f34ea7c859f03d47545b72 100644 --- a/net/minecraft/core/dispenser/DispenseItemBehavior.java +++ b/net/minecraft/core/dispenser/DispenseItemBehavior.java -@@ -750,5 +_,22 @@ +@@ -750,5 +750,22 @@ public interface DispenseItemBehavior { DispenserBlock.registerBehavior(Items.TNT_MINECART, new MinecartDispenseItemBehavior(EntityType.TNT_MINECART)); DispenserBlock.registerBehavior(Items.HOPPER_MINECART, new MinecartDispenseItemBehavior(EntityType.HOPPER_MINECART)); DispenserBlock.registerBehavior(Items.COMMAND_BLOCK_MINECART, new MinecartDispenseItemBehavior(EntityType.COMMAND_BLOCK_MINECART)); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java.patch index 9a2c1e083..58ff0d2c2 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java b/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java +index e2d169b45f1dba6559ca337b07a110f79d3db504..727d04a442053f6d0c4df3e744554e2866fa38cd 100644 --- a/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java +++ b/net/minecraft/core/dispenser/EquipmentDispenseItemBehavior.java -@@ -32,7 +_,7 @@ +@@ -32,7 +32,7 @@ public class EquipmentDispenseItemBehavior extends DefaultDispenseItemBehavior { return false; } else { LivingEntity livingEntity = entitiesOfClass.getFirst(); diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/gametest/framework/GameTestHelper.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/gametest/framework/GameTestHelper.java.patch new file mode 100644 index 000000000..d41fabb1f --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/gametest/framework/GameTestHelper.java.patch @@ -0,0 +1,19 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/gametest/framework/GameTestHelper.java b/net/minecraft/gametest/framework/GameTestHelper.java +index 2a1aef6bfa15882748b98b5257baaced107ba194..05eb0c3273ffa1b5a1ebd8f8ae42c11830d755c7 100644 +--- a/net/minecraft/gametest/framework/GameTestHelper.java ++++ b/net/minecraft/gametest/framework/GameTestHelper.java +@@ -322,6 +322,8 @@ public class GameTestHelper { + return gameType; + } + ++ public void setAfk(final boolean afk) {} // Purpur - AFK API ++ + @Override + public boolean isClientAuthoritative() { + return false; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/gametest/framework/TestCommand.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/gametest/framework/TestCommand.java.patch similarity index 54% rename from purpur-server/minecraft-patches/sources/net/minecraft/gametest/framework/TestCommand.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/gametest/framework/TestCommand.java.patch index c9f48d7e7..f942dce8c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/gametest/framework/TestCommand.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/gametest/framework/TestCommand.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/gametest/framework/TestCommand.java b/net/minecraft/gametest/framework/TestCommand.java +index 4a06b20b60f67a2d383dbd09b3bad713155dc81e..63e0294f5624643b6d37983f523bf2434cbe47e2 100644 --- a/net/minecraft/gametest/framework/TestCommand.java +++ b/net/minecraft/gametest/framework/TestCommand.java -@@ -443,7 +_,7 @@ +@@ -443,7 +443,7 @@ public class TestCommand { ) ) ); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/network/Connection.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/network/Connection.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/network/Connection.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/network/Connection.java.patch index 2d95e190f..7fcde9eb1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/network/Connection.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/network/Connection.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/network/Connection.java b/net/minecraft/network/Connection.java +index 19ec939529eb638bdc4d7fd9260f161fae118314..21e891ecdb90a1828428441aef9c2593253751f8 100644 --- a/net/minecraft/network/Connection.java +++ b/net/minecraft/network/Connection.java -@@ -554,11 +_,20 @@ +@@ -554,11 +554,20 @@ public class Connection extends SimpleChannelInboundHandler> { private static final int MAX_PER_TICK = io.papermc.paper.configuration.GlobalConfiguration.get().misc.maxJoinsPerTick; // Paper - Buffer joins to world private static int joinAttemptsThisTick; // Paper - Buffer joins to world private static int currTick; // Paper - Buffer joins to world diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/network/chat/SignedMessageChain.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/network/chat/SignedMessageChain.java.patch similarity index 68% rename from purpur-server/minecraft-patches/sources/net/minecraft/network/chat/SignedMessageChain.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/network/chat/SignedMessageChain.java.patch index 4d67b4695..aa80e4a20 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/network/chat/SignedMessageChain.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/network/chat/SignedMessageChain.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/network/chat/SignedMessageChain.java b/net/minecraft/network/chat/SignedMessageChain.java +index 67b2f87f8424c5642010b3d9852b55c40d4947e1..37549fba0ad31db502354c7b101a56d8f2e4c473 100644 --- a/net/minecraft/network/chat/SignedMessageChain.java +++ b/net/minecraft/network/chat/SignedMessageChain.java -@@ -44,7 +_,7 @@ +@@ -44,7 +44,7 @@ public class SignedMessageChain { SignedMessageLink signedMessageLink = SignedMessageChain.this.nextLink; if (signedMessageLink == null) { throw new SignedMessageChain.DecodeException(SignedMessageChain.DecodeException.CHAIN_BROKEN); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/Main.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/Main.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/Main.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/Main.java.patch index 2b6f384e7..3f5a1647e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/Main.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/Main.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/Main.java b/net/minecraft/server/Main.java +index 9216e85e74bb0121c72665f155b07cf9a37f430a..31ce71305260f082729780d4e8fb4dba557f9883 100644 --- a/net/minecraft/server/Main.java +++ b/net/minecraft/server/Main.java -@@ -105,6 +_,13 @@ +@@ -105,6 +105,13 @@ public class Main { JvmProfiler.INSTANCE.start(Environment.SERVER); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/MinecraftServer.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/MinecraftServer.java.patch similarity index 82% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/MinecraftServer.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/MinecraftServer.java.patch index f37e7049e..c3cf217ef 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/MinecraftServer.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/MinecraftServer.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java +index ca2caace6aab0dfcb0ab7a0fd28e66555c62fdc5..7a54f6bc2a364c1d3ac1ed58b33ecf720a305840 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java -@@ -290,6 +_,7 @@ +@@ -290,6 +290,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop processQueue = new java.util.concurrent.ConcurrentLinkedQueue(); public int autosavePeriod; // Paper - don't store the vanilla dispatcher -@@ -306,6 +_,8 @@ +@@ -306,6 +307,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop pluginsBlockingSleep = new java.util.HashSet<>(); // Paper - API to allow/disallow tick sleeping public static final long SERVER_INIT = System.nanoTime(); // Paper - Lag compensation @@ -17,7 +25,7 @@ // Paper start - improve tick loop public final ca.spottedleaf.moonrise.common.time.TickData tickTimes1s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(1L)); public final ca.spottedleaf.moonrise.common.time.TickData tickTimes5s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(5L)); -@@ -375,6 +_,7 @@ +@@ -375,6 +378,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop catchup) { -@@ -1785,7 +_,7 @@ + final long difference = ticksBehind - catchup; +@@ -1785,7 +1812,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/PlayerAdvancements.java b/net/minecraft/server/PlayerAdvancements.java +index 98004b77b7f40d315f41be82105df6d4b9000e33..9612e9dd36010ffcc0e038301233d90b3ed7aeed 100644 --- a/net/minecraft/server/PlayerAdvancements.java +++ b/net/minecraft/server/PlayerAdvancements.java -@@ -146,6 +_,7 @@ +@@ -146,6 +146,7 @@ public class PlayerAdvancements { AdvancementHolder advancementHolder = advancementManager.get(path); if (advancementHolder == null) { if (!path.getNamespace().equals(Identifier.DEFAULT_NAMESPACE)) return; // CraftBukkit @@ -8,7 +16,7 @@ LOGGER.warn("Ignored advancement '{}' in progress file {} - it doesn't exist anymore?", path, this.playerSavePath); } else { this.startProgress(advancementHolder, progress); -@@ -193,6 +_,7 @@ +@@ -193,6 +194,7 @@ public class PlayerAdvancements { advancement.value().display().ifPresent(displayInfo -> { // Paper start - Add Adventure message to PlayerAdvancementDoneEvent if (event.message() != null && this.player.level().getGameRules().get(GameRules.SHOW_ADVANCEMENT_MESSAGES)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/commands/EnchantCommand.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/EnchantCommand.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/commands/EnchantCommand.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/EnchantCommand.java.patch index 6379c1d94..e371f4b2a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/commands/EnchantCommand.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/EnchantCommand.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/commands/EnchantCommand.java b/net/minecraft/server/commands/EnchantCommand.java +index 21548995eb278236946b6e495d27f6261e24f7a2..1735a87a974028779cc64cbeb39ff2eeb16034b1 100644 --- a/net/minecraft/server/commands/EnchantCommand.java +++ b/net/minecraft/server/commands/EnchantCommand.java -@@ -70,7 +_,7 @@ +@@ -70,7 +70,7 @@ public class EnchantCommand { private static int enchant(CommandSourceStack source, Collection targets, Holder enchantment, int level) throws CommandSyntaxException { Enchantment enchantment1 = enchantment.value(); @@ -9,7 +17,7 @@ throw ERROR_LEVEL_TOO_HIGH.create(level, enchantment1.getMaxLevel()); } else { int i = 0; -@@ -80,7 +_,7 @@ +@@ -80,7 +80,7 @@ public class EnchantCommand { ItemStack mainHandItem = livingEntity.getMainHandItem(); if (!mainHandItem.isEmpty()) { if (enchantment1.canEnchant(mainHandItem) diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/commands/GameModeCommand.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/GameModeCommand.java.patch similarity index 70% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/commands/GameModeCommand.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/GameModeCommand.java.patch index f06984320..eb392822f 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/commands/GameModeCommand.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/GameModeCommand.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/commands/GameModeCommand.java b/net/minecraft/server/commands/GameModeCommand.java +index 503447fbb54bed493f1d867c75ef3f344fe7b81b..a601df223c685f435241cd193a912898e60bab03 100644 --- a/net/minecraft/server/commands/GameModeCommand.java +++ b/net/minecraft/server/commands/GameModeCommand.java -@@ -53,6 +_,18 @@ +@@ -53,6 +53,18 @@ public class GameModeCommand { } private static int setMode(CommandContext context, Collection players, GameType gameType) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/commands/GiveCommand.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/GiveCommand.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/commands/GiveCommand.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/GiveCommand.java.patch index 8037f0654..0fcac4169 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/commands/GiveCommand.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/commands/GiveCommand.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/commands/GiveCommand.java b/net/minecraft/server/commands/GiveCommand.java +index 0fc63717af24ca37497db8ea5a2395548d9d8491..2f8fd2240d603346e751a5f7afb91121065423d6 100644 --- a/net/minecraft/server/commands/GiveCommand.java +++ b/net/minecraft/server/commands/GiveCommand.java -@@ -68,6 +_,7 @@ +@@ -68,6 +68,7 @@ public class GiveCommand { i1 -= min; ItemStack itemStack1 = item.createItemStack(min, false); boolean flag = serverPlayer.getInventory().add(itemStack1); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/dedicated/DedicatedServer.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/dedicated/DedicatedServer.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/dedicated/DedicatedServer.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/dedicated/DedicatedServer.java.patch index 8230e207e..022c55151 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/dedicated/DedicatedServer.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/dedicated/DedicatedServer.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/dedicated/DedicatedServer.java b/net/minecraft/server/dedicated/DedicatedServer.java +index eb06d8f012684845146429832e977e6c1ddcd62b..6a0ccd6eb3e355348c68db3de980f4eddea1aaea 100644 --- a/net/minecraft/server/dedicated/DedicatedServer.java +++ b/net/minecraft/server/dedicated/DedicatedServer.java -@@ -195,6 +_,7 @@ +@@ -195,6 +195,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface public void run() { if (!org.bukkit.craftbukkit.Main.useConsole) return; // CraftBukkit // Paper start - Use TerminalConsoleAppender @@ -8,7 +16,7 @@ new com.destroystokyo.paper.console.PaperConsole(DedicatedServer.this).start(); /* BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in, StandardCharsets.UTF_8)); -@@ -273,6 +_,15 @@ +@@ -273,6 +274,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface io.papermc.paper.command.PaperCommands.registerCommands(this); // Paper - setup /paper command this.server.spark.registerCommandBeforePlugins(this.server); // Paper - spark com.destroystokyo.paper.Metrics.PaperMetrics.startMetrics(); // Paper - start metrics @@ -24,7 +32,7 @@ com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // Paper - load version history now // this.worldData.setGameType(properties.gameMode.get()); // CraftBukkit - moved to world loading -@@ -315,6 +_,30 @@ +@@ -315,6 +325,30 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface if (true) throw new IllegalStateException("Failed to bind to port", var11); // Paper - Propagate failed to bind to port error return false; } @@ -55,13 +63,13 @@ // CraftBukkit start this.server.loadPlugins(); -@@ -389,6 +_,9 @@ - MinecraftServerStatistics.registerJmxMonitoring(this); +@@ -390,6 +424,9 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface LOGGER.info("JMX monitoring enabled"); } -+ + + org.purpurmc.purpur.task.BossBarTask.startAll(); // Purpur - Implement TPSBar + if (org.purpurmc.purpur.PurpurConfig.beeCountPayload) org.purpurmc.purpur.task.BeehiveTask.instance().register(); // Purpur - Give bee counts in beehives to Purpur clients - ++ this.notificationManager().serverStarted(); return true; + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/dedicated/DedicatedServerProperties.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/dedicated/DedicatedServerProperties.java.patch similarity index 61% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/dedicated/DedicatedServerProperties.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/dedicated/DedicatedServerProperties.java.patch index 1a7ed8c07..0623a6a86 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/dedicated/DedicatedServerProperties.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/dedicated/DedicatedServerProperties.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/dedicated/DedicatedServerProperties.java b/net/minecraft/server/dedicated/DedicatedServerProperties.java +index bbd8f68d166ebd0370f4b39362468fdc7d70f7f0..2a3b10c5e031ef44a2b53bc4fdc6e86c917f75d4 100644 --- a/net/minecraft/server/dedicated/DedicatedServerProperties.java +++ b/net/minecraft/server/dedicated/DedicatedServerProperties.java -@@ -57,6 +_,7 @@ +@@ -57,6 +57,7 @@ public class DedicatedServerProperties extends Settings +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/gui/MinecraftServerGui.java b/net/minecraft/server/gui/MinecraftServerGui.java +index f262a7c5ae4e7d56f16f5c0f4f145a2e428abbe4..614c7d9f673c926562acc8fa3b3788623900db41 100644 --- a/net/minecraft/server/gui/MinecraftServerGui.java +++ b/net/minecraft/server/gui/MinecraftServerGui.java -@@ -39,6 +_,11 @@ +@@ -39,6 +39,11 @@ public class MinecraftServerGui extends JComponent { private Thread logAppenderThread; private final Collection finalizers = Lists.newArrayList(); final AtomicBoolean isClosing = new AtomicBoolean(); @@ -12,7 +20,7 @@ public static MinecraftServerGui showFrameFor(final DedicatedServer server) { try { -@@ -46,7 +_,7 @@ +@@ -46,7 +51,7 @@ public class MinecraftServerGui extends JComponent { } catch (Exception var3) { } @@ -21,7 +29,7 @@ final MinecraftServerGui minecraftServerGui = new MinecraftServerGui(server); jFrame.setDefaultCloseOperation(2); jFrame.add(minecraftServerGui); -@@ -54,7 +_,7 @@ +@@ -54,7 +59,7 @@ public class MinecraftServerGui extends JComponent { jFrame.setLocationRelativeTo(null); jFrame.setVisible(true); // Paper start - Improve ServerGUI @@ -30,7 +38,7 @@ try { jFrame.setIconImage(javax.imageio.ImageIO.read(java.util.Objects.requireNonNull(MinecraftServerGui.class.getClassLoader().getResourceAsStream("logo.png")))); } catch (java.io.IOException ignore) { -@@ -64,7 +_,7 @@ +@@ -64,7 +69,7 @@ public class MinecraftServerGui extends JComponent { @Override public void windowClosing(WindowEvent event) { if (!minecraftServerGui.isClosing.getAndSet(true)) { @@ -39,7 +47,7 @@ server.halt(true); minecraftServerGui.runFinalizers(); } -@@ -112,7 +_,7 @@ +@@ -112,7 +117,7 @@ public class MinecraftServerGui extends JComponent { private JComponent buildChatPanel() { JPanel jPanel = new JPanel(new BorderLayout()); @@ -48,7 +56,7 @@ JScrollPane jScrollPane = new JScrollPane(jTextArea, 22, 30); jTextArea.setEditable(false); jTextArea.setFont(MONOSPACED); -@@ -121,10 +_,43 @@ +@@ -121,10 +126,43 @@ public class MinecraftServerGui extends JComponent { String trimmed = jTextField.getText().trim(); if (!trimmed.isEmpty()) { this.server.handleConsoleInput(trimmed, this.server.createCommandSourceStack()); @@ -92,7 +100,7 @@ jTextArea.addFocusListener(new FocusAdapter() { @Override public void focusGained(FocusEvent event) { -@@ -159,7 +_,7 @@ +@@ -159,7 +197,7 @@ public class MinecraftServerGui extends JComponent { } private static final java.util.regex.Pattern ANSI = java.util.regex.Pattern.compile("\\e\\[[\\d;]*[^\\d;]"); // CraftBukkit // Paper @@ -101,7 +109,7 @@ if (!SwingUtilities.isEventDispatchThread()) { SwingUtilities.invokeLater(() -> this.print(textArea, scrollPane, line)); } else { -@@ -170,16 +_,29 @@ +@@ -170,10 +208,11 @@ public class MinecraftServerGui extends JComponent { flag = verticalScrollBar.getValue() + verticalScrollBar.getSize().getHeight() + MONOSPACED.getSize() * 4 > verticalScrollBar.getMaximum(); } @@ -115,10 +123,10 @@ if (flag) { verticalScrollBar.setValue(Integer.MAX_VALUE); - } +@@ -181,6 +220,18 @@ public class MinecraftServerGui extends JComponent { } } -+ + + // Purpur start - GUI Improvements + public static class CommandHistory extends java.util.LinkedList { + @Override @@ -130,6 +138,7 @@ + } + } + // Purpur end - GUI Improvements - ++ // Paper start - Add onboarding message for initial server start private JComponent buildOnboardingPanel() { + String onboardingLink = "https://docs.papermc.io/paper/next-steps"; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/gui/StatsComponent.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/gui/StatsComponent.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/gui/StatsComponent.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/gui/StatsComponent.java.patch index fb8ae8440..15073a172 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/gui/StatsComponent.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/gui/StatsComponent.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/gui/StatsComponent.java b/net/minecraft/server/gui/StatsComponent.java +index f485e83fa6cbf510472bcffd18d29a41e177e856..84b72e8a44ef8f964079faddd3bff29601a8a3c9 100644 --- a/net/minecraft/server/gui/StatsComponent.java +++ b/net/minecraft/server/gui/StatsComponent.java -@@ -41,7 +_,7 @@ +@@ -41,7 +41,7 @@ public class StatsComponent extends JComponent { } this.msgs[0] = "Memory use: " + l / 1024L / 1024L + " mb (" + Runtime.getRuntime().freeMemory() * 100L / Runtime.getRuntime().maxMemory() + "% free)"; this.msgs[1] = "Avg tick: " + DECIMAL_FORMAT.format((double)this.server.getAverageTickTimeNanos() / TimeUtil.NANOSECONDS_PER_MILLISECOND) + " ms"; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerLevel.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerLevel.java.patch similarity index 88% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerLevel.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerLevel.java.patch index 651f12803..986fd7760 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerLevel.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerLevel.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java +index dc65503a2d785d64d37b76b0303f51cf66d9769a..5130c0067f01eec31c69b9e71d904f932943b922 100644 --- a/net/minecraft/server/level/ServerLevel.java +++ b/net/minecraft/server/level/ServerLevel.java -@@ -218,6 +_,8 @@ +@@ -218,6 +218,8 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe private final StructureManager structureManager; private final StructureCheck structureCheck; private final boolean tickTime; @@ -9,7 +17,7 @@ private final RandomSequences randomSequences; final LevelDebugSynchronizers debugSynchronizers = new LevelDebugSynchronizers(this); -@@ -622,8 +_,25 @@ +@@ -622,8 +624,25 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe // CraftBukkit end this.tickTime = tickTime; this.server = server; @@ -36,7 +44,7 @@ ChunkGenerator chunkGenerator = levelStem.generator(); // CraftBukkit start this.serverLevelData.setWorld(this); -@@ -709,6 +_,7 @@ +@@ -709,6 +728,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe this.chunkDataController = new ca.spottedleaf.moonrise.patches.chunk_system.io.datacontroller.ChunkDataController((ServerLevel)(Object)this, this.chunkTaskScheduler); // Paper end - rewrite chunk system this.getCraftServer().addWorld(this.getWorld()); // CraftBukkit @@ -44,7 +52,7 @@ } // Paper start -@@ -760,7 +_,7 @@ +@@ -760,7 +780,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe } int i = this.getGameRules().get(GameRules.PLAYERS_SLEEPING_PERCENTAGE); @@ -53,7 +61,7 @@ // Paper start - create time skip event - move up calculations final long newDayTime = this.levelData.getDayTime() + 24000L; org.bukkit.event.world.TimeSkipEvent event = new org.bukkit.event.world.TimeSkipEvent( -@@ -895,6 +_,13 @@ +@@ -895,6 +915,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe this.serverLevelData.getScheduledEvents().tick(this.server, l); Profiler.get().pop(); if (this.getGameRules().get(GameRules.ADVANCE_TIME)) { @@ -67,7 +75,7 @@ this.setDayTime(this.levelData.getDayTime() + 1L); } } -@@ -902,6 +_,20 @@ +@@ -902,6 +929,20 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe public void setDayTime(long time) { this.serverLevelData.setDayTime(time); @@ -88,7 +96,7 @@ } public long getDayCount() { -@@ -1010,9 +_,17 @@ +@@ -1010,9 +1051,17 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe && this.random.nextDouble() < currentDifficultyAt.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01) // Paper - Configurable spawn chances for skeleton horses && !this.getBlockState(blockPos.below()).is(BlockTags.LIGHTNING_RODS); if (flag) { @@ -108,7 +116,7 @@ skeletonHorse.setAge(0); skeletonHorse.setPos(blockPos.getX(), blockPos.getY(), blockPos.getZ()); this.addFreshEntity(skeletonHorse, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.LIGHTNING); // CraftBukkit -@@ -1047,9 +_,35 @@ +@@ -1047,9 +1096,35 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe if (blockState.is(Blocks.SNOW)) { int layersValue = blockState.getValue(SnowLayerBlock.LAYERS); if (layersValue < Math.min(i, 8)) { @@ -144,7 +152,7 @@ } } else { org.bukkit.craftbukkit.event.CraftEventFactory.handleBlockFormEvent(this, heightmapPos, Blocks.SNOW.defaultBlockState(), Block.UPDATE_ALL, null); // CraftBukkit -@@ -1070,7 +_,7 @@ +@@ -1070,7 +1145,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe poiType -> poiType.is(PoiTypes.LIGHTNING_ROD), blockPos -> blockPos.getY() == this.getHeight(Heightmap.Types.WORLD_SURFACE, blockPos.getX(), blockPos.getZ()) - 1, pos, @@ -153,7 +161,7 @@ PoiManager.Occupancy.ANY ); return optional.map(blockPos -> blockPos.above(1)); -@@ -1119,8 +_,26 @@ +@@ -1119,8 +1194,26 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe int i = this.getGameRules().get(GameRules.PLAYERS_SLEEPING_PERCENTAGE); Component component; if (this.sleepStatus.areEnoughSleeping(i)) { @@ -180,7 +188,7 @@ component = Component.translatable("sleep.players_sleeping", this.sleepStatus.amountSleeping(), this.sleepStatus.sleepersNeeded(i)); } -@@ -1275,6 +_,7 @@ +@@ -1275,6 +1368,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe @VisibleForTesting public void resetWeatherCycle() { // CraftBukkit start @@ -188,7 +196,7 @@ this.serverLevelData.setRaining(false, org.bukkit.event.weather.WeatherChangeEvent.Cause.SLEEP); // Paper - Add cause to Weather/ThunderChangeEvents // If we stop due to everyone sleeping we should reset the weather duration to some other random value. // Not that everyone ever manages to get the whole server to sleep at the same time.... -@@ -1282,6 +_,7 @@ +@@ -1282,6 +1376,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe this.serverLevelData.setRainTime(0); } // CraftBukkit end @@ -196,7 +204,7 @@ this.serverLevelData.setThundering(false, org.bukkit.event.weather.ThunderChangeEvent.Cause.SLEEP); // Paper - Add cause to Weather/ThunderChangeEvents // CraftBukkit start // If we stop due to everyone sleeping we should reset the weather duration to some other random value. -@@ -1954,7 +_,7 @@ +@@ -1954,7 +2049,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe Explosion.BlockInteraction blockInteraction = switch (explosionInteraction) { case NONE -> Explosion.BlockInteraction.KEEP; case BLOCK -> this.getDestroyType(GameRules.BLOCK_EXPLOSION_DROP_DECAY); @@ -205,7 +213,7 @@ ? this.getDestroyType(GameRules.MOB_EXPLOSION_DROP_DECAY) : Explosion.BlockInteraction.KEEP; case TNT -> this.getDestroyType(GameRules.TNT_EXPLOSION_DROP_DECAY); -@@ -2846,7 +_,7 @@ +@@ -2846,7 +2941,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe // Spigot start if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message // Paper start - Fix merchant inventory not closing on entity removal diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerPlayer.java.patch similarity index 88% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerPlayer.java.patch index 9939585d4..8daf28a74 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerPlayer.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java +index 79c804245c7f41a5a7f062e1c5e01760adde7d84..a16813766ad244c002a752b0c03779c550d39e75 100644 --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java -@@ -433,6 +_,9 @@ +@@ -433,6 +433,9 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc public boolean isRealPlayer; // Paper public com.destroystokyo.paper.event.entity.@Nullable PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper - PlayerNaturallySpawnCreaturesEvent public org.bukkit.event.player.PlayerQuitEvent.@Nullable QuitReason quitReason = null; // Paper - Add API for quit reason; there are a lot of changes to do if we change all methods leading to the event @@ -10,7 +18,7 @@ // Paper start - rewrite chunk system private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader; -@@ -506,6 +_,9 @@ +@@ -506,6 +509,9 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc this.respawnConfig = input.read("respawn", ServerPlayer.RespawnConfig.CODEC).orElse(null); this.spawnExtraParticlesOnFall = input.getBooleanOr("spawn_extra_particles_on_fall", false); this.raidOmenPosition = input.read("raid_omen_position", BlockPos.CODEC).orElse(null); @@ -20,7 +28,7 @@ // Paper start - Expand PlayerGameModeChangeEvent this.loadGameTypes(input); } -@@ -547,6 +_,9 @@ +@@ -547,6 +553,9 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc output.store("ShoulderEntityRight", CompoundTag.CODEC, this.getShoulderEntityRight()); } this.getBukkitEntity().setExtraData(output); // CraftBukkit @@ -30,7 +38,7 @@ } private void saveParentVehicle(ValueOutput output) { -@@ -1183,6 +_,7 @@ +@@ -1183,6 +1192,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc // Paper - moved up to sendClientboundPlayerCombatKillPacket() sendClientboundPlayerCombatKillPacket(event.getShowDeathMessages(), deathScreenMessage); // Paper - Expand PlayerDeathEvent Team team = this.getTeam(); @@ -38,7 +46,7 @@ if (team == null || team.getDeathMessageVisibility() == Team.Visibility.ALWAYS) { this.server.getPlayerList().broadcastSystemMessage(deathMessage, false); } else if (team.getDeathMessageVisibility() == Team.Visibility.HIDE_FOR_OTHER_TEAMS) { -@@ -1290,6 +_,13 @@ +@@ -1290,6 +1300,13 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc if (this.isInvulnerableTo(level, damageSource)) { return false; } else { @@ -52,7 +60,7 @@ Entity entity = damageSource.getEntity(); if (!( // Paper - split the if statement. If below statement is false, hurtServer would not have been evaluated. Return false. !(entity instanceof Player player && !this.canHarmPlayer(player)) -@@ -1544,6 +_,7 @@ +@@ -1544,6 +1561,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc profilerFiller.pop(); profilerFiller.push("placing"); @@ -60,7 +68,7 @@ this.setServerLevel(level); this.connection.internalTeleport(PositionMoveRotation.of(teleportTransition), teleportTransition.relatives()); // CraftBukkit - use internal teleport without event this.connection.resetPosition(); -@@ -1652,7 +_,7 @@ +@@ -1652,7 +1670,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc new AABB(vec3.x() - 8.0, vec3.y() - 5.0, vec3.z() - 8.0, vec3.x() + 8.0, vec3.y() + 5.0, vec3.z() + 8.0), monster -> monster.isPreventingPlayerRest(this.level(), this) ); @@ -69,7 +77,7 @@ return Either.left(Player.BedSleepingProblem.NOT_SAFE); } } -@@ -1692,8 +_,19 @@ +@@ -1692,8 +1710,19 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc CriteriaTriggers.SLEPT_IN_BED.trigger(this); }); if (!this.level().canSleepThroughNights()) { @@ -90,7 +98,7 @@ this.level().updateSleepingPlayerList(); return either; -@@ -1784,6 +_,7 @@ +@@ -1784,6 +1813,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc @Override public void openTextEdit(SignBlockEntity signEntity, boolean isFrontText) { @@ -98,7 +106,7 @@ this.connection.send(new ClientboundBlockUpdatePacket(this.level(), signEntity.getBlockPos())); this.connection.send(new ClientboundOpenSignEditorPacket(signEntity.getBlockPos(), isFrontText)); } -@@ -2121,6 +_,26 @@ +@@ -2121,6 +2151,26 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc this.lastSentExp = -1; // CraftBukkit - Added to reset } @@ -125,7 +133,7 @@ @Override public void displayClientMessage(Component message, boolean overlay) { this.sendSystemMessage(message, overlay); -@@ -2355,6 +_,20 @@ +@@ -2355,6 +2405,20 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc ); } @@ -146,14 +154,13 @@ public void sendSystemMessage(Component message) { this.sendSystemMessage(message, false); } -@@ -2492,7 +_,67 @@ +@@ -2492,8 +2556,68 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc public void resetLastActionTime() { this.lastActionTime = Util.getMillis(); -- } + this.setAfk(false); // Purpur - AFK API -+ } -+ + } + + // Purpur start - AFK API + private boolean isAfk = false; + @@ -212,10 +219,11 @@ + return !this.isAfk() && super.canBeCollidedWith(entity); + } + // Purpur end - AFK API - ++ public ServerStatsCounter getStats() { return this.stats; -@@ -3126,4 +_,65 @@ + } +@@ -3126,4 +3250,65 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc return (org.bukkit.craftbukkit.entity.CraftPlayer) super.getBukkitEntity(); } // CraftBukkit end diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch index 63dee580f..9c3cbeaa0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/ServerPlayerGameMode.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/level/ServerPlayerGameMode.java b/net/minecraft/server/level/ServerPlayerGameMode.java +index 84d19d79e77cec6a5d64f59fbcce703e467b2407..9b9cdb23a55b82efbeea3ba68b8144c15791dff0 100644 --- a/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/net/minecraft/server/level/ServerPlayerGameMode.java -@@ -365,6 +_,7 @@ +@@ -365,6 +365,7 @@ public class ServerPlayerGameMode { } return false; } @@ -8,7 +16,7 @@ } // CraftBukkit end -@@ -490,6 +_,7 @@ +@@ -490,6 +491,7 @@ public class ServerPlayerGameMode { public InteractionHand interactHand; public ItemStack interactItemStack; public InteractionResult useItemOn(ServerPlayer player, Level level, ItemStack stack, InteractionHand hand, BlockHitResult hitResult) { @@ -16,7 +24,7 @@ BlockPos blockPos = hitResult.getBlockPos(); BlockState blockState = level.getBlockState(blockPos); boolean cancelledBlock = false; -@@ -538,7 +_,7 @@ +@@ -538,7 +540,7 @@ public class ServerPlayerGameMode { boolean flag = !player.getMainHandItem().isEmpty() || !player.getOffhandItem().isEmpty(); boolean flag1 = player.isSecondaryUseActive() && flag; ItemStack itemStack = stack.copy(); @@ -25,7 +33,7 @@ InteractionResult interactionResult = blockState.useItemOn(player.getItemInHand(hand), level, player, hand, hitResult); if (interactionResult.consumesAction()) { CriteriaTriggers.ITEM_USED_ON_BLOCK.trigger(player, blockPos, itemStack); -@@ -584,4 +_,18 @@ +@@ -584,4 +586,18 @@ public class ServerPlayerGameMode { public void setLevel(ServerLevel level) { this.level = level; } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/WorldGenRegion.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/WorldGenRegion.java.patch similarity index 50% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/level/WorldGenRegion.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/WorldGenRegion.java.patch index a68b41c11..7426f1a4c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/level/WorldGenRegion.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/level/WorldGenRegion.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/level/WorldGenRegion.java b/net/minecraft/server/level/WorldGenRegion.java +index bf5e460b89d7c0fcdcb8826ba693bd23761df430..04f06861cc84c00a71a165ecf59920b5b5900c69 100644 --- a/net/minecraft/server/level/WorldGenRegion.java +++ b/net/minecraft/server/level/WorldGenRegion.java -@@ -311,6 +_,7 @@ +@@ -311,6 +311,7 @@ public class WorldGenRegion implements WorldGenLevel { return true; } else { // Paper start - Buffer OOB setBlock calls diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch index eb1276339..d48c1b440 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +index b8a4b4cc02a2fc6b70f4b840796eed501aad6239..02c6733ce1de543dab3bf558148879039e501257 100644 --- a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -40,10 +_,11 @@ +@@ -40,10 +40,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack public final Connection connection; // Paper private final boolean transferred; //private long keepAliveTime; // Paper - improve keepalives @@ -13,7 +21,7 @@ private volatile int latency; // Paper - improve keepalives - make volatile private final io.papermc.paper.util.KeepAlive keepAlive; // Paper - improve keepalives private volatile boolean suspendFlushingOnServerThread = false; -@@ -54,6 +_,10 @@ +@@ -54,6 +55,10 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack public final java.util.Map packCallbacks = new java.util.concurrent.ConcurrentHashMap<>(); // Paper - adventure resource pack callbacks private static final long KEEPALIVE_LIMIT = Long.getLong("paper.playerconnection.keepalive", 30) * 1000; // Paper - provide property to set keepalive limit protected static final net.minecraft.resources.Identifier MINECRAFT_BRAND = net.minecraft.resources.Identifier.withDefaultNamespace("brand"); // Paper - Brand support @@ -24,7 +32,7 @@ // Paper start - retain certain values public @Nullable String playerBrand; public final java.util.Set pluginMessagerChannels; -@@ -105,6 +_,18 @@ +@@ -105,6 +110,18 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack // Paper start - improve keepalives long now = System.nanoTime(); io.papermc.paper.util.KeepAlive.PendingKeepAlive pending = this.keepAlive.pendingKeepAlives.peek(); @@ -43,7 +51,7 @@ if (pending != null && pending.challengeId() == packet.getId()) { this.keepAlive.pendingKeepAlives.remove(pending); -@@ -179,6 +_,12 @@ +@@ -179,6 +196,12 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack return; } @@ -56,7 +64,7 @@ if (identifier.equals(MINECRAFT_BRAND)) { this.playerBrand = new net.minecraft.network.FriendlyByteBuf(io.netty.buffer.Unpooled.wrappedBuffer(data)).readUtf(256); } -@@ -264,6 +_,23 @@ +@@ -264,6 +287,23 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack Profiler.get().push("keepAlive"); long millis = Util.getMillis(); // Paper start - improve keepalives diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerGamePacketListenerImpl.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerGamePacketListenerImpl.java.patch similarity index 91% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerGamePacketListenerImpl.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerGamePacketListenerImpl.java.patch index e65c1d975..a72318178 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerGamePacketListenerImpl.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerGamePacketListenerImpl.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java +index e158d614abed8d16e80192c0c9abd8537c92b9dc..74f8f1c8a3d688fadcbc266bac126e13d9d93dc5 100644 --- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -346,6 +_,20 @@ +@@ -346,6 +346,20 @@ public class ServerGamePacketListenerImpl } // Paper end - configuration phase API @@ -21,7 +29,7 @@ @Override public void tick() { if (this.isDisconnected()) return; // Paper -@@ -364,6 +_,12 @@ +@@ -364,6 +378,12 @@ public class ServerGamePacketListenerImpl && this.server.playerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > TimeUnit.MINUTES.toMillis(this.server.playerIdleTimeout()) && !this.player.wonGame) { @@ -34,7 +42,7 @@ this.disconnect(Component.translatable("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause } } -@@ -683,6 +_,8 @@ +@@ -683,6 +703,8 @@ public class ServerGamePacketListenerImpl this.lastYaw = to.getYaw(); this.lastPitch = to.getPitch(); @@ -43,7 +51,7 @@ Location oldTo = to.clone(); PlayerMoveEvent event = new PlayerMoveEvent(player, from, to); this.cserver.getPluginManager().callEvent(event); -@@ -762,6 +_,7 @@ +@@ -762,6 +784,7 @@ public class ServerGamePacketListenerImpl PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); if (packet.getId() == this.awaitingTeleport) { if (this.awaitingPositionFromClient == null) { @@ -51,7 +59,7 @@ this.disconnect(Component.translatable("multiplayer.disconnect.invalid_player_movement"), org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PLAYER_MOVEMENT); // Paper - kick event cause return; } -@@ -1302,6 +_,10 @@ +@@ -1302,6 +1325,10 @@ public class ServerGamePacketListenerImpl final int maxBookPageSize = pageMax.intValue(); final double multiplier = Math.clamp(io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.totalMultiplier, 0.3D, 1D); long byteAllowed = maxBookPageSize; @@ -62,7 +70,7 @@ for (final String page : pageList) { final int byteLength = page.getBytes(java.nio.charset.StandardCharsets.UTF_8).length; byteTotal += byteLength; -@@ -1326,7 +_,8 @@ +@@ -1326,7 +1353,8 @@ public class ServerGamePacketListenerImpl } if (byteTotal > byteAllowed) { @@ -72,7 +80,7 @@ this.disconnectAsync(Component.literal("Book too large!"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause // Paper - add proper async disconnect return; } -@@ -1345,31 +_,45 @@ +@@ -1345,31 +1373,45 @@ public class ServerGamePacketListenerImpl Optional optional = packet.title(); optional.ifPresent(list::add); list.addAll(packet.pages()); @@ -122,7 +130,7 @@ itemStack.set( DataComponents.WRITTEN_BOOK_CONTENT, new WrittenBookContent(this.filterableFromOutgoing(title), this.player.getPlainTextName(), 0, list, true) ); -@@ -1382,6 +_,16 @@ +@@ -1382,6 +1424,16 @@ public class ServerGamePacketListenerImpl return this.player.isTextFilteringEnabled() ? Filterable.passThrough(filteredText.filteredOrEmpty()) : Filterable.from(filteredText); } @@ -139,7 +147,7 @@ @Override public void handleEntityTagQuery(ServerboundEntityTagQueryPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); -@@ -1421,7 +_,15 @@ +@@ -1421,7 +1473,15 @@ public class ServerGamePacketListenerImpl @Override public void handleMovePlayer(ServerboundMovePlayerPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); @@ -156,7 +164,7 @@ this.disconnect(Component.translatable("multiplayer.disconnect.invalid_player_movement"), org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PLAYER_MOVEMENT); // Paper - kick event cause } else { ServerLevel serverLevel = this.player.level(); -@@ -1604,7 +_,7 @@ +@@ -1604,7 +1664,7 @@ public class ServerGamePacketListenerImpl movedWrongly = true; if (event.getLogWarning()) // Paper end @@ -165,7 +173,7 @@ } // Paper } -@@ -1669,6 +_,8 @@ +@@ -1669,6 +1729,8 @@ public class ServerGamePacketListenerImpl this.lastYaw = to.getYaw(); this.lastPitch = to.getPitch(); @@ -174,7 +182,7 @@ Location oldTo = to.clone(); PlayerMoveEvent event = new PlayerMoveEvent(player, from, to); this.cserver.getPluginManager().callEvent(event); -@@ -1724,6 +_,13 @@ +@@ -1724,6 +1786,13 @@ public class ServerGamePacketListenerImpl this.player.tryResetCurrentImpulseContext(); } @@ -188,7 +196,7 @@ this.player.checkMovementStatistics(this.player.getX() - x, this.player.getY() - y, this.player.getZ() - z); this.lastGoodX = this.player.getX(); this.lastGoodY = this.player.getY(); -@@ -1741,6 +_,17 @@ +@@ -1741,6 +1810,17 @@ public class ServerGamePacketListenerImpl } } @@ -206,7 +214,7 @@ private boolean shouldCheckPlayerMovement(boolean isElytraMovement) { if (this.isSingleplayerOwner()) { return false; -@@ -2169,6 +_,7 @@ +@@ -2169,6 +2249,7 @@ public class ServerGamePacketListenerImpl boolean cancelled; if (hitResult == null || hitResult.getType() != HitResult.Type.BLOCK) { @@ -214,7 +222,7 @@ org.bukkit.event.player.PlayerInteractEvent event = CraftEventFactory.callPlayerInteractEvent(this.player, Action.RIGHT_CLICK_AIR, itemInHand, hand); cancelled = event.useItemInHand() == Event.Result.DENY; } else { -@@ -2821,6 +_,7 @@ +@@ -2821,6 +2902,7 @@ public class ServerGamePacketListenerImpl AABB boundingBox = target.getBoundingBox(); if (packet.isWithinRange(this.player, boundingBox, io.papermc.paper.configuration.GlobalConfiguration.get().misc.clientInteractionLeniencyDistance.or(3.0))) { // Paper - configurable lenience value for interact range @@ -222,7 +230,7 @@ packet.dispatch( new ServerboundInteractPacket.Handler() { private void performInteraction(InteractionHand hand, ServerGamePacketListenerImpl.EntityInteraction entityInteraction, PlayerInteractEntityEvent event) { // CraftBukkit -@@ -3581,7 +_,7 @@ +@@ -3581,7 +3663,7 @@ public class ServerGamePacketListenerImpl @Override public void handleChangeGameMode(ServerboundChangeGameModePacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch similarity index 70% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch index ec161a6f4..5967b9f17 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerLoginPacketListenerImpl.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +index 51a29ab542136e67741be10bbc5c6377715a207c..e16bb386ae500bc290970f8cba33c5999cf0a58d 100644 --- a/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -278,7 +_,7 @@ +@@ -278,7 +278,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, ServerLoginPacketListenerImpl.LOGGER.warn("Failed to verify username but will let them in anyway!"); ServerLoginPacketListenerImpl.this.startClientVerification(ServerLoginPacketListenerImpl.this.createOfflineProfile(string1)); // Spigot } else { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerStatusPacketListenerImpl.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerStatusPacketListenerImpl.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerStatusPacketListenerImpl.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerStatusPacketListenerImpl.java.patch index 3fc9d014a..761850383 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerStatusPacketListenerImpl.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/network/ServerStatusPacketListenerImpl.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/network/ServerStatusPacketListenerImpl.java b/net/minecraft/server/network/ServerStatusPacketListenerImpl.java +index 465559113071a47e706f77a5b0996597ee986b3d..1b966dc52b067cd9d1fa9f500b692e3f75f1cc90 100644 --- a/net/minecraft/server/network/ServerStatusPacketListenerImpl.java +++ b/net/minecraft/server/network/ServerStatusPacketListenerImpl.java -@@ -37,6 +_,7 @@ +@@ -37,6 +37,7 @@ public class ServerStatusPacketListenerImpl implements ServerStatusPacketListene } else { this.hasRequestedStatus = true; // this.connection.send(new ClientboundStatusResponsePacket(this.status)); // Paper diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/players/PlayerList.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/players/PlayerList.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/players/PlayerList.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/players/PlayerList.java.patch index 4b9176bcd..283b55aa3 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/players/PlayerList.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/players/PlayerList.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java +index 989ac565c47a70c7947cb7315d0f5c2cfecd0363..646e16b3d69b5516e8f7c401828fec731378979c 100644 --- a/net/minecraft/server/players/PlayerList.java +++ b/net/minecraft/server/players/PlayerList.java -@@ -311,6 +_,7 @@ +@@ -311,6 +311,7 @@ public abstract class PlayerList { scoreboard.addPlayerToTeam(player.getScoreboardName(), collideRuleTeam); } // Paper end - Configurable player collision @@ -8,7 +16,7 @@ // CraftBukkit start - moved down LOGGER.info( "{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", // CraftBukkit - add world name -@@ -431,6 +_,7 @@ +@@ -431,6 +432,7 @@ public abstract class PlayerList { } public net.kyori.adventure.text.@Nullable Component remove(ServerPlayer player, net.kyori.adventure.text.Component leaveMessage) { // Paper end - Fix kick event leave message not being sent @@ -16,7 +24,7 @@ ServerLevel serverLevel = player.level(); player.awardStat(Stats.LEAVE_GAME); // CraftBukkit start - Quitting must be before we do final save of data, in case plugins need to modify it -@@ -770,6 +_,20 @@ +@@ -770,6 +772,20 @@ public abstract class PlayerList { } } @@ -37,7 +45,7 @@ public void broadcastAll(Packet packet, ResourceKey dimension) { for (ServerPlayer serverPlayer : this.players) { if (serverPlayer.level().dimension() == dimension) { -@@ -863,6 +_,7 @@ +@@ -863,6 +879,7 @@ public abstract class PlayerList { case ADMINS -> EntityEvent.PERMISSION_LEVEL_ADMINS; case OWNERS -> EntityEvent.PERMISSION_LEVEL_OWNERS; }; @@ -45,7 +53,7 @@ player.connection.send(new ClientboundEntityEventPacket(player, b)); } -@@ -874,7 +_,7 @@ +@@ -874,7 +891,7 @@ public abstract class PlayerList { // Paper start - whitelist verify event / login event public LoginResult canBypassFullServerLogin(final NameAndId nameAndId, final LoginResult currentResult) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/server/players/SleepStatus.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/players/SleepStatus.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/server/players/SleepStatus.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/players/SleepStatus.java.patch index 998d2f057..c9dabaaf5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/server/players/SleepStatus.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/server/players/SleepStatus.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/server/players/SleepStatus.java b/net/minecraft/server/players/SleepStatus.java +index 2a7ae521654ad5c9f392baa5562e64bb71b13097..3a3e6992563236141db687084aeec9684437a7db 100644 --- a/net/minecraft/server/players/SleepStatus.java +++ b/net/minecraft/server/players/SleepStatus.java -@@ -15,7 +_,7 @@ +@@ -15,7 +15,7 @@ public class SleepStatus { public boolean areEnoughDeepSleeping(int requiredSleepPercentage, List sleepingPlayers) { // CraftBukkit start @@ -9,7 +17,7 @@ boolean anyDeepSleep = sleepingPlayers.stream().anyMatch(Player::isSleepingLongEnough); return anyDeepSleep && i >= this.sleepersNeeded(requiredSleepPercentage); // CraftBukkit end -@@ -43,7 +_,7 @@ +@@ -43,7 +43,7 @@ public class SleepStatus { for (ServerPlayer serverPlayer : players) { if (!serverPlayer.isSpectator()) { this.activePlayers++; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/stats/ServerRecipeBook.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/stats/ServerRecipeBook.java.patch similarity index 60% rename from purpur-server/minecraft-patches/sources/net/minecraft/stats/ServerRecipeBook.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/stats/ServerRecipeBook.java.patch index a9e87d51d..301a39b44 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/stats/ServerRecipeBook.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/stats/ServerRecipeBook.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/stats/ServerRecipeBook.java b/net/minecraft/stats/ServerRecipeBook.java +index 736a52c23da313bec6b25a9d1abf08816462403c..2f4f90bf428deb682fe9ec8c1218ae31ebaeea7c 100644 --- a/net/minecraft/stats/ServerRecipeBook.java +++ b/net/minecraft/stats/ServerRecipeBook.java -@@ -106,6 +_,7 @@ +@@ -106,6 +106,7 @@ public class ServerRecipeBook extends RecipeBook { private void loadRecipes(List>> recipes, Consumer>> output, Predicate>> isRecognized) { for (ResourceKey> resourceKey : recipes) { if (!isRecognized.test(resourceKey)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/util/StringUtil.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/util/StringUtil.java.patch similarity index 52% rename from purpur-server/minecraft-patches/sources/net/minecraft/util/StringUtil.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/util/StringUtil.java.patch index b8d231182..c54d139c2 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/util/StringUtil.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/util/StringUtil.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/util/StringUtil.java b/net/minecraft/util/StringUtil.java +index bd57f9a4224fc236cccecfd13b03f27d20ed15e9..da0018214439511288a43ca665abec6f01441f47 100644 --- a/net/minecraft/util/StringUtil.java +++ b/net/minecraft/util/StringUtil.java -@@ -87,6 +_,7 @@ +@@ -87,6 +87,7 @@ public class StringUtil { // Paper start - Username validation public static boolean isReasonablePlayerName(final String name) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/CombatRules.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/CombatRules.java.patch similarity index 69% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/CombatRules.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/CombatRules.java.patch index 45e676e4b..c32e46645 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/CombatRules.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/CombatRules.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/damagesource/CombatRules.java b/net/minecraft/world/damagesource/CombatRules.java +index 5f8637dfe4703cb78f486fe49d2e81518cf48715..d27215349f63e73198d23e107a6b634ddef8f7ca 100644 --- a/net/minecraft/world/damagesource/CombatRules.java +++ b/net/minecraft/world/damagesource/CombatRules.java -@@ -15,7 +_,7 @@ +@@ -15,7 +15,7 @@ public class CombatRules { public static float getDamageAfterAbsorb(LivingEntity entity, float damageAmount, DamageSource damageSource, float armorValue, float armorToughness) { float f = 2.0F + armorToughness / 4.0F; @@ -9,7 +17,7 @@ float f2 = f1 / 25.0F; ItemStack weaponItem = damageSource.getWeaponItem(); float f3; -@@ -30,7 +_,7 @@ +@@ -30,7 +30,7 @@ public class CombatRules { } public static float getDamageAfterMagicAbsorb(float damageAmount, float enchantModifiers) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/CombatTracker.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/CombatTracker.java.patch similarity index 79% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/CombatTracker.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/CombatTracker.java.patch index c39efefcb..96790ad11 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/CombatTracker.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/CombatTracker.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/damagesource/CombatTracker.java b/net/minecraft/world/damagesource/CombatTracker.java +index ffdfb4c4e3d6496ebdba6e4bad7146a9cbdcf5ec..30d0807d7adf46a6cd23b81b979e06f943a2bca1 100644 --- a/net/minecraft/world/damagesource/CombatTracker.java +++ b/net/minecraft/world/damagesource/CombatTracker.java -@@ -64,7 +_,7 @@ +@@ -64,7 +64,7 @@ public class CombatTracker { private Component getMessageForAssistedFall(Entity entity, Component entityDisplayName, String hasWeaponTranslationKey, String noWeaponTranslationKey) { ItemStack itemStack = entity instanceof LivingEntity livingEntity ? livingEntity.getMainHandItem() : ItemStack.EMPTY; @@ -9,7 +17,7 @@ ? Component.translatable(hasWeaponTranslationKey, this.mob.getDisplayName(), entityDisplayName, itemStack.getDisplayName()) : Component.translatable(noWeaponTranslationKey, this.mob.getDisplayName(), entityDisplayName); } -@@ -107,6 +_,15 @@ +@@ -107,6 +107,15 @@ public class CombatTracker { Component component = ComponentUtils.wrapInSquareBrackets(Component.translatable(string + ".link")).withStyle(INTENTIONAL_GAME_DESIGN_STYLE); return Component.translatable(string + ".message", this.mob.getDisplayName(), component); } else { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/DamageSource.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/DamageSource.java.patch similarity index 86% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/DamageSource.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/DamageSource.java.patch index f244d3350..f2d0ce705 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/DamageSource.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/DamageSource.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/damagesource/DamageSource.java b/net/minecraft/world/damagesource/DamageSource.java +index 4df37fcd42b8edf789ee8e99d61ee1fa6471288b..67318e32fa58a89ba9321a36627af07697aacea4 100644 --- a/net/minecraft/world/damagesource/DamageSource.java +++ b/net/minecraft/world/damagesource/DamageSource.java -@@ -24,6 +_,8 @@ +@@ -24,6 +24,8 @@ public class DamageSource { private org.bukkit.block.@Nullable Block eventBlockDamager; // Relevant block set. damageSourcePosition is only used for bad respawn point explosion or custom damage private org.bukkit.block.@Nullable BlockState fromBlockSnapshot; // Captured block snapshot when the eventBlockDamager is not relevant (e.g. for bad respawn point explosions the block is already removed) private boolean critical; // Supports arrows and sweeping damage @@ -9,7 +17,7 @@ public DamageSource knownCause(final org.bukkit.event.entity.EntityDamageEvent.DamageCause cause) { final DamageSource damageSource = this.copy(); -@@ -35,6 +_,30 @@ +@@ -35,6 +37,30 @@ public class DamageSource { return this.knownCause; } @@ -40,7 +48,7 @@ @Nullable public Entity eventEntityDamager() { return this.eventEntityDamager; -@@ -94,6 +_,8 @@ +@@ -94,6 +120,8 @@ public class DamageSource { damageSource.eventBlockDamager = this.eventBlockDamager; damageSource.fromBlockSnapshot = this.fromBlockSnapshot; damageSource.critical = this.critical; @@ -49,7 +57,7 @@ return damageSource; } // CraftBukkit end -@@ -157,11 +_,20 @@ +@@ -157,12 +185,21 @@ public class DamageSource { } else { Component component = this.causingEntity == null ? this.directEntity.getDisplayName() : this.causingEntity.getDisplayName(); ItemStack itemStack = this.causingEntity instanceof LivingEntity livingEntity1 ? livingEntity1.getMainHandItem() : ItemStack.EMPTY; @@ -59,7 +67,7 @@ : Component.translatable(string, livingEntity.getDisplayName(), component); } } -+ + + // Purpur start - Component related conveniences + public Component getLocalizedDeathMessage(String str, LivingEntity entity) { + net.kyori.adventure.text.Component name = io.papermc.paper.adventure.PaperAdventure.asAdventure(entity.getDisplayName()); @@ -68,6 +76,7 @@ + return io.papermc.paper.adventure.PaperAdventure.asVanilla(component); + } + // Purpur end - Component related conveniences - ++ public String getMsgId() { return this.type().msgId(); + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/DamageSources.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/DamageSources.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/DamageSources.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/DamageSources.java.patch index 29006dbaf..2fa141b87 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/damagesource/DamageSources.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/damagesource/DamageSources.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/damagesource/DamageSources.java b/net/minecraft/world/damagesource/DamageSources.java +index e45891d10dfab44d3aa584cc7db3fbc3c7654af5..1e1b773d88917b251d71aad40b85fbc5fffce8c8 100644 --- a/net/minecraft/world/damagesource/DamageSources.java +++ b/net/minecraft/world/damagesource/DamageSources.java -@@ -42,6 +_,8 @@ +@@ -42,6 +42,8 @@ public class DamageSources { private final DamageSource stalagmite; private final DamageSource outsideBorder; private final DamageSource genericKill; @@ -9,7 +17,7 @@ public DamageSources(RegistryAccess registry) { this.damageTypes = registry.lookupOrThrow(Registries.DAMAGE_TYPE); -@@ -70,6 +_,8 @@ +@@ -70,6 +72,8 @@ public class DamageSources { this.stalagmite = this.source(DamageTypes.STALAGMITE); this.outsideBorder = this.source(DamageTypes.OUTSIDE_BORDER); this.genericKill = this.source(DamageTypes.GENERIC_KILL); @@ -18,11 +26,10 @@ } private DamageSource source(ResourceKey damageTypeKey) { -@@ -83,6 +_,18 @@ - private DamageSource source(ResourceKey damageTypeKey, @Nullable Entity causingEntity, @Nullable Entity directEntity) { +@@ -84,6 +88,18 @@ public class DamageSources { return new DamageSource(this.damageTypes.getOrThrow(damageTypeKey), causingEntity, directEntity); } -+ + + // Purpur start - Dont run with scissor + public DamageSource scissors() { + return this.scissors; @@ -34,6 +41,7 @@ + return this.stonecutter; + } + // Purpur end - Stonecutter damage - ++ public DamageSource inFire() { return this.inFire; + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/HungerMobEffect.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/HungerMobEffect.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/effect/HungerMobEffect.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/HungerMobEffect.java.patch index ea284de7b..23947965e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/HungerMobEffect.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/HungerMobEffect.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/effect/HungerMobEffect.java b/net/minecraft/world/effect/HungerMobEffect.java +index 0890694ae96b6cd60079c34066e7a6e288f038e8..6c0e6bd2a171edc57dec71af178764454de73313 100644 --- a/net/minecraft/world/effect/HungerMobEffect.java +++ b/net/minecraft/world/effect/HungerMobEffect.java -@@ -12,7 +_,7 @@ +@@ -12,7 +12,7 @@ class HungerMobEffect extends MobEffect { @Override public boolean applyEffectTick(ServerLevel level, LivingEntity entity, int amplifier) { if (entity instanceof Player player) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/PoisonMobEffect.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/PoisonMobEffect.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/effect/PoisonMobEffect.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/PoisonMobEffect.java.patch index 0e8d7e3f7..089dd145b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/PoisonMobEffect.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/PoisonMobEffect.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/effect/PoisonMobEffect.java b/net/minecraft/world/effect/PoisonMobEffect.java +index 75327fd96858fd508ea63a6983e5cbc655a8800f..73cfc61ac3f8e33e6b9f4fd08a292266c0adb535 100644 --- a/net/minecraft/world/effect/PoisonMobEffect.java +++ b/net/minecraft/world/effect/PoisonMobEffect.java -@@ -12,8 +_,8 @@ +@@ -12,8 +12,8 @@ public class PoisonMobEffect extends MobEffect { @Override public boolean applyEffectTick(ServerLevel level, LivingEntity entity, int amplifier) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/RegenerationMobEffect.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/RegenerationMobEffect.java.patch similarity index 57% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/effect/RegenerationMobEffect.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/RegenerationMobEffect.java.patch index f19f319af..07ea9eb81 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/RegenerationMobEffect.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/RegenerationMobEffect.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/effect/RegenerationMobEffect.java b/net/minecraft/world/effect/RegenerationMobEffect.java +index 76cffa4d4d18d6c04749d941dbdf5eb60aed4095..81481267a1577721dcc405f39a4c350bd59ac9a2 100644 --- a/net/minecraft/world/effect/RegenerationMobEffect.java +++ b/net/minecraft/world/effect/RegenerationMobEffect.java -@@ -11,7 +_,7 @@ +@@ -11,7 +11,7 @@ class RegenerationMobEffect extends MobEffect { @Override public boolean applyEffectTick(ServerLevel level, LivingEntity entity, int amplifier) { if (entity.getHealth() < entity.getMaxHealth()) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/SaturationMobEffect.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/SaturationMobEffect.java.patch similarity index 67% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/effect/SaturationMobEffect.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/SaturationMobEffect.java.patch index f2d21d380..66cd7e20c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/SaturationMobEffect.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/SaturationMobEffect.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/effect/SaturationMobEffect.java b/net/minecraft/world/effect/SaturationMobEffect.java +index c192165910f6b139df6f604d0bce989061efa9cb..622c23f4570d07de8bee9623bf900aabb3331ded 100644 --- a/net/minecraft/world/effect/SaturationMobEffect.java +++ b/net/minecraft/world/effect/SaturationMobEffect.java -@@ -16,7 +_,8 @@ +@@ -16,7 +16,8 @@ class SaturationMobEffect extends InstantenousMobEffect { int oldFoodLevel = player.getFoodData().foodLevel; org.bukkit.event.entity.FoodLevelChangeEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callFoodLevelChangeEvent(player, amplifier + 1 + oldFoodLevel); if (!event.isCancelled()) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/WitherMobEffect.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/WitherMobEffect.java.patch similarity index 51% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/effect/WitherMobEffect.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/WitherMobEffect.java.patch index 767637659..433070231 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/effect/WitherMobEffect.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/effect/WitherMobEffect.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/effect/WitherMobEffect.java b/net/minecraft/world/effect/WitherMobEffect.java +index 1fc9e1ad541c46124183a401b2a7d99aea69cecf..881271f0bc77a8a8a7d31daad9a8188bebaca67b 100644 --- a/net/minecraft/world/effect/WitherMobEffect.java +++ b/net/minecraft/world/effect/WitherMobEffect.java -@@ -12,7 +_,7 @@ +@@ -12,7 +12,7 @@ public class WitherMobEffect extends MobEffect { @Override public boolean applyEffectTick(ServerLevel level, LivingEntity entity, int amplifier) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/Entity.java.patch similarity index 82% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/Entity.java.patch index 9ec640e01..ede4567ed 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/Entity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java +index 118ba985eff209ff97dd2c8b2749a75113f5ce43..5efb94bf1029fdbbd48937c1f3925421d6daacfd 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -153,6 +_,7 @@ +@@ -153,6 +153,7 @@ import org.jspecify.annotations.Nullable; import org.slf4j.Logger; public abstract class Entity implements SyncedDataHolder, DebugValueSource, Nameable, ItemOwner, SlotProvider, EntityAccess, ScoreHolder, DataComponentGetter, ca.spottedleaf.moonrise.patches.chunk_system.entity.ChunkSystemEntity, ca.spottedleaf.moonrise.patches.entity_tracker.EntityTrackerEntity { // Paper - rewrite chunk system // Paper - optimise entity tracker @@ -8,7 +16,7 @@ // CraftBukkit start private static final int CURRENT_LEVEL = 2; static boolean isLevelAtLeast(ValueInput input, int level) { -@@ -282,8 +_,9 @@ +@@ -282,8 +283,9 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name public double xOld; public double yOld; public double zOld; @@ -19,7 +27,7 @@ public int tickCount; private int remainingFireTicks; public boolean wasTouchingWater; -@@ -316,8 +_,8 @@ +@@ -316,8 +318,8 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name public @Nullable PortalProcessor portalProcess; public int portalCooldown; private boolean invulnerable; @@ -30,7 +38,7 @@ private boolean hasGlowingTag; private final Set tags = new io.papermc.paper.util.SizeLimitedSet<>(new it.unimi.dsi.fastutil.objects.ObjectOpenHashSet<>(), MAX_ENTITY_TAG_COUNT); // Paper - fully limit tag size - replace set impl private final double[] pistonDeltas = new double[]{0.0, 0.0, 0.0}; -@@ -373,6 +_,7 @@ +@@ -373,6 +375,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name public long activatedTick = Integer.MIN_VALUE; public boolean isTemporarilyActive; public long activatedImmunityTick = Integer.MIN_VALUE; @@ -38,7 +46,7 @@ public void inactiveTick() { } -@@ -535,10 +_,22 @@ +@@ -535,10 +538,22 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name } // Paper end - optimise entity tracker @@ -61,7 +69,7 @@ this.position = Vec3.ZERO; this.blockPosition = BlockPos.ZERO; this.chunkPosition = ChunkPos.ZERO; -@@ -931,6 +_,7 @@ +@@ -931,6 +946,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name && this.level.paperConfig().environment.netherCeilingVoidDamageHeight.test(v -> this.getY() >= v) && (!(this instanceof Player player) || !player.getAbilities().invulnerable))) { // Paper end - Configurable nether ceiling damage @@ -69,7 +77,7 @@ this.onBelowWorld(); } } -@@ -1960,7 +_,7 @@ +@@ -1960,7 +1976,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name } public boolean fireImmune() { @@ -78,7 +86,7 @@ } public boolean causeFallDamage(double fallDistance, float damageMultiplier, DamageSource damageSource) { -@@ -2572,7 +_,7 @@ +@@ -2572,7 +2588,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name output.putBoolean("Bukkit.invisible", this.persistentInvisibility); } // SPIGOT-6907: re-implement LivingEntity#setMaximumAir() @@ -87,7 +95,7 @@ output.putInt("Bukkit.MaxAirSupply", this.getMaxAirSupply()); } output.putInt("Spigot.ticksLived", this.totalEntityAge); // Paper -@@ -2659,6 +_,11 @@ +@@ -2659,6 +2675,11 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name output.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -99,7 +107,7 @@ } catch (Throwable var7) { CrashReport crashReport = CrashReport.forThrowable(var7, "Saving entity NBT"); CrashReportCategory crashReportCategory = crashReport.addCategory("Entity being saved"); -@@ -2779,6 +_,9 @@ +@@ -2779,6 +2800,9 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name } freezeLocked = input.getBooleanOr("Paper.FreezeLock", false); // Paper end @@ -109,7 +117,7 @@ } catch (Throwable var7) { CrashReport crashReport = CrashReport.forThrowable(var7, "Loading entity NBT"); CrashReportCategory crashReportCategory = crashReport.addCategory("Entity being loaded"); -@@ -3042,6 +_,7 @@ +@@ -3042,6 +3066,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name if (this.isAlive() && this instanceof Leashable leashable2) { if (leashable2.getLeashHolder() == player) { if (!this.level().isClientSide()) { @@ -117,7 +125,7 @@ // Paper start - EntityUnleashEvent if (!org.bukkit.craftbukkit.event.CraftEventFactory.handlePlayerUnleashEntityEvent( leashable2, player, hand, !player.hasInfiniteMaterials(), true -@@ -3472,15 +_,18 @@ +@@ -3472,15 +3497,18 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name return Vec3.directionFromRotation(this.getRotationVector()); } @@ -137,7 +145,7 @@ } } } -@@ -4220,7 +_,7 @@ +@@ -4220,7 +4248,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name } public boolean canUsePortal(boolean allowPassengers) { @@ -146,7 +154,7 @@ } public boolean canTeleport(Level fromLevel, Level toLevel) { -@@ -4739,6 +_,12 @@ +@@ -4739,6 +4767,12 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name return Mth.lerp(partialTick, this.yRotO, this.yRot); } @@ -159,7 +167,7 @@ // Paper start - optimise collisions public boolean updateFluidHeightAndDoFluidPushing(final TagKey fluid, final double flowScale) { if (this.touchingUnloadedChunk()) { -@@ -5159,7 +_,7 @@ +@@ -5159,7 +5193,7 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name } public float maxUpStep() { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/EntitySelector.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/EntitySelector.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/EntitySelector.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/EntitySelector.java.patch index ff1e039a1..a1dd6d606 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/EntitySelector.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/EntitySelector.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/EntitySelector.java b/net/minecraft/world/entity/EntitySelector.java +index b9ca072041f5fec0010017877a2821cd650023c5..cd8e22171449049b23823da9b5be6ede2c3f38d0 100644 --- a/net/minecraft/world/entity/EntitySelector.java +++ b/net/minecraft/world/entity/EntitySelector.java -@@ -28,6 +_,8 @@ +@@ -28,6 +28,8 @@ public final class EntitySelector { return net.minecraft.util.Mth.clamp(serverPlayer.getStats().getValue(net.minecraft.stats.Stats.CUSTOM.get(net.minecraft.stats.Stats.TIME_SINCE_REST)), 1, Integer.MAX_VALUE) >= playerInsomniaTicks; }; // Paper end - Ability to control player's insomnia and phantoms diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/EntityType.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/EntityType.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/EntityType.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/EntityType.java.patch index f33120729..cc899c605 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/EntityType.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/EntityType.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/EntityType.java b/net/minecraft/world/entity/EntityType.java +index a3cba4a65687c61fefbfcf3c35625ceed2e50bfb..f0731609fbfb06ea23baba2a8b3694003a470b7d 100644 --- a/net/minecraft/world/entity/EntityType.java +++ b/net/minecraft/world/entity/EntityType.java -@@ -1240,6 +_,16 @@ +@@ -1240,6 +1240,16 @@ public class EntityType implements FeatureElement, EntityTypeT return register(vanillaEntityId(key), builder); } @@ -17,7 +25,7 @@ public static Identifier getKey(EntityType entityType) { return BuiltInRegistries.ENTITY_TYPE.getKey(entityType); } -@@ -1467,6 +_,16 @@ +@@ -1467,6 +1477,16 @@ public class EntityType implements FeatureElement, EntityTypeT return this.category; } @@ -34,7 +42,7 @@ public String getDescriptionId() { return this.descriptionId; } -@@ -1528,6 +_,7 @@ +@@ -1528,6 +1548,7 @@ public class EntityType implements FeatureElement, EntityTypeT // Paper start - Add logging for debugging entity tags with invalid ids () -> { LOGGER.warn("Skipping Entity with id {}", input.getStringOr("id", "[invalid]")); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ExperienceOrb.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ExperienceOrb.java.patch similarity index 77% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ExperienceOrb.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ExperienceOrb.java.patch index 76b98442d..3b9777340 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ExperienceOrb.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ExperienceOrb.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ExperienceOrb.java b/net/minecraft/world/entity/ExperienceOrb.java +index f2ec0bd8cca3c08d558790537e17a8a2f95f1953..c655689cdd2d4e655dfc872edd231dcdfb7c0995 100644 --- a/net/minecraft/world/entity/ExperienceOrb.java +++ b/net/minecraft/world/entity/ExperienceOrb.java -@@ -355,7 +_,7 @@ +@@ -355,7 +355,7 @@ public class ExperienceOrb extends Entity { public void playerTouch(Player entity) { if (entity instanceof ServerPlayer serverPlayer) { if (entity.takeXpDelay == 0 && new com.destroystokyo.paper.event.player.PlayerPickupExperienceEvent(serverPlayer.getBukkitEntity(), (org.bukkit.entity.ExperienceOrb) this.getBukkitEntity()).callEvent()) { // Paper - PlayerPickupExperienceEvent @@ -9,7 +17,7 @@ entity.take(this, 1); int i = this.repairPlayerItems(serverPlayer, this.getValue()); if (i > 0) { -@@ -371,7 +_,7 @@ +@@ -371,7 +371,7 @@ public class ExperienceOrb extends Entity { } private int repairPlayerItems(ServerPlayer player, int value) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/LivingEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/LivingEntity.java.patch similarity index 85% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/LivingEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/LivingEntity.java.patch index df50ec7f5..232784cb7 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/LivingEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/LivingEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java +index 54f31965213309a2cd228b7211e96ae1b9c219d4..527db90fa6faa6f39a80e64db16e28f1d616ce4d 100644 --- a/net/minecraft/world/entity/LivingEntity.java +++ b/net/minecraft/world/entity/LivingEntity.java -@@ -447,6 +_,12 @@ +@@ -447,6 +447,12 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin if (d < 0.0) { double damagePerBlock = serverLevel1.getWorldBorder().getDamagePerBlock(); if (damagePerBlock > 0.0) { @@ -13,7 +21,7 @@ this.hurtServer(serverLevel1, this.damageSources().outOfBorder(), Math.max(1, Mth.floor(-d * damagePerBlock))); } } -@@ -462,7 +_,7 @@ +@@ -462,7 +468,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin if (this.shouldTakeDrowningDamage()) { this.setAirSupply(0); serverLevel1.broadcastEntityEvent(this, EntityEvent.DROWN_PARTICLES); @@ -22,7 +30,7 @@ } } else if (this.getAirSupply() < this.getMaxAirSupply() && MobEffectUtil.shouldEffectsRefillAirsupply(this)) { this.setAirSupply(this.increaseAirSupply(this.getAirSupply())); -@@ -522,7 +_,7 @@ +@@ -522,7 +528,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin } protected boolean shouldTakeDrowningDamage() { @@ -31,7 +39,7 @@ } @Override -@@ -1050,14 +_,32 @@ +@@ -1050,15 +1056,33 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin if (lookingEntity != null) { ItemStack itemBySlot = this.getItemBySlot(EquipmentSlot.HEAD); EntityType type = lookingEntity.getType(); @@ -41,8 +49,6 @@ - || type == EntityType.PIGLIN_BRUTE && itemBySlot.is(Items.PIGLIN_HEAD) - || type == EntityType.CREEPER && itemBySlot.is(Items.CREEPER_HEAD)) { - d *= 0.5; -- } -- } + // Purpur start - Mob head visibility percent + if (type == EntityType.SKELETON && itemBySlot.is(Items.SKELETON_SKULL)) { + d *= lookingEntity.level().purpurConfig.skeletonHeadVisibilityPercent; @@ -52,13 +58,13 @@ + } + else if ((type == EntityType.PIGLIN || type == EntityType.PIGLIN_BRUTE) && itemBySlot.is(Items.PIGLIN_HEAD)) { + d *= lookingEntity.level().purpurConfig.piglinHeadVisibilityPercent; -+ } + } + else if (type == EntityType.CREEPER && itemBySlot.is(Items.CREEPER_HEAD)) { + d *= lookingEntity.level().purpurConfig.creeperHeadVisibilityPercent; + } + // Purpur end - Mob head visibility percent -+ } -+ + } + + // Purpur start - Configurable mob blindness + if (lookingEntity instanceof LivingEntity entityliving) { + if (entityliving.hasEffect(MobEffects.BLINDNESS)) { @@ -69,10 +75,11 @@ + } + } + // Purpur end - Configurable mob blindness - ++ return d; } -@@ -1104,6 +_,7 @@ + +@@ -1104,6 +1128,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin Iterator iterator = this.activeEffects.values().iterator(); while (iterator.hasNext()) { MobEffectInstance effect = iterator.next(); @@ -80,7 +87,7 @@ EntityPotionEffectEvent event = CraftEventFactory.callEntityPotionEffectChangeEvent(this, effect, null, cause, EntityPotionEffectEvent.Action.CLEARED); if (event.isCancelled()) { continue; -@@ -1436,6 +_,24 @@ +@@ -1436,6 +1461,24 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin this.stopSleeping(); } @@ -105,7 +112,7 @@ this.noActionTime = 0; if (amount < 0.0F) { amount = 0.0F; -@@ -1697,10 +_,10 @@ +@@ -1697,10 +1740,10 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin protected @Nullable Player resolvePlayerResponsibleForDamage(DamageSource damageSource) { Entity entity = damageSource.getEntity(); if (entity instanceof Player player) { @@ -118,7 +125,7 @@ } else { this.lastHurtByPlayer = null; this.lastHurtByPlayerMemoryTime = 0; -@@ -1751,6 +_,30 @@ +@@ -1751,6 +1794,30 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin } } @@ -149,7 +156,7 @@ final org.bukkit.inventory.EquipmentSlot handSlot = (hand != null) ? org.bukkit.craftbukkit.CraftEquipmentSlot.getHand(hand) : null; final EntityResurrectEvent event = new EntityResurrectEvent((org.bukkit.entity.LivingEntity) this.getBukkitEntity(), handSlot); event.setCancelled(itemStack == null); -@@ -1932,6 +_,7 @@ +@@ -1932,6 +1999,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin boolean flag = this.lastHurtByPlayerMemoryTime > 0; this.dropEquipment(level); // CraftBukkit - from below if (this.shouldDropLoot(level)) { @@ -157,7 +164,7 @@ this.dropFromLootTable(level, damageSource, flag); // Paper start final boolean prev = this.clearEquipmentSlots; -@@ -1940,6 +_,7 @@ +@@ -1940,6 +2008,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin // Paper end this.dropCustomDeathLoot(level, damageSource, flag); this.clearEquipmentSlots = prev; // Paper @@ -165,7 +172,7 @@ } // CraftBukkit start - Call death event // Paper start - call advancement triggers with correct entity equipment -@@ -3214,6 +_,7 @@ +@@ -3214,6 +3283,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin float f = (float)(d * 10.0 - 3.0); if (f > 0.0F) { this.playSound(this.getFallDamageSound((int)f), 1.0F, 1.0F); @@ -173,16 +180,16 @@ this.hurt(this.damageSources().flyIntoWall(), f); } } -@@ -4679,6 +_,12 @@ - ? slot == EquipmentSlot.MAINHAND && this.canUseSlot(EquipmentSlot.MAINHAND) +@@ -4680,6 +4750,12 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin : slot == equippable.slot() && this.canUseSlot(equippable.slot()) && equippable.canBeEquippedBy(this.getType()); } -+ + + // Purpur start - Dispenser curse of binding protection + public @Nullable EquipmentSlot getEquipmentSlotForDispenserItem(ItemStack itemstack) { + return EnchantmentHelper.getItemEnchantmentLevel(net.minecraft.world.item.enchantment.Enchantments.BINDING_CURSE, itemstack) > 0 ? null : this.getEquipmentSlotForItem(itemstack); + } + // Purpur end - Dispenser curse of binding protection - ++ private static SlotAccess createEquipmentSlotAccess(LivingEntity entity, EquipmentSlot slot) { return slot != EquipmentSlot.HEAD && slot != EquipmentSlot.MAINHAND && slot != EquipmentSlot.OFFHAND + ? SlotAccess.forEquipmentSlot(entity, slot, itemStack -> itemStack.isEmpty() || entity.getEquipmentSlotForItem(itemStack) == slot) diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Mob.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/Mob.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Mob.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/Mob.java.patch index 35009fa56..22074d323 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Mob.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/Mob.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/Mob.java b/net/minecraft/world/entity/Mob.java +index 92175cc019750e829fcad7691a937024c2649882..cf2cbc3bf5e0000737ebeac3867f12d7e07bda01 100644 --- a/net/minecraft/world/entity/Mob.java +++ b/net/minecraft/world/entity/Mob.java -@@ -150,6 +_,7 @@ +@@ -150,6 +150,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab private int homeRadius = -1; public boolean aware = true; // CraftBukkit public net.kyori.adventure.util.TriState despawnInPeacefulOverride = net.kyori.adventure.util.TriState.NOT_SET; // Paper - allow changing despawnInPeaceful @@ -8,7 +16,7 @@ protected Mob(EntityType type, Level level) { super(type, level); -@@ -292,6 +_,7 @@ +@@ -292,6 +293,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab target = null; } } @@ -16,14 +24,13 @@ this.target = target; return true; // CraftBukkit end -@@ -335,7 +_,27 @@ +@@ -335,8 +337,28 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab } profilerFiller.pop(); -- } + incrementTicksSinceLastInteraction(); // Purpur - Entity lifespan -+ } -+ + } + + // Purpur start - Entity lifespan + private void incrementTicksSinceLastInteraction() { + ++this.ticksSinceLastInteraction; @@ -42,10 +49,11 @@ + } + } + // Purpur end - Entity lifespan - ++ @Override protected void playHurtSound(DamageSource damageSource) { -@@ -439,6 +_,7 @@ + this.resetAmbientSoundTime(); +@@ -439,6 +461,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab output.putString("Paper.DespawnInPeacefulOverride", this.despawnInPeacefulOverride.name()); } // Paper end - allow changing despawnInPeaceful @@ -53,7 +61,7 @@ } @Override -@@ -466,6 +_,7 @@ +@@ -466,6 +489,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab this.lootTableSeed = input.getLongOr("DeathLootTableSeed", 0L); this.setNoAi(input.getBooleanOr("NoAI", false)); this.aware = input.getBooleanOr("Bukkit.Aware", true); // CraftBukkit @@ -61,7 +69,7 @@ // Paper start - allow changing despawnInPeaceful this.despawnInPeacefulOverride = readDespawnInPeacefulOverride(input); } -@@ -1246,7 +_,7 @@ +@@ -1246,7 +1270,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab ); } @@ -70,7 +78,7 @@ return spawnGroupData; } -@@ -1597,6 +_,7 @@ +@@ -1597,6 +1621,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab } this.lungeForwardMaybe(); diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/attributes/RangedAttribute.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/attributes/RangedAttribute.java.patch new file mode 100644 index 000000000..4cc493a53 --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/attributes/RangedAttribute.java.patch @@ -0,0 +1,18 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/attributes/RangedAttribute.java b/net/minecraft/world/entity/ai/attributes/RangedAttribute.java +index 0a0e5d9fd64182c1bed4c0aa6a40d8b2cdf8bc9d..353d571b4a2bf18414a08239abe2b079e3750d89 100644 +--- a/net/minecraft/world/entity/ai/attributes/RangedAttribute.java ++++ b/net/minecraft/world/entity/ai/attributes/RangedAttribute.java +@@ -29,6 +29,7 @@ public class RangedAttribute extends Attribute { + + @Override + public double sanitizeValue(double value) { ++ if (!org.purpurmc.purpur.PurpurConfig.clampAttributes) return Double.isNaN(value) ? this.minValue : value; // Purpur - Add attribute clamping and armor limit config + return Double.isNaN(value) ? this.minValue : Mth.clamp(value, this.minValue, this.maxValue); + } + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/AcquirePoi.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/AcquirePoi.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/AcquirePoi.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/AcquirePoi.java.patch index f499d70f9..bbc9521be 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/AcquirePoi.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/AcquirePoi.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/behavior/AcquirePoi.java b/net/minecraft/world/entity/ai/behavior/AcquirePoi.java +index 278addb7dbe4f57e99fb91ce1cd1bf3559e239a3..3e0fd09a0c0047cfe100e878186471090f8909a0 100644 --- a/net/minecraft/world/entity/ai/behavior/AcquirePoi.java +++ b/net/minecraft/world/entity/ai/behavior/AcquirePoi.java -@@ -85,7 +_,7 @@ +@@ -85,7 +85,7 @@ public class AcquirePoi { }; // Paper start - optimise POI access final java.util.List, BlockPos>> poiposes = new java.util.ArrayList<>(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java.patch index f90e63ebd..d167e7f46 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java b/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java +index df185d375658d765b07648dfb42ea56c84be671e..5c845d78e8baee41809e0678e3d99523368a2882 100644 --- a/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java +++ b/net/minecraft/world/entity/ai/behavior/InteractWithDoor.java -@@ -55,7 +_,7 @@ +@@ -55,7 +55,7 @@ public class InteractWithDoor { Node nextNode = path.getNextNode(); BlockPos blockPos = previousNode.asBlockPos(); BlockState blockState = level.getBlockState(blockPos); @@ -9,7 +17,7 @@ DoorBlock doorBlock = (DoorBlock)blockState.getBlock(); if (!doorBlock.isOpen(blockState)) { // CraftBukkit start - entities opening doors -@@ -72,7 +_,7 @@ +@@ -72,7 +72,7 @@ public class InteractWithDoor { BlockPos blockPos1 = nextNode.asBlockPos(); BlockState blockState1 = level.getBlockState(blockPos1); @@ -18,7 +26,7 @@ DoorBlock doorBlock1 = (DoorBlock)blockState1.getBlock(); if (!doorBlock1.isOpen(blockState1)) { // CraftBukkit start - entities opening doors -@@ -118,7 +_,7 @@ +@@ -118,7 +118,7 @@ public class InteractWithDoor { iterator.remove(); } else { BlockState blockState = level.getBlockState(blockPos); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java.patch similarity index 52% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java.patch index 694422e8b..67b8c7215 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java b/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java +index 338f9850a9ee968ade1a5554936a10b8a3786fe5..8cac46b6fd025f7f10b17903579f021482ed4b18 100644 --- a/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java +++ b/net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer.java -@@ -45,6 +_,7 @@ +@@ -45,6 +45,7 @@ public class ShowTradesToPlayer extends Behavior { @Override public boolean canStillUse(ServerLevel level, Villager entity, long gameTime) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java.patch index fc23b30ed..2fc0b683e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java b/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java +index 3741e32fa1aa85e3b5b45c3b05fcb3a0a807a6e7..2a7cda7fbc400a13e7ab71a6a82496068d9c7ae6 100644 --- a/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java +++ b/net/minecraft/world/entity/ai/behavior/TransportItemsBetweenContainers.java -@@ -285,7 +_,7 @@ +@@ -285,7 +285,7 @@ public class TransportItemsBetweenContainers extends Behavior { LevelChunk chunkNow = level.getChunkSource().getChunkNow(chunkPos.x, chunkPos.z); if (chunkNow != null) { for (BlockEntity blockEntity : chunkNow.getBlockEntities().values()) { @@ -9,7 +17,7 @@ double d1 = chestBlockEntity.getBlockPos().distToCenterSqr(mob.position()); if (d1 < d) { TransportItemsBetweenContainers.TransportItemTarget transportItemTarget1 = this.isTargetValidToPick( -@@ -369,7 +_,11 @@ +@@ -369,7 +369,11 @@ public class TransportItemsBetweenContainers extends Behavior { } private boolean isTargetBlocked(Level level, TransportItemsBetweenContainers.TransportItemTarget target) { @@ -22,7 +30,7 @@ } private boolean targetHasNotChanged(Level level, TransportItemsBetweenContainers.TransportItemTarget target) { -@@ -446,7 +_,7 @@ +@@ -446,7 +450,7 @@ public class TransportItemsBetweenContainers extends Behavior { } private boolean isWantedBlock(PathfinderMob mob, BlockState state) { @@ -31,7 +39,7 @@ } private static double getInteractionRange(PathfinderMob mob) { -@@ -488,6 +_,11 @@ +@@ -488,6 +492,11 @@ public class TransportItemsBetweenContainers extends Behavior { } private static boolean matchesLeavingItemsRequirement(PathfinderMob mob, Container container) { @@ -43,7 +51,7 @@ return container.isEmpty() || hasItemMatchingHandItem(mob, container); } -@@ -525,7 +_,7 @@ +@@ -525,7 +534,7 @@ public class TransportItemsBetweenContainers extends Behavior { int i = 0; for (ItemStack itemStack : container) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java.patch index 6fbb7bf98..c05812ea6 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java b/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java +index 12a8326af5100d243983c101c5ba9e5f30fb0811..2a7c913aadd839ca90edaed4254d5ced260700ac 100644 --- a/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java +++ b/net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal.java -@@ -22,6 +_,7 @@ +@@ -22,6 +22,7 @@ public class LlamaFollowCaravanGoal extends Goal { @Override public boolean canUse() { @@ -8,7 +16,7 @@ if (!this.llama.isLeashed() && !this.llama.inCaravan()) { List entities = this.llama.level().getEntities(this.llama, this.llama.getBoundingBox().inflate(9.0, 4.0, 9.0), entity1 -> { EntityType type = entity1.getType(); -@@ -71,6 +_,7 @@ +@@ -71,6 +72,7 @@ public class LlamaFollowCaravanGoal extends Goal { @Override public boolean canContinueToUse() { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java.patch similarity index 53% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java.patch index f623c03a9..6d3c664e7 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java b/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java +index 722f378bb3726200b6fe88948bf1e1d3514a7b5c..e337e22c2cf82b0c1cab3fe0a9ff894c0c718716 100644 --- a/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java +++ b/net/minecraft/world/entity/ai/goal/RangedBowAttackGoal.java -@@ -116,9 +_,9 @@ +@@ -116,9 +116,9 @@ public class RangedBowAttackGoal extends Go } this.mob.lookAt(target, 30.0F, 30.0F); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java.patch index dbec726c4..e72783e8c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java b/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java +index 5360b2137116ff76361dab29a4ef2a0bc0228a02..f67e762a50b85a95a3d466aff7572b48d0338e72 100644 --- a/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java +++ b/net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal.java -@@ -59,7 +_,7 @@ +@@ -59,7 +59,7 @@ public class RunAroundLikeCrazyGoal extends Goal { if (firstPassenger instanceof Player player) { int temper = this.horse.getTemper(); int maxTemper = this.horse.getMaxTemper(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/SwellGoal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/SwellGoal.java.patch similarity index 66% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/SwellGoal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/SwellGoal.java.patch index 5bcf929e9..7789425e2 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/goal/SwellGoal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/goal/SwellGoal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/goal/SwellGoal.java b/net/minecraft/world/entity/ai/goal/SwellGoal.java +index 2bc0c7f5973d5d5695ec291f404a836a78e8348e..ccbd344a49a568e97606c364082ab3f74ad5e6ed 100644 --- a/net/minecraft/world/entity/ai/goal/SwellGoal.java +++ b/net/minecraft/world/entity/ai/goal/SwellGoal.java -@@ -47,6 +_,14 @@ +@@ -47,6 +47,14 @@ public class SwellGoal extends Goal { this.creeper.setSwellDir(-1); } else { this.creeper.setSwellDir(1); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java.patch similarity index 68% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java.patch index 7e2366a32..b755d3dc8 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java b/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java +index 066faa704338c573472381e1ebd063e0d52aaaa4..1f96fd5085bacb4c584576c7cb9f51e7898e9b03 100644 --- a/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java +++ b/net/minecraft/world/entity/ai/sensing/NearestBedSensor.java -@@ -56,7 +_,7 @@ +@@ -56,7 +56,7 @@ public class NearestBedSensor extends Sensor { // Paper start - optimise POI access java.util.List, BlockPos>> poiposes = new java.util.ArrayList<>(); // don't ask me why it's unbounded. ask mojang. diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/targeting/TargetingConditions.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/targeting/TargetingConditions.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/targeting/TargetingConditions.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/targeting/TargetingConditions.java.patch index f090e4c9a..d0639c750 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/ai/targeting/TargetingConditions.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/ai/targeting/TargetingConditions.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/ai/targeting/TargetingConditions.java b/net/minecraft/world/entity/ai/targeting/TargetingConditions.java +index e4beea8dcf9db2211ae838470daf060074dd8ec2..8307ed8d1c86ed0243c038420d2c44b02df21fe3 100644 --- a/net/minecraft/world/entity/ai/targeting/TargetingConditions.java +++ b/net/minecraft/world/entity/ai/targeting/TargetingConditions.java -@@ -63,6 +_,10 @@ +@@ -63,6 +63,10 @@ public class TargetingConditions { return false; } else if (this.selector != null && !this.selector.test(target, level)) { return false; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/Animal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/Animal.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/Animal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/Animal.java.patch index c6916a32a..04d5e34b7 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/Animal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/Animal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/Animal.java b/net/minecraft/world/entity/animal/Animal.java +index 023b68549e3b185d8ad2f505f34bb59556bbf961..2e7e7c1913f5cbc20ce116c5ae3e185fc83094c0 100644 --- a/net/minecraft/world/entity/animal/Animal.java +++ b/net/minecraft/world/entity/animal/Animal.java -@@ -146,7 +_,7 @@ +@@ -146,7 +146,7 @@ public abstract class Animal extends AgeableMob { ItemStack itemInHand = player.getItemInHand(hand); if (this.isFood(itemInHand)) { int age = this.getAge(); @@ -9,7 +17,7 @@ final ItemStack breedCopy = itemInHand.copy(); // Paper - Fix EntityBreedEvent copying this.usePlayerItem(player, hand, itemInHand); this.setInLove(serverPlayer, breedCopy); // Paper - Fix EntityBreedEvent copying -@@ -227,10 +_,20 @@ +@@ -227,10 +227,20 @@ public abstract class Animal extends AgeableMob { public void spawnChildFromBreeding(ServerLevel level, Animal partner) { AgeableMob breedOffspring = this.getBreedOffspring(level, partner); if (breedOffspring != null) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/bee/Bee.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/bee/Bee.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/bee/Bee.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/bee/Bee.java.patch index 536d9a92f..ee922d9a1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/bee/Bee.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/bee/Bee.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/bee/Bee.java b/net/minecraft/world/entity/animal/bee/Bee.java +index 0cbcf23b6edba2305dfbbc95abb06a90a6edd42b..7b9280526af353c3ab1f32e5195499e773731352 100644 --- a/net/minecraft/world/entity/animal/bee/Bee.java +++ b/net/minecraft/world/entity/animal/bee/Bee.java -@@ -171,7 +_,7 @@ +@@ -171,7 +171,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { // Paper end - Fix MC-167279 this.lookControl = new Bee.BeeLookControl(this); this.setPathfindingMalus(PathType.DANGER_FIRE, -1.0F); @@ -9,7 +17,7 @@ this.setPathfindingMalus(PathType.WATER_BORDER, 16.0F); this.setPathfindingMalus(PathType.COCOA, -1.0F); this.setPathfindingMalus(PathType.FENCE, -1.0F); -@@ -360,13 +_,19 @@ +@@ -360,13 +360,19 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { if (this.stayOutOfHiveCountdown <= 0 && !this.beePollinateGoal.isPollinating() && !this.hasStung() && this.getTarget() == null) { boolean flag = this.hasNectar() || this.isTiredOfLookingForNectar() @@ -30,7 +38,7 @@ public void setStayOutOfHiveCountdown(int stayOutOfHiveCountdown) { this.stayOutOfHiveCountdown = stayOutOfHiveCountdown; } -@@ -387,7 +_,7 @@ +@@ -387,7 +393,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { @Override protected void customServerAiStep(ServerLevel level) { boolean hasStung = this.hasStung(); @@ -39,7 +47,7 @@ this.underWaterTicks++; } else { this.underWaterTicks = 0; -@@ -397,6 +_,7 @@ +@@ -397,6 +403,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { this.hurtServer(level, this.damageSources().drown(), 1.0F); } @@ -47,7 +55,7 @@ if (hasStung) { this.timeSinceSting++; if (this.timeSinceSting % 5 == 0 && this.random.nextInt(Mth.clamp(1200 - this.timeSinceSting, 1, 1200)) == 0) { -@@ -1130,6 +_,7 @@ +@@ -1130,6 +1137,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { Bee.this.savedFlowerPos = optional.get(); Bee.this.navigation .moveTo(Bee.this.savedFlowerPos.getX() + 0.5, Bee.this.savedFlowerPos.getY() + 0.5, Bee.this.savedFlowerPos.getZ() + 0.5, 1.2F); @@ -55,7 +63,7 @@ return true; } else { Bee.this.remainingCooldownBeforeLocatingNewFlower = Mth.nextInt(Bee.this.random, 20, 60); -@@ -1176,6 +_,7 @@ +@@ -1176,6 +1184,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { this.pollinating = false; Bee.this.navigation.stop(); Bee.this.remainingCooldownBeforeLocatingNewFlower = 200; @@ -63,7 +71,7 @@ } @Override -@@ -1222,6 +_,7 @@ +@@ -1222,6 +1231,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { this.setWantedPos(); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/cow/AbstractCow.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/cow/AbstractCow.java.patch similarity index 89% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/cow/AbstractCow.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/cow/AbstractCow.java.patch index 6ab713663..3c73cf266 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/cow/AbstractCow.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/cow/AbstractCow.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/cow/AbstractCow.java b/net/minecraft/world/entity/animal/cow/AbstractCow.java +index e10f7d1b264a85798de063b4387bab62621bf54b..f6f251227db315b58bee45f8011624a347eb8fea 100644 --- a/net/minecraft/world/entity/animal/cow/AbstractCow.java +++ b/net/minecraft/world/entity/animal/cow/AbstractCow.java -@@ -40,7 +_,7 @@ +@@ -40,7 +40,7 @@ public abstract class AbstractCow extends Animal { this.goalSelector.addGoal(0, new FloatGoal(this)); this.goalSelector.addGoal(1, new PanicGoal(this, 2.0)); this.goalSelector.addGoal(2, new BreedGoal(this, 1.0)); @@ -9,7 +17,7 @@ this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.25)); this.goalSelector.addGoal(5, new WaterAvoidingRandomStrollGoal(this, 1.0)); this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F)); -@@ -96,6 +_,10 @@ +@@ -96,6 +96,10 @@ public abstract class AbstractCow extends Animal { ItemStack itemStack = ItemUtils.createFilledResult(itemInHand, player, org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(event.getItemStack())); // CraftBukkit player.setItemInHand(hand, itemStack); return InteractionResult.SUCCESS; @@ -20,7 +28,7 @@ } else { return super.mobInteract(player, hand); } -@@ -105,4 +_,67 @@ +@@ -105,4 +109,67 @@ public abstract class AbstractCow extends Animal { public EntityDimensions getDefaultDimensions(Pose pose) { return this.isBaby() ? BABY_DIMENSIONS : super.getDefaultDimensions(pose); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/cow/MushroomCow.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/cow/MushroomCow.java.patch similarity index 67% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/cow/MushroomCow.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/cow/MushroomCow.java.patch index c042bfe98..3bc90a834 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/cow/MushroomCow.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/cow/MushroomCow.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/cow/MushroomCow.java b/net/minecraft/world/entity/animal/cow/MushroomCow.java +index b4b59e3973f7a3fe8b94ff337e87cbe735b2285c..ea6299e728d7c7e7a52d7c65d759407ba27c8eac 100644 --- a/net/minecraft/world/entity/animal/cow/MushroomCow.java +++ b/net/minecraft/world/entity/animal/cow/MushroomCow.java -@@ -199,6 +_,13 @@ +@@ -199,6 +199,13 @@ public class MushroomCow extends AbstractCow implements Shearable { level.playSound(null, this, SoundEvents.MOOSHROOM_SHEAR, source, 1.0F, 1.0F); this.convertTo(EntityType.COW, ConversionParams.single(this, false, false), cow -> { level.sendParticles(ParticleTypes.EXPLOSION, this.getX(), this.getY(0.5), this.getZ(), 1, 0.0, 0.0, 0.0, 0.0); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/dolphin/Dolphin.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/dolphin/Dolphin.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/dolphin/Dolphin.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/dolphin/Dolphin.java.patch index 4cfc72671..ebe6db930 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/dolphin/Dolphin.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/dolphin/Dolphin.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/dolphin/Dolphin.java b/net/minecraft/world/entity/animal/dolphin/Dolphin.java +index 3a3c9694d3a704aaaa241bd8601c7fd2439436cc..50b8abff1e20855ba8c8acb225c251a1223b8b58 100644 --- a/net/minecraft/world/entity/animal/dolphin/Dolphin.java +++ b/net/minecraft/world/entity/animal/dolphin/Dolphin.java -@@ -75,6 +_,7 @@ +@@ -75,6 +75,7 @@ public class Dolphin extends AgeableWaterCreature { public static final float BABY_SCALE = 0.65F; private static final boolean DEFAULT_GOT_FISH = false; @Nullable public BlockPos treasurePos; @@ -8,7 +16,7 @@ public Dolphin(EntityType type, Level level) { super(type, level); -@@ -90,6 +_,7 @@ +@@ -90,6 +91,7 @@ public class Dolphin extends AgeableWaterCreature { this.setAirSupply(this.getMaxAirSupply()); this.setXRot(0.0F); SpawnGroupData spawnGroupData1 = Objects.requireNonNullElseGet(spawnGroupData, () -> new AgeableMob.AgeableMobGroupData(0.1F)); @@ -16,7 +24,7 @@ return super.finalizeSpawn(level, difficulty, spawnReason, spawnGroupData1); } -@@ -155,17 +_,19 @@ +@@ -155,17 +157,19 @@ public class Dolphin extends AgeableWaterCreature { protected void registerGoals() { this.goalSelector.addGoal(0, new BreathAirGoal(this)); this.goalSelector.addGoal(0, new TryFindWaterGoal(this)); @@ -37,7 +45,7 @@ } public static AttributeSupplier.Builder createAttributes() { -@@ -392,6 +_,7 @@ +@@ -392,6 +396,7 @@ public class Dolphin extends AgeableWaterCreature { @Override public boolean canUse() { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/equine/Llama.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/equine/Llama.java.patch similarity index 67% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/equine/Llama.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/equine/Llama.java.patch index f5a863392..e03a0eda8 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/equine/Llama.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/equine/Llama.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/equine/Llama.java b/net/minecraft/world/entity/animal/equine/Llama.java +index 1522efc1e6937bc8a24a2df77d5421ae04a6642b..cceb66525a4d017b2db21bd301e63670c639223f 100644 --- a/net/minecraft/world/entity/animal/equine/Llama.java +++ b/net/minecraft/world/entity/animal/equine/Llama.java -@@ -76,6 +_,7 @@ +@@ -76,6 +76,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob { boolean didSpit; private @Nullable Llama caravanHead; public @Nullable Llama caravanTail; // Paper - public @@ -8,7 +16,7 @@ public Llama(EntityType type, Level level) { super(type, level); -@@ -105,6 +_,7 @@ +@@ -105,6 +106,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob { super.addAdditionalSaveData(output); output.store("Variant", Llama.Variant.LEGACY_CODEC, this.getVariant()); output.putInt("Strength", this.getStrength()); @@ -16,7 +24,7 @@ } @Override -@@ -112,6 +_,7 @@ +@@ -112,6 +114,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob { this.setStrength(input.getIntOr("Strength", 0)); super.readAdditionalSaveData(input); this.setVariant(input.read("Variant", Llama.Variant.LEGACY_CODEC).orElse(Llama.Variant.DEFAULT)); @@ -24,7 +32,7 @@ } @Override -@@ -388,6 +_,7 @@ +@@ -388,6 +391,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob { public void leaveCaravan() { if (this.caravanHead != null) { @@ -32,7 +40,7 @@ this.caravanHead.caravanTail = null; } -@@ -395,6 +_,7 @@ +@@ -395,6 +399,7 @@ public class Llama extends AbstractChestedHorse implements RangedAttackMob { } public void joinCaravan(Llama caravanHead) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/feline/Cat.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/feline/Cat.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/feline/Cat.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/feline/Cat.java.patch index ff93d1657..325da12ca 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/feline/Cat.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/feline/Cat.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/feline/Cat.java b/net/minecraft/world/entity/animal/feline/Cat.java +index f17d7a4ef7061d6ede9a755b5a77324a28c3eeaa..6acd39413ab4fed1eaf251d3b6d9b9e184060e5c 100644 --- a/net/minecraft/world/entity/animal/feline/Cat.java +++ b/net/minecraft/world/entity/animal/feline/Cat.java -@@ -354,6 +_,14 @@ +@@ -354,6 +354,14 @@ public class Cat extends TamableAnimal { return this.isTame() && otherAnimal instanceof Cat cat && cat.isTame() && super.canMate(otherAnimal); } @@ -15,7 +23,7 @@ @Override public @Nullable SpawnGroupData finalizeSpawn( ServerLevelAccessor level, DifficultyInstance difficulty, EntitySpawnReason spawnReason, @Nullable SpawnGroupData spawnGroupData -@@ -451,7 +_,7 @@ +@@ -451,7 +459,7 @@ public class Cat extends TamableAnimal { } private void tryToTame(Player player) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/feline/Ocelot.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/feline/Ocelot.java.patch similarity index 56% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/feline/Ocelot.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/feline/Ocelot.java.patch index 21c0a7907..5e42227e5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/feline/Ocelot.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/feline/Ocelot.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/feline/Ocelot.java b/net/minecraft/world/entity/animal/feline/Ocelot.java +index cf940de8767df6d07551d7a221a0e87df4e41785..94fdbae92dabf7505a7c7b518d4c07b4f68c8e9c 100644 --- a/net/minecraft/world/entity/animal/feline/Ocelot.java +++ b/net/minecraft/world/entity/animal/feline/Ocelot.java -@@ -234,7 +_,7 @@ +@@ -234,7 +234,7 @@ public class Ocelot extends Animal { public boolean checkSpawnObstruction(LevelReader level) { if (level.isUnobstructed(this) && !level.containsAnyLiquid(this.getBoundingBox())) { BlockPos blockPos = this.blockPosition(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/fish/WaterAnimal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/fish/WaterAnimal.java.patch similarity index 64% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/fish/WaterAnimal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/fish/WaterAnimal.java.patch index a572fa81f..6f19ad71b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/fish/WaterAnimal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/fish/WaterAnimal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/fish/WaterAnimal.java b/net/minecraft/world/entity/animal/fish/WaterAnimal.java +index 3965cb8ae6fdd8d9d0135e6695463e6bef624fe2..9ff11eb96bc8d0c9bd611c8d45d8799c67f1fb61 100644 --- a/net/minecraft/world/entity/animal/fish/WaterAnimal.java +++ b/net/minecraft/world/entity/animal/fish/WaterAnimal.java -@@ -76,8 +_,7 @@ +@@ -76,8 +76,7 @@ public abstract class WaterAnimal extends PathfinderMob { seaLevel = level.getMinecraftWorld().paperConfig().entities.spawning.wateranimalSpawnHeight.maximum.or(seaLevel); i = level.getMinecraftWorld().paperConfig().entities.spawning.wateranimalSpawnHeight.minimum.or(i); // Paper end - Make water animal spawn height configurable diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/fox/Fox.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/fox/Fox.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/fox/Fox.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/fox/Fox.java.patch index f6fdc8513..a7917f225 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/fox/Fox.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/fox/Fox.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/fox/Fox.java b/net/minecraft/world/entity/animal/fox/Fox.java +index 6fb314b49b7a482d4092d5a63c06abab69845c85..6d0eb7e0310b3fdd234dee5b8bf993d1c5ef27f1 100644 --- a/net/minecraft/world/entity/animal/fox/Fox.java +++ b/net/minecraft/world/entity/animal/fox/Fox.java -@@ -357,6 +_,11 @@ +@@ -357,6 +357,11 @@ public class Fox extends Animal { } private void setTargetGoals() { @@ -12,7 +20,7 @@ if (this.getVariant() == Fox.Variant.RED) { this.targetSelector.addGoal(4, this.landTargetGoal); this.targetSelector.addGoal(4, this.turtleEggTargetGoal); -@@ -384,6 +_,7 @@ +@@ -384,6 +389,7 @@ public class Fox extends Animal { public void setVariant(Fox.Variant variant) { this.entityData.set(DATA_TYPE_ID, variant.getId()); @@ -20,11 +28,10 @@ } @Override -@@ -709,6 +_,29 @@ - return slot == EquipmentSlot.MAINHAND; +@@ -710,6 +716,29 @@ public class Fox extends Animal { } // Paper end -+ + + // Purpur start - Tulips change fox type + @Override + public net.minecraft.world.InteractionResult mobInteract(Player player, net.minecraft.world.InteractionHand hand) { @@ -47,6 +54,7 @@ + return super.mobInteract(player, hand); + } + // Purpur end - Tulips change fox type - ++ @Override // Paper start - Cancellable death event + protected org.bukkit.event.entity.EntityDeathEvent dropAllDeathLoot(ServerLevel level, DamageSource damageSource) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/goat/Goat.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/goat/Goat.java.patch similarity index 57% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/goat/Goat.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/goat/Goat.java.patch index d854787d7..b45613e9d 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/goat/Goat.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/goat/Goat.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/goat/Goat.java b/net/minecraft/world/entity/animal/goat/Goat.java +index 9f41c1ff3e75cf9164dee0853aeef4bfc473126b..566390c9258c1132c9ffa2df8ecc3e713963787f 100644 --- a/net/minecraft/world/entity/animal/goat/Goat.java +++ b/net/minecraft/world/entity/animal/goat/Goat.java -@@ -389,6 +_,7 @@ +@@ -389,6 +389,7 @@ public class Goat extends Animal { // Paper start - Goat ram API public void ram(net.minecraft.world.entity.LivingEntity entity) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/CopperGolem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/CopperGolem.java.patch similarity index 70% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/CopperGolem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/CopperGolem.java.patch index 6ce83f8b0..7a5a5141a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/CopperGolem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/CopperGolem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/golem/CopperGolem.java b/net/minecraft/world/entity/animal/golem/CopperGolem.java +index f9a6aba1037e41836b69cd5e66195cdc0b1f7725..28cd2deeb5c92f599f7f1b19a2794b98994409c3 100644 --- a/net/minecraft/world/entity/animal/golem/CopperGolem.java +++ b/net/minecraft/world/entity/animal/golem/CopperGolem.java -@@ -83,6 +_,7 @@ +@@ -83,6 +83,7 @@ public class CopperGolem extends AbstractGolem implements ContainerUser, Shearab private final AnimationState interactionDropItemAnimationState = new AnimationState(); private final AnimationState interactionDropNoItemAnimationState = new AnimationState(); public static final EquipmentSlot EQUIPMENT_SLOT_ANTENNA = EquipmentSlot.SADDLE; @@ -8,7 +16,7 @@ public CopperGolem(EntityType type, Level level) { super(type, level); -@@ -96,6 +_,17 @@ +@@ -96,6 +97,17 @@ public class CopperGolem extends AbstractGolem implements ContainerUser, Shearab this.getBrain().setMemory(MemoryModuleType.TRANSPORT_ITEMS_COOLDOWN_TICKS, this.getRandom().nextInt(60, 100)); } @@ -26,7 +34,7 @@ public static AttributeSupplier.Builder createAttributes() { return Mob.createMobAttributes().add(Attributes.MOVEMENT_SPEED, 0.2F).add(Attributes.STEP_HEIGHT, 1.0).add(Attributes.MAX_HEALTH, 12.0); } -@@ -171,6 +_,7 @@ +@@ -171,6 +183,7 @@ public class CopperGolem extends AbstractGolem implements ContainerUser, Shearab super.addAdditionalSaveData(output); output.putLong("next_weather_age", this.nextWeatheringTick); output.store("weather_state", WeatheringCopper.WeatherState.CODEC, this.getWeatherState()); @@ -34,7 +42,7 @@ } @Override -@@ -178,6 +_,7 @@ +@@ -178,6 +191,7 @@ public class CopperGolem extends AbstractGolem implements ContainerUser, Shearab super.readAdditionalSaveData(input); this.nextWeatheringTick = input.getLongOr("next_weather_age", -1L); this.setWeatherState(input.read("weather_state", WeatheringCopper.WeatherState.CODEC).orElse(WeatheringCopper.WeatherState.UNAFFECTED)); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/CopperGolemAi.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/CopperGolemAi.java.patch similarity index 76% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/CopperGolemAi.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/CopperGolemAi.java.patch index 81805e39c..bc8ef01e8 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/CopperGolemAi.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/CopperGolemAi.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/golem/CopperGolemAi.java b/net/minecraft/world/entity/animal/golem/CopperGolemAi.java +index 56872b4674ae4ce0ebcb6c28ae606265384777cd..fd556e10ff87eac5e965a5eef31cfe0c0f8fbd66 100644 --- a/net/minecraft/world/entity/animal/golem/CopperGolemAi.java +++ b/net/minecraft/world/entity/animal/golem/CopperGolemAi.java -@@ -43,7 +_,7 @@ +@@ -43,7 +43,7 @@ public class CopperGolemAi { private static final int TICK_TO_START_ON_REACHED_INTERACTION = 1; private static final int TICK_TO_PLAY_ON_REACHED_SOUND = 9; private static final Predicate TRANSPORT_ITEM_SOURCE_BLOCK = state -> state.is(BlockTags.COPPER_CHESTS); @@ -9,7 +17,7 @@ private static final ImmutableList>> SENSOR_TYPES = ImmutableList.of( SensorType.NEAREST_LIVING_ENTITIES, SensorType.HURT_BY ); -@@ -158,6 +_,11 @@ +@@ -158,6 +158,11 @@ public class CopperGolemAi { } if (integer == 60) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/IronGolem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/IronGolem.java.patch similarity index 76% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/IronGolem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/IronGolem.java.patch index 9d2f00982..e5ab418df 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/IronGolem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/IronGolem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/golem/IronGolem.java b/net/minecraft/world/entity/animal/golem/IronGolem.java +index b2c4e93f6063ded665b18ba3b4eaa0eb4cd98732..32425f0aaa748c7f80f2e5cf95ef27238fe50489 100644 --- a/net/minecraft/world/entity/animal/golem/IronGolem.java +++ b/net/minecraft/world/entity/animal/golem/IronGolem.java -@@ -58,13 +_,25 @@ +@@ -58,13 +58,25 @@ public class IronGolem extends AbstractGolem implements NeutralMob { private static final UniformInt PERSISTENT_ANGER_TIME = TimeUtil.rangeOfSeconds(20, 39); private long persistentAngerEndTime; private @Nullable EntityReference persistentAngerTarget; @@ -26,7 +34,7 @@ this.goalSelector.addGoal(1, new MeleeAttackGoal(this, 1.0, true)); this.goalSelector.addGoal(2, new MoveTowardsTargetGoal(this, 0.9, 32.0F)); this.goalSelector.addGoal(2, new MoveBackToVillageGoal(this, 0.6, false)); -@@ -142,6 +_,7 @@ +@@ -142,6 +154,7 @@ public class IronGolem extends AbstractGolem implements NeutralMob { protected void addAdditionalSaveData(ValueOutput output) { super.addAdditionalSaveData(output); output.putBoolean("PlayerCreated", this.isPlayerCreated()); @@ -34,7 +42,7 @@ this.addPersistentAngerSaveData(output); } -@@ -149,6 +_,7 @@ +@@ -149,6 +162,7 @@ public class IronGolem extends AbstractGolem implements NeutralMob { protected void readAdditionalSaveData(ValueInput input) { super.readAdditionalSaveData(input); this.setPlayerCreated(input.getBooleanOr("PlayerCreated", false)); @@ -42,7 +50,7 @@ this.readPersistentAngerSaveData(this.level(), input); } -@@ -267,6 +_,7 @@ +@@ -267,6 +281,7 @@ public class IronGolem extends AbstractGolem implements NeutralMob { float f = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F; this.playSound(SoundEvents.IRON_GOLEM_REPAIR, 1.0F, f); itemInHand.consume(1, player); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/SnowGolem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/SnowGolem.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/SnowGolem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/SnowGolem.java.patch index 8e017028e..0de7aaf7e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/golem/SnowGolem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/golem/SnowGolem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/golem/SnowGolem.java b/net/minecraft/world/entity/animal/golem/SnowGolem.java +index f6e8e0c3a9532aaa1034c8a31b32da54d17ef151..620af577fa9fa4b16f6651b427d25af93b0e02c6 100644 --- a/net/minecraft/world/entity/animal/golem/SnowGolem.java +++ b/net/minecraft/world/entity/animal/golem/SnowGolem.java -@@ -46,15 +_,26 @@ +@@ -46,15 +46,26 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM private static final EntityDataAccessor DATA_PUMPKIN_ID = SynchedEntityData.defineId(SnowGolem.class, EntityDataSerializers.BYTE); private static final byte PUMPKIN_FLAG = 16; private static final boolean DEFAULT_PUMPKIN = true; @@ -29,7 +37,7 @@ this.goalSelector.addGoal(3, new LookAtPlayerGoal(this, Player.class, 6.0F)); this.goalSelector.addGoal(4, new RandomLookAroundGoal(this)); this.targetSelector.addGoal(1, new NearestAttackableTargetGoal<>(this, Mob.class, 10, true, false, (entity, level) -> entity instanceof Enemy)); -@@ -74,12 +_,14 @@ +@@ -74,12 +85,14 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM protected void addAdditionalSaveData(ValueOutput output) { super.addAdditionalSaveData(output); output.putBoolean("Pumpkin", this.hasPumpkin()); @@ -44,7 +52,7 @@ } @Override -@@ -153,6 +_,14 @@ +@@ -153,6 +166,14 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM } return InteractionResult.SUCCESS; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/parrot/Parrot.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/parrot/Parrot.java.patch similarity index 74% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/parrot/Parrot.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/parrot/Parrot.java.patch index 66096c247..2e49ca844 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/parrot/Parrot.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/parrot/Parrot.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/parrot/Parrot.java b/net/minecraft/world/entity/animal/parrot/Parrot.java +index 62a26395ee0c3ee450ad3b1ac88bc85523dd27b4..0337ddcd664cd0329d98286214d1aa4daf83e1ea 100644 --- a/net/minecraft/world/entity/animal/parrot/Parrot.java +++ b/net/minecraft/world/entity/animal/parrot/Parrot.java -@@ -164,6 +_,7 @@ +@@ -164,6 +164,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal { protected void registerGoals() { this.goalSelector.addGoal(0, new TamableAnimal.TamableAnimalPanicGoal(1.25)); this.goalSelector.addGoal(0, new FloatGoal(this)); @@ -8,7 +16,7 @@ this.goalSelector.addGoal(1, new LookAtPlayerGoal(this, Player.class, 8.0F)); this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this)); this.goalSelector.addGoal(2, new FollowOwnerGoal(this, 1.0, 5.0F, 1.0F)); -@@ -269,7 +_,7 @@ +@@ -269,7 +270,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal { } if (!this.level().isClientSide()) { @@ -17,7 +25,7 @@ this.tame(player); this.level().broadcastEntityEvent(this, EntityEvent.TAMING_SUCCEEDED); } else { -@@ -277,6 +_,7 @@ +@@ -277,6 +278,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal { } } @@ -25,7 +33,7 @@ return InteractionResult.SUCCESS; } else if (!itemInHand.is(ItemTags.PARROT_POISONOUS_FOOD)) { if (!this.isFlying() && this.isTame() && this.isOwnedBy(player)) { -@@ -301,7 +_,7 @@ +@@ -301,7 +303,7 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal { @Override public boolean isFood(ItemStack stack) { @@ -34,7 +42,7 @@ } public static boolean checkParrotSpawnRules( -@@ -316,12 +_,12 @@ +@@ -316,12 +318,12 @@ public class Parrot extends ShoulderRidingEntity implements FlyingAnimal { @Override public boolean canMate(Animal otherAnimal) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/pig/Pig.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/pig/Pig.java.patch similarity index 69% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/pig/Pig.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/pig/Pig.java.patch index 3b45f4fdc..c2fe78a8e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/pig/Pig.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/pig/Pig.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/pig/Pig.java b/net/minecraft/world/entity/animal/pig/Pig.java +index 8f5d1e2d98472e8e313fad285bd1629aea4173a9..943bd459554e9f3374978e595ba369a479d44941 100644 --- a/net/minecraft/world/entity/animal/pig/Pig.java +++ b/net/minecraft/world/entity/animal/pig/Pig.java -@@ -138,6 +_,19 @@ +@@ -138,6 +138,19 @@ public class Pig extends Animal implements ItemSteerable { @Override public InteractionResult mobInteract(Player player, InteractionHand hand) { boolean isFood = this.isFood(player.getItemInHand(hand)); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/polarbear/PolarBear.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/polarbear/PolarBear.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/polarbear/PolarBear.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/polarbear/PolarBear.java.patch index 06b4c45f4..26e620f67 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/polarbear/PolarBear.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/polarbear/PolarBear.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/polarbear/PolarBear.java b/net/minecraft/world/entity/animal/polarbear/PolarBear.java +index 8fd0d632e7c6fc7fcb7e9cf141638b5171800799..df4b4a4d32019ef3a667841a0ce4485a8325e897 100644 --- a/net/minecraft/world/entity/animal/polarbear/PolarBear.java +++ b/net/minecraft/world/entity/animal/polarbear/PolarBear.java -@@ -66,6 +_,29 @@ +@@ -66,6 +66,29 @@ public class PolarBear extends Animal implements NeutralMob { super(type, level); } @@ -30,7 +38,7 @@ @Override public @Nullable AgeableMob getBreedOffspring(ServerLevel level, AgeableMob partner) { return EntityType.POLAR_BEAR.create(level, EntitySpawnReason.BREEDING); -@@ -73,7 +_,7 @@ +@@ -73,7 +96,7 @@ public class PolarBear extends Animal implements NeutralMob { @Override public boolean isFood(ItemStack stack) { @@ -39,7 +47,7 @@ } @Override -@@ -82,6 +_,12 @@ +@@ -82,6 +105,12 @@ public class PolarBear extends Animal implements NeutralMob { this.goalSelector.addGoal(0, new FloatGoal(this)); this.goalSelector.addGoal(1, new PolarBear.PolarBearMeleeAttackGoal()); this.goalSelector.addGoal(1, new PanicGoal(this, 2.0, mob -> mob.isBaby() ? DamageTypeTags.PANIC_CAUSES : DamageTypeTags.PANIC_ENVIRONMENTAL_CAUSES)); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/rabbit/Rabbit.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/rabbit/Rabbit.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/rabbit/Rabbit.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/rabbit/Rabbit.java.patch index d378a0a96..b237b32c4 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/rabbit/Rabbit.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/rabbit/Rabbit.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/rabbit/Rabbit.java b/net/minecraft/world/entity/animal/rabbit/Rabbit.java +index 17e58836d18afc7cfcc1cf7a8ac5b9e66ceb5f0d..d5e7599c23405eb5a4519e2dfd93ddbe2853fa3b 100644 --- a/net/minecraft/world/entity/animal/rabbit/Rabbit.java +++ b/net/minecraft/world/entity/animal/rabbit/Rabbit.java -@@ -404,10 +_,23 @@ +@@ -404,10 +404,23 @@ public class Rabbit extends Animal { } this.setVariant(randomRabbitVariant); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/squid/GlowSquid.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/squid/GlowSquid.java.patch similarity index 50% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/squid/GlowSquid.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/squid/GlowSquid.java.patch index 00859fa4c..0efd2257e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/squid/GlowSquid.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/squid/GlowSquid.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/squid/GlowSquid.java b/net/minecraft/world/entity/animal/squid/GlowSquid.java +index 1012da8b64b0b7a4f832eab48239b2c65bd20eaf..2b1ece8ff62376a0851c18c39f43882abf2abaca 100644 --- a/net/minecraft/world/entity/animal/squid/GlowSquid.java +++ b/net/minecraft/world/entity/animal/squid/GlowSquid.java -@@ -30,6 +_,13 @@ +@@ -30,6 +30,13 @@ public class GlowSquid extends Squid { super(type, level); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/squid/Squid.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/squid/Squid.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/squid/Squid.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/squid/Squid.java.patch index 9ca8b5607..f9821ce42 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/squid/Squid.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/squid/Squid.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/squid/Squid.java b/net/minecraft/world/entity/animal/squid/Squid.java +index 0e13879ce2802ff8ef0ee9b745a23396727c3e30..504573bf4cbdf1debfa9f9bd071fa40d443b860d 100644 --- a/net/minecraft/world/entity/animal/squid/Squid.java +++ b/net/minecraft/world/entity/animal/squid/Squid.java -@@ -48,10 +_,29 @@ +@@ -48,10 +48,29 @@ public class Squid extends AgeableWaterCreature { public Squid(EntityType type, Level level) { super(type, level); @@ -31,7 +39,7 @@ @Override protected void registerGoals() { this.goalSelector.addGoal(0, new Squid.SquidRandomMovementGoal(this)); -@@ -128,6 +_,7 @@ +@@ -128,6 +147,7 @@ public class Squid extends AgeableWaterCreature { } if (this.isInWater()) { @@ -39,7 +47,7 @@ if (this.tentacleMovement < (float) Math.PI) { float f = this.tentacleMovement / (float) Math.PI; this.tentacleAngle = Mth.sin(f * f * (float) Math.PI) * (float) Math.PI * 0.25F; -@@ -308,7 +_,7 @@ +@@ -308,7 +328,7 @@ public class Squid extends AgeableWaterCreature { int noActionTime = this.squid.getNoActionTime(); if (noActionTime > 100) { this.squid.movementVector = Vec3.ZERO; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/wolf/Wolf.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/wolf/Wolf.java.patch similarity index 89% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/wolf/Wolf.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/wolf/Wolf.java.patch index e7ed8a723..f99dcc366 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/animal/wolf/Wolf.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/animal/wolf/Wolf.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/animal/wolf/Wolf.java b/net/minecraft/world/entity/animal/wolf/Wolf.java +index ffad6072280fb4d02f0a37a97d8c83fba85d3bc2..725624f63a2fbf0bd489a92e2c5862c82d72556c 100644 --- a/net/minecraft/world/entity/animal/wolf/Wolf.java +++ b/net/minecraft/world/entity/animal/wolf/Wolf.java -@@ -100,6 +_,37 @@ +@@ -100,6 +100,37 @@ public class Wolf extends TamableAnimal implements NeutralMob { EntityType type = entity.getType(); return type == EntityType.SHEEP || type == EntityType.RABBIT || type == EntityType.FOX; }; @@ -38,7 +46,7 @@ private static final float START_HEALTH = 8.0F; private static final float TAME_HEALTH = 40.0F; private static final float ARMOR_REPAIR_UNIT = 0.125F; -@@ -121,12 +_,47 @@ +@@ -121,12 +152,47 @@ public class Wolf extends TamableAnimal implements NeutralMob { this.setPathfindingMalus(PathType.DANGER_POWDER_SNOW, -1.0F); } @@ -86,7 +94,7 @@ this.goalSelector.addGoal(4, new LeapAtTargetGoal(this, 0.4F)); this.goalSelector.addGoal(5, new MeleeAttackGoal(this, 1.0, true)); this.goalSelector.addGoal(6, new FollowOwnerGoal(this, 1.0, 10.0F, 2.0F)); -@@ -139,7 +_,7 @@ +@@ -139,7 +205,7 @@ public class Wolf extends TamableAnimal implements NeutralMob { this.targetSelector.addGoal(2, new OwnerHurtTargetGoal(this)); this.targetSelector.addGoal(3, new HurtByTargetGoal(this).setAlertOthers()); this.targetSelector.addGoal(4, new NearestAttackableTargetGoal<>(this, Player.class, 10, true, false, this::isAngryAt)); @@ -95,7 +103,7 @@ this.targetSelector.addGoal(6, new NonTameRandomTargetGoal<>(this, Turtle.class, false, Turtle.BABY_ON_LAND_SELECTOR)); this.targetSelector.addGoal(7, new NearestAttackableTargetGoal<>(this, AbstractSkeleton.class, false)); this.targetSelector.addGoal(8, new ResetUniversalAngerTargetGoal<>(this, true)); -@@ -229,6 +_,7 @@ +@@ -229,6 +295,7 @@ public class Wolf extends TamableAnimal implements NeutralMob { protected void addAdditionalSaveData(ValueOutput output) { super.addAdditionalSaveData(output); output.store("CollarColor", DyeColor.LEGACY_ID_CODEC, this.getCollarColor()); @@ -103,7 +111,7 @@ VariantUtils.writeVariant(output, this.getVariant()); this.addPersistentAngerSaveData(output); this.getSoundVariant() -@@ -243,6 +_,10 @@ +@@ -243,6 +310,10 @@ public class Wolf extends TamableAnimal implements NeutralMob { super.readAdditionalSaveData(input); VariantUtils.readVariant(input, Registries.WOLF_VARIANT).ifPresent(this::setVariant); this.setCollarColor(input.read("CollarColor", DyeColor.LEGACY_ID_CODEC).orElse(DEFAULT_COLLAR_COLOR)); @@ -114,7 +122,7 @@ this.readPersistentAngerSaveData(this.level(), input); input.read("sound_variant", ResourceKey.codec(Registries.WOLF_SOUND_VARIANT)) .flatMap(resourceKey -> this.registryAccess().lookupOrThrow(Registries.WOLF_SOUND_VARIANT).get((ResourceKey)resourceKey)) -@@ -266,6 +_,10 @@ +@@ -266,6 +337,10 @@ public class Wolf extends TamableAnimal implements NeutralMob { } this.setSoundVariant(WolfSoundVariants.pickRandomSoundVariant(this.registryAccess(), level.getRandom())); @@ -125,7 +133,7 @@ return super.finalizeSpawn(level, difficulty, spawnReason, spawnGroupData); } -@@ -316,6 +_,11 @@ +@@ -316,6 +391,11 @@ public class Wolf extends TamableAnimal implements NeutralMob { public void tick() { super.tick(); if (this.isAlive()) { @@ -137,7 +145,7 @@ this.interestedAngleO = this.interestedAngle; if (this.isInterested()) { this.interestedAngle = this.interestedAngle + (1.0F - this.interestedAngle) * 0.4F; -@@ -517,13 +_,27 @@ +@@ -517,13 +597,27 @@ public class Wolf extends TamableAnimal implements NeutralMob { itemInHand.consume(1, player); this.tryToTame(player); return InteractionResult.SUCCESS_SERVER; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java.patch similarity index 84% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java.patch index b58f13a85..95cab977a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java b/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java +index c095f42aa103b7874fb5d8dcece1b1484c2e2968..d1c593ccfab7bee4366ee7c56606a230964e3fb7 100644 --- a/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java +++ b/net/minecraft/world/entity/boss/enderdragon/EndCrystal.java -@@ -39,6 +_,24 @@ +@@ -39,6 +39,24 @@ public class EndCrystal extends Entity { this.setPos(x, y, z); } @@ -25,7 +33,7 @@ @Override protected Entity.MovementEmission getMovementEmission() { return Entity.MovementEmission.NONE; -@@ -75,6 +_,8 @@ +@@ -75,6 +93,8 @@ public class EndCrystal extends Entity { } } // Paper end - Fix invulnerable end crystals @@ -34,7 +42,7 @@ } @Override -@@ -115,15 +_,17 @@ +@@ -115,15 +135,17 @@ public class EndCrystal extends Entity { } // CraftBukkit end if (!damageSource.is(DamageTypeTags.IS_EXPLOSION)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java.patch similarity index 58% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java.patch index ca3634fcb..73fd0feef 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java +index 1daf8f52148043339f723aaebdf6135763dd805b..9c38e3b8c09caa2701a207b91761f344c5e53385 100644 --- a/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java +++ b/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java -@@ -957,6 +_,7 @@ +@@ -957,6 +957,7 @@ public class EnderDragon extends Mob implements Enemy { @Override protected boolean canRide(Entity entity) { @@ -8,7 +16,7 @@ return false; } -@@ -992,7 +_,7 @@ +@@ -992,7 +993,7 @@ public class EnderDragon extends Mob implements Enemy { boolean flag = level.getGameRules().get(GameRules.MOB_DROPS); int i = 500; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/wither/WitherBoss.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/wither/WitherBoss.java.patch similarity index 76% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/wither/WitherBoss.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/wither/WitherBoss.java.patch index 4fa150f4b..9f97ef257 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/boss/wither/WitherBoss.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/boss/wither/WitherBoss.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/boss/wither/WitherBoss.java b/net/minecraft/world/entity/boss/wither/WitherBoss.java +index 86b6b94c3e63bb52917fe0f708d24aa813f433c7..be74b2f6e21e9adb1e5c96414854a5c4f07655fc 100644 --- a/net/minecraft/world/entity/boss/wither/WitherBoss.java +++ b/net/minecraft/world/entity/boss/wither/WitherBoss.java -@@ -80,6 +_,7 @@ +@@ -80,6 +80,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { private static final TargetingConditions.Selector LIVING_ENTITY_SELECTOR = (entity, level) -> !entity.getType().is(EntityTypeTags.WITHER_FRIENDS) && entity.attackable(); private static final TargetingConditions TARGETING_CONDITIONS = TargetingConditions.forCombat().range(20.0).selector(LIVING_ENTITY_SELECTOR); @@ -8,7 +16,7 @@ public WitherBoss(EntityType type, Level level) { super(type, level); -@@ -88,6 +_,16 @@ +@@ -88,6 +89,16 @@ public class WitherBoss extends Monster implements RangedAttackMob { this.xpReward = 50; } @@ -25,7 +33,7 @@ @Override protected PathNavigation createNavigation(Level level) { FlyingPathNavigation flyingPathNavigation = new FlyingPathNavigation(this, level); -@@ -120,6 +_,7 @@ +@@ -120,6 +131,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { protected void addAdditionalSaveData(ValueOutput output) { super.addAdditionalSaveData(output); output.putInt("Invul", this.getInvulnerableTicks()); @@ -33,7 +41,7 @@ } @Override -@@ -129,6 +_,7 @@ +@@ -129,6 +141,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { if (this.hasCustomName()) { this.bossEvent.setName(this.getDisplayName()); } @@ -41,7 +49,7 @@ } @Override -@@ -272,7 +_,7 @@ +@@ -272,7 +285,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { level.explode(this, this.getX(), this.getEyeY(), this.getZ(), event.getRadius(), event.getFire(), Level.ExplosionInteraction.MOB); } // CraftBukkit end @@ -50,7 +58,7 @@ // CraftBukkit start - Use relative location for far away sounds // level.globalLevelEvent(LevelEvent.SOUND_WITHER_BOSS_SPAWN, this.blockPosition(), 0); int viewDistance = level.getCraftServer().getViewDistance() * 16; -@@ -379,8 +_,10 @@ +@@ -379,8 +392,10 @@ public class WitherBoss extends Monster implements RangedAttackMob { } } @@ -63,7 +71,7 @@ } this.bossEvent.setProgress(this.getHealth() / this.getMaxHealth()); -@@ -577,6 +_,7 @@ +@@ -577,6 +592,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { @Override protected boolean canRide(Entity entity) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/decoration/ArmorStand.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/decoration/ArmorStand.java.patch similarity index 76% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/decoration/ArmorStand.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/decoration/ArmorStand.java.patch index 035025719..8c4dcb339 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/decoration/ArmorStand.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/decoration/ArmorStand.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/decoration/ArmorStand.java b/net/minecraft/world/entity/decoration/ArmorStand.java +index 79ae039d1908830e81912d230b3540a4920e2017..959037a01841de06767522512b92e96be7c72b56 100644 --- a/net/minecraft/world/entity/decoration/ArmorStand.java +++ b/net/minecraft/world/entity/decoration/ArmorStand.java -@@ -92,10 +_,13 @@ +@@ -92,10 +92,13 @@ public class ArmorStand extends LivingEntity { public boolean canTickSetByAPI = false; private boolean noTickEquipmentDirty = false; // Paper end - Allow ArmorStands not to tick @@ -14,7 +22,7 @@ } public ArmorStand(Level level, double x, double y, double z) { -@@ -522,6 +_,7 @@ +@@ -522,6 +525,7 @@ public class ArmorStand extends LivingEntity { // Paper start - Allow ArmorStands not to tick @Override public void tick() { @@ -22,7 +30,7 @@ if (!this.canTick) { if (this.noTickEquipmentDirty) { this.noTickEquipmentDirty = false; -@@ -810,4 +_,18 @@ +@@ -810,4 +814,18 @@ public class ArmorStand extends LivingEntity { } } // Paper end diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/item/ItemEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/item/ItemEntity.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/item/ItemEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/item/ItemEntity.java.patch index 9a7d5bb73..4b055ac11 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/item/ItemEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/item/ItemEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/item/ItemEntity.java b/net/minecraft/world/entity/item/ItemEntity.java +index e82bb8f2d2b0e771dc371fd7e709116e1f5f204f..ddf7fa8e67440beb102b6bf91b30f2b340b52a8e 100644 --- a/net/minecraft/world/entity/item/ItemEntity.java +++ b/net/minecraft/world/entity/item/ItemEntity.java -@@ -54,6 +_,12 @@ +@@ -54,6 +54,12 @@ public class ItemEntity extends Entity implements TraceableEntity { public boolean canMobPickup = true; // Paper - Item#canEntityPickup private int despawnRate = -1; // Paper - Alternative item-despawn-rate public net.kyori.adventure.util.TriState frictionState = net.kyori.adventure.util.TriState.NOT_SET; // Paper - Friction API @@ -13,7 +21,7 @@ public ItemEntity(EntityType type, Level level) { super(type, level); -@@ -330,7 +_,16 @@ +@@ -330,7 +336,16 @@ public class ItemEntity extends Entity implements TraceableEntity { @Override public final boolean hurtServer(ServerLevel level, DamageSource damageSource, float amount) { @@ -31,7 +39,7 @@ return false; } else if (!level.getGameRules().get(GameRules.MOB_GRIEFING) && damageSource.getEntity() instanceof Mob) { return false; -@@ -508,6 +_,12 @@ +@@ -508,6 +523,12 @@ public class ItemEntity extends Entity implements TraceableEntity { public void setItem(ItemStack stack) { this.getEntityData().set(DATA_ITEM, stack); this.despawnRate = this.level().paperConfig().entities.spawning.altItemDespawnRate.enabled ? this.level().paperConfig().entities.spawning.altItemDespawnRate.items.getOrDefault(stack.getItem(), this.level().spigotConfig.itemDespawnRate) : this.level().spigotConfig.itemDespawnRate; // Paper - Alternative item-despawn-rate diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/item/PrimedTnt.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/item/PrimedTnt.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/item/PrimedTnt.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/item/PrimedTnt.java.patch index a3308c373..0c0cfcf2b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/item/PrimedTnt.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/item/PrimedTnt.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/item/PrimedTnt.java b/net/minecraft/world/entity/item/PrimedTnt.java +index 910e7739aea98d6dfa603072acf5e9936dbb2c5e..5dccf56d19dd217ec4b18a390779f0da0c428b98 100644 --- a/net/minecraft/world/entity/item/PrimedTnt.java +++ b/net/minecraft/world/entity/item/PrimedTnt.java -@@ -235,4 +_,32 @@ +@@ -235,4 +235,32 @@ public class PrimedTnt extends Entity implements TraceableEntity { return !this.level().paperConfig().fixes.preventTntFromMovingInWater && super.isPushedByFluid(); } // Paper end - Option to prevent TNT from moving in water diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Creeper.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Creeper.java.patch similarity index 86% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Creeper.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Creeper.java.patch index d27c4e8c7..9249e4fdc 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Creeper.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Creeper.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Creeper.java b/net/minecraft/world/entity/monster/Creeper.java +index e6d93c7a339f06c40b78f554f4e7070fb7fcad02..168003b7159b5e9ea3e3ca19d0b939ed1cfd2311 100644 --- a/net/minecraft/world/entity/monster/Creeper.java +++ b/net/minecraft/world/entity/monster/Creeper.java -@@ -56,6 +_,7 @@ +@@ -56,6 +56,7 @@ public class Creeper extends Monster { public int explosionRadius = 3; public boolean droppedSkulls; public @Nullable Entity entityIgniter; // CraftBukkit @@ -8,7 +16,7 @@ public Creeper(EntityType type, Level level) { super(type, level); -@@ -159,6 +_,27 @@ +@@ -159,6 +160,27 @@ public class Creeper extends Monster { return false; // CraftBukkit } @@ -36,7 +44,7 @@ @Override public SoundEvent getHurtSound(DamageSource damageSource) { return SoundEvents.CREEPER_HURT; -@@ -243,14 +_,16 @@ +@@ -243,14 +265,16 @@ public class Creeper extends Monster { } public void explodeCreeper() { @@ -55,7 +63,7 @@ this.spawnLingeringCloud(); this.triggerOnDeathMobEffects(serverLevel, Entity.RemovalReason.KILLED); this.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.EXPLODE); // CraftBukkit - add Bukkit remove cause -@@ -261,6 +_,7 @@ +@@ -261,6 +285,7 @@ public class Creeper extends Monster { } // CraftBukkit end } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/EnderMan.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/EnderMan.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/EnderMan.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/EnderMan.java.patch index 7479b47dc..f76a6977a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/EnderMan.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/EnderMan.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/EnderMan.java b/net/minecraft/world/entity/monster/EnderMan.java +index 6516cccada06a9a7d3d743929712970fe0a2b8c8..2d903c77017ae356eb309df3c2c43b91c4e52f2f 100644 --- a/net/minecraft/world/entity/monster/EnderMan.java +++ b/net/minecraft/world/entity/monster/EnderMan.java -@@ -101,7 +_,7 @@ +@@ -101,7 +101,7 @@ public class EnderMan extends Monster implements NeutralMob { this.goalSelector.addGoal(11, new EnderMan.EndermanTakeBlockGoal(this)); this.targetSelector.addGoal(1, new EnderMan.EndermanLookForPlayerGoal(this, this::isAngryAt)); this.targetSelector.addGoal(2, new HurtByTargetGoal(this)); @@ -9,7 +17,7 @@ this.targetSelector.addGoal(4, new ResetUniversalAngerTargetGoal<>(this, false)); } -@@ -220,7 +_,7 @@ +@@ -220,7 +220,7 @@ public class EnderMan extends Monster implements NeutralMob { boolean isBeingStaredBy(Player player) { // Paper start - EndermanAttackPlayerEvent @@ -18,7 +26,7 @@ final com.destroystokyo.paper.event.entity.EndermanAttackPlayerEvent event = new com.destroystokyo.paper.event.entity.EndermanAttackPlayerEvent((org.bukkit.entity.Enderman) getBukkitEntity(), (org.bukkit.entity.Player) player.getBukkitEntity()); event.setCancelled(!shouldAttack); return event.callEvent(); -@@ -375,6 +_,7 @@ +@@ -375,6 +375,7 @@ public class EnderMan extends Monster implements NeutralMob { public boolean hurtServer(ServerLevel level, DamageSource damageSource, float amount) { if (this.isInvulnerableTo(level, damageSource)) { return false; @@ -26,7 +34,7 @@ } else { AbstractThrownPotion abstractThrownPotion1 = damageSource.getDirectEntity() instanceof AbstractThrownPotion abstractThrownPotion ? abstractThrownPotion -@@ -391,6 +_,7 @@ +@@ -391,6 +392,7 @@ public class EnderMan extends Monster implements NeutralMob { } else { boolean flag = abstractThrownPotion1 != null && this.hurtWithCleanWater(level, damageSource, abstractThrownPotion1, amount); @@ -34,7 +42,7 @@ if (this.tryEscape(com.destroystokyo.paper.event.entity.EndermanEscapeEvent.Reason.INDIRECT)) { // Paper - EndermanEscapeEvent for (int i = 0; i < 64; i++) { if (this.teleport()) { -@@ -434,7 +_,7 @@ +@@ -434,7 +436,7 @@ public class EnderMan extends Monster implements NeutralMob { @Override public boolean requiresCustomPersistence() { @@ -43,7 +51,7 @@ } static class EndermanFreezeWhenLookedAt extends Goal { -@@ -477,6 +_,7 @@ +@@ -477,6 +479,7 @@ public class EnderMan extends Monster implements NeutralMob { @Override public boolean canUse() { @@ -51,7 +59,7 @@ return this.enderman.getCarriedBlock() != null && getServerLevel(this.enderman).getGameRules().get(GameRules.MOB_GRIEFING) && this.enderman.getRandom().nextInt(reducedTickDelay(2000)) == 0; -@@ -625,6 +_,7 @@ +@@ -625,6 +628,7 @@ public class EnderMan extends Monster implements NeutralMob { @Override public boolean canUse() { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Endermite.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Endermite.java.patch similarity index 74% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Endermite.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Endermite.java.patch index a399138fa..567f518e6 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Endermite.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Endermite.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Endermite.java b/net/minecraft/world/entity/monster/Endermite.java +index 99e262040639ca9fe9caffb71a54319eabcdc0c7..815649e51cc2748f8672441ce709e08365294787 100644 --- a/net/minecraft/world/entity/monster/Endermite.java +++ b/net/minecraft/world/entity/monster/Endermite.java -@@ -30,12 +_,23 @@ +@@ -30,12 +30,23 @@ public class Endermite extends Monster { private static final int MAX_LIFE = 2400; private static final int DEFAULT_LIFE = 0; public int life = 0; @@ -24,7 +32,7 @@ @Override protected void registerGoals() { this.goalSelector.addGoal(1, new FloatGoal(this)); -@@ -81,12 +_,14 @@ +@@ -81,12 +92,14 @@ public class Endermite extends Monster { protected void readAdditionalSaveData(ValueInput input) { super.readAdditionalSaveData(input); this.life = input.getIntOr("Lifetime", 0); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Ghast.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Ghast.java.patch similarity index 61% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Ghast.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Ghast.java.patch index c05e83d84..10d4b8c5a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Ghast.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Ghast.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Ghast.java b/net/minecraft/world/entity/monster/Ghast.java +index 605c47f3bd5c4e72389587d50e70fcd57f2a2b27..b8774eb91d21e9f154cc70c5d3bd26de25be41c4 100644 --- a/net/minecraft/world/entity/monster/Ghast.java +++ b/net/minecraft/world/entity/monster/Ghast.java -@@ -156,6 +_,11 @@ +@@ -156,6 +156,11 @@ public class Ghast extends Mob implements Enemy { public static boolean checkGhastSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Guardian.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Guardian.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Guardian.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Guardian.java.patch index c85899c80..4f7ab4d10 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Guardian.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Guardian.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Guardian.java b/net/minecraft/world/entity/monster/Guardian.java +index 8229de18fbac59493b377b12a281f3f4d74731d7..9c91fbfd39af513668bd94578810cef7e283abd9 100644 --- a/net/minecraft/world/entity/monster/Guardian.java +++ b/net/minecraft/world/entity/monster/Guardian.java -@@ -312,6 +_,11 @@ +@@ -312,6 +312,11 @@ public class Guardian extends Monster { public static boolean checkGuardianSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/MagmaCube.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/MagmaCube.java.patch similarity index 58% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/MagmaCube.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/MagmaCube.java.patch index 358fa1924..7e5477050 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/MagmaCube.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/MagmaCube.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/MagmaCube.java b/net/minecraft/world/entity/monster/MagmaCube.java +index c534fd2a8639ed6a587692a7e85e560a2fc0b3e5..969736a46c85b2fcaa641c2863e6000b51611df5 100644 --- a/net/minecraft/world/entity/monster/MagmaCube.java +++ b/net/minecraft/world/entity/monster/MagmaCube.java -@@ -31,6 +_,11 @@ +@@ -31,6 +31,11 @@ public class MagmaCube extends Slime { public static boolean checkMagmaCubeSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Monster.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Monster.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Monster.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Monster.java.patch index 6db59e5bc..2b6e7838f 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Monster.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Monster.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Monster.java b/net/minecraft/world/entity/monster/Monster.java +index 07293a33c45a0834f3b623a47a1bd25f3e059f54..54033572e325f8486a438e31dde34f8407f9180a 100644 --- a/net/minecraft/world/entity/monster/Monster.java +++ b/net/minecraft/world/entity/monster/Monster.java -@@ -84,6 +_,11 @@ +@@ -84,6 +84,11 @@ public abstract class Monster extends PathfinderMob implements Enemy { } public static boolean isDarkEnoughToSpawn(ServerLevelAccessor level, BlockPos pos, RandomSource random) { @@ -12,7 +20,7 @@ if (level.getBrightness(LightLayer.SKY, pos) > random.nextInt(32)) { return false; } else { -@@ -109,6 +_,11 @@ +@@ -109,6 +114,11 @@ public abstract class Monster extends PathfinderMob implements Enemy { public static boolean checkAnyLightMonsterSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { @@ -24,7 +32,7 @@ return level.getDifficulty() != Difficulty.PEACEFUL && checkMobSpawnRules(entityType, level, spawnReason, pos, random); } -@@ -146,4 +_,12 @@ +@@ -146,4 +156,12 @@ public abstract class Monster extends PathfinderMob implements Enemy { return ItemStack.EMPTY; } } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Phantom.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Phantom.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Phantom.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Phantom.java.patch index 9f60b3712..5f09ce019 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Phantom.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Phantom.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Phantom.java b/net/minecraft/world/entity/monster/Phantom.java +index 62c40a04a105eff471599c4535239fee9726dbd1..d26b7970490a2a108affee11c3fb74e38509d92b 100644 --- a/net/minecraft/world/entity/monster/Phantom.java +++ b/net/minecraft/world/entity/monster/Phantom.java -@@ -166,7 +_,11 @@ +@@ -166,7 +166,11 @@ public class Phantom extends Mob implements Enemy { ServerLevelAccessor level, DifficultyInstance difficulty, EntitySpawnReason spawnReason, @Nullable SpawnGroupData spawnGroupData ) { this.anchorPoint = this.blockPosition().above(5); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Ravager.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Ravager.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Ravager.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Ravager.java.patch index 7173a96a0..d1febed45 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Ravager.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Ravager.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Ravager.java b/net/minecraft/world/entity/monster/Ravager.java +index 631092f088355be45f598bb91bd5d38a39a55d5b..a10c693a8948d1b7c4bd06b957a08a9cea9170ad 100644 --- a/net/minecraft/world/entity/monster/Ravager.java +++ b/net/minecraft/world/entity/monster/Ravager.java -@@ -76,6 +_,7 @@ +@@ -76,6 +76,7 @@ public class Ravager extends Raider { protected void registerGoals() { super.registerGoals(); this.goalSelector.addGoal(0, new FloatGoal(this)); @@ -8,7 +16,7 @@ this.goalSelector.addGoal(4, new MeleeAttackGoal(this, 1.0, true)); this.goalSelector.addGoal(5, new WaterAvoidingRandomStrollGoal(this, 0.4)); this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F)); -@@ -154,7 +_,7 @@ +@@ -154,7 +155,7 @@ public class Ravager extends Raider { )) { BlockState blockState = serverLevel.getBlockState(blockPos); Block block = blockState.getBlock(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Shulker.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Shulker.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Shulker.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Shulker.java.patch index 21c6840c6..84f645cc4 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Shulker.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Shulker.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Shulker.java b/net/minecraft/world/entity/monster/Shulker.java +index 935c608ba0fc2246a3f79bf4865cfeb6fe68b0f4..6e8400c4d523da8799d586c5c9019ae78710fbcb 100644 --- a/net/minecraft/world/entity/monster/Shulker.java +++ b/net/minecraft/world/entity/monster/Shulker.java -@@ -93,6 +_,21 @@ +@@ -93,6 +93,21 @@ public class Shulker extends AbstractGolem implements Enemy { this.lookControl = new Shulker.ShulkerLookControl(this); } @@ -22,7 +30,7 @@ @Override protected void registerGoals() { this.goalSelector.addGoal(1, new LookAtPlayerGoal(this, Player.class, 8.0F, 0.02F, true)); -@@ -454,11 +_,21 @@ +@@ -454,11 +469,21 @@ public class Shulker extends AbstractGolem implements Enemy { private void hitByShulkerBullet() { Vec3 vec3 = this.position(); AABB boundingBox = this.getBoundingBox(); @@ -48,7 +56,7 @@ if (shulker != null) { shulker.setVariant(this.getVariant()); shulker.snapTo(vec3); -@@ -565,7 +_,7 @@ +@@ -565,7 +590,7 @@ public class Shulker extends AbstractGolem implements Enemy { } public Optional getVariant() { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Slime.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Slime.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Slime.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Slime.java.patch index 7963b593d..325dba0fe 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Slime.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Slime.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Slime.java b/net/minecraft/world/entity/monster/Slime.java +index f1eb8c9120a4794b1b70777c272e1a0491fa5164..e433eacd865f620a9c336a1976fd017b8053cf6a 100644 --- a/net/minecraft/world/entity/monster/Slime.java +++ b/net/minecraft/world/entity/monster/Slime.java -@@ -302,6 +_,11 @@ +@@ -302,6 +302,11 @@ public class Slime extends Mob implements Enemy { public static boolean checkSlimeSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Strider.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Strider.java.patch similarity index 68% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Strider.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Strider.java.patch index 86f2a97ff..9eceb0b9e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/Strider.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/Strider.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/Strider.java b/net/minecraft/world/entity/monster/Strider.java +index b451566378401e471a98db63df502b7c4cd20f42..beaffb771e6c8d4b992437997ab27be218425c5a 100644 --- a/net/minecraft/world/entity/monster/Strider.java +++ b/net/minecraft/world/entity/monster/Strider.java -@@ -390,6 +_,18 @@ +@@ -390,6 +390,18 @@ public class Strider extends Animal implements ItemSteerable { @Override public InteractionResult mobInteract(Player player, InteractionHand hand) { boolean isFood = this.isFood(player.getItemInHand(hand)); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/hoglin/Hoglin.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/hoglin/Hoglin.java.patch similarity index 57% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/hoglin/Hoglin.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/hoglin/Hoglin.java.patch index 0034248ca..7cfd62681 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/hoglin/Hoglin.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/hoglin/Hoglin.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/net/minecraft/world/entity/monster/hoglin/Hoglin.java +index 330d831abb22aba9f6f60c0174769a0e78411dfd..d1749ac82cdbd73422e6229e98eb034978f50fc2 100644 --- a/net/minecraft/world/entity/monster/hoglin/Hoglin.java +++ b/net/minecraft/world/entity/monster/hoglin/Hoglin.java -@@ -202,6 +_,11 @@ +@@ -202,6 +202,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { public static boolean checkHoglinSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/illager/Vindicator.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/illager/Vindicator.java.patch similarity index 58% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/illager/Vindicator.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/illager/Vindicator.java.patch index a79df0bf1..432518518 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/illager/Vindicator.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/illager/Vindicator.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/illager/Vindicator.java b/net/minecraft/world/entity/monster/illager/Vindicator.java +index bfad794ff21e2f97654fbb1207b14fd088aec721..0cdc52cf3b1bb9c00e6ca8c8e564de60e195d6fc 100644 --- a/net/minecraft/world/entity/monster/illager/Vindicator.java +++ b/net/minecraft/world/entity/monster/illager/Vindicator.java -@@ -131,6 +_,11 @@ +@@ -131,6 +131,11 @@ public class Vindicator extends AbstractIllager { RandomSource random = level.getRandom(); this.populateDefaultEquipmentSlots(random, difficulty); this.populateDefaultEquipmentEnchantments(level, random, difficulty); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/piglin/Piglin.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/piglin/Piglin.java.patch similarity index 55% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/piglin/Piglin.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/piglin/Piglin.java.patch index b8e4bf183..696e954a5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/piglin/Piglin.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/piglin/Piglin.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/piglin/Piglin.java b/net/minecraft/world/entity/monster/piglin/Piglin.java +index 2497779f96e3b6c7e7aa048c2047c04f06cb7ede..fb2ff2b9712f95429bde04d35baddc2da3e3fb52 100644 --- a/net/minecraft/world/entity/monster/piglin/Piglin.java +++ b/net/minecraft/world/entity/monster/piglin/Piglin.java -@@ -208,6 +_,11 @@ +@@ -208,6 +208,11 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento public static boolean checkPiglinSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/piglin/PiglinAi.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/piglin/PiglinAi.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/piglin/PiglinAi.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/piglin/PiglinAi.java.patch index 55dc68ca1..02e7afa93 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/piglin/PiglinAi.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/piglin/PiglinAi.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/piglin/PiglinAi.java b/net/minecraft/world/entity/monster/piglin/PiglinAi.java +index 436b17a709517766fdb9d7198f0ae457facd90a1..49294ccf5c4ac3acf7793c8d7cbc449a0d0f44e6 100644 --- a/net/minecraft/world/entity/monster/piglin/PiglinAi.java +++ b/net/minecraft/world/entity/monster/piglin/PiglinAi.java -@@ -660,13 +_,23 @@ +@@ -660,7 +660,10 @@ public class PiglinAi { public static boolean isWearingSafeArmor(LivingEntity entity) { for (EquipmentSlot equipmentSlot : EquipmentSlotGroup.ARMOR) { @@ -12,16 +20,17 @@ return true; } } - +@@ -668,6 +671,13 @@ public class PiglinAi { return false; } -+ + + // Purpur start - piglins ignore gold-trimmed armor + private static boolean isWearingGoldTrim(net.minecraft.world.item.ItemStack itemstack) { + net.minecraft.world.item.equipment.trim.ArmorTrim armorTrim = itemstack.getComponents().get(net.minecraft.core.component.DataComponents.TRIM); + return armorTrim != null && armorTrim.material().is(net.minecraft.world.item.equipment.trim.TrimMaterials.GOLD); + } + // Purpur end - piglins ignore gold-trimmed armor - ++ private static void stopWalking(Piglin piglin) { piglin.getBrain().eraseMemory(MemoryModuleType.WALK_TARGET); + piglin.getNavigation().stop(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java.patch similarity index 74% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java.patch index e5dcc11bf..33f4d2890 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java b/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java +index 0f5bfbfc97c2826de72985c4e2e1dec1d94337f2..1ba7777164c7fd8516c97e1bd964183df37c029f 100644 --- a/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java +++ b/net/minecraft/world/entity/monster/skeleton/AbstractSkeleton.java -@@ -137,7 +_,7 @@ +@@ -137,7 +137,7 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo this.populateDefaultEquipmentEnchantments(level, random, difficulty); this.reassessWeaponGoal(); this.setCanPickUpLoot(level.getLevel().paperConfig().entities.behavior.mobsCanAlwaysPickUpLoot.skeletons || random.nextFloat() < 0.55F * difficulty.getSpecialMultiplier()); // Paper - Add world settings for mobs picking up loot @@ -9,7 +17,7 @@ this.setItemSlot(EquipmentSlot.HEAD, new ItemStack(random.nextFloat() < 0.1F ? Blocks.JACK_O_LANTERN : Blocks.CARVED_PUMPKIN)); this.setDropChance(EquipmentSlot.HEAD, 0.0F); } -@@ -184,7 +_,7 @@ +@@ -184,7 +184,7 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo double squareRoot = Math.sqrt(d * d + d2 * d2); if (this.level() instanceof ServerLevel serverLevel) { Projectile.Delayed delayedEntity = Projectile.spawnProjectileUsingShootDelayed( // Paper - delayed diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/skeleton/Skeleton.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/skeleton/Skeleton.java.patch similarity index 86% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/skeleton/Skeleton.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/skeleton/Skeleton.java.patch index 5982e0484..e7f30825c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/skeleton/Skeleton.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/skeleton/Skeleton.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/skeleton/Skeleton.java b/net/minecraft/world/entity/monster/skeleton/Skeleton.java +index 94a01d35457053bb4265acb5542ae2f83671d9bb..d995572427844540a98d76b2926eb15a018230fa 100644 --- a/net/minecraft/world/entity/monster/skeleton/Skeleton.java +++ b/net/minecraft/world/entity/monster/skeleton/Skeleton.java -@@ -130,4 +_,64 @@ +@@ -130,4 +130,64 @@ public class Skeleton extends AbstractSkeleton { SoundEvent getStepSound() { return SoundEvents.SKELETON_STEP; } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/warden/WardenAi.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/warden/WardenAi.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/warden/WardenAi.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/warden/WardenAi.java.patch index 6c45d2405..3dc7f74a9 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/warden/WardenAi.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/warden/WardenAi.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/warden/WardenAi.java b/net/minecraft/world/entity/monster/warden/WardenAi.java +index b1bca206a880f763c5e9234a20943e9918889b44..5fc0c82231f3407199f1bf0db8ac278e4b29d1e2 100644 --- a/net/minecraft/world/entity/monster/warden/WardenAi.java +++ b/net/minecraft/world/entity/monster/warden/WardenAi.java -@@ -175,15 +_,16 @@ +@@ -175,15 +175,16 @@ public class WardenAi { brain.addActivityAndRemoveMemoryWhenStopped( Activity.FIGHT, 10, diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/Drowned.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/Drowned.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/Drowned.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/Drowned.java.patch index 2f3581f1e..0a2199404 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/Drowned.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/Drowned.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/zombie/Drowned.java b/net/minecraft/world/entity/monster/zombie/Drowned.java +index db164101d440c503e2e88b1f31af7f0638faaec5..604d5e6a4962de61fb97988a2f3de2965908bada 100644 --- a/net/minecraft/world/entity/monster/zombie/Drowned.java +++ b/net/minecraft/world/entity/monster/zombie/Drowned.java -@@ -86,10 +_,23 @@ +@@ -86,10 +86,23 @@ public class Drowned extends Zombie implements RangedAttackMob { this.goalSelector.addGoal(2, new Drowned.DrownedAttackGoal(this, 1.0, false)); this.goalSelector.addGoal(5, new Drowned.DrownedGoToBeachGoal(this, 1.0)); this.goalSelector.addGoal(6, new Drowned.DrownedSwimUpGoal(this, 1.0, this.level().getSeaLevel())); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/Zombie.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/Zombie.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/Zombie.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/Zombie.java.patch index 375b49003..2b2b8a735 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/Zombie.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/Zombie.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/zombie/Zombie.java b/net/minecraft/world/entity/monster/zombie/Zombie.java +index d1b91335b1e979a2e64e6f0ec95dbe32023a25b7..34891f05809550256c07683c2d0c28d55c342758 100644 --- a/net/minecraft/world/entity/monster/zombie/Zombie.java +++ b/net/minecraft/world/entity/monster/zombie/Zombie.java -@@ -118,7 +_,19 @@ +@@ -118,7 +118,19 @@ public class Zombie extends Monster { this.goalSelector.addGoal(7, new WaterAvoidingRandomStrollGoal(this, 1.0)); this.targetSelector.addGoal(1, new HurtByTargetGoal(this).setAlertOthers(ZombifiedPiglin.class)); this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, Player.class, true)); @@ -21,7 +29,7 @@ this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, IronGolem.class, true)); this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR)); } -@@ -524,7 +_,7 @@ +@@ -524,7 +536,7 @@ public class Zombie extends Monster { } } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/ZombieVillager.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/ZombieVillager.java.patch similarity index 68% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/ZombieVillager.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/ZombieVillager.java.patch index fd9bd006c..d585cae13 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/ZombieVillager.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/ZombieVillager.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/zombie/ZombieVillager.java b/net/minecraft/world/entity/monster/zombie/ZombieVillager.java +index 8af935a11a0988f10a2908f6337504f7f6e13d1b..c6f271a921fde124df1a7c5d175cb83b420cd2e3 100644 --- a/net/minecraft/world/entity/monster/zombie/ZombieVillager.java +++ b/net/minecraft/world/entity/monster/zombie/ZombieVillager.java -@@ -159,10 +_,10 @@ +@@ -159,10 +159,10 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder { public InteractionResult mobInteract(Player player, InteractionHand hand) { ItemStack itemInHand = player.getItemInHand(hand); if (itemInHand.is(Items.GOLDEN_APPLE)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java.patch index 0dae756c2..6d0850a4f 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java b/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java +index 8fcb6cd1cefa6c9e1809944b4720cfdc35325729..ef6a4aff03c1a85535b15e653714751e79f61090 100644 --- a/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java +++ b/net/minecraft/world/entity/monster/zombie/ZombifiedPiglin.java -@@ -109,6 +_,12 @@ +@@ -109,6 +109,12 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob { this.maybeAlertOthers(); } @@ -13,7 +21,7 @@ super.customServerAiStep(level); } -@@ -156,6 +_,12 @@ +@@ -156,6 +162,12 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob { this.ticksUntilNextAlert = ALERT_INTERVAL.sample(this.random); } @@ -26,7 +34,7 @@ return super.setTarget(target, reason); // CraftBukkit } -@@ -176,6 +_,11 @@ +@@ -176,6 +188,11 @@ public class ZombifiedPiglin extends Zombie implements NeutralMob { public static boolean checkZombifiedPiglinSpawnRules( EntityType entityType, LevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random ) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/CatSpawner.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/CatSpawner.java.patch similarity index 77% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/CatSpawner.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/CatSpawner.java.patch index 6d573d3e2..1756d7534 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/CatSpawner.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/CatSpawner.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/npc/CatSpawner.java b/net/minecraft/world/entity/npc/CatSpawner.java +index 5401976c4fa86e2db6622743c8e8ea7381f72878..278a4000d06690a41e58a059d54e0044944a51fe 100644 --- a/net/minecraft/world/entity/npc/CatSpawner.java +++ b/net/minecraft/world/entity/npc/CatSpawner.java -@@ -23,7 +_,7 @@ +@@ -23,7 +23,7 @@ public class CatSpawner implements CustomSpawner { public void tick(ServerLevel level, boolean spawnEnemies) { this.nextTick--; if (this.nextTick <= 0) { @@ -9,7 +17,7 @@ Player randomPlayer = level.getRandomPlayer(); if (randomPlayer != null) { RandomSource randomSource = level.random; -@@ -45,9 +_,12 @@ +@@ -45,9 +45,12 @@ public class CatSpawner implements CustomSpawner { } private void spawnInVillage(ServerLevel level, BlockPos pos) { @@ -25,7 +33,7 @@ if (entitiesOfClass.size() < 5) { this.spawnCat(pos, level, false); } -@@ -55,8 +_,11 @@ +@@ -55,8 +58,11 @@ public class CatSpawner implements CustomSpawner { } private void spawnInHut(ServerLevel level, BlockPos pos) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/villager/Villager.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/villager/Villager.java.patch similarity index 84% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/villager/Villager.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/villager/Villager.java.patch index c3dd42b60..cec4deb94 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/villager/Villager.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/villager/Villager.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/npc/villager/Villager.java b/net/minecraft/world/entity/npc/villager/Villager.java +index 89844d7e804cc8a2110b694e448bc5993991bea7..e117ae1b114c7e2ca314a00335473efc41137f7f 100644 --- a/net/minecraft/world/entity/npc/villager/Villager.java +++ b/net/minecraft/world/entity/npc/villager/Villager.java -@@ -179,6 +_,8 @@ +@@ -179,6 +179,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler MemoryModuleType.MEETING_POINT, (villager, poiType) -> poiType.is(PoiTypes.MEETING) ); @@ -9,7 +17,7 @@ public Villager(EntityType type, Level level) { this(type, level, VillagerType.PLAINS); -@@ -197,6 +_,57 @@ +@@ -197,6 +199,57 @@ public class Villager extends AbstractVillager implements ReputationEventHandler this.setVillagerData(this.getVillagerData().withType(villagerType).withProfession(level.registryAccess(), VillagerProfession.NONE)); } @@ -67,7 +75,7 @@ @Override public Brain getBrain() { return (Brain)super.getBrain(); -@@ -293,11 +_,22 @@ +@@ -293,11 +346,22 @@ public class Villager extends AbstractVillager implements ReputationEventHandler // Paper start - EAR 2 this.customServerAiStep(level, false); } @@ -92,7 +100,7 @@ profilerFiller.pop(); if (this.assignProfessionWhenSpawned) { this.assignProfessionWhenSpawned = false; -@@ -369,6 +_,7 @@ +@@ -369,6 +433,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler return InteractionResult.CONSUME; } @@ -100,7 +108,7 @@ this.startTrading(player); } -@@ -500,7 +_,7 @@ +@@ -500,7 +565,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler public void updateDemand() { for (MerchantOffer merchantOffer : this.getOffers()) { @@ -109,7 +117,7 @@ } } -@@ -692,7 +_,7 @@ +@@ -692,7 +757,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @Override public boolean canBreed() { @@ -118,7 +126,7 @@ } private boolean hungry() { -@@ -915,6 +_,7 @@ +@@ -915,6 +980,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler } public void spawnGolemIfNeeded(ServerLevel level, long gameTime, int minVillagerAmount) { @@ -126,7 +134,7 @@ if (this.wantsToSpawnGolem(gameTime)) { AABB aabb = this.getBoundingBox().inflate(10.0, 10.0, 10.0); List entitiesOfClass = level.getEntitiesOfClass(Villager.class, aabb); -@@ -982,6 +_,12 @@ +@@ -982,6 +1048,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @Override public void startSleeping(BlockPos pos) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java.patch similarity index 69% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java.patch index 373eaf1a9..6d12df279 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java b/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java +index 3eb6ee2ffecbdeb6057d81b7936b80e205db7cdc..aceeb9919473f5ff1b84efe950d10aa4dbc10121 100644 --- a/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java +++ b/net/minecraft/world/entity/npc/wanderingtrader/WanderingTrader.java -@@ -61,6 +_,13 @@ +@@ -61,6 +61,13 @@ public class WanderingTrader extends AbstractVillager implements Consumable.Over super(type, level); } @@ -14,7 +22,7 @@ @Override protected void registerGoals() { this.goalSelector.addGoal(0, new FloatGoal(this)); -@@ -81,7 +_,7 @@ +@@ -81,7 +88,7 @@ public class WanderingTrader extends AbstractVillager implements Consumable.Over this, new ItemStack(Items.MILK_BUCKET), SoundEvents.WANDERING_TRADER_REAPPEARED, @@ -23,7 +31,7 @@ ) ); this.goalSelector.addGoal(1, new TradeWithPlayerGoal(this)); -@@ -124,8 +_,10 @@ +@@ -124,8 +131,10 @@ public class WanderingTrader extends AbstractVillager implements Consumable.Over return InteractionResult.CONSUME; } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java.patch index 505d76d91..7bda9ec17 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java b/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java +index 44b43ca9fba989f975133f966cedd582a93d3350..7aef337fc0b6fd52c27ad5ca3f38d74f213d9725 100644 --- a/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java +++ b/net/minecraft/world/entity/npc/wanderingtrader/WanderingTraderSpawner.java -@@ -134,7 +_,17 @@ +@@ -134,7 +134,17 @@ public class WanderingTraderSpawner implements CustomSpawner { int i1 = pos.getX() + this.random.nextInt(maxDistance * 2) - maxDistance; int i2 = pos.getZ() + this.random.nextInt(maxDistance * 2) - maxDistance; int height = level.getHeight(Heightmap.Types.WORLD_SURFACE, i1, i2); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/player/Player.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/player/Player.java.patch index 655474e8b..132700bb1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/player/Player.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/player/Player.java b/net/minecraft/world/entity/player/Player.java +index e5540b85cfa159d102a5710b4ccea5c3b61b7f1d..616c1aafcda05ae1d2a833f2f725b9eefb52cbc6 100644 --- a/net/minecraft/world/entity/player/Player.java +++ b/net/minecraft/world/entity/player/Player.java -@@ -179,11 +_,20 @@ +@@ -179,11 +179,20 @@ public abstract class Player extends Avatar implements ContainerUser { private int currentImpulseContextResetGraceTime = 0; public boolean affectsSpawning = true; // Paper - Affects Spawning API public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage @@ -21,7 +29,7 @@ @Override public org.bukkit.craftbukkit.entity.CraftHumanEntity getBukkitEntity() { return (org.bukkit.craftbukkit.entity.CraftHumanEntity) super.getBukkitEntity(); -@@ -245,6 +_,12 @@ +@@ -245,6 +254,12 @@ public abstract class Player extends Avatar implements ContainerUser { @Override public void tick() { @@ -34,7 +42,7 @@ this.noPhysics = this.isSpectator(); if (this.isSpectator() || this.isPassenger()) { this.setOnGround(false); -@@ -302,6 +_,17 @@ +@@ -302,6 +317,17 @@ public abstract class Player extends Avatar implements ContainerUser { this.turtleHelmetTick(); } @@ -52,7 +60,7 @@ this.cooldowns.tick(); this.updatePlayerPose(); if (this.currentImpulseContextResetGraceTime > 0) { -@@ -510,7 +_,7 @@ +@@ -510,7 +536,7 @@ public abstract class Player extends Avatar implements ContainerUser { List list = Lists.newArrayList(); for (Entity entity : entities) { @@ -61,7 +69,7 @@ list.add(entity); } else if (!entity.isRemoved()) { this.touch(entity); -@@ -1052,7 +_,7 @@ +@@ -1052,7 +1078,7 @@ public abstract class Player extends Avatar implements ContainerUser { flag2 = flag2 && !this.level().paperConfig().entities.behavior.disablePlayerCrits; // Paper - Toggleable player crits if (flag2) { damageSource = damageSource.critical(); // Paper - critical damage API @@ -70,7 +78,7 @@ } float f2 = f + f1; -@@ -1764,7 +_,23 @@ +@@ -1764,7 +1790,23 @@ public abstract class Player extends Avatar implements ContainerUser { @Override protected int getBaseExperienceReward(ServerLevel level) { @@ -95,17 +103,17 @@ } @Override -@@ -1807,6 +_,13 @@ - public boolean addItem(ItemStack stack) { +@@ -1808,6 +1850,13 @@ public abstract class Player extends Avatar implements ContainerUser { return this.inventory.add(stack); } -+ + + // Purpur start - Player ridable in water option + @Override + public boolean dismountsUnderwater() { + return !level().purpurConfig.playerRidableInWater; + } + // Purpur end - Player ridable in water option - ++ public abstract @Nullable GameType gameMode(); + @Override diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java.patch similarity index 65% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java.patch index 1c70c87a1..185efbba8 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java b/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java +index 51d3560c5d8cba89469c07fe6b13f0016adc6db7..d4c6a68c59b710cd3d158c674df03cbc2f2f307b 100644 --- a/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java +++ b/net/minecraft/world/entity/projectile/arrow/AbstractArrow.java -@@ -78,6 +_,7 @@ +@@ -78,6 +78,7 @@ public abstract class AbstractArrow extends Projectile { private @Nullable List piercedAndKilledEntities; public ItemStack pickupItemStack = this.getDefaultPickupItem(); public @Nullable ItemStack firedFromWeapon = null; @@ -8,16 +16,16 @@ protected AbstractArrow(EntityType type, Level level) { super(type, level); -@@ -593,6 +_,12 @@ - public @Nullable ItemStack getWeaponItem() { +@@ -594,6 +595,12 @@ public abstract class AbstractArrow extends Projectile { return this.firedFromWeapon; } -+ + + // Purpur start - Add an option to fix MC-3304 projectile looting + public void setActualEnchantments(net.minecraft.world.item.enchantment.ItemEnchantments actualEnchantments) { + this.actualEnchantments = actualEnchantments; + } + // Purpur end - Add an option to fix MC-3304 projectile looting - ++ protected SoundEvent getDefaultHitGroundSoundEvent() { return SoundEvents.ARROW_HIT; + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java.patch index 1eef8d9ac..c117174d1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java b/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java +index 483b8247d3be5839f9d764912ae5b879a9f729aa..fc29a8c27ce02ce81e3799fc999aba70b9800c10 100644 --- a/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java +++ b/net/minecraft/world/entity/projectile/arrow/ThrownTrident.java -@@ -72,7 +_,7 @@ +@@ -72,7 +72,7 @@ public class ThrownTrident extends AbstractArrow { Entity owner = this.getOwner(); int i = this.entityData.get(ID_LOYALTY); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java.patch index a1ad3be09..d628007ad 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java b/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java +index 31125bf31c2e1e749873a0387aea6040f5f832dd..1020e835f24bc25e032335f739d526bc0bd4ecc4 100644 --- a/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java +++ b/net/minecraft/world/entity/projectile/hurtingprojectile/WitherSkull.java -@@ -94,7 +_,7 @@ +@@ -94,7 +94,7 @@ public class WitherSkull extends AbstractHurtingProjectile { super.onHit(result); if (!this.level().isClientSide()) { // CraftBukkit start @@ -9,17 +17,17 @@ if (event.callEvent()) { this.level().explode(this, this.getX(), this.getY(), this.getZ(), event.getRadius(), event.getFire(), Level.ExplosionInteraction.MOB); } -@@ -102,6 +_,13 @@ - this.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.HIT); // CraftBukkit - add Bukkit remove cause +@@ -103,6 +103,13 @@ public class WitherSkull extends AbstractHurtingProjectile { } } -+ + + // Purpur start - Add canSaveToDisk to Entity + @Override + public boolean canSaveToDisk() { + return false; + } + // Purpur end - Add canSaveToDisk to Entity - ++ @Override protected void defineSynchedData(SynchedEntityData.Builder builder) { + builder.define(DATA_DANGEROUS, false); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java.patch similarity index 84% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java.patch index 10badc693..f6a60729b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java b/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java +index 89a061cd0a2b39fc05ea96ac0f5d5a8c26582f97..3dfe7eef12d40d986d2eb3f750b09b47ee04aecc 100644 --- a/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java +++ b/net/minecraft/world/entity/projectile/throwableitemprojectile/Snowball.java -@@ -53,9 +_,39 @@ +@@ -53,10 +53,40 @@ public class Snowball extends ThrowableItemProjectile { protected void onHitEntity(EntityHitResult result) { super.onHitEntity(result); Entity entity = result.getEntity(); @@ -8,7 +16,7 @@ + int i = entity.level().purpurConfig.snowballDamage >= 0 ? entity.level().purpurConfig.snowballDamage : entity instanceof Blaze ? 3 : 0; // Purpur - Add configurable snowball damage entity.hurt(this.damageSources().thrown(this, this.getOwner()), i); } -+ + + // Purpur start - options to extinguish fire blocks with snowballs - borrowed and modified code from ThrownPotion#onHitBlock and ThrownPotion#dowseFire + @Override + protected void onHitBlock(net.minecraft.world.phys.BlockHitResult blockHitResult) { @@ -38,6 +46,7 @@ + } + } + // Purpur end - options to extinguish fire blocks with snowballs - ++ @Override protected void onHit(HitResult result) { + super.onHit(result); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java.patch index da76c1d01..732923ba0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java b/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java +index 66df6c69a95c5ca6b07294fdb3b13eee6651d22d..6ad07d8f82c0f745d3c3c742f25d05b9b38193c2 100644 --- a/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java +++ b/net/minecraft/world/entity/projectile/throwableitemprojectile/ThrownEnderpearl.java -@@ -112,9 +_,10 @@ +@@ -112,9 +112,10 @@ public class ThrownEnderpearl extends ThrowableItemProjectile { return; } // CraftBukkit end @@ -12,7 +20,7 @@ endermite.snapTo(preTeleportX, preTeleportY, preTeleportZ, preTeleportYRot, preTeleportXRot); // Paper - spawn endermite at pre teleport position as teleport has been moved up serverLevel.addFreshEntity(endermite, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.ENDER_PEARL); // Paper - add reason } -@@ -134,7 +_,7 @@ +@@ -134,7 +135,7 @@ public class ThrownEnderpearl extends ThrowableItemProjectile { if (serverPlayer1 != null) { serverPlayer1.resetFallDistance(); serverPlayer1.resetCurrentImpulseContext(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/raid/Raids.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/raid/Raids.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/raid/Raids.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/raid/Raids.java.patch index 1bf111404..4727e0287 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/raid/Raids.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/raid/Raids.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/raid/Raids.java b/net/minecraft/world/entity/raid/Raids.java +index 9ded4e75da1efd2fb351fa1544dca33da8455d98..f96d8c241bc0aa44750da7231edbbc5abd802619 100644 --- a/net/minecraft/world/entity/raid/Raids.java +++ b/net/minecraft/world/entity/raid/Raids.java -@@ -31,6 +_,7 @@ +@@ -31,6 +31,7 @@ import org.jspecify.annotations.Nullable; public class Raids extends SavedData { private static final String RAID_FILE_ID = "raids"; @@ -8,7 +16,7 @@ public static final Codec CODEC = RecordCodecBuilder.create( instance -> instance.group( Raids.RaidWithId.CODEC -@@ -82,6 +_,17 @@ +@@ -82,6 +83,17 @@ public class Raids extends SavedData { public void tick(ServerLevel level) { this.tick++; @@ -26,7 +34,7 @@ Iterator iterator = this.raidMap.values().iterator(); while (iterator.hasNext()) { -@@ -144,11 +_,11 @@ +@@ -144,11 +156,11 @@ public class Raids extends SavedData { // } if (!raid.isStarted() || (raid.isInProgress() && raid.getRaidOmenLevel() < raid.getMaxRaidOmenLevel())) { // CraftBukkit - fixed a bug with raid: players could add up Bad Omen level even when the raid had finished diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java.patch similarity index 51% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java.patch index b14b6c1de..4e9342059 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java b/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java +index 6b337848d91cc4f24655d053bc69b0cd22447dda..d17269c9274bd29c761403138bfc56355c800d9c 100644 --- a/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java +++ b/net/minecraft/world/entity/vehicle/boat/AbstractBoat.java -@@ -431,6 +_,7 @@ +@@ -431,6 +431,7 @@ public abstract class AbstractBoat extends VehicleEntity implements Leashable { float groundFriction = this.getGroundFriction(); if (groundFriction > 0.0F) { this.landFriction = groundFriction; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java.patch similarity index 61% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java.patch index a77663c60..34658d173 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java b/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java +index 7cc494d53c9a6d2fa0d34a60da50a9d199d65340..84b11654411eaa561a9b58ffa1210ca3d3b5a7cd 100644 --- a/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java +++ b/net/minecraft/world/entity/vehicle/minecart/NewMinecartBehavior.java -@@ -391,7 +_,7 @@ +@@ -391,7 +391,7 @@ public class NewMinecartBehavior extends MinecartBehavior { private Vec3 calculateBoostTrackSpeed(Vec3 speed, BlockPos pos, BlockState state) { if (state.is(Blocks.POWERED_RAIL) && state.getValue(PoweredRailBlock.POWERED)) { if (speed.length() > 0.01) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java.patch similarity index 65% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java.patch index 5562ff33c..ed1dfb486 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java b/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java +index 780b53eab14a087436e5f27c8d646042f4b357c9..7ab2542ddd7494585f240657906ccee80cd7944e 100644 --- a/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java +++ b/net/minecraft/world/entity/vehicle/minecart/OldMinecartBehavior.java -@@ -243,8 +_,8 @@ +@@ -243,8 +243,8 @@ public class OldMinecartBehavior extends MinecartBehavior { Vec3 deltaMovement1 = this.getDeltaMovement(); double d13 = deltaMovement1.horizontalDistance(); if (d13 > 0.01) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/food/FoodData.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/food/FoodData.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/food/FoodData.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/food/FoodData.java.patch index a44cdd312..177fdb835 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/food/FoodData.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/food/FoodData.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/food/FoodData.java b/net/minecraft/world/food/FoodData.java +index f4925847ee2dac8740148ffa82d8c23c4d0c7af0..5fa21ff6624df90925a6850f9f9f092396ed8b83 100644 --- a/net/minecraft/world/food/FoodData.java +++ b/net/minecraft/world/food/FoodData.java -@@ -39,6 +_,7 @@ +@@ -39,6 +39,7 @@ public class FoodData { int oldFoodLevel = this.foodLevel; org.bukkit.event.entity.FoodLevelChangeEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callFoodLevelChangeEvent(serverPlayer, foodProperties.nutrition() + oldFoodLevel, stack); if (!event.isCancelled()) { @@ -8,7 +16,7 @@ this.add(event.getFoodLevel() - oldFoodLevel, foodProperties.saturation()); } serverPlayer.getBukkitEntity().sendHealthUpdate(); -@@ -87,7 +_,7 @@ +@@ -87,7 +88,7 @@ public class FoodData { this.tickTimer++; if (this.tickTimer >= this.starvationRate) { // CraftBukkit - add regen rate manipulation if (player.getHealth() > 10.0F || difficulty == Difficulty.HARD || player.getHealth() > 1.0F && difficulty == Difficulty.NORMAL) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/food/FoodProperties.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/food/FoodProperties.java.patch similarity index 66% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/food/FoodProperties.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/food/FoodProperties.java.patch index 87515c815..6660b8cab 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/food/FoodProperties.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/food/FoodProperties.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/food/FoodProperties.java b/net/minecraft/world/food/FoodProperties.java +index 793e4528755fa5688efbad75418188e693ad0157..20f702c8266eb54a8835861188eb937f4732e078 100644 --- a/net/minecraft/world/food/FoodProperties.java +++ b/net/minecraft/world/food/FoodProperties.java -@@ -42,9 +_,11 @@ +@@ -42,9 +42,11 @@ public record FoodProperties(int nutrition, float saturation, boolean canAlwaysE level.playSound(null, entity.getX(), entity.getY(), entity.getZ(), consumable.sound().value(), SoundSource.NEUTRAL, 1.0F, random.triangle(1.0F, 0.4F)); if (entity instanceof Player player) { player.getFoodData().eat(this, stack, (net.minecraft.server.level.ServerPlayer) player); // CraftBukkit diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AbstractContainerMenu.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AbstractContainerMenu.java.patch similarity index 52% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AbstractContainerMenu.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AbstractContainerMenu.java.patch index ef13da00d..36a439758 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AbstractContainerMenu.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AbstractContainerMenu.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/AbstractContainerMenu.java b/net/minecraft/world/inventory/AbstractContainerMenu.java +index f51dbc45204c2727122aeb6b5002216e3200680d..19bdb38a69dcdb3d30f08a85b3e9c3d6d723191f 100644 --- a/net/minecraft/world/inventory/AbstractContainerMenu.java +++ b/net/minecraft/world/inventory/AbstractContainerMenu.java -@@ -63,6 +_,7 @@ +@@ -63,6 +63,7 @@ public abstract class AbstractContainerMenu { private final List containerListeners = Lists.newArrayList(); private @Nullable ContainerSynchronizer synchronizer; private boolean suppressRemoteUpdates; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AbstractFurnaceMenu.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AbstractFurnaceMenu.java.patch similarity index 64% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AbstractFurnaceMenu.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AbstractFurnaceMenu.java.patch index 41fe20831..75bee4c26 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AbstractFurnaceMenu.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AbstractFurnaceMenu.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/AbstractFurnaceMenu.java b/net/minecraft/world/inventory/AbstractFurnaceMenu.java +index 6e13b05ebd924d98066624d9ff6ee7f61e248617..9304bc239ffafbef3b34c5a5a42039c86acd5e80 100644 --- a/net/minecraft/world/inventory/AbstractFurnaceMenu.java +++ b/net/minecraft/world/inventory/AbstractFurnaceMenu.java -@@ -121,7 +_,13 @@ +@@ -121,7 +121,13 @@ public abstract class AbstractFurnaceMenu extends RecipeBookMenu { } else if (slotIndex != 1 && slotIndex != 0) { if (this.canSmelt(item)) { if (!this.moveItemStackTo(item, 0, 1, false)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AnvilMenu.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AnvilMenu.java.patch similarity index 92% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AnvilMenu.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AnvilMenu.java.patch index 34fcab570..07d7e1011 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/AnvilMenu.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/AnvilMenu.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/AnvilMenu.java b/net/minecraft/world/inventory/AnvilMenu.java +index 7939f19b87364a32a40e58e001cea14e06348f86..b790b9476ec0a0569470d5de4067caa5373b2f6b 100644 --- a/net/minecraft/world/inventory/AnvilMenu.java +++ b/net/minecraft/world/inventory/AnvilMenu.java -@@ -23,6 +_,12 @@ +@@ -23,6 +23,12 @@ import net.minecraft.world.level.block.state.BlockState; import org.jspecify.annotations.Nullable; import org.slf4j.Logger; @@ -13,7 +21,7 @@ public class AnvilMenu extends ItemCombinerMenu { public static final int INPUT_SLOT = 0; public static final int ADDITIONAL_SLOT = 1; -@@ -51,6 +_,10 @@ +@@ -51,6 +57,10 @@ public class AnvilMenu extends ItemCombinerMenu { private org.bukkit.craftbukkit.inventory.view.CraftAnvilView bukkitEntity; // CraftBukkit end public boolean bypassEnchantmentLevelRestriction = false; // Paper - bypass anvil level restrictions @@ -24,7 +32,7 @@ public AnvilMenu(int containerId, Inventory playerInventory) { this(containerId, playerInventory, ContainerLevelAccess.NULL); -@@ -76,12 +_,17 @@ +@@ -76,12 +86,17 @@ public class AnvilMenu extends ItemCombinerMenu { @Override protected boolean mayPickup(Player player, boolean hasStack) { @@ -43,7 +51,7 @@ player.giveExperienceLevels(-this.cost.get()); } -@@ -134,13 +_,19 @@ +@@ -134,13 +149,19 @@ public class AnvilMenu extends ItemCombinerMenu { @Override public void createResult() { @@ -64,7 +72,7 @@ ItemStack itemStack = item.copy(); ItemStack item1 = this.inputSlots.getItem(1); ItemEnchantments.Mutable mutable = new ItemEnchantments.Mutable(EnchantmentHelper.getEnchantmentsForCrafting(itemStack)); -@@ -198,23 +_,34 @@ +@@ -198,23 +219,34 @@ public class AnvilMenu extends ItemCombinerMenu { int intValue = entry.getIntValue(); intValue = level == intValue ? intValue + 1 : Math.max(intValue, level); Enchantment enchantment = holder.value(); @@ -103,7 +111,7 @@ intValue = enchantment.getMaxLevel(); } -@@ -243,6 +_,54 @@ +@@ -243,6 +275,54 @@ public class AnvilMenu extends ItemCombinerMenu { if (!this.itemName.equals(item.getHoverName().getString())) { i1 = 1; i += i1; @@ -158,7 +166,7 @@ itemStack.set(DataComponents.CUSTOM_NAME, Component.literal(this.itemName)); } } else if (item.has(DataComponents.CUSTOM_NAME)) { -@@ -267,6 +_,12 @@ +@@ -267,6 +347,12 @@ public class AnvilMenu extends ItemCombinerMenu { this.onlyRenaming = true; } @@ -171,7 +179,7 @@ if (this.cost.get() >= this.maximumRepairCost && !this.player.hasInfiniteMaterials()) { // CraftBukkit itemStack = ItemStack.EMPTY; } -@@ -287,6 +_,13 @@ +@@ -287,6 +373,13 @@ public class AnvilMenu extends ItemCombinerMenu { org.bukkit.craftbukkit.event.CraftEventFactory.callPrepareAnvilEvent(this.getBukkitView(), itemStack); // CraftBukkit this.broadcastChanges(); @@ -185,7 +193,7 @@ } else { org.bukkit.craftbukkit.event.CraftEventFactory.callPrepareAnvilEvent(this.getBukkitView(), ItemStack.EMPTY); // CraftBukkit this.cost.set(AnvilMenu.DEFAULT_DENIED_COST); // CraftBukkit - use a variable for set a cost for denied item -@@ -295,7 +_,7 @@ +@@ -295,7 +388,7 @@ public class AnvilMenu extends ItemCombinerMenu { } public static int calculateIncreasedRepairCost(int oldRepairCost) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/ArmorSlot.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/ArmorSlot.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/ArmorSlot.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/ArmorSlot.java.patch index d2b8cef83..1e03bf446 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/ArmorSlot.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/ArmorSlot.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/ArmorSlot.java b/net/minecraft/world/inventory/ArmorSlot.java +index f9fef56709a40e2581170a807a0035b593795b05..cdc95952311e6a2df757c3d8ec1224e3e5ad3069 100644 --- a/net/minecraft/world/inventory/ArmorSlot.java +++ b/net/minecraft/world/inventory/ArmorSlot.java -@@ -46,7 +_,7 @@ +@@ -46,7 +46,7 @@ class ArmorSlot extends Slot { @Override public boolean mayPickup(Player player) { ItemStack item = this.getItem(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/EnchantmentMenu.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/EnchantmentMenu.java.patch similarity index 79% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/EnchantmentMenu.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/EnchantmentMenu.java.patch index 4996e388d..506f82809 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/EnchantmentMenu.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/EnchantmentMenu.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/EnchantmentMenu.java b/net/minecraft/world/inventory/EnchantmentMenu.java +index 385eecd0c59d3c9510e39f96aa9614a7a57fb65a..40860d2facd6720300793dcc2cf99cb3367e61f7 100644 --- a/net/minecraft/world/inventory/EnchantmentMenu.java +++ b/net/minecraft/world/inventory/EnchantmentMenu.java -@@ -63,6 +_,22 @@ +@@ -63,6 +63,22 @@ public class EnchantmentMenu extends AbstractContainerMenu { return access.getLocation(); } // CraftBukkit end @@ -23,7 +31,7 @@ }; // Paper end - Add missing InventoryHolders this.access = access; -@@ -83,6 +_,16 @@ +@@ -83,6 +99,16 @@ public class EnchantmentMenu extends AbstractContainerMenu { return EnchantmentMenu.EMPTY_SLOT_LAPIS_LAZULI; } }); @@ -40,7 +48,7 @@ this.addStandardInventorySlots(playerInventory, 8, 84); this.addDataSlot(DataSlot.shared(this.costs, 0)); this.addDataSlot(DataSlot.shared(this.costs, 1)); -@@ -299,7 +_,7 @@ +@@ -299,7 +325,7 @@ public class EnchantmentMenu extends AbstractContainerMenu { @Override public void removed(Player player) { super.removed(player); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/GrindstoneMenu.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/GrindstoneMenu.java.patch similarity index 89% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/GrindstoneMenu.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/GrindstoneMenu.java.patch index f1ba2081a..19de35bb3 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/inventory/GrindstoneMenu.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/GrindstoneMenu.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/GrindstoneMenu.java b/net/minecraft/world/inventory/GrindstoneMenu.java +index ad70a0f7debee27d9f3b2ff39cb0429b39485190..e991ca16d069fddc3e4eb6d8c78c0dbffeb75a54 100644 --- a/net/minecraft/world/inventory/GrindstoneMenu.java +++ b/net/minecraft/world/inventory/GrindstoneMenu.java -@@ -92,11 +_,13 @@ +@@ -92,11 +92,13 @@ public class GrindstoneMenu extends AbstractContainerMenu { @Override public void onTake(Player player, ItemStack stack) { access.execute((level, blockPos) -> { @@ -15,7 +23,7 @@ // Paper end - Fire BlockExpEvent on grindstone use } -@@ -125,7 +_,7 @@ +@@ -125,7 +127,7 @@ public class GrindstoneMenu extends AbstractContainerMenu { for (Entry> entry : enchantmentsForCrafting.entrySet()) { Holder holder = entry.getKey(); int intValue = entry.getIntValue(); @@ -24,7 +32,7 @@ i += holder.value().getMinCost(intValue); } } -@@ -203,15 +_,75 @@ +@@ -203,15 +205,75 @@ public class GrindstoneMenu extends AbstractContainerMenu { for (Entry> entry : enchantmentsForCrafting.entrySet()) { Holder holder = entry.getKey(); @@ -102,7 +110,7 @@ if (item.is(Items.ENCHANTED_BOOK) && itemEnchantments.isEmpty()) { item = item.transmuteCopy(Items.BOOK); } -@@ -223,6 +_,23 @@ +@@ -223,6 +285,23 @@ public class GrindstoneMenu extends AbstractContainerMenu { } item.set(DataComponents.REPAIR_COST, i); @@ -126,7 +134,7 @@ return item; } -@@ -279,7 +_,9 @@ +@@ -279,7 +358,9 @@ public class GrindstoneMenu extends AbstractContainerMenu { return ItemStack.EMPTY; } diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/ItemCombinerMenu.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/ItemCombinerMenu.java.patch new file mode 100644 index 000000000..d07bedaa8 --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/inventory/ItemCombinerMenu.java.patch @@ -0,0 +1,20 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/inventory/ItemCombinerMenu.java b/net/minecraft/world/inventory/ItemCombinerMenu.java +index 1296631fc74e83e6c9d6af0cd46d12d9851a30b1..e6c3a0086963298be31befbbbf8d42e85f379c79 100644 +--- a/net/minecraft/world/inventory/ItemCombinerMenu.java ++++ b/net/minecraft/world/inventory/ItemCombinerMenu.java +@@ -156,7 +156,9 @@ public abstract class ItemCombinerMenu extends AbstractContainerMenu { + return ItemStack.EMPTY; + } + ++ this.activeQuickItem = itemStack; // Purpur - Anvil API + slot.onTake(player, item); ++ this.activeQuickItem = null; // Purpur - Anvil API + } + + return itemStack; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/AxeItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/AxeItem.java.patch similarity index 90% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/AxeItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/AxeItem.java.patch index 91c2180ca..60ee2e508 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/AxeItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/AxeItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/AxeItem.java b/net/minecraft/world/item/AxeItem.java +index 8b006edd6f766f942d691f5271a7505a75700d0c..443410efadc9b8e919a23e475ff9457b93e8f156 100644 --- a/net/minecraft/world/item/AxeItem.java +++ b/net/minecraft/world/item/AxeItem.java -@@ -65,13 +_,15 @@ +@@ -65,13 +65,15 @@ public class AxeItem extends Item { if (playerHasBlockingItemUseIntent(context)) { return InteractionResult.PASS; } else { @@ -18,7 +26,7 @@ return InteractionResult.PASS; } // Paper end -@@ -79,8 +_,15 @@ +@@ -79,8 +81,15 @@ public class AxeItem extends Item { CriteriaTriggers.ITEM_USED_ON_BLOCK.trigger((ServerPlayer)player, clickedPos, itemInHand); } @@ -36,7 +44,7 @@ if (player != null) { itemInHand.hurtAndBreak(1, player, context.getHand().asEquipmentSlot()); } -@@ -97,21 +_,23 @@ +@@ -97,21 +106,23 @@ public class AxeItem extends Item { && !player.isSecondaryUseActive(); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/BlockItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BlockItem.java.patch similarity index 79% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/BlockItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BlockItem.java.patch index d8bd11e1f..08bce65b0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/BlockItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BlockItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/BlockItem.java b/net/minecraft/world/item/BlockItem.java +index 73ce7c82c0bd28c2e43ca40ba35c4603b21375ad..60261f504dc5669f9e2d0a2aee5dbd33c62c8893 100644 --- a/net/minecraft/world/item/BlockItem.java +++ b/net/minecraft/world/item/BlockItem.java -@@ -143,7 +_,16 @@ +@@ -143,7 +143,16 @@ public class BlockItem extends Item { } protected boolean updateCustomBlockEntityTag(BlockPos pos, Level level, @Nullable Player player, ItemStack stack, BlockState state) { @@ -18,7 +26,7 @@ } protected @Nullable BlockState getPlacementState(BlockPlaceContext context) { -@@ -204,6 +_,7 @@ +@@ -204,6 +213,7 @@ public class BlockItem extends Item { } if (!type.onlyOpCanSetNbt() || player != null && (player.canUseGameMasterBlocks() || (player.getAbilities().instabuild && player.getBukkitEntity().hasPermission("minecraft.nbt.place")))) { // Spigot - add permission @@ -26,7 +34,7 @@ return typedEntityData.loadInto(blockEntity, level.registryAccess()); } -@@ -244,6 +_,7 @@ +@@ -244,6 +254,7 @@ public class BlockItem extends Item { public void onDestroyed(ItemEntity itemEntity) { ItemContainerContents itemContainerContents = itemEntity.getItem().set(DataComponents.CONTAINER, ItemContainerContents.EMPTY); if (itemContainerContents != null) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/BowItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BowItem.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/BowItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BowItem.java.patch index bb43e3ee4..1c4577457 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/BowItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BowItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/BowItem.java b/net/minecraft/world/item/BowItem.java +index 616f17713c43b6b28cb58c45071f1a7a74010261..0a14a098f3aa40c8195c3a3bdf61ad6ae0fcc9d2 100644 --- a/net/minecraft/world/item/BowItem.java +++ b/net/minecraft/world/item/BowItem.java -@@ -28,6 +_,11 @@ +@@ -28,6 +28,11 @@ public class BowItem extends ProjectileWeaponItem { return false; } else { ItemStack projectile = player.getProjectile(stack); @@ -12,7 +20,7 @@ if (projectile.isEmpty()) { return false; } else { -@@ -38,7 +_,7 @@ +@@ -38,7 +43,7 @@ public class BowItem extends ProjectileWeaponItem { } else { List list = draw(stack, projectile, player); if (level instanceof ServerLevel serverLevel && !list.isEmpty()) { @@ -21,7 +29,7 @@ } level.playSound( -@@ -89,7 +_,7 @@ +@@ -89,7 +94,7 @@ public class BowItem extends ProjectileWeaponItem { public InteractionResult use(Level level, Player player, InteractionHand hand) { ItemStack itemInHand = player.getItemInHand(hand); boolean flag = !player.getProjectile(itemInHand).isEmpty(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/BucketItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BucketItem.java.patch similarity index 65% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/BucketItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BucketItem.java.patch index 0bcda5c05..24d6f5bbe 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/BucketItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/BucketItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/BucketItem.java b/net/minecraft/world/item/BucketItem.java +index 9d6485148393292006ed4453e0ed228b6197b239..0ffdbcd75fa57feb2ada835c0189246821d279d1 100644 --- a/net/minecraft/world/item/BucketItem.java +++ b/net/minecraft/world/item/BucketItem.java -@@ -148,7 +_,7 @@ +@@ -148,7 +148,7 @@ public class BucketItem extends Item implements DispensibleContainerItem { // CraftBukkit end if (!flag2) { return hitResult != null && this.emptyContents(entity, level, hitResult.getBlockPos().relative(hitResult.getDirection()), null, direction, clicked, itemstack, hand); // CraftBukkit diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/CrossbowItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/CrossbowItem.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/CrossbowItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/CrossbowItem.java.patch index c2e3f0e41..e6936166a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/CrossbowItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/CrossbowItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/CrossbowItem.java b/net/minecraft/world/item/CrossbowItem.java +index 664e633f6d93c1569895f9cccb90e3bc8922e56d..a29ff7584371d35d9b0fff71681f672b76dea07c 100644 --- a/net/minecraft/world/item/CrossbowItem.java +++ b/net/minecraft/world/item/CrossbowItem.java -@@ -66,7 +_,7 @@ +@@ -66,7 +66,7 @@ public class CrossbowItem extends ProjectileWeaponItem { ItemStack itemInHand = player.getItemInHand(hand); ChargedProjectiles chargedProjectiles = itemInHand.get(DataComponents.CHARGED_PROJECTILES); if (chargedProjectiles != null && !chargedProjectiles.isEmpty()) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/DyeColor.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/DyeColor.java.patch similarity index 55% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/DyeColor.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/DyeColor.java.patch index 2bafea6dd..199315bc0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/DyeColor.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/DyeColor.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/DyeColor.java b/net/minecraft/world/item/DyeColor.java +index 083ec53b1e46b8ad23db7e57296c222ad4c3cd4b..f2e761f253969ca01b78c7ddc7a571ecc9655432 100644 --- a/net/minecraft/world/item/DyeColor.java +++ b/net/minecraft/world/item/DyeColor.java -@@ -124,4 +_,10 @@ +@@ -124,4 +124,10 @@ public enum DyeColor implements StringRepresentable { private static CraftingInput makeCraftColorInput(DyeColor first, DyeColor second) { return CraftingInput.of(2, 1, List.of(new ItemStack(DyeItem.byColor(first)), new ItemStack(DyeItem.byColor(second)))); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/EggItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EggItem.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/EggItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EggItem.java.patch index 7bd1d11bf..e2c5f64d4 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/EggItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EggItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/EggItem.java b/net/minecraft/world/item/EggItem.java +index 848144ce792de422921242282cefb2077a56563d..654d67dfc38b872352ea1cb6314f989c464a4ce1 100644 --- a/net/minecraft/world/item/EggItem.java +++ b/net/minecraft/world/item/EggItem.java -@@ -24,7 +_,7 @@ +@@ -24,7 +24,7 @@ public class EggItem extends Item implements ProjectileItem { public InteractionResult use(Level level, Player player, InteractionHand hand) { ItemStack itemInHand = player.getItemInHand(hand); // Paper start diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/EndCrystalItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EndCrystalItem.java.patch similarity index 60% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/EndCrystalItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EndCrystalItem.java.patch index baee5e0ab..6a43396ce 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/EndCrystalItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EndCrystalItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/EndCrystalItem.java b/net/minecraft/world/item/EndCrystalItem.java +index 05ec512839898f96d9769bb0d00f6ba11dda0c4b..6e4a3c9c090a68bf5785a01d815c275411859c7b 100644 --- a/net/minecraft/world/item/EndCrystalItem.java +++ b/net/minecraft/world/item/EndCrystalItem.java -@@ -24,7 +_,7 @@ +@@ -24,7 +24,7 @@ public class EndCrystalItem extends Item { Level level = context.getLevel(); BlockPos clickedPos = context.getClickedPos(); BlockState blockState = level.getBlockState(clickedPos); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/EnderpearlItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EnderpearlItem.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/EnderpearlItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EnderpearlItem.java.patch index de340dafe..c52dc5347 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/EnderpearlItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/EnderpearlItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/EnderpearlItem.java b/net/minecraft/world/item/EnderpearlItem.java +index 7f1bc41d2ad20f2d96397e6e2eaedc4bbe5a7ba1..647f2fb76b1e1d8ca5046348b216a8ca0fa02de9 100644 --- a/net/minecraft/world/item/EnderpearlItem.java +++ b/net/minecraft/world/item/EnderpearlItem.java -@@ -24,7 +_,7 @@ +@@ -24,7 +24,7 @@ public class EnderpearlItem extends Item { if (level instanceof ServerLevel serverLevel) { // CraftBukkit start // Paper start - PlayerLaunchProjectileEvent @@ -9,7 +17,7 @@ com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent event = new com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent((org.bukkit.entity.Player) player.getBukkitEntity(), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(itemInHand), (org.bukkit.entity.Projectile) thrownEnderpearl.projectile().getBukkitEntity()); if (event.callEvent() && thrownEnderpearl.attemptSpawn()) { if (event.shouldConsume()) { -@@ -44,6 +_,7 @@ +@@ -44,6 +44,7 @@ public class EnderpearlItem extends Item { 0.4F / (level.getRandom().nextFloat() * 0.4F + 0.8F) ); player.awardStat(Stats.ITEM_USED.get(this)); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/HoeItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/HoeItem.java.patch similarity index 82% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/HoeItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/HoeItem.java.patch index cfe01d6ad..fc57690de 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/HoeItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/HoeItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/HoeItem.java b/net/minecraft/world/item/HoeItem.java +index d9d03bfcb1cb10aa03b35255c4237760bc836752..bf14cbcc6ed4c89ef6f15b3cb248a599cbc26e29 100644 --- a/net/minecraft/world/item/HoeItem.java +++ b/net/minecraft/world/item/HoeItem.java -@@ -44,15 +_,25 @@ +@@ -44,15 +44,25 @@ public class HoeItem extends Item { public InteractionResult useOn(UseOnContext context) { Level level = context.getLevel(); BlockPos clickedPos = context.getClickedPos(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ItemStack.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ItemStack.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/ItemStack.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ItemStack.java.patch index 34741405d..efd6cdb1a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ItemStack.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ItemStack.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/ItemStack.java b/net/minecraft/world/item/ItemStack.java +index ed06cffe8a5eba2ca4a34ade81f8185e21d7b651..e38ed1b4f9cfa104da317e80d615b38d5121ea97 100644 --- a/net/minecraft/world/item/ItemStack.java +++ b/net/minecraft/world/item/ItemStack.java -@@ -456,6 +_,7 @@ +@@ -456,6 +456,7 @@ public final class ItemStack implements DataComponentHolder { // revert back all captured blocks for (org.bukkit.block.BlockState blockstate : blocks) { ((org.bukkit.craftbukkit.block.CraftBlockState) blockstate).revertPlace(); @@ -8,7 +16,7 @@ } SignItem.openSign = null; // SPIGOT-6758 - Reset on early return -@@ -479,6 +_,7 @@ +@@ -479,6 +480,7 @@ public final class ItemStack implements DataComponentHolder { if (!(block.getBlock() instanceof net.minecraft.world.level.block.BaseEntityBlock)) { // Containers get placed automatically block.onPlace(serverLevel, newPos, oldBlock, true, context); } @@ -16,7 +24,7 @@ serverLevel.notifyAndUpdatePhysics(newPos, null, oldBlock, block, serverLevel.getBlockState(newPos), updateFlags, net.minecraft.world.level.block.Block.UPDATE_LIMIT); // send null chunk as chunk.k() returns false by this point } -@@ -599,6 +_,26 @@ +@@ -599,6 +601,26 @@ public final class ItemStack implements DataComponentHolder { return this.isDamageableItem() && this.getDamageValue() > 0; } @@ -43,16 +51,16 @@ public int getDamageValue() { return Mth.clamp(this.getOrDefault(DataComponents.DAMAGE, 0), 0, this.getMaxDamage()); } -@@ -1247,6 +_,12 @@ - public boolean isEnchanted() { +@@ -1248,6 +1270,12 @@ public final class ItemStack implements DataComponentHolder { return !this.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY).isEmpty(); } -+ + + // Purpur start - Config to allow unsafe enchants + public boolean hasEnchantment(Holder enchantment) { + return this.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY).getLevel(enchantment) > 0; + } + // Purpur end - Config to allow unsafe enchants - ++ public ItemEnchantments getEnchantments() { return this.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY); + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/Items.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/Items.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/Items.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/Items.java.patch index bebe1da21..7fe42ffe8 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/Items.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/Items.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/Items.java b/net/minecraft/world/item/Items.java +index 3e0ae17bf7129aa62765be453edba1bdd50324ab..310e61a9bbece157d81095130ecb3131deef9288 100644 --- a/net/minecraft/world/item/Items.java +++ b/net/minecraft/world/item/Items.java -@@ -420,7 +_,7 @@ +@@ -420,7 +420,7 @@ public class Items { public static final Item PURPUR_BLOCK = registerBlock(Blocks.PURPUR_BLOCK); public static final Item PURPUR_PILLAR = registerBlock(Blocks.PURPUR_PILLAR); public static final Item PURPUR_STAIRS = registerBlock(Blocks.PURPUR_STAIRS); @@ -9,7 +17,7 @@ public static final Item CREAKING_HEART = registerBlock(Blocks.CREAKING_HEART); public static final Item CHEST = registerBlock(Blocks.CHEST, properties -> properties.component(DataComponents.CONTAINER, ItemContainerContents.EMPTY)); public static final Item CRAFTING_TABLE = registerBlock(Blocks.CRAFTING_TABLE); -@@ -2169,7 +_,7 @@ +@@ -2169,7 +2169,7 @@ public class Items { "sweet_berries", createBlockItemWithCustomItemName(Blocks.SWEET_BERRY_BUSH), new Item.Properties().food(Foods.SWEET_BERRIES) ); public static final Item GLOW_BERRIES = registerItem( diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/MapItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/MapItem.java.patch similarity index 53% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/MapItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/MapItem.java.patch index c609ab3c7..15455757e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/MapItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/MapItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/MapItem.java b/net/minecraft/world/item/MapItem.java +index 8479f971afdcae0143bbec25ab258485e49722af..63c9805a2c2c8ac8fff4e322e1627880c3fabd83 100644 --- a/net/minecraft/world/item/MapItem.java +++ b/net/minecraft/world/item/MapItem.java -@@ -192,6 +_,7 @@ +@@ -192,6 +192,7 @@ public class MapItem extends Item { public static void renderBiomePreviewMap(ServerLevel level, ItemStack stack) { MapItemSavedData savedData = getSavedData(stack, level); if (savedData != null) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/NameTagItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/NameTagItem.java.patch similarity index 64% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/NameTagItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/NameTagItem.java.patch index 2a8639361..17d4874c2 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/NameTagItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/NameTagItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/NameTagItem.java b/net/minecraft/world/item/NameTagItem.java +index 24bf4cd320c67b852d3905c50740c8006592bd68..7ee4bd968a43123e21e65f77f30495e65146aca5 100644 --- a/net/minecraft/world/item/NameTagItem.java +++ b/net/minecraft/world/item/NameTagItem.java -@@ -24,6 +_,7 @@ +@@ -24,6 +24,7 @@ public class NameTagItem extends Item { LivingEntity newEntity = ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getEntity()).getHandle(); newEntity.setCustomName(event.getName() != null ? io.papermc.paper.adventure.PaperAdventure.asVanilla(event.getName()) : null); diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ProjectileWeaponItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ProjectileWeaponItem.java.patch new file mode 100644 index 000000000..ba14f60c5 --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ProjectileWeaponItem.java.patch @@ -0,0 +1,19 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/ProjectileWeaponItem.java b/net/minecraft/world/item/ProjectileWeaponItem.java +index ba93379b6e85bed3eedc4869b83b3d45aa770cce..8fb0eacdf739e5559fb725571fb3a65fb6b17e8a 100644 +--- a/net/minecraft/world/item/ProjectileWeaponItem.java ++++ b/net/minecraft/world/item/ProjectileWeaponItem.java +@@ -106,6 +106,8 @@ public abstract class ProjectileWeaponItem extends Item { + abstractArrow.setCritArrow(true); + } + ++ abstractArrow.setActualEnchantments(weapon.getEnchantments()); // Purpur - Add an option to fix MC-3304 projectile looting ++ + return abstractArrow; + } + diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ShovelItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ShovelItem.java.patch similarity index 74% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/ShovelItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ShovelItem.java.patch index c583f3853..63247abee 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ShovelItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ShovelItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/ShovelItem.java b/net/minecraft/world/item/ShovelItem.java +index ba0609f4d9166e66599f9d4430885ab03d53ef41..7910c96cc47985acc8b64ba376933c84c51022d4 100644 --- a/net/minecraft/world/item/ShovelItem.java +++ b/net/minecraft/world/item/ShovelItem.java -@@ -46,9 +_,12 @@ +@@ -46,9 +46,12 @@ public class ShovelItem extends Item { BlockState blockState1 = FLATTENABLES.get(blockState.getBlock()); BlockState blockState2 = null; Runnable afterAction = null; // Paper diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/SnowballItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/SnowballItem.java.patch similarity index 72% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/SnowballItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/SnowballItem.java.patch index 9c09ecb72..961fc2548 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/SnowballItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/SnowballItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/SnowballItem.java b/net/minecraft/world/item/SnowballItem.java +index a5bfd497a07f2e2311db8eca5b8ba8af9f4d1080..67145fd5adc5ebb38efb978119ba1f7e4f2c563f 100644 --- a/net/minecraft/world/item/SnowballItem.java +++ b/net/minecraft/world/item/SnowballItem.java -@@ -26,7 +_,7 @@ +@@ -26,7 +26,7 @@ public class SnowballItem extends Item implements ProjectileItem { // CraftBukkit start - moved down if (level instanceof ServerLevel serverLevel) { // Paper start - PlayerLaunchProjectileEvent diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/SpawnEggItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/SpawnEggItem.java.patch similarity index 84% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/SpawnEggItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/SpawnEggItem.java.patch index 453518159..cf0a713cf 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/SpawnEggItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/SpawnEggItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/SpawnEggItem.java b/net/minecraft/world/item/SpawnEggItem.java +index 079cccadfca55cd718bf75b244901f774c818811..8ab8f00995136c81abf7855e02b186a3df9a02d9 100644 --- a/net/minecraft/world/item/SpawnEggItem.java +++ b/net/minecraft/world/item/SpawnEggItem.java -@@ -70,6 +_,23 @@ +@@ -70,6 +70,23 @@ public class SpawnEggItem extends Item { return InteractionResult.FAIL; } else { if (level.paperConfig().entities.spawning.disableMobSpawnerSpawnEggTransformation) return InteractionResult.FAIL; // Paper - Allow disabling mob spawner spawn egg transformation diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ThrowablePotionItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ThrowablePotionItem.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/ThrowablePotionItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ThrowablePotionItem.java.patch index 5cf5ead6e..348332f89 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/ThrowablePotionItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/ThrowablePotionItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/ThrowablePotionItem.java b/net/minecraft/world/item/ThrowablePotionItem.java +index 2707c2e3c6e32bb7c497808dceb34690e27a567a..a9bce92803772c1d76e1c3eabe1147d4c5211440 100644 --- a/net/minecraft/world/item/ThrowablePotionItem.java +++ b/net/minecraft/world/item/ThrowablePotionItem.java -@@ -24,7 +_,7 @@ +@@ -24,7 +24,7 @@ public abstract class ThrowablePotionItem extends PotionItem implements Projecti ItemStack itemInHand = player.getItemInHand(hand); if (level instanceof ServerLevel serverLevel) { // Paper start - PlayerLaunchProjectileEvent diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/TridentItem.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/TridentItem.java.patch similarity index 76% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/TridentItem.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/TridentItem.java.patch index dcad885b4..16246e058 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/TridentItem.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/TridentItem.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/TridentItem.java b/net/minecraft/world/item/TridentItem.java +index d029fda2e8bac95fb75f75666a55b0c3aa3bb12d..8330421fc79e63bbcec276c659cd76cad38e36eb 100644 --- a/net/minecraft/world/item/TridentItem.java +++ b/net/minecraft/world/item/TridentItem.java -@@ -83,7 +_,7 @@ +@@ -83,7 +83,7 @@ public class TridentItem extends Item implements ProjectileItem { if (tridentSpinAttackStrength == 0.0F) { ItemStack itemStack = stack.copyWithCount(1); // Paper Projectile.Delayed tridentDelayed = Projectile.spawnProjectileFromRotationDelayed( // Paper - PlayerLaunchProjectileEvent( @@ -9,7 +17,7 @@ ); // Paper start - PlayerLaunchProjectileEvent com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent event = new com.destroystokyo.paper.event.player.PlayerLaunchProjectileEvent((org.bukkit.entity.Player) player.getBukkitEntity(), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(stack), (org.bukkit.entity.Projectile) tridentDelayed.projectile().getBukkitEntity()); -@@ -93,6 +_,7 @@ +@@ -93,6 +93,7 @@ public class TridentItem extends Item implements ProjectileItem { return false; } ThrownTrident thrownTrident = tridentDelayed.projectile(); // Paper - PlayerLaunchProjectileEvent diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java.patch index 65243f097..2b5403e18 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java b/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java +index 41e1e076a4567d3d3202cf8e426a1ebb391d85e8..2d710dd3f20cbea06c16f14a558b575b369c6ca2 100644 --- a/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java +++ b/net/minecraft/world/item/consume_effects/ClearAllStatusEffectsConsumeEffect.java -@@ -20,6 +_,12 @@ +@@ -20,6 +20,12 @@ public record ClearAllStatusEffectsConsumeEffect() implements ConsumeEffect { @Override // CraftBukkit start public boolean apply(Level level, ItemStack stack, LivingEntity entity, org.bukkit.event.entity.EntityPotionEffectEvent.Cause cause) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/crafting/Ingredient.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/crafting/Ingredient.java.patch similarity index 60% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/crafting/Ingredient.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/crafting/Ingredient.java.patch index fcee0a726..63a1394f0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/crafting/Ingredient.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/crafting/Ingredient.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/crafting/Ingredient.java b/net/minecraft/world/item/crafting/Ingredient.java +index da95f40503f3696c8daa8fd0e947508fe43060ba..edeb3d74b0f240914b84da6dff3b057e89617a11 100644 --- a/net/minecraft/world/item/crafting/Ingredient.java +++ b/net/minecraft/world/item/crafting/Ingredient.java -@@ -36,6 +_,7 @@ +@@ -36,6 +36,7 @@ public final class Ingredient implements StackedContents.IngredientInfo itemStacks; // Paper - Improve exact choice recipe ingredients @@ -8,7 +16,7 @@ public boolean isExact() { return this.itemStacks != null; -@@ -88,6 +_,11 @@ +@@ -88,6 +89,11 @@ public final class Ingredient implements StackedContents.IngredientInfo +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/enchantment/EnchantmentHelper.java b/net/minecraft/world/item/enchantment/EnchantmentHelper.java +index b61e0e179e78f37f670ad86476b5a533e7835948..d9eed93017906785716cf747317be7737bc2a38e 100644 --- a/net/minecraft/world/item/enchantment/EnchantmentHelper.java +++ b/net/minecraft/world/item/enchantment/EnchantmentHelper.java -@@ -616,4 +_,58 @@ +@@ -616,4 +616,58 @@ public class EnchantmentHelper { interface EnchantmentVisitor { void accept(Holder enchantment, int level); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/enchantment/ItemEnchantments.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/enchantment/ItemEnchantments.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/enchantment/ItemEnchantments.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/enchantment/ItemEnchantments.java.patch index 8a8607dab..37b5628f0 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/enchantment/ItemEnchantments.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/enchantment/ItemEnchantments.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/enchantment/ItemEnchantments.java b/net/minecraft/world/item/enchantment/ItemEnchantments.java +index 40e94e008ddf8d7670496f3f30a3e6320a11c936..b666181af7d6663f2fce58a7d9a4c805687f5409 100644 --- a/net/minecraft/world/item/enchantment/ItemEnchantments.java +++ b/net/minecraft/world/item/enchantment/ItemEnchantments.java -@@ -32,7 +_,7 @@ +@@ -32,7 +32,7 @@ public class ItemEnchantments implements TooltipProvider { private static final java.util.Comparator> ENCHANTMENT_ORDER = java.util.Comparator.comparing(Holder::getRegisteredName); public static final ItemEnchantments EMPTY = new ItemEnchantments(new it.unimi.dsi.fastutil.objects.Object2IntAVLTreeMap<>(ENCHANTMENT_ORDER)); // Paper end - sort enchantments @@ -9,7 +17,7 @@ public static final Codec CODEC = Codec.unboundedMap(Enchantment.CODEC, LEVEL_CODEC) .xmap( map -> new net.minecraft.world.item.enchantment.ItemEnchantments(net.minecraft.util.Util.make(new it.unimi.dsi.fastutil.objects.Object2IntAVLTreeMap<>(ENCHANTMENT_ORDER), m -> m.putAll(map))), // Paper - sort enchantments -@@ -50,7 +_,7 @@ +@@ -50,7 +50,7 @@ public class ItemEnchantments implements TooltipProvider { for (Entry> entry : enchantments.object2IntEntrySet()) { int intValue = entry.getIntValue(); @@ -18,7 +26,7 @@ throw new IllegalArgumentException("Enchantment " + entry.getKey() + " has invalid level " + intValue); } } -@@ -133,13 +_,13 @@ +@@ -133,13 +133,13 @@ public class ItemEnchantments implements TooltipProvider { if (level <= 0) { this.enchantments.removeInt(enchantment); } else { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/trading/MerchantOffer.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/trading/MerchantOffer.java.patch similarity index 66% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/item/trading/MerchantOffer.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/trading/MerchantOffer.java.patch index d173c48d1..f0c7c9748 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/item/trading/MerchantOffer.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/item/trading/MerchantOffer.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/item/trading/MerchantOffer.java b/net/minecraft/world/item/trading/MerchantOffer.java +index 6afeb92c2e00ca5b945b7c7de9257bd741d53c3d..3e2a1b3f1098bf4f45fed76b6ca4f9a3d5add6ee 100644 --- a/net/minecraft/world/item/trading/MerchantOffer.java +++ b/net/minecraft/world/item/trading/MerchantOffer.java -@@ -143,8 +_,13 @@ +@@ -143,8 +143,13 @@ public class MerchantOffer { } public void updateDemand() { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/BaseSpawner.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/BaseSpawner.java.patch similarity index 53% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/BaseSpawner.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/BaseSpawner.java.patch index 7e004e6aa..d4a1f0459 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/BaseSpawner.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/BaseSpawner.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/BaseSpawner.java b/net/minecraft/world/level/BaseSpawner.java +index ff9dd4aedc91d151f1955e2e9bed1c597341964c..93fa81eb9d4ad5f942f96ba0c0e69635a5fc408f 100644 --- a/net/minecraft/world/level/BaseSpawner.java +++ b/net/minecraft/world/level/BaseSpawner.java -@@ -60,6 +_,7 @@ +@@ -60,6 +60,7 @@ public abstract class BaseSpawner { } public boolean isNearPlayer(Level level, BlockPos pos) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/EntityGetter.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/EntityGetter.java.patch similarity index 58% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/EntityGetter.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/EntityGetter.java.patch index 037967e4e..cb70056d5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/EntityGetter.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/EntityGetter.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/EntityGetter.java b/net/minecraft/world/level/EntityGetter.java +index 6ae3698e8e2c84fb21c0a4facbbf1568dbd45405..1ad405fba4d7f8e7f4e8dc97b3a73692c16de104 100644 --- a/net/minecraft/world/level/EntityGetter.java +++ b/net/minecraft/world/level/EntityGetter.java -@@ -187,7 +_,7 @@ +@@ -187,7 +187,7 @@ public interface EntityGetter extends ca.spottedleaf.moonrise.patches.chunk_syst default boolean hasNearbyAlivePlayer(double x, double y, double z, double distance) { for (Player player : this.players()) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/Level.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/Level.java.patch similarity index 85% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/Level.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/Level.java.patch index 09dd47afb..113cde743 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/Level.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/Level.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/Level.java b/net/minecraft/world/level/Level.java +index 579bbba4e823d4d0318e58759ca732b7c8e4d865..87ba05261739c64c1534df9721e0b067a6191af6 100644 --- a/net/minecraft/world/level/Level.java +++ b/net/minecraft/world/level/Level.java -@@ -165,11 +_,55 @@ +@@ -165,11 +165,55 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl } // Paper end - add paper world config @@ -56,7 +64,7 @@ public CraftWorld getWorld() { return this.world; } -@@ -845,6 +_,8 @@ +@@ -845,6 +889,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl // Paper end - getblock optimisations - cache world height/sections this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) levelData).getLevelName()); // Spigot this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config @@ -65,7 +73,7 @@ this.generator = generator; this.world = new CraftWorld((ServerLevel) this, generator, biomeProvider, environment); -@@ -2090,4 +_,14 @@ +@@ -2090,4 +2136,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl return this.moonrise$getEntityLookup().getEntityCount(); // Paper - rewrite chunk system } // Paper end - allow patching this logic diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/NaturalSpawner.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/NaturalSpawner.java.patch similarity index 65% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/NaturalSpawner.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/NaturalSpawner.java.patch index 447d32bc2..50403dd96 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/NaturalSpawner.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/NaturalSpawner.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/NaturalSpawner.java b/net/minecraft/world/level/NaturalSpawner.java +index 4e5078495037078922ab6350a500acdabe177ca5..14e21c5439cfdf870feeccf638d6494a0c003d64 100644 --- a/net/minecraft/world/level/NaturalSpawner.java +++ b/net/minecraft/world/level/NaturalSpawner.java -@@ -264,7 +_,7 @@ +@@ -264,7 +264,7 @@ public final class NaturalSpawner { mutableBlockPos.set(x, y, z); double d = x + 0.5; double d1 = z + 0.5; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/ServerExplosion.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/ServerExplosion.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/ServerExplosion.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/ServerExplosion.java.patch index 898c4dda1..5c000cbd5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/ServerExplosion.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/ServerExplosion.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/ServerExplosion.java b/net/minecraft/world/level/ServerExplosion.java +index 1e94326047622d8975fd1cc5f44e75104fd56946..bcbf7daa2c2b7941ab7cb333de15494969ca665c 100644 --- a/net/minecraft/world/level/ServerExplosion.java +++ b/net/minecraft/world/level/ServerExplosion.java -@@ -640,6 +_,23 @@ +@@ -640,6 +640,23 @@ public class ServerExplosion implements Explosion { this.directMappedBlockCache = new ca.spottedleaf.moonrise.patches.collisions.ExplosionBlockCache[BLOCK_EXPLOSION_CACHE_WIDTH * BLOCK_EXPLOSION_CACHE_WIDTH * BLOCK_EXPLOSION_CACHE_WIDTH]; this.mutablePos = new BlockPos.MutableBlockPos(); // Paper end - collision optimisations diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/AnvilBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/AnvilBlock.java.patch similarity index 89% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/AnvilBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/AnvilBlock.java.patch index e604b9e74..8758114e7 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/AnvilBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/AnvilBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/AnvilBlock.java b/net/minecraft/world/level/block/AnvilBlock.java +index bfcf55cf52b468fbb3fe60daae1068b6e54524a2..ac01a06e000354356c5f3b2e0a8049bd742b0727 100644 --- a/net/minecraft/world/level/block/AnvilBlock.java +++ b/net/minecraft/world/level/block/AnvilBlock.java -@@ -54,6 +_,53 @@ +@@ -54,6 +54,53 @@ public class AnvilBlock extends FallingBlock { return this.defaultBlockState().setValue(FACING, context.getHorizontalDirection().getClockWise()); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/AzaleaBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/AzaleaBlock.java.patch similarity index 70% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/AzaleaBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/AzaleaBlock.java.patch index 066e2cfd6..4b3ed4f66 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/AzaleaBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/AzaleaBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/AzaleaBlock.java b/net/minecraft/world/level/block/AzaleaBlock.java +index 435a455ad2ec3dfb142d570a51a720bc6c49dac3..32a1dc20202bad7a15794e98cdc1bf2fb2ad5308 100644 --- a/net/minecraft/world/level/block/AzaleaBlock.java +++ b/net/minecraft/world/level/block/AzaleaBlock.java -@@ -50,6 +_,20 @@ +@@ -50,6 +50,20 @@ public class AzaleaBlock extends VegetationBlock implements BonemealableBlock { @Override public void performBonemeal(ServerLevel level, RandomSource random, BlockPos pos, BlockState state) { diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java.patch new file mode 100644 index 000000000..3894ffef3 --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java.patch @@ -0,0 +1,18 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java b/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java +index e348412960da6623cf8d878ea37af05e6b606adc..f178c45c834aa276522c4ecd6995d9eaf63d3eb6 100644 +--- a/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java ++++ b/net/minecraft/world/level/block/BaseCoralPlantTypeBlock.java +@@ -39,6 +39,7 @@ public abstract class BaseCoralPlantTypeBlock extends Block implements SimpleWat + } + + protected static boolean scanForWater(BlockState state, BlockGetter level, BlockPos pos) { ++ if (!((net.minecraft.world.level.LevelAccessor) level).getMinecraftWorld().purpurConfig.coralDieOutsideWater) return true; // Purpur - Config to not let coral die + if (state.getValue(WATERLOGGED)) { + return true; + } else { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BaseFireBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BaseFireBlock.java.patch similarity index 55% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BaseFireBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BaseFireBlock.java.patch index 952b74ba8..6eff082e3 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BaseFireBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BaseFireBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/BaseFireBlock.java b/net/minecraft/world/level/block/BaseFireBlock.java +index 1ff7387320928af6630b9e0cbc30199b4770737d..42e897dc4bee8e9c075415d494ce13c404f2042a 100644 --- a/net/minecraft/world/level/block/BaseFireBlock.java +++ b/net/minecraft/world/level/block/BaseFireBlock.java -@@ -208,7 +_,7 @@ +@@ -208,7 +208,7 @@ public abstract class BaseFireBlock extends Block { boolean flag = false; for (Direction direction1 : Direction.values()) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BedBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BedBlock.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BedBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BedBlock.java.patch index c9f3ab128..62d2d0448 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BedBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BedBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/BedBlock.java b/net/minecraft/world/level/block/BedBlock.java +index 7bfc62120cae4c5e83cb0d86b759b7ffb2336a95..c4823d0538558b674457c99dc540a6a5757492e7 100644 --- a/net/minecraft/world/level/block/BedBlock.java +++ b/net/minecraft/world/level/block/BedBlock.java -@@ -100,7 +_,7 @@ +@@ -100,7 +100,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock } Vec3 center = pos.getCenter(); @@ -9,7 +17,7 @@ return InteractionResult.SUCCESS_SERVER; } else if (state.getValue(OCCUPIED)) { if (bedRule.explodes()) return this.explodeBed(state, level, pos); // Paper - check explode first -@@ -153,7 +_,7 @@ +@@ -153,7 +153,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock } Vec3 center = pos.getCenter(); @@ -18,7 +26,7 @@ return InteractionResult.SUCCESS_SERVER; } // CraftBukkit end -@@ -170,7 +_,7 @@ +@@ -170,7 +170,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock @Override public void fallOn(Level level, BlockState state, BlockPos pos, Entity entity, double fallDistance) { diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BigDripleafBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BigDripleafBlock.java.patch new file mode 100644 index 000000000..0c67ed1bd --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BigDripleafBlock.java.patch @@ -0,0 +1,19 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/BigDripleafBlock.java b/net/minecraft/world/level/block/BigDripleafBlock.java +index c2ef71dd9ee070f80d32b8829b80240ff22f0f7f..9cbeba234dc96264a6bb134fc2af073e62925836 100644 +--- a/net/minecraft/world/level/block/BigDripleafBlock.java ++++ b/net/minecraft/world/level/block/BigDripleafBlock.java +@@ -251,7 +251,7 @@ public class BigDripleafBlock extends HorizontalDirectionalBlock implements Bone + playTiltSound(level, pos, sound); + } + +- int _int = DELAY_UNTIL_NEXT_TILT_STATE.getInt(tilt); ++ int _int = level.purpurConfig.bigDripleafTiltDelay.getOrDefault(tilt, -1); // Purpur - Big dripleaf tilt delay + if (_int != -1) { + level.scheduleTick(pos, this, _int); + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/Block.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/Block.java.patch similarity index 85% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/Block.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/Block.java.patch index 7ea2b64af..57c9de350 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/Block.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/Block.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/Block.java b/net/minecraft/world/level/block/Block.java +index 94b4143449c99ee35db44ab8e2a766d924aa6410..f6dcd981b6bddadb7618f022908cbbad67095e1b 100644 --- a/net/minecraft/world/level/block/Block.java +++ b/net/minecraft/world/level/block/Block.java -@@ -113,6 +_,10 @@ +@@ -113,6 +113,10 @@ public class Block extends BlockBehaviour implements ItemLike { public static final int UPDATE_LIMIT = 512; protected final StateDefinition stateDefinition; private BlockState defaultBlockState; @@ -11,7 +19,7 @@ // Paper start - Protect Bedrock and End Portal/Frames from being destroyed public final boolean isDestroyable() { return io.papermc.paper.configuration.GlobalConfiguration.get().unsupportedSettings.allowPermanentBlockBreakExploits || -@@ -395,7 +_,7 @@ +@@ -395,7 +399,7 @@ public class Block extends BlockBehaviour implements ItemLike { event.setExpToDrop(block.getExpDrop(state, serverLevel, pos, net.minecraft.world.item.ItemStack.EMPTY, true)); // Paper - Properly handle xp dropping event.callEvent(); for (org.bukkit.inventory.ItemStack drop : event.getDrops()) { @@ -20,7 +28,7 @@ } state.spawnAfterBreak(serverLevel, pos, ItemStack.EMPTY, false); // Paper - Properly handle xp dropping block.popExperience(serverLevel, pos, event.getExpToDrop()); // Paper - Properly handle xp dropping -@@ -413,7 +_,7 @@ +@@ -413,7 +417,7 @@ public class Block extends BlockBehaviour implements ItemLike { public static void dropResources(BlockState state, LevelAccessor level, BlockPos pos, @Nullable BlockEntity blockEntity) { if (level instanceof ServerLevel) { @@ -29,7 +37,7 @@ state.spawnAfterBreak((ServerLevel)level, pos, ItemStack.EMPTY, true); } } -@@ -425,11 +_,30 @@ +@@ -425,11 +429,30 @@ public class Block extends BlockBehaviour implements ItemLike { public static void dropResources(BlockState state, Level level, BlockPos pos, @Nullable BlockEntity blockEntity, @Nullable Entity entity, ItemStack tool, boolean dropExperience) { // Paper end - Properly handle xp dropping if (level instanceof ServerLevel) { @@ -61,11 +69,10 @@ public static void popResource(Level level, BlockPos pos, ItemStack stack) { double d = EntityType.ITEM.getHeight() / 2.0; double d1 = pos.getX() + 0.5 + Mth.nextDouble(level.random, -0.25, 0.25); -@@ -509,7 +_,15 @@ +@@ -509,7 +532,15 @@ public class Block extends BlockBehaviour implements ItemLike { } public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity placer, ItemStack stack) { -- } + this.placer = placer; // Purpur - Store placer on Block when placed + } + @@ -73,12 +80,12 @@ + @Nullable protected LivingEntity placer = null; + public void forgetPlacer() { + this.placer = null; -+ } + } + // Purpur end - Store placer on Block when placed public boolean isPossibleToRespawnInThis(BlockState state) { return !state.isSolid() && !state.liquid(); -@@ -520,7 +_,7 @@ +@@ -520,7 +551,7 @@ public class Block extends BlockBehaviour implements ItemLike { } public void fallOn(Level level, BlockState state, BlockPos pos, Entity entity, double fallDistance) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/Blocks.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/Blocks.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/Blocks.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/Blocks.java.patch index 9c9f12e39..45e9d9216 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/Blocks.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/Blocks.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/Blocks.java b/net/minecraft/world/level/block/Blocks.java +index 2eb6fe73adeda3e525e147b7f7034bdec651e04a..4001a0c25796cd33d110b4f534590c342b1f37fc 100644 --- a/net/minecraft/world/level/block/Blocks.java +++ b/net/minecraft/world/level/block/Blocks.java -@@ -6806,6 +_,7 @@ +@@ -6806,6 +6806,7 @@ public class Blocks { BlockBehaviour.Properties.of() .mapColor(MapColor.PLANT) .forceSolidOff() @@ -8,7 +16,7 @@ .instabreak() .sound(SoundType.AZALEA) .noOcclusion() -@@ -6817,6 +_,7 @@ +@@ -6817,6 +6818,7 @@ public class Blocks { BlockBehaviour.Properties.of() .mapColor(MapColor.PLANT) .forceSolidOff() diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BubbleColumnBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BubbleColumnBlock.java.patch similarity index 66% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BubbleColumnBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BubbleColumnBlock.java.patch index 6d57a3ee0..505599a33 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/BubbleColumnBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/BubbleColumnBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/BubbleColumnBlock.java b/net/minecraft/world/level/block/BubbleColumnBlock.java +index 596640c1473b8526b8bb57c5714a84ee55372d07..26f6a795a4d5be2b1c319a114c26c8f5f607d9cd 100644 --- a/net/minecraft/world/level/block/BubbleColumnBlock.java +++ b/net/minecraft/world/level/block/BubbleColumnBlock.java -@@ -99,9 +_,9 @@ +@@ -99,9 +99,9 @@ public class BubbleColumnBlock extends Block implements BucketPickup { if (state.is(Blocks.BUBBLE_COLUMN)) { return state; } else if (state.is(Blocks.SOUL_SAND)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CactusBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CactusBlock.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CactusBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CactusBlock.java.patch index 02f5c4001..bf7cb9526 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CactusBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CactusBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CactusBlock.java b/net/minecraft/world/level/block/CactusBlock.java +index 9662828596de15e5b855f12d2a3b014763b3fc2e..f6a20e5676136389cd504af503c1207d339aa70c 100644 --- a/net/minecraft/world/level/block/CactusBlock.java +++ b/net/minecraft/world/level/block/CactusBlock.java -@@ -22,7 +_,7 @@ +@@ -22,7 +22,7 @@ import net.minecraft.world.level.pathfinder.PathComputationType; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; @@ -9,7 +17,7 @@ public static final MapCodec CODEC = simpleCodec(CactusBlock::new); public static final IntegerProperty AGE = BlockStateProperties.AGE_15; public static final int MAX_AGE = 15; -@@ -117,7 +_,7 @@ +@@ -117,7 +117,7 @@ public class CactusBlock extends Block { protected boolean canSurvive(BlockState state, LevelReader level, BlockPos pos) { for (Direction direction : Direction.Plane.HORIZONTAL) { BlockState blockState = level.getBlockState(pos.relative(direction)); @@ -18,7 +26,7 @@ return false; } } -@@ -141,4 +_,34 @@ +@@ -141,4 +141,34 @@ public class CactusBlock extends Block { protected boolean isPathfindable(BlockState state, PathComputationType pathComputationType) { return false; } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CakeBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CakeBlock.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CakeBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CakeBlock.java.patch index c78b443f8..8814e9c35 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CakeBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CakeBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CakeBlock.java b/net/minecraft/world/level/block/CakeBlock.java +index cca7bde128f88df4327e6b011c301f60d909bb4d..576e00d1e9eb2a692b1ee0f1086ee0db230d4e7e 100644 --- a/net/minecraft/world/level/block/CakeBlock.java +++ b/net/minecraft/world/level/block/CakeBlock.java -@@ -109,6 +_,7 @@ +@@ -109,6 +109,7 @@ public class CakeBlock extends Block { org.bukkit.event.entity.FoodLevelChangeEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callFoodLevelChangeEvent(player, 2 + oldFoodLevel); if (!event.isCancelled()) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CampfireBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CampfireBlock.java.patch similarity index 52% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CampfireBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CampfireBlock.java.patch index d31073993..d43c6b7ac 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CampfireBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CampfireBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CampfireBlock.java b/net/minecraft/world/level/block/CampfireBlock.java +index b9e11a361e91cf3d5c929330fc0ba59cfe903198..2049ccee48c63fc0bfb5e5486c2603756fd20c7d 100644 --- a/net/minecraft/world/level/block/CampfireBlock.java +++ b/net/minecraft/world/level/block/CampfireBlock.java -@@ -123,7 +_,7 @@ +@@ -123,7 +123,7 @@ public class CampfireBlock extends BaseEntityBlock implements SimpleWaterloggedB return this.defaultBlockState() .setValue(WATERLOGGED, flag) .setValue(SIGNAL_FIRE, this.isSmokeSource(level.getBlockState(clickedPos.below()))) diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CarvedPumpkinBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CarvedPumpkinBlock.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CarvedPumpkinBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CarvedPumpkinBlock.java.patch index 145b63efa..60b4647c2 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CarvedPumpkinBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CarvedPumpkinBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CarvedPumpkinBlock.java b/net/minecraft/world/level/block/CarvedPumpkinBlock.java +index b45e5f571e72028996f641157473039ba9dd3520..b192b384fa5b9b6ab5b72f6c6414c4fa4f36c75e 100644 --- a/net/minecraft/world/level/block/CarvedPumpkinBlock.java +++ b/net/minecraft/world/level/block/CarvedPumpkinBlock.java -@@ -67,7 +_,7 @@ +@@ -67,7 +67,7 @@ public class CarvedPumpkinBlock extends HorizontalDirectionalBlock { if (blockPatternMatch != null) { SnowGolem snowGolem = EntityType.SNOW_GOLEM.create(level, EntitySpawnReason.TRIGGERED); if (snowGolem != null) { @@ -9,7 +17,7 @@ return; } } -@@ -77,7 +_,7 @@ +@@ -77,7 +77,7 @@ public class CarvedPumpkinBlock extends HorizontalDirectionalBlock { IronGolem ironGolem = EntityType.IRON_GOLEM.create(level, EntitySpawnReason.TRIGGERED); if (ironGolem != null) { ironGolem.setPlayerCreated(true); @@ -18,7 +26,7 @@ return; } } -@@ -86,7 +_,7 @@ +@@ -86,7 +86,7 @@ public class CarvedPumpkinBlock extends HorizontalDirectionalBlock { if (blockPatternMatch2 != null) { CopperGolem copperGolem = EntityType.COPPER_GOLEM.create(level, EntitySpawnReason.TRIGGERED); if (copperGolem != null) { @@ -27,7 +35,7 @@ if (!copperGolem.valid) return; // Paper - entityspawnevent - entity was not added to the world so prevent world mutation this.replaceCopperBlockWithChest(level, blockPatternMatch2); copperGolem.spawn(this.getWeatherStateFromPattern(blockPatternMatch2)); -@@ -105,7 +_,20 @@ +@@ -105,7 +105,20 @@ public class CarvedPumpkinBlock extends HorizontalDirectionalBlock { .getAge(); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CauldronBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CauldronBlock.java.patch similarity index 60% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CauldronBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CauldronBlock.java.patch index 6ead2196b..bb22bb26d 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CauldronBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CauldronBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CauldronBlock.java b/net/minecraft/world/level/block/CauldronBlock.java +index 523a769ce8f73b2f216d0768ab8f2f9f1bfa949d..703c15dfc3dd0b209502c0a0b75d714318e608a8 100644 --- a/net/minecraft/world/level/block/CauldronBlock.java +++ b/net/minecraft/world/level/block/CauldronBlock.java -@@ -32,8 +_,8 @@ +@@ -32,8 +32,8 @@ public class CauldronBlock extends AbstractCauldronBlock { protected static boolean shouldHandlePrecipitation(Level level, Biome.Precipitation precipitation) { return precipitation == Biome.Precipitation.RAIN diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CaveVinesBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CaveVinesBlock.java.patch similarity index 53% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CaveVinesBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CaveVinesBlock.java.patch index a024a56e2..167d58da1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CaveVinesBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CaveVinesBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CaveVinesBlock.java b/net/minecraft/world/level/block/CaveVinesBlock.java +index f4a4dc14012c110e58b1c9272d80d4b89394d090..da85ec2b88b200fd28d89d9ae35c7319d4b028b7 100644 --- a/net/minecraft/world/level/block/CaveVinesBlock.java +++ b/net/minecraft/world/level/block/CaveVinesBlock.java -@@ -92,4 +_,11 @@ +@@ -92,4 +92,11 @@ public class CaveVinesBlock extends GrowingPlantHeadBlock implements CaveVines { public void performBonemeal(ServerLevel level, RandomSource random, BlockPos pos, BlockState state) { level.setBlock(pos, state.setValue(BERRIES, true), Block.UPDATE_CLIENTS); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ChangeOverTimeBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ChangeOverTimeBlock.java.patch similarity index 52% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ChangeOverTimeBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ChangeOverTimeBlock.java.patch index 54d2fa463..f09b60208 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ChangeOverTimeBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ChangeOverTimeBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/ChangeOverTimeBlock.java b/net/minecraft/world/level/block/ChangeOverTimeBlock.java +index ea5a987b9925a7ff0cbc65a9cd98114770377442..d03e234fe20b33ebf7b6af6fb1b1738a6ff48a99 100644 --- a/net/minecraft/world/level/block/ChangeOverTimeBlock.java +++ b/net/minecraft/world/level/block/ChangeOverTimeBlock.java -@@ -51,7 +_,7 @@ +@@ -51,7 +51,7 @@ public interface ChangeOverTimeBlock> { } float f = (float)(i1 + 1) / (i1 + i + 1); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ChestBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ChestBlock.java.patch similarity index 50% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ChestBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ChestBlock.java.patch index 7da971fbb..aea974c33 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ChestBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ChestBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/ChestBlock.java b/net/minecraft/world/level/block/ChestBlock.java +index fa2dce759419f62825000718361f47c6f208cdb2..6cd7150c23572b1ad627cabe406ebd9015a89c31 100644 --- a/net/minecraft/world/level/block/ChestBlock.java +++ b/net/minecraft/world/level/block/ChestBlock.java -@@ -370,6 +_,7 @@ +@@ -370,6 +370,7 @@ public class ChestBlock extends AbstractChestBlock implements } public static boolean isBlockedChestByBlock(BlockGetter level, BlockPos pos) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ComposterBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ComposterBlock.java.patch similarity index 82% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ComposterBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ComposterBlock.java.patch index f2b522991..c57f7d05c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ComposterBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ComposterBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/ComposterBlock.java b/net/minecraft/world/level/block/ComposterBlock.java +index 429e833ffe7c89d7b0ca7515dbd82ffc1ce8d60d..f57feed60fdd99cc652be67ed2ada7d761167deb 100644 --- a/net/minecraft/world/level/block/ComposterBlock.java +++ b/net/minecraft/world/level/block/ComposterBlock.java -@@ -250,23 +_,52 @@ +@@ -250,17 +250,27 @@ public class ComposterBlock extends Block implements WorldlyContainerHolder { ) { int levelValue = state.getValue(LEVEL); if (levelValue < 8 && COMPOSTABLES.containsKey(stack.getItem())) { @@ -14,12 +22,11 @@ - level.levelEvent(LevelEvent.COMPOSTER_FILL, pos, state != blockState ? 1 : 0); - player.awardStat(Stats.ITEM_USED.get(stack.getItem())); - stack.consume(1, player); -- } + // Purpur start - sneak to bulk process composter + BlockState newState = process(levelValue, player, state, level, pos, stack); + if (newState == null) { + return InteractionResult.PASS; -+ } + } + if (level.purpurConfig.composterBulkProcess && player.isShiftKeyDown() && newState != state) { + BlockState oldState; + int oldCount, newCount, oldLevel, newLevel; @@ -39,10 +46,10 @@ return InteractionResult.SUCCESS; } else { - return super.useItemOn(stack, state, level, pos, player, hand, hitResult); +@@ -268,6 +278,25 @@ public class ComposterBlock extends Block implements WorldlyContainerHolder { } } -+ + + // Purpur start - sneak to bulk process composter + private static @Nullable BlockState process(int levelValue, Player player, BlockState state, Level level, BlockPos pos, ItemStack stack) { + if (levelValue < 7 && !level.isClientSide()) { @@ -61,6 +68,7 @@ + return state; + } + // Purpur end - Sneak to bulk process composter - ++ @Override protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hitResult) { + int levelValue = state.getValue(LEVEL); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CoralBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CoralBlock.java.patch similarity index 54% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CoralBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CoralBlock.java.patch index 690cfe031..f2e14b899 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CoralBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CoralBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CoralBlock.java b/net/minecraft/world/level/block/CoralBlock.java +index 1c86b4fce7392851b2e33914fb588775f90f766b..337985a30767aaac573fce6301b2690473f8305a 100644 --- a/net/minecraft/world/level/block/CoralBlock.java +++ b/net/minecraft/world/level/block/CoralBlock.java -@@ -65,6 +_,7 @@ +@@ -65,6 +65,7 @@ public class CoralBlock extends Block { } protected boolean scanForWater(BlockGetter level, BlockPos pos) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CropBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CropBlock.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CropBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CropBlock.java.patch index 1db271458..fd5704f4e 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/CropBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/CropBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/CropBlock.java b/net/minecraft/world/level/block/CropBlock.java +index 1cf40fafd822d976ef4822335c60d8017659916f..3983a5fa08f748ed26caa1d16e194676baa8028e 100644 --- a/net/minecraft/world/level/block/CropBlock.java +++ b/net/minecraft/world/level/block/CropBlock.java -@@ -169,7 +_,7 @@ +@@ -169,7 +169,7 @@ public class CropBlock extends VegetationBlock implements BonemealableBlock { @Override protected void entityInside(BlockState state, Level level, BlockPos pos, Entity entity, InsideBlockEffectApplier effectApplier, boolean pastEdges) { if (!new io.papermc.paper.event.entity.EntityInsideBlockEvent(entity.getBukkitEntity(), org.bukkit.craftbukkit.block.CraftBlock.at(level, pos)).callEvent()) { return; } // Paper - Add EntityInsideBlockEvent @@ -9,7 +17,7 @@ serverLevel.destroyBlock(pos, true, entity); } -@@ -204,4 +_,15 @@ +@@ -204,4 +204,15 @@ public class CropBlock extends VegetationBlock implements BonemealableBlock { protected void createBlockStateDefinition(StateDefinition.Builder builder) { builder.add(AGE); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/DoorBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/DoorBlock.java.patch similarity index 75% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/DoorBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/DoorBlock.java.patch index 87a008eb0..161b2691c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/DoorBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/DoorBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/DoorBlock.java b/net/minecraft/world/level/block/DoorBlock.java +index d4239343b15203caafa9da762cbce206cc1d9b33..523bab9194e6fa5145fbf31f0bee9a4792ad6315 100644 --- a/net/minecraft/world/level/block/DoorBlock.java +++ b/net/minecraft/world/level/block/DoorBlock.java -@@ -198,6 +_,7 @@ +@@ -198,6 +198,7 @@ public class DoorBlock extends Block { protected InteractionResult useWithoutItem(BlockState state, Level level, BlockPos pos, Player player, BlockHitResult hitResult) { if (!this.type.canOpenByHand()) { return InteractionResult.PASS; @@ -8,7 +16,7 @@ } else { state = state.cycle(OPEN); level.setBlock(pos, state, Block.UPDATE_CLIENTS | Block.UPDATE_IMMEDIATE); -@@ -286,4 +_,18 @@ +@@ -286,4 +287,18 @@ public class DoorBlock extends Block { public static boolean isWoodenDoor(BlockState state) { return state.getBlock() instanceof DoorBlock doorBlock && doorBlock.type().canOpenByHand(); } diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/DragonEggBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/DragonEggBlock.java.patch new file mode 100644 index 000000000..d6ece93cf --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/DragonEggBlock.java.patch @@ -0,0 +1,18 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/DragonEggBlock.java b/net/minecraft/world/level/block/DragonEggBlock.java +index 52160294e39e3f0f471087a1fcb6e46763862954..c38fbff78f1acef9328c91d7b88d5db1971c9474 100644 +--- a/net/minecraft/world/level/block/DragonEggBlock.java ++++ b/net/minecraft/world/level/block/DragonEggBlock.java +@@ -46,6 +46,7 @@ public class DragonEggBlock extends FallingBlock { + } + + private void teleport(BlockState state, Level level, BlockPos pos) { ++ if (!level.purpurConfig.dragonEggTeleport) return; // Purpur - Option to disable dragon egg teleporting + WorldBorder worldBorder = level.getWorldBorder(); + + for (int i = 0; i < 1000; i++) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/FarmBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/FarmBlock.java.patch similarity index 83% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/FarmBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/FarmBlock.java.patch index 6ee873e25..53771adbc 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/FarmBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/FarmBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/FarmBlock.java b/net/minecraft/world/level/block/FarmBlock.java +index da822a89e134e98696308315799d872944e7712f..75b38812b538e0938bbbde62427fa9fd23d372a1 100644 --- a/net/minecraft/world/level/block/FarmBlock.java +++ b/net/minecraft/world/level/block/FarmBlock.java -@@ -112,7 +_,7 @@ +@@ -112,7 +112,7 @@ public class FarmBlock extends Block { public void fallOn(Level level, BlockState state, BlockPos pos, Entity entity, double fallDistance) { super.fallOn(level, state, pos, entity, fallDistance); // CraftBukkit - moved here as game rules / events shouldn't affect fall damage. if (level instanceof ServerLevel serverLevel @@ -9,7 +17,7 @@ && entity instanceof LivingEntity && (entity instanceof Player || serverLevel.getGameRules().get(GameRules.MOB_GRIEFING)) && entity.getBbWidth() * entity.getBbWidth() * entity.getBbHeight() > 0.512F) { -@@ -129,6 +_,28 @@ +@@ -129,6 +129,28 @@ public class FarmBlock extends Block { return; } @@ -38,7 +46,7 @@ if (!org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(entity, pos, Blocks.DIRT.defaultBlockState())) { return; } -@@ -177,7 +_,7 @@ +@@ -177,7 +199,7 @@ public class FarmBlock extends Block { } } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/GrowingPlantHeadBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/GrowingPlantHeadBlock.java.patch similarity index 77% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/GrowingPlantHeadBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/GrowingPlantHeadBlock.java.patch index 7dd50302a..259c85929 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/GrowingPlantHeadBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/GrowingPlantHeadBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/GrowingPlantHeadBlock.java b/net/minecraft/world/level/block/GrowingPlantHeadBlock.java +index bac7f990282fd7c676c2f8c40d7fd87badb1e284..c1b22036bd3da2dc0b59551cf8e5280d055c0951 100644 --- a/net/minecraft/world/level/block/GrowingPlantHeadBlock.java +++ b/net/minecraft/world/level/block/GrowingPlantHeadBlock.java -@@ -34,12 +_,12 @@ +@@ -34,12 +34,12 @@ public abstract class GrowingPlantHeadBlock extends GrowingPlantBlock implements @Override public BlockState getStateForPlacement(RandomSource random) { @@ -15,7 +23,7 @@ } @Override -@@ -55,7 +_,7 @@ +@@ -55,7 +55,7 @@ public abstract class GrowingPlantHeadBlock extends GrowingPlantBlock implements } else if (this == Blocks.CAVE_VINES) { modifier = level.spigotConfig.caveVinesModifier; } @@ -24,7 +32,7 @@ // Spigot end BlockPos blockPos = pos.relative(this.growthDirection); if (this.canGrowInto(level.getBlockState(blockPos))) { -@@ -75,11 +_,11 @@ +@@ -75,11 +75,11 @@ public abstract class GrowingPlantHeadBlock extends GrowingPlantBlock implements } public BlockState getMaxAgeState(BlockState state) { @@ -38,7 +46,7 @@ } protected BlockState updateBodyAfterConvertedFromHead(BlockState head, BlockState body) { -@@ -137,13 +_,13 @@ +@@ -137,13 +137,13 @@ public abstract class GrowingPlantHeadBlock extends GrowingPlantBlock implements @Override public void performBonemeal(ServerLevel level, RandomSource random, BlockPos pos, BlockState state) { BlockPos blockPos = pos.relative(this.growthDirection); @@ -54,7 +62,7 @@ } } -@@ -155,4 +_,6 @@ +@@ -155,4 +155,6 @@ public abstract class GrowingPlantHeadBlock extends GrowingPlantBlock implements protected GrowingPlantHeadBlock getHeadBlock() { return this; } diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/HayBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/HayBlock.java.patch new file mode 100644 index 000000000..986d33e9b --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/HayBlock.java.patch @@ -0,0 +1,18 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/HayBlock.java b/net/minecraft/world/level/block/HayBlock.java +index cdde0a25e0a499d7575c00796143a033feb1f22f..999ecf16180b0a862cf8527ce532acf725ba869a 100644 +--- a/net/minecraft/world/level/block/HayBlock.java ++++ b/net/minecraft/world/level/block/HayBlock.java +@@ -23,6 +23,6 @@ public class HayBlock extends RotatedPillarBlock { + + @Override + public void fallOn(Level level, BlockState state, BlockPos pos, Entity entity, double fallDistance) { +- entity.causeFallDamage(fallDistance, 0.2F, level.damageSources().fall()); ++ super.fallOn(level, state, pos, entity, fallDistance); // Purpur - Configurable block fall damage modifiers + } + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/IceBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/IceBlock.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/IceBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/IceBlock.java.patch index 40b35e6d5..0fd0c5b4a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/IceBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/IceBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/IceBlock.java b/net/minecraft/world/level/block/IceBlock.java +index f29af8c07b80192bf8518ea6b356a52cda94b0f1..759671ad9bab4a00dcf0e970579c2be5c957e2ab 100644 --- a/net/minecraft/world/level/block/IceBlock.java +++ b/net/minecraft/world/level/block/IceBlock.java -@@ -41,7 +_,7 @@ +@@ -41,7 +41,7 @@ public class IceBlock extends HalfTransparentBlock { public void afterDestroy(Level level, BlockPos pos, ItemStack stack) { // Paper end - Improve Block#breakNaturally API if (!EnchantmentHelper.hasTag(stack, EnchantmentTags.PREVENTS_ICE_MELTING)) { @@ -9,7 +17,7 @@ level.removeBlock(pos, false); return; } -@@ -62,7 +_,7 @@ +@@ -62,7 +62,7 @@ public class IceBlock extends HalfTransparentBlock { protected void melt(BlockState state, Level level, BlockPos pos) { // Paper start - call BlockFadeEvent diff --git a/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/KelpBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/KelpBlock.java.patch new file mode 100644 index 000000000..1d8fcff87 --- /dev/null +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/KelpBlock.java.patch @@ -0,0 +1,22 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/KelpBlock.java b/net/minecraft/world/level/block/KelpBlock.java +index bf040f13b9c76056ec8cbfe9e9c2481d68c9c772..0c9238df402d493f58066735406ee174bffad5b1 100644 +--- a/net/minecraft/world/level/block/KelpBlock.java ++++ b/net/minecraft/world/level/block/KelpBlock.java +@@ -71,4 +71,11 @@ public class KelpBlock extends GrowingPlantHeadBlock implements LiquidBlockConta + protected FluidState getFluidState(BlockState state) { + return Fluids.WATER.getSource(false); + } ++ ++ // Purpur start - kelp vines configurable max growth age ++ @Override ++ public int getMaxGrowthAge() { ++ return org.purpurmc.purpur.PurpurConfig.kelpMaxGrowthAge; ++ } ++ // Purpur end - kelp vines configurable max growth age + } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/LiquidBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/LiquidBlock.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/LiquidBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/LiquidBlock.java.patch index 51480df96..4c39c6cad 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/LiquidBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/LiquidBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/LiquidBlock.java b/net/minecraft/world/level/block/LiquidBlock.java +index 1f62dcf2709d430e996790750a691b12938eb09a..77d1ecfd0f866f3fa5cd8fdf88eb4c147ba07d81 100644 --- a/net/minecraft/world/level/block/LiquidBlock.java +++ b/net/minecraft/world/level/block/LiquidBlock.java -@@ -138,7 +_,7 @@ +@@ -138,7 +138,7 @@ public class LiquidBlock extends Block implements BucketPickup { @Override protected void onPlace(BlockState state, Level level, BlockPos pos, BlockState oldState, boolean movedByPiston) { @@ -9,7 +17,7 @@ level.scheduleTick(pos, state.getFluidState().getType(), this.getFlowSpeed(level, pos)); // Paper - Configurable speed for water flowing over lava } } -@@ -175,7 +_,7 @@ +@@ -175,7 +175,7 @@ public class LiquidBlock extends Block implements BucketPickup { BlockState neighborState, RandomSource random ) { @@ -18,7 +26,7 @@ scheduledTickAccess.scheduleTick(pos, state.getFluidState().getType(), this.fluid.getTickDelay(level)); } -@@ -184,7 +_,7 @@ +@@ -184,7 +184,7 @@ public class LiquidBlock extends Block implements BucketPickup { @Override protected void neighborChanged(BlockState state, Level level, BlockPos pos, Block neighborBlock, @Nullable Orientation orientation, boolean movedByPiston) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/MagmaBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/MagmaBlock.java.patch similarity index 57% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/MagmaBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/MagmaBlock.java.patch index f9d8ca928..fd1ee401d 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/MagmaBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/MagmaBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/MagmaBlock.java b/net/minecraft/world/level/block/MagmaBlock.java +index 71344cb2580fb9a3cd523e25fb1a245711e275dd..bec06566342663479ee8342b7e5ceec61758c448 100644 --- a/net/minecraft/world/level/block/MagmaBlock.java +++ b/net/minecraft/world/level/block/MagmaBlock.java -@@ -28,7 +_,7 @@ +@@ -28,7 +28,7 @@ public class MagmaBlock extends Block { @Override public void stepOn(Level level, BlockPos pos, BlockState state, Entity entity) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NetherPortalBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NetherPortalBlock.java.patch similarity index 69% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NetherPortalBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NetherPortalBlock.java.patch index c6e751612..da4b6004b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NetherPortalBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NetherPortalBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/NetherPortalBlock.java b/net/minecraft/world/level/block/NetherPortalBlock.java +index 653b72855197733b33e310b0ccd4fbf04e22e95f..860e0c3ab118d8c6863936b9c2603bf6a278ca99 100644 --- a/net/minecraft/world/level/block/NetherPortalBlock.java +++ b/net/minecraft/world/level/block/NetherPortalBlock.java -@@ -68,7 +_,7 @@ +@@ -68,7 +68,7 @@ public class NetherPortalBlock extends Block implements Portal { protected void randomTick(BlockState state, ServerLevel level, BlockPos pos, RandomSource random) { if (level.spigotConfig.enableZombiePigmenPortalSpawns && level.isSpawningMonsters() // Spigot && level.environmentAttributes().getValue(EnvironmentAttributes.NETHER_PORTAL_SPAWNS_PIGLINS, pos) @@ -9,7 +17,7 @@ && level.anyPlayerCloseEnoughForSpawning(pos)) { while (level.getBlockState(pos).is(this)) { pos = pos.below(); -@@ -126,7 +_,7 @@ +@@ -126,7 +126,7 @@ public class NetherPortalBlock extends Block implements Portal { @Override public int getPortalTransitionTime(ServerLevel level, Entity entity) { return entity instanceof Player player diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NetherWartBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NetherWartBlock.java.patch similarity index 81% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NetherWartBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NetherWartBlock.java.patch index 362dae20a..9d6e52fe9 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NetherWartBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NetherWartBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/NetherWartBlock.java b/net/minecraft/world/level/block/NetherWartBlock.java +index 40f90b2822cc1e6ddb759f38098e7dc49b53b8b8..5676fc8ff8ec4edb4d83c5a0e6529af3b5a18dc6 100644 --- a/net/minecraft/world/level/block/NetherWartBlock.java +++ b/net/minecraft/world/level/block/NetherWartBlock.java -@@ -16,7 +_,7 @@ +@@ -16,7 +16,7 @@ import net.minecraft.world.level.block.state.properties.IntegerProperty; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; @@ -9,7 +17,7 @@ public static final MapCodec CODEC = simpleCodec(NetherWartBlock::new); public static final int MAX_AGE = 3; public static final IntegerProperty AGE = BlockStateProperties.AGE_3; -@@ -65,4 +_,34 @@ +@@ -65,4 +65,34 @@ public class NetherWartBlock extends VegetationBlock { protected void createBlockStateDefinition(StateDefinition.Builder builder) { builder.add(AGE); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NoteBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NoteBlock.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NoteBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NoteBlock.java.patch index 42c3d0b22..a13324c12 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/NoteBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/NoteBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/NoteBlock.java b/net/minecraft/world/level/block/NoteBlock.java +index 1335e4e9953444417325bbfd9655d5b9bb004ff8..95d608ae93f0a5881cb4b789f6463268e09843b4 100644 --- a/net/minecraft/world/level/block/NoteBlock.java +++ b/net/minecraft/world/level/block/NoteBlock.java -@@ -101,7 +_,7 @@ +@@ -101,7 +101,7 @@ public class NoteBlock extends Block { } private void playNote(@Nullable Entity entity, BlockState state, Level level, BlockPos pos) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ObserverBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ObserverBlock.java.patch similarity index 56% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ObserverBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ObserverBlock.java.patch index 73f23d62d..a0da370d6 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/ObserverBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/ObserverBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/ObserverBlock.java b/net/minecraft/world/level/block/ObserverBlock.java +index 3c12d8e23f20b666b0005e597ba2e803c02d5d78..df0a900c249f0fd778287d055a5ad92787c7ceb5 100644 --- a/net/minecraft/world/level/block/ObserverBlock.java +++ b/net/minecraft/world/level/block/ObserverBlock.java -@@ -81,6 +_,7 @@ +@@ -81,6 +81,7 @@ public class ObserverBlock extends DirectionalBlock { RandomSource random ) { if (state.getValue(FACING) == direction && !state.getValue(POWERED)) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/PointedDripstoneBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/PointedDripstoneBlock.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/PointedDripstoneBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/PointedDripstoneBlock.java.patch index 6843415d9..ee06dd849 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/PointedDripstoneBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/PointedDripstoneBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/PointedDripstoneBlock.java b/net/minecraft/world/level/block/PointedDripstoneBlock.java +index 1510827a9d402d78cf5a6ba0a973bb7b88668aac..e9ec6c5f2dd4e0b2e2bd8f5c3e40ddc7af22fdb8 100644 --- a/net/minecraft/world/level/block/PointedDripstoneBlock.java +++ b/net/minecraft/world/level/block/PointedDripstoneBlock.java -@@ -194,20 +_,20 @@ +@@ -194,20 +194,20 @@ public class PointedDripstoneBlock extends Block implements Fallable, SimpleWate @VisibleForTesting public static void maybeTransferFluid(BlockState state, ServerLevel level, BlockPos pos, float randChance) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/PoweredRailBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/PoweredRailBlock.java.patch similarity index 51% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/PoweredRailBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/PoweredRailBlock.java.patch index f6c12cc4c..9d0e7241b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/PoweredRailBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/PoweredRailBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/PoweredRailBlock.java b/net/minecraft/world/level/block/PoweredRailBlock.java +index 1d1a2e183624ebae22b966ab59a174e941f139c0..e5b1b5ef643e5bfacd79120f97f15ad8beb8c7ee 100644 --- a/net/minecraft/world/level/block/PoweredRailBlock.java +++ b/net/minecraft/world/level/block/PoweredRailBlock.java -@@ -28,7 +_,7 @@ +@@ -28,7 +28,7 @@ public class PoweredRailBlock extends BaseRailBlock { } protected boolean findPoweredRailSignal(Level level, BlockPos pos, BlockState state, boolean searchForward, int recursionCount) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/RespawnAnchorBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/RespawnAnchorBlock.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/RespawnAnchorBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/RespawnAnchorBlock.java.patch index fd70f38b5..d16f08776 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/RespawnAnchorBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/RespawnAnchorBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/RespawnAnchorBlock.java b/net/minecraft/world/level/block/RespawnAnchorBlock.java +index e90651ae6ab072c9fa9c179ae56329e0d816c77b..2b96781a2aaaef3837e617fa982c0d35862d4f39 100644 --- a/net/minecraft/world/level/block/RespawnAnchorBlock.java +++ b/net/minecraft/world/level/block/RespawnAnchorBlock.java -@@ -166,7 +_,7 @@ +@@ -166,7 +166,7 @@ public class RespawnAnchorBlock extends Block { }; Vec3 center = pos2.getCenter(); level.explode( diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SculkShriekerBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SculkShriekerBlock.java.patch similarity index 57% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SculkShriekerBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SculkShriekerBlock.java.patch index 4a529408c..ba6376ac6 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SculkShriekerBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SculkShriekerBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/SculkShriekerBlock.java b/net/minecraft/world/level/block/SculkShriekerBlock.java +index 2815fb48530de3a2f9ef0f472a0fd0a2c32140b6..39f5d04a2795d5e62a961c9fa5a23b79d9d81fa2 100644 --- a/net/minecraft/world/level/block/SculkShriekerBlock.java +++ b/net/minecraft/world/level/block/SculkShriekerBlock.java -@@ -116,7 +_,7 @@ +@@ -116,7 +116,7 @@ public class SculkShriekerBlock extends BaseEntityBlock implements SimpleWaterlo @Override public @Nullable BlockState getStateForPlacement(BlockPlaceContext context) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SlabBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SlabBlock.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SlabBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SlabBlock.java.patch index d26a15acf..34a7fd948 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SlabBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SlabBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/SlabBlock.java b/net/minecraft/world/level/block/SlabBlock.java +index 6d7b63e9afd60ef7cf5332077b13941914a32109..20a7a75c5fb9171c0f8d91b09a2d2865b196ce97 100644 --- a/net/minecraft/world/level/block/SlabBlock.java +++ b/net/minecraft/world/level/block/SlabBlock.java -@@ -143,4 +_,25 @@ +@@ -143,4 +143,25 @@ public class SlabBlock extends Block implements SimpleWaterloggedBlock { return false; } } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SnowLayerBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SnowLayerBlock.java.patch similarity index 58% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SnowLayerBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SnowLayerBlock.java.patch index a23c4bf07..4d8d83bca 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SnowLayerBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SnowLayerBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/SnowLayerBlock.java b/net/minecraft/world/level/block/SnowLayerBlock.java +index de7e600ca1348b61990aaf4ffdd91c6c3ec13cf6..9967feffac868e824edf6be1b008fcd3530f3058 100644 --- a/net/minecraft/world/level/block/SnowLayerBlock.java +++ b/net/minecraft/world/level/block/SnowLayerBlock.java -@@ -76,6 +_,7 @@ +@@ -76,6 +76,7 @@ public class SnowLayerBlock extends Block { @Override protected boolean canSurvive(BlockState state, LevelReader level, BlockPos pos) { BlockState blockState = level.getBlockState(pos.below()); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SpawnerBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SpawnerBlock.java.patch similarity index 90% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SpawnerBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SpawnerBlock.java.patch index 80b4881ec..7783ee91c 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SpawnerBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SpawnerBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/SpawnerBlock.java b/net/minecraft/world/level/block/SpawnerBlock.java +index 119ed91439909d44d36c3a9822d2b11525a22f00..fbcb5183d188bc1caa74ebbbb475d15a6d19dc61 100644 --- a/net/minecraft/world/level/block/SpawnerBlock.java +++ b/net/minecraft/world/level/block/SpawnerBlock.java -@@ -14,6 +_,7 @@ +@@ -14,6 +14,7 @@ import net.minecraft.world.level.block.state.BlockState; import org.jspecify.annotations.Nullable; public class SpawnerBlock extends BaseEntityBlock { @@ -8,7 +16,7 @@ public static final MapCodec CODEC = simpleCodec(SpawnerBlock::new); @Override -@@ -37,6 +_,62 @@ +@@ -37,6 +38,62 @@ public class SpawnerBlock extends BaseEntityBlock { ); } @@ -71,7 +79,7 @@ @Override protected void spawnAfterBreak(BlockState state, ServerLevel level, BlockPos pos, ItemStack stack, boolean dropExperience) { super.spawnAfterBreak(state, level, pos, stack, dropExperience); -@@ -45,6 +_,7 @@ +@@ -45,6 +102,7 @@ public class SpawnerBlock extends BaseEntityBlock { @Override public int getExpDrop(BlockState state, ServerLevel level, BlockPos pos, ItemStack stack, boolean dropExperience) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SpongeBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SpongeBlock.java.patch similarity index 80% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SpongeBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SpongeBlock.java.patch index 6d6da3ef5..0005471dd 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SpongeBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SpongeBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/SpongeBlock.java b/net/minecraft/world/level/block/SpongeBlock.java +index 298e51da2da64fdaa860108cc34e59d214b5f9a7..0ce317ad5f3f7a08914d04ace2259f7fdb6f906e 100644 --- a/net/minecraft/world/level/block/SpongeBlock.java +++ b/net/minecraft/world/level/block/SpongeBlock.java -@@ -53,8 +_,8 @@ +@@ -53,8 +53,8 @@ public class SpongeBlock extends Block { org.bukkit.craftbukkit.util.BlockStateListPopulator blockList = new org.bukkit.craftbukkit.util.BlockStateListPopulator(level); // CraftBukkit - Use BlockStateListPopulator BlockPos.breadthFirstTraversal( pos, @@ -11,7 +19,7 @@ (validPos, queueAdder) -> { for (Direction direction : ALL_DIRECTIONS) { queueAdder.accept(validPos.relative(direction)); -@@ -68,7 +_,7 @@ +@@ -68,7 +68,7 @@ public class SpongeBlock extends Block { BlockState blockState = blockList.getBlockState(blockPos); FluidState fluidState = blockList.getFluidState(blockPos); // CraftBukkit end @@ -20,7 +28,7 @@ return BlockPos.TraversalNodeStatus.SKIP; } else if (blockState.getBlock() instanceof BucketPickup bucketPickup && !bucketPickup.pickupBlock(null, blockList, blockPos, blockState).isEmpty()) { // CraftBukkit -@@ -76,6 +_,10 @@ +@@ -76,6 +76,10 @@ public class SpongeBlock extends Block { } else { if (blockState.getBlock() instanceof LiquidBlock) { blockList.setBlock(blockPos, Blocks.AIR.defaultBlockState(), Block.UPDATE_ALL); // CraftBukkit diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/StonecutterBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/StonecutterBlock.java.patch similarity index 63% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/StonecutterBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/StonecutterBlock.java.patch index 7d7bdf207..b82b2fedc 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/StonecutterBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/StonecutterBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/StonecutterBlock.java b/net/minecraft/world/level/block/StonecutterBlock.java +index 19657ae67244224bc77b0a2620c097afa97dddf6..6ab51fcf42b9ca7ab46ea66498eea14250fc7444 100644 --- a/net/minecraft/world/level/block/StonecutterBlock.java +++ b/net/minecraft/world/level/block/StonecutterBlock.java -@@ -92,4 +_,14 @@ +@@ -92,4 +92,14 @@ public class StonecutterBlock extends Block { protected boolean isPathfindable(BlockState state, PathComputationType pathComputationType) { return false; } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SugarCaneBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SugarCaneBlock.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SugarCaneBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SugarCaneBlock.java.patch index f388f13ce..17191818f 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/SugarCaneBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/SugarCaneBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/SugarCaneBlock.java b/net/minecraft/world/level/block/SugarCaneBlock.java +index 4437fd5724e094e8d2edb97ca9bf494ef57f5b79..9e5cf7766848540a5ae2c38522e865a0b4601d00 100644 --- a/net/minecraft/world/level/block/SugarCaneBlock.java +++ b/net/minecraft/world/level/block/SugarCaneBlock.java -@@ -19,7 +_,7 @@ +@@ -19,7 +19,7 @@ import net.minecraft.world.level.material.FluidState; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; @@ -9,7 +17,7 @@ public static final MapCodec CODEC = simpleCodec(SugarCaneBlock::new); public static final IntegerProperty AGE = BlockStateProperties.AGE_15; private static final VoxelShape SHAPE = Block.column(12.0, 0.0, 16.0); -@@ -112,4 +_,34 @@ +@@ -112,4 +112,34 @@ public class SugarCaneBlock extends Block { protected void createBlockStateDefinition(StateDefinition.Builder builder) { builder.add(AGE); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/TurtleEggBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/TurtleEggBlock.java.patch similarity index 82% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/TurtleEggBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/TurtleEggBlock.java.patch index 1c699e149..4209b5ff9 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/TurtleEggBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/TurtleEggBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/TurtleEggBlock.java b/net/minecraft/world/level/block/TurtleEggBlock.java +index 732f244b0265477434b26a47ddedab10f49b06a3..912c36c2e814cf763b4fa01d149979be9ef460de 100644 --- a/net/minecraft/world/level/block/TurtleEggBlock.java +++ b/net/minecraft/world/level/block/TurtleEggBlock.java -@@ -156,7 +_,7 @@ +@@ -156,7 +156,7 @@ public class TurtleEggBlock extends Block { } private boolean shouldUpdateHatchLevel(Level level, BlockPos pos) { @@ -9,7 +17,7 @@ return value > 0.0F && level.random.nextFloat() < value; } -@@ -189,9 +_,32 @@ +@@ -189,9 +189,32 @@ public class TurtleEggBlock extends Block { } private boolean canDestroyEgg(ServerLevel level, Entity entity) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/TwistingVinesBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/TwistingVinesBlock.java.patch similarity index 50% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/TwistingVinesBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/TwistingVinesBlock.java.patch index 89633d8f7..efe10853b 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/TwistingVinesBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/TwistingVinesBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/TwistingVinesBlock.java b/net/minecraft/world/level/block/TwistingVinesBlock.java +index afb77747ea6966c435aca4b667bfbbc909f52232..361aaca76ae0375782310af0e03241625f08f7bd 100644 --- a/net/minecraft/world/level/block/TwistingVinesBlock.java +++ b/net/minecraft/world/level/block/TwistingVinesBlock.java -@@ -34,4 +_,11 @@ +@@ -34,4 +34,11 @@ public class TwistingVinesBlock extends GrowingPlantHeadBlock { protected boolean canGrowInto(BlockState state) { return NetherVines.isValidGrowthState(state); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/VegetationBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/VegetationBlock.java.patch similarity index 78% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/VegetationBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/VegetationBlock.java.patch index af22ad6c3..860c68fc7 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/VegetationBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/VegetationBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/VegetationBlock.java b/net/minecraft/world/level/block/VegetationBlock.java +index 0aa7c1084fd6ed35260469572cdd914d87f3922a..a1b5e815425fccbc601c8062fcc24598512e47dd 100644 --- a/net/minecraft/world/level/block/VegetationBlock.java +++ b/net/minecraft/world/level/block/VegetationBlock.java -@@ -61,4 +_,24 @@ +@@ -61,4 +61,24 @@ public abstract class VegetationBlock extends Block { protected boolean isPathfindable(BlockState state, PathComputationType pathComputationType) { return pathComputationType == PathComputationType.AIR && !this.hasCollision || super.isPathfindable(state, pathComputationType); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/WeepingVinesBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/WeepingVinesBlock.java.patch similarity index 50% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/WeepingVinesBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/WeepingVinesBlock.java.patch index be28707f2..9760066eb 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/WeepingVinesBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/WeepingVinesBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/WeepingVinesBlock.java b/net/minecraft/world/level/block/WeepingVinesBlock.java +index f4ff810cdd4206711312a4fffba18f4b30a5701f..96fb69aaf9ed020a328ff609d49f88ab29a69952 100644 --- a/net/minecraft/world/level/block/WeepingVinesBlock.java +++ b/net/minecraft/world/level/block/WeepingVinesBlock.java -@@ -34,4 +_,11 @@ +@@ -34,4 +34,11 @@ public class WeepingVinesBlock extends GrowingPlantHeadBlock { protected boolean canGrowInto(BlockState state) { return NetherVines.isValidGrowthState(state); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/WitherSkullBlock.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/WitherSkullBlock.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/WitherSkullBlock.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/WitherSkullBlock.java.patch index 3958f6bb5..1e6144bb1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/WitherSkullBlock.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/WitherSkullBlock.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/WitherSkullBlock.java b/net/minecraft/world/level/block/WitherSkullBlock.java +index 24215493601ff724032660178c1261f3c40edd61..dd4d0c2fa77fc62ce2c3dfb2be902dcde3aa9cd7 100644 --- a/net/minecraft/world/level/block/WitherSkullBlock.java +++ b/net/minecraft/world/level/block/WitherSkullBlock.java -@@ -69,6 +_,7 @@ +@@ -69,6 +69,7 @@ public class WitherSkullBlock extends SkullBlock { ); witherBoss.yBodyRot = blockPatternMatch.getForwards().getAxis() == Direction.Axis.X ? 0.0F : 90.0F; witherBoss.makeInvulnerable(); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java.patch index db42baa35..13b36dfd1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java +index 1215ac44fd30dc872f9d319be34e5e08ba880ea2..c0bb687b94f3baa9ffda9c47c69a1d6d244acd4e 100644 --- a/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java +++ b/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java -@@ -187,6 +_,21 @@ +@@ -187,6 +187,21 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit } ItemStack itemStack = furnace.items.get(1); @@ -22,7 +30,7 @@ ItemStack itemStack1 = furnace.items.get(0); boolean flag1 = !itemStack1.isEmpty(); boolean flag2 = !itemStack.isEmpty(); -@@ -270,6 +_,8 @@ +@@ -270,6 +285,8 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit if (flag) { setChanged(level, pos, state); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BeaconBlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BeaconBlockEntity.java.patch similarity index 79% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BeaconBlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BeaconBlockEntity.java.patch index e10f6f20c..2c4971ff4 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BeaconBlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BeaconBlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/BeaconBlockEntity.java b/net/minecraft/world/level/block/entity/BeaconBlockEntity.java +index 0db33d7e1227e914326e9eb3b50338b001872938..cc301cff64e1bf604a1432f6e36be8aa17db53e7 100644 --- a/net/minecraft/world/level/block/entity/BeaconBlockEntity.java +++ b/net/minecraft/world/level/block/entity/BeaconBlockEntity.java -@@ -138,6 +_,16 @@ +@@ -138,6 +138,16 @@ public class BeaconBlockEntity extends BlockEntity implements MenuProvider, Name public double getEffectRange() { if (this.effectRange < 0) { @@ -17,7 +25,7 @@ return this.levels * 10 + 10; } else { return effectRange; -@@ -166,6 +_,7 @@ +@@ -166,6 +176,7 @@ public class BeaconBlockEntity extends BlockEntity implements MenuProvider, Name int y = pos.getY(); int z = pos.getZ(); BlockPos blockPos; @@ -25,7 +33,7 @@ if (blockEntity.lastCheckY < y) { blockPos = pos; blockEntity.checkingBeamSections = Lists.newArrayList(); -@@ -195,11 +_,15 @@ +@@ -195,11 +206,15 @@ public class BeaconBlockEntity extends BlockEntity implements MenuProvider, Name } } } else { @@ -42,7 +50,7 @@ section.increaseHeight(); } -@@ -210,11 +_,11 @@ +@@ -210,11 +225,11 @@ public class BeaconBlockEntity extends BlockEntity implements MenuProvider, Name int i = blockEntity.levels; final int originalLevels = i; // Paper - OBFHELPER if (level.getGameTime() % 80L == 0L) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java.patch similarity index 76% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java.patch index ec70d8701..564459f69 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java b/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java +index c989b7d52e16d93e65afb0f921d514c68b814921..9261bc38258ee80aa6ec2f4bcb27a48c01f84b8f 100644 --- a/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java +++ b/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java -@@ -79,7 +_,7 @@ +@@ -79,7 +79,7 @@ public class BeehiveBlockEntity extends BlockEntity { "leash", "UUID" ); @@ -9,7 +17,7 @@ private static final int MIN_TICKS_BEFORE_REENTERING_HIVE = 400; private static final int MIN_OCCUPATION_TICKS_NECTAR = 2400; public static final int MIN_OCCUPATION_TICKS_NECTARLESS = 600; -@@ -153,11 +_,33 @@ +@@ -153,11 +153,33 @@ public class BeehiveBlockEntity extends BlockEntity { return list; } @@ -43,7 +51,7 @@ // Paper start - Add EntityBlockStorage clearEntities public void clearBees() { this.stored.clear(); -@@ -398,8 +_,8 @@ +@@ -398,8 +420,8 @@ public class BeehiveBlockEntity extends BlockEntity { registrar.register(DebugSubscriptions.BEE_HIVES, () -> DebugHiveInfo.pack(this)); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BlockEntity.java.patch similarity index 71% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BlockEntity.java.patch index a59bbfece..8ee543992 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/BlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/BlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/BlockEntity.java b/net/minecraft/world/level/block/entity/BlockEntity.java +index fb22ebe9758014ebf2aebcda21155f1c4c83fafe..7cbb92c23f0b3d49b8ea6cd66ed4f377dd22ee98 100644 --- a/net/minecraft/world/level/block/entity/BlockEntity.java +++ b/net/minecraft/world/level/block/entity/BlockEntity.java -@@ -105,6 +_,10 @@ +@@ -105,6 +105,10 @@ public abstract class BlockEntity implements DebugValueSource { input.read("PublicBukkitValues", CompoundTag.CODEC) .ifPresent(this.persistentDataContainer::putAll); // Paper end - read persistent data container @@ -11,7 +19,7 @@ } public final void loadWithComponents(ValueInput input) { -@@ -117,6 +_,11 @@ +@@ -117,6 +121,11 @@ public abstract class BlockEntity implements DebugValueSource { } protected void saveAdditional(ValueOutput output) { @@ -23,7 +31,7 @@ } public final CompoundTag saveWithFullMetadata(HolderLookup.Provider registries) { -@@ -402,4 +_,16 @@ +@@ -402,4 +411,16 @@ public abstract class BlockEntity implements DebugValueSource { return this.blockEntity.getNameForReporting() + "@" + this.blockEntity.getBlockPos(); } } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/ConduitBlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/ConduitBlockEntity.java.patch similarity index 84% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/ConduitBlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/ConduitBlockEntity.java.patch index 0b72e4dbb..c0897b51a 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/ConduitBlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/ConduitBlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/ConduitBlockEntity.java b/net/minecraft/world/level/block/entity/ConduitBlockEntity.java +index be4b46d56ca67cb5c0fac5e0bbc9456fb5552d78..816d9a0f7f35b95b369ffbfc02e4d1f306b814c5 100644 --- a/net/minecraft/world/level/block/entity/ConduitBlockEntity.java +++ b/net/minecraft/world/level/block/entity/ConduitBlockEntity.java -@@ -150,7 +_,7 @@ +@@ -150,7 +150,7 @@ public class ConduitBlockEntity extends BlockEntity { BlockPos blockPos1 = pos.offset(i, i1, i2x); BlockState blockState = level.getBlockState(blockPos1); @@ -9,7 +17,7 @@ if (blockState.is(block)) { positions.add(blockPos1); } -@@ -165,13 +_,13 @@ +@@ -165,13 +165,13 @@ public class ConduitBlockEntity extends BlockEntity { private static void applyEffects(Level level, BlockPos pos, List positions) { // CraftBukkit start @@ -26,7 +34,7 @@ // CraftBukkit start return i; } -@@ -201,7 +_,7 @@ +@@ -201,7 +201,7 @@ public class ConduitBlockEntity extends BlockEntity { EntityReference entityReference = updateDestroyTarget(blockEntity.destroyTarget, level, pos, canDestroy); LivingEntity livingEntity = EntityReference.getLivingEntity(entityReference, level); if (damageTarget && livingEntity != null) { // CraftBukkit @@ -35,7 +43,7 @@ level.playSound( null, livingEntity.getX(), livingEntity.getY(), livingEntity.getZ(), SoundEvents.CONDUIT_ATTACK_TARGET, SoundSource.BLOCKS, 1.0F, 1.0F ); -@@ -222,19 +_,25 @@ +@@ -222,19 +222,25 @@ public class ConduitBlockEntity extends BlockEntity { return selectNewTarget(level, pos); } else { LivingEntity livingEntity = EntityReference.getLivingEntity(destroyTarget, level); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java.patch similarity index 73% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java.patch index 175e17e0c..2d24479cd 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java b/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java +index bf3b57723943e5c62071740c66c345c02a7c978f..4c98157666146ec2727f41edc6de9b3cc2d51848 100644 --- a/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java +++ b/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java -@@ -30,6 +_,7 @@ +@@ -30,6 +30,7 @@ public class EnchantingTableBlockEntity extends BlockEntity implements Nameable public float tRot; private static final RandomSource RANDOM = RandomSource.create(); private @Nullable Component name; @@ -8,7 +16,7 @@ public EnchantingTableBlockEntity(BlockPos pos, BlockState blockState) { super(BlockEntityType.ENCHANTING_TABLE, pos, blockState); -@@ -39,12 +_,14 @@ +@@ -39,12 +40,14 @@ public class EnchantingTableBlockEntity extends BlockEntity implements Nameable protected void saveAdditional(ValueOutput output) { super.saveAdditional(output); output.storeNullable("CustomName", ComponentSerialization.CODEC, this.name); @@ -23,7 +31,7 @@ } public static void bookAnimationTick(Level level, BlockPos pos, BlockState state, EnchantingTableBlockEntity enchantingTable) { -@@ -135,4 +_,22 @@ +@@ -135,4 +138,22 @@ public class EnchantingTableBlockEntity extends BlockEntity implements Nameable public void removeComponentsFromTag(ValueOutput output) { output.discard("CustomName"); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/SignBlockEntity.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/SignBlockEntity.java.patch similarity index 88% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/SignBlockEntity.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/SignBlockEntity.java.patch index 9a7b2c116..41877360d 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/entity/SignBlockEntity.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/entity/SignBlockEntity.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/entity/SignBlockEntity.java b/net/minecraft/world/level/block/entity/SignBlockEntity.java +index ce6108ea608463a28f9349010e912f23a7a1cb0c..e93f399c02aa3c47b08e33b8cf2f8b474273c33b 100644 --- a/net/minecraft/world/level/block/entity/SignBlockEntity.java +++ b/net/minecraft/world/level/block/entity/SignBlockEntity.java -@@ -149,16 +_,32 @@ +@@ -149,16 +149,32 @@ public class SignBlockEntity extends BlockEntity { return this.setText(updater.apply(text), isFrontText); } @@ -35,11 +43,10 @@ ); } } -@@ -307,6 +_,27 @@ - // CraftBukkit - this +@@ -308,6 +324,27 @@ public class SignBlockEntity extends BlockEntity { return new CommandSourceStack(commandSource, Vec3.atCenterOf(pos), Vec2.ZERO, level, LevelBasedPermissionSet.GAMEMASTER, string, component, level.getServer(), player); // Paper - Fix commands from signs not firing command events } -+ + + // Purpur start - Signs allow color codes + public ClientboundBlockEntityDataPacket getTranslatedUpdatePacket(boolean filtered, boolean front) { + try (net.minecraft.util.ProblemReporter.ScopedCollector scopedCollector = new net.minecraft.util.ProblemReporter.ScopedCollector(this.problemPath(), LOGGER)) { @@ -60,6 +67,7 @@ + } + } + // Purpur end - Signs allow color codes - ++ @Override public ClientboundBlockEntityDataPacket getUpdatePacket() { + return ClientboundBlockEntityDataPacket.create(this); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/piston/PistonStructureResolver.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/piston/PistonStructureResolver.java.patch similarity index 65% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/piston/PistonStructureResolver.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/piston/PistonStructureResolver.java.patch index bc6293606..77bf2b244 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/block/piston/PistonStructureResolver.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/block/piston/PistonStructureResolver.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/block/piston/PistonStructureResolver.java b/net/minecraft/world/level/block/piston/PistonStructureResolver.java +index ad143a92569f5b420ccaa2089758b2fb3b4ab7c5..5a3660e02bc805e9a35a81b8a61f07b3f20b5ba9 100644 --- a/net/minecraft/world/level/block/piston/PistonStructureResolver.java +++ b/net/minecraft/world/level/block/piston/PistonStructureResolver.java -@@ -81,7 +_,7 @@ +@@ -81,7 +81,7 @@ public class PistonStructureResolver { return true; } else { int i = 1; @@ -9,7 +17,7 @@ return false; } else { while (isSticky(blockState)) { -@@ -95,7 +_,7 @@ +@@ -95,7 +95,7 @@ public class PistonStructureResolver { break; } @@ -18,7 +26,7 @@ return false; } } -@@ -140,7 +_,7 @@ +@@ -140,7 +140,7 @@ public class PistonStructureResolver { return true; } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/chunk/storage/EntityStorage.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/chunk/storage/EntityStorage.java.patch similarity index 56% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/chunk/storage/EntityStorage.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/chunk/storage/EntityStorage.java.patch index accc2318d..aaf8ddfc9 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/chunk/storage/EntityStorage.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/chunk/storage/EntityStorage.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/chunk/storage/EntityStorage.java b/net/minecraft/world/level/chunk/storage/EntityStorage.java +index 2ce9caafffc86fee82abf0a33423a172a8158e37..65afe543c7b974b13e7da8d0c047db9fea6994f5 100644 --- a/net/minecraft/world/level/chunk/storage/EntityStorage.java +++ b/net/minecraft/world/level/chunk/storage/EntityStorage.java -@@ -108,6 +_,7 @@ +@@ -108,6 +108,7 @@ public class EntityStorage implements EntityPersistentStorage { } // Paper end - Entity load/save limit per chunk TagValueOutput tagValueOutput = TagValueOutput.createWithContext(scopedCollector.forChild(entity.problemPath()), entity.registryAccess()); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/chunk/storage/RegionFileStorage.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/chunk/storage/RegionFileStorage.java.patch similarity index 68% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/chunk/storage/RegionFileStorage.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/chunk/storage/RegionFileStorage.java.patch index a49716364..e716154d3 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/chunk/storage/RegionFileStorage.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/chunk/storage/RegionFileStorage.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +index 1e9e061ec694ad64fc2724b83a66dfec7e069a43..e7e71018a4d328832fe44eef595e78265ee720ae 100644 --- a/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -@@ -309,7 +_,7 @@ +@@ -309,7 +309,7 @@ public class RegionFileStorage implements AutoCloseable, ca.spottedleaf.moonrise // Paper start private static void printOversizedLog(String msg, Path file, int x, int z) { diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/levelgen/PhantomSpawner.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/levelgen/PhantomSpawner.java.patch similarity index 85% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/levelgen/PhantomSpawner.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/levelgen/PhantomSpawner.java.patch index 5652d79c6..432d33639 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/levelgen/PhantomSpawner.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/levelgen/PhantomSpawner.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/levelgen/PhantomSpawner.java b/net/minecraft/world/level/levelgen/PhantomSpawner.java +index 135e8cc1b423d5a2a96ede693a306534ea45686b..84b4b68397be1766089783255845471077cc19f3 100644 --- a/net/minecraft/world/level/levelgen/PhantomSpawner.java +++ b/net/minecraft/world/level/levelgen/PhantomSpawner.java -@@ -38,13 +_,13 @@ +@@ -38,13 +38,13 @@ public class PhantomSpawner implements CustomSpawner { int spawnAttemptMaxSeconds = level.paperConfig().entities.behavior.phantomsSpawnAttemptMaxSeconds; this.nextTick += (spawnAttemptMinSeconds + randomSource.nextInt(spawnAttemptMaxSeconds - spawnAttemptMinSeconds + 1)) * 20; // Paper end - Ability to control player's insomnia and phantoms @@ -17,7 +25,7 @@ ServerStatsCounter stats = serverPlayer.getStats(); int i = Mth.clamp(stats.getValue(Stats.CUSTOM.get(Stats.TIME_SINCE_REST)), 1, Integer.MAX_VALUE); int i1 = 24000; -@@ -56,7 +_,7 @@ +@@ -56,7 +56,7 @@ public class PhantomSpawner implements CustomSpawner { FluidState fluidState = level.getFluidState(blockPos1); if (NaturalSpawner.isValidEmptySpawnBlock(level, blockPos1, blockState, fluidState, EntityType.PHANTOM)) { SpawnGroupData spawnGroupData = null; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/FlowingFluid.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/FlowingFluid.java.patch similarity index 62% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/FlowingFluid.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/FlowingFluid.java.patch index f174b46a5..5abd1cab1 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/FlowingFluid.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/FlowingFluid.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/material/FlowingFluid.java b/net/minecraft/world/level/material/FlowingFluid.java +index 85e9ec8061fc01d39977f6db314da14b1e7725e1..9685d02a9837c773094a5da5cff6fa6fcfeed86a 100644 --- a/net/minecraft/world/level/material/FlowingFluid.java +++ b/net/minecraft/world/level/material/FlowingFluid.java -@@ -233,7 +_,7 @@ +@@ -233,7 +233,7 @@ public abstract class FlowingFluid extends Fluid { } } @@ -9,16 +17,16 @@ BlockState blockState1 = level.getBlockState(mutableBlockPos.setWithOffset(pos, Direction.DOWN)); FluidState fluidState1 = blockState1.getFluidState(); if (blockState1.isSolid() || this.isSourceBlockOfThisType(fluidState1)) { -@@ -320,6 +_,12 @@ - } +@@ -321,6 +321,12 @@ public abstract class FlowingFluid extends Fluid { protected abstract boolean canConvertToSource(ServerLevel level); -+ + + // Purpur start - Implement infinite liquids + protected int getRequiredSources(Level level) { + return 2; + } + // Purpur end - Implement infinite liquids - ++ protected void spreadTo(LevelAccessor level, BlockPos pos, BlockState state, Direction direction, FluidState fluidState) { if (state.getBlock() instanceof LiquidBlockContainer liquidBlockContainer) { + liquidBlockContainer.placeLiquid(level, pos, state, fluidState); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/LavaFluid.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/LavaFluid.java.patch similarity index 59% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/LavaFluid.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/LavaFluid.java.patch index 1832422c1..2f9d086c5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/LavaFluid.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/LavaFluid.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/material/LavaFluid.java b/net/minecraft/world/level/material/LavaFluid.java +index a42878c191445ba4b0d50dd2b789a132d5cf6a3e..3e81c98e2e6b0f1424429ab52aa43d229c867cc7 100644 --- a/net/minecraft/world/level/material/LavaFluid.java +++ b/net/minecraft/world/level/material/LavaFluid.java -@@ -190,7 +_,7 @@ +@@ -190,7 +190,7 @@ public abstract class LavaFluid extends FlowingFluid { @Override public int getTickDelay(LevelReader level) { @@ -9,17 +17,17 @@ } @Override -@@ -211,6 +_,13 @@ - private void fizz(LevelAccessor level, BlockPos pos) { +@@ -212,6 +212,13 @@ public abstract class LavaFluid extends FlowingFluid { level.levelEvent(LevelEvent.LAVA_FIZZ, pos, 0); } -+ + + // Purpur start - Implement infinite liquids + @Override + protected int getRequiredSources(Level level) { + return level.purpurConfig.lavaInfiniteRequiredSources; + } + // Purpur end - Implement infinite liquids - ++ @Override protected boolean canConvertToSource(ServerLevel level) { + return level.getGameRules().get(GameRules.LAVA_SOURCE_CONVERSION); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/WaterFluid.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/WaterFluid.java.patch similarity index 56% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/WaterFluid.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/WaterFluid.java.patch index 0a3d7b259..4f51bb5b7 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/material/WaterFluid.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/material/WaterFluid.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/material/WaterFluid.java b/net/minecraft/world/level/material/WaterFluid.java +index 45ade22e8f69609598725a94a0581251cf3f384f..4533d9f76f4ea21cee3c3114bcfcded40fe7321b 100644 --- a/net/minecraft/world/level/material/WaterFluid.java +++ b/net/minecraft/world/level/material/WaterFluid.java -@@ -77,6 +_,13 @@ +@@ -77,6 +77,13 @@ public abstract class WaterFluid extends FlowingFluid { return level.getGameRules().get(GameRules.WATER_SOURCE_CONVERSION); } diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java.patch similarity index 70% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java.patch index 0988ceb36..3535e24d5 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java b/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java +index ca5448b2531d2f7126132723c4fa8d49835a4850..876aef8dab7187a69bcb380692d0f6a583fb38bd 100644 --- a/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java +++ b/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java -@@ -239,7 +_,7 @@ +@@ -239,7 +239,7 @@ public class WalkNodeEvaluator extends NodeEvaluator { if ((node == null || node.costMalus < 0.0F) && verticalDeltaLimit > 0 && (cachedPathType != PathType.FENCE || this.canWalkOverFences()) @@ -9,7 +17,7 @@ && cachedPathType != PathType.TRAPDOOR && cachedPathType != PathType.POWDER_SNOW) { node = this.tryJumpOn(x, y, z, verticalDeltaLimit, nodeFloorLevel, direction, pathType, mutableBlockPos); -@@ -490,7 +_,7 @@ +@@ -490,7 +490,7 @@ public class WalkNodeEvaluator extends NodeEvaluator { return PathType.TRAPDOOR; } else if (blockState.is(Blocks.POWDER_SNOW)) { return PathType.POWDER_SNOW; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/portal/PortalShape.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/portal/PortalShape.java.patch similarity index 64% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/portal/PortalShape.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/portal/PortalShape.java.patch index 3fee8ca9f..47e41996f 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/portal/PortalShape.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/portal/PortalShape.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/portal/PortalShape.java b/net/minecraft/world/level/portal/PortalShape.java +index 275e98ea476a790ff3cedf19689a9538b3b2ee53..c88339479dd59a399ff4b250208311a18eea950f 100644 --- a/net/minecraft/world/level/portal/PortalShape.java +++ b/net/minecraft/world/level/portal/PortalShape.java -@@ -29,7 +_,7 @@ +@@ -29,7 +29,7 @@ public class PortalShape { public static final int MAX_WIDTH = 21; private static final int MIN_HEIGHT = 3; public static final int MAX_HEIGHT = 21; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java.patch similarity index 50% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java.patch index 138758dfe..010325abf 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java b/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java +index 1af585f9554278983148096c73c86e18166f5471..cd2719b0ac30654ce7e8247850f4512810b352e6 100644 --- a/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java +++ b/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java -@@ -81,6 +_,7 @@ +@@ -81,6 +81,7 @@ public class MapItemSavedData extends SavedData { public final Map decorations = Maps.newLinkedHashMap(); private final Map frameMarkers = Maps.newHashMap(); private int trackedDecorationCount; diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java.patch similarity index 64% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java.patch index 280652166..7a916ccae 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java b/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java +index c4f29da30d63deb3f9eabafcf62a946ff148b6b7..cdd2e1f1fc83cad782311ae5ba618fcf5fa9f37d 100644 --- a/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java +++ b/net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction.java -@@ -66,6 +_,11 @@ +@@ -66,6 +66,11 @@ public class EnchantedCountIncreaseFunction extends LootItemConditionalFunction Entity entity = context.getOptionalParameter(LootContextParams.ATTACKING_ENTITY); if (entity instanceof LivingEntity livingEntity) { int enchantmentLevel = EnchantmentHelper.getEnchantmentLevel(this.enchantment, livingEntity); diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/phys/AABB.java.patch b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/phys/AABB.java.patch similarity index 54% rename from purpur-server/minecraft-patches/sources/net/minecraft/world/phys/AABB.java.patch rename to purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/phys/AABB.java.patch index 23da8c2e0..ba14b4f58 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/phys/AABB.java.patch +++ b/purpur-server/minecraft-patches/unapplied-sources/net/minecraft/world/phys/AABB.java.patch @@ -1,6 +1,14 @@ +From 56a0a83ddb1b7472dbc9762e2aca396605c62085 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur File Patches + + +diff --git a/net/minecraft/world/phys/AABB.java b/net/minecraft/world/phys/AABB.java +index 7f0ff1bf4ddf7bfe1d3cad472416dd032806066b..120e432df71eaee94225555d24c82e6d05b34b9f 100644 --- a/net/minecraft/world/phys/AABB.java +++ b/net/minecraft/world/phys/AABB.java -@@ -474,4 +_,10 @@ +@@ -474,4 +474,10 @@ public class AABB { return new AABB(this.minX, this.minY, this.minZ, this.maxX, this.maxY, this.maxZ); } } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java.patch b/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java.patch deleted file mode 100644 index c8c0b7a9a..000000000 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -291,6 +_,7 @@ - @Override - public void recalculatePermissions() { - this.perm.recalculatePermissions(); -+ getHandle().canPortalInstant = hasPermission("purpur.portal.instant"); // Purpur - Add portal permission bypass - } - - @Override diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java.patch b/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java.patch deleted file mode 100644 index 6f33f6cc9..000000000 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java -+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java -@@ -243,4 +_,11 @@ - public void restock() { - getHandle().restock(); - } -+ -+ // Purpur start - Lobotomize stuck villagers -+ @Override -+ public boolean isLobotomized() { -+ return getHandle().isLobotomized(); -+ } -+ // Purpur end - Lobotomize stuck villagers - } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java.patch b/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java.patch deleted file mode 100644 index 33ae859ed..000000000 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java -+++ b/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java -@@ -46,4 +_,10 @@ - } - } - -+ // Purpur start - Explorer Map API -+ @Override -+ public boolean isExplorerMap() { -+ return this.worldMap.isExplorerMap; -+ } -+ // Purpur end - Explorer Map API - } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java.patch b/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java.patch deleted file mode 100644 index dde31a20a..000000000 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -485,7 +_,7 @@ - - @Override - public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() { -- return new com.destroystokyo.paper.PaperVersionFetcher(); -+ return new org.purpurmc.purpur.PurpurVersionFetcher(); // Purpur - use old Paper version checker - } - - @Override diff --git a/purpur-server/paper-patches/features/0001-Rebrand.patch b/purpur-server/paper-patches/unapplied-features/0001-Rebrand.patch similarity index 100% rename from purpur-server/paper-patches/features/0001-Rebrand.patch rename to purpur-server/paper-patches/unapplied-features/0001-Rebrand.patch diff --git a/purpur-server/paper-patches/features/0002-Ridables.patch b/purpur-server/paper-patches/unapplied-features/0002-Ridables.patch similarity index 100% rename from purpur-server/paper-patches/features/0002-Ridables.patch rename to purpur-server/paper-patches/unapplied-features/0002-Ridables.patch diff --git a/purpur-server/paper-patches/features/0003-Barrels-and-enderchests-6-rows.patch b/purpur-server/paper-patches/unapplied-features/0003-Barrels-and-enderchests-6-rows.patch similarity index 100% rename from purpur-server/paper-patches/features/0003-Barrels-and-enderchests-6-rows.patch rename to purpur-server/paper-patches/unapplied-features/0003-Barrels-and-enderchests-6-rows.patch diff --git a/purpur-server/paper-patches/features/0004-API-for-any-mob-to-burn-daylight.patch b/purpur-server/paper-patches/unapplied-features/0004-API-for-any-mob-to-burn-daylight.patch similarity index 100% rename from purpur-server/paper-patches/features/0004-API-for-any-mob-to-burn-daylight.patch rename to purpur-server/paper-patches/unapplied-features/0004-API-for-any-mob-to-burn-daylight.patch diff --git a/purpur-server/paper-patches/features/0005-Setting-to-reintroduce-end-void-rings.patch b/purpur-server/paper-patches/unapplied-features/0005-Setting-to-reintroduce-end-void-rings.patch similarity index 100% rename from purpur-server/paper-patches/features/0005-Setting-to-reintroduce-end-void-rings.patch rename to purpur-server/paper-patches/unapplied-features/0005-Setting-to-reintroduce-end-void-rings.patch diff --git a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/Metrics.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/Metrics.java.patch similarity index 82% rename from purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/Metrics.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/Metrics.java.patch index 4d41a9d45..a852c8ac2 100644 --- a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/Metrics.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/Metrics.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java +index 9f4d73fd321f6f0cd19fdd1b63068d2ea6c0816b..6194d6d8952864c71cc4017a639b818e4ecccea9 100644 --- a/src/main/java/com/destroystokyo/paper/Metrics.java +++ b/src/main/java/com/destroystokyo/paper/Metrics.java -@@ -593,7 +_,7 @@ +@@ -593,7 +593,7 @@ public class Metrics { boolean logFailedRequests = config.getBoolean("logFailedRequests", false); // Only start Metrics, if it's enabled in the config if (config.getBoolean("enabled", true)) { @@ -9,7 +17,7 @@ metrics.addCustomChart(new Metrics.SimplePie("minecraft_version", () -> { String minecraftVersion = Bukkit.getVersion(); -@@ -602,16 +_,8 @@ +@@ -602,16 +602,8 @@ public class Metrics { })); metrics.addCustomChart(new Metrics.SingleLineChart("players", () -> Bukkit.getOnlinePlayers().size())); diff --git a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/console/PaperConsole.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/console/PaperConsole.java.patch similarity index 51% rename from purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/console/PaperConsole.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/console/PaperConsole.java.patch index 43b5c7a41..5234aa5eb 100644 --- a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/console/PaperConsole.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/console/PaperConsole.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java +index 6ee39b534b8d992655bc0cef3c299d12cbae0034..bc7e4e5560708fea89c584b1d8b471f4966f311a 100644 --- a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java +++ b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java -@@ -20,7 +_,7 @@ +@@ -20,7 +20,7 @@ public final class PaperConsole extends SimpleTerminalConsole { @Override protected LineReader buildReader(LineReaderBuilder builder) { builder diff --git a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java.patch similarity index 61% rename from purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java.patch index 47789fe9b..b076f5334 100644 --- a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java +index c8583cb0bc5a1ce00fa96173097434ed9d1cf781..9fa130bf030bb829a087c2ed9ece99c90182f74e 100644 --- a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java +++ b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java -@@ -148,6 +_,11 @@ +@@ -148,6 +148,11 @@ public class MobGoalHelper { private static final Map RENAMES = Util.make(new HashMap<>(), map -> { map.put("AbstractSkeleton$1", "AbstractSkeletonMelee"); diff --git a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java.patch similarity index 66% rename from purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java.patch index 795d9b9f2..779553e11 100644 --- a/purpur-server/paper-patches/files/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java +index 9863aed2417e494c44275ba2bb378f641c6e75a4..3152a50e0bcaa5edf1506aa825d0caa37c4b9bf6 100644 --- a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java +++ b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java -@@ -60,7 +_,7 @@ +@@ -60,7 +60,7 @@ public class RAMDetails extends JList { Vector vector = new Vector<>(); // Follows CraftServer#getTPS @@ -9,7 +17,7 @@ String[] tpsAvg = new String[tps.length]; for ( int g = 0; g < tps.length; g++) { -@@ -69,7 +_,7 @@ +@@ -69,7 +69,7 @@ public class RAMDetails extends JList { vector.add("Memory use: " + (data.getUsedMem() / 1024L / 1024L) + " mb (" + (data.getFree() * 100L / data.getMax()) + "% free)"); vector.add("Heap: " + (data.getTotal() / 1024L / 1024L) + " / " + (data.getMax() / 1024L / 1024L) + " mb"); vector.add("Avg tick: " + DECIMAL_FORMAT.format((double)this.server.getAverageTickTimeNanos() / (double) TimeUtil.NANOSECONDS_PER_MILLISECOND) + " ms"); diff --git a/purpur-server/paper-patches/files/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java.patch similarity index 68% rename from purpur-server/paper-patches/files/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java.patch index 13971e34d..1cbebeb5b 100644 --- a/purpur-server/paper-patches/files/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java b/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java +index 74ffdc823e66fc5ec027c4b7c462382bcbfe2be2..1b0ee48e28aaa68ddb1f28c23d3c5f5f40505c98 100644 --- a/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java +++ b/src/main/java/io/papermc/paper/ServerBuildInfoImpl.java -@@ -31,6 +_,7 @@ +@@ -31,6 +31,7 @@ public record ServerBuildInfoImpl( private static final String ATTRIBUTE_GIT_COMMIT = "Git-Commit"; private static final String BRAND_PAPER_NAME = "Paper"; @@ -8,7 +16,7 @@ private static final String BUILD_DEV = "DEV"; -@@ -42,9 +_,9 @@ +@@ -42,9 +43,9 @@ public record ServerBuildInfoImpl( this( getManifestAttribute(manifest, ATTRIBUTE_BRAND_ID) .map(Key::key) @@ -20,7 +28,7 @@ SharedConstants.getCurrentVersion().id(), SharedConstants.getCurrentVersion().name(), getManifestAttribute(manifest, ATTRIBUTE_BUILD_NUMBER) -@@ -61,7 +_,7 @@ +@@ -61,7 +62,7 @@ public record ServerBuildInfoImpl( @Override public boolean isBrandCompatible(final @NotNull Key brandId) { diff --git a/purpur-server/paper-patches/files/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java.patch similarity index 90% rename from purpur-server/paper-patches/files/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java.patch index 2b8d161ef..8ebddbb34 100644 --- a/purpur-server/paper-patches/files/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java b/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java +index 9c49bb7fb8c3ca4b62e73dcfca2669971defb181..727253cb847e56e8716bc6b17512c0eb515f34e3 100644 --- a/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java +++ b/src/main/java/io/papermc/paper/command/PaperPluginsCommand.java -@@ -74,10 +_,10 @@ +@@ -74,10 +74,10 @@ public class PaperPluginsCommand { .build(); } @@ -13,7 +21,7 @@ } boolean isFirst = true; -@@ -104,15 +_,49 @@ +@@ -104,15 +104,49 @@ public class PaperPluginsCommand { return formattedSubLists; } @@ -66,7 +74,7 @@ builder.append(pluginName); -@@ -130,6 +_,23 @@ +@@ -130,6 +164,23 @@ public class PaperPluginsCommand { return componentHeader.append(Component.text(":")).build(); } @@ -90,7 +98,7 @@ private static Component asPlainComponents(final String strings) { final net.kyori.adventure.text.TextComponent.Builder builder = Component.text(); for (final String string : strings.split("\n")) { -@@ -188,25 +_,25 @@ +@@ -188,25 +239,25 @@ public class PaperPluginsCommand { final int sizePaperPlugins = paperPlugins.size(); final int sizeSpigotPlugins = spigotPlugins.size(); final int sizePlugins = sizePaperPlugins + sizeSpigotPlugins; diff --git a/purpur-server/paper-patches/files/src/main/java/io/papermc/paper/logging/SysoutCatcher.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/logging/SysoutCatcher.java.patch similarity index 62% rename from purpur-server/paper-patches/files/src/main/java/io/papermc/paper/logging/SysoutCatcher.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/logging/SysoutCatcher.java.patch index d8d9954f6..53af91f74 100644 --- a/purpur-server/paper-patches/files/src/main/java/io/papermc/paper/logging/SysoutCatcher.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/io/papermc/paper/logging/SysoutCatcher.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/io/papermc/paper/logging/SysoutCatcher.java b/src/main/java/io/papermc/paper/logging/SysoutCatcher.java +index a8e813ca89b033f061e695288b3383bdcf128531..96a377a07d8396f893954a3ba97fbf88d73faf6d 100644 --- a/src/main/java/io/papermc/paper/logging/SysoutCatcher.java +++ b/src/main/java/io/papermc/paper/logging/SysoutCatcher.java -@@ -54,9 +_,9 @@ +@@ -54,9 +54,9 @@ public final class SysoutCatcher { final JavaPlugin plugin = JavaPlugin.getProvidingPlugin(clazz); // Instead of just printing the message, send it to the plugin's logger diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java.patch similarity index 92% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java.patch index c9e217b4e..995979f40 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +index 97b097eca4f1de247adb7db5591575b96a9fe3b6..7283eb950a0d1c92c451a0379d7a409d147bb84c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -@@ -342,6 +_,12 @@ +@@ -342,6 +342,12 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa @Override public Location getLocation() { @@ -13,7 +21,7 @@ CompoundTag data = this.getData(); if (data == null) { return null; -@@ -579,4 +_,183 @@ +@@ -579,4 +585,183 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa manager.save(); } } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftServer.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftServer.java.patch similarity index 87% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftServer.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftServer.java.patch index 1b474a6ac..9a83e87e2 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftServer.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftServer.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +index da49c8005592a154946750591ce082796f24dd3b..45cb1ef06f0daa266e60fdba4f88b5e577dba92f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -417,6 +_,20 @@ +@@ -417,6 +417,20 @@ public final class CraftServer implements Server { this.paperPluginManager = new io.papermc.paper.plugin.manager.PaperPluginManagerImpl(this, this.commandMap, pluginManager); this.pluginManager.paperPluginManager = this.paperPluginManager; // Paper end @@ -21,7 +29,7 @@ CraftRegistry.setMinecraftRegistry(console.registryAccess()); -@@ -992,6 +_,7 @@ +@@ -992,6 +1006,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot this.console.paperConfigurations.reloadConfigs(this.console); @@ -29,7 +37,7 @@ for (ServerLevel world : this.console.getAllLevels()) { // world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty world.setSpawnSettings(world.isSpawningMonsters()); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean)) -@@ -1007,6 +_,7 @@ +@@ -1007,6 +1022,7 @@ public final class CraftServer implements Server { } } world.spigotConfig.init(); // Spigot @@ -37,7 +45,7 @@ } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -1024,6 +_,7 @@ +@@ -1024,6 +1040,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.registerCommands(); // Spigot io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper this.spark.registerCommandBeforePlugins(this); // Paper - spark @@ -45,7 +53,7 @@ this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -1484,6 +_,60 @@ +@@ -1484,6 +1501,60 @@ public final class CraftServer implements Server { return true; } @@ -106,7 +114,7 @@ @Override public List getRecipesFor(ItemStack result) { Preconditions.checkArgument(result != null, "ItemStack cannot be null"); -@@ -2729,6 +_,18 @@ +@@ -2729,6 +2800,18 @@ public final class CraftServer implements Server { return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console); } @@ -125,7 +133,7 @@ @Override public void restart() { CraftServer.this.restart(); -@@ -2964,4 +_,18 @@ +@@ -2964,4 +3047,18 @@ public final class CraftServer implements Server { public void allowPausing(final Plugin plugin, final boolean value) { this.console.addPluginAllowingSleep(plugin.getName(), value); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftWorld.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftWorld.java.patch similarity index 82% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftWorld.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftWorld.java.patch index c27a30f59..317071543 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/CraftWorld.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/CraftWorld.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +index ebc65e3338c646815416a47bf9af96fe45978caf..01719a81cea75654a0d7eac52fd43ebf2d692b9c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1926,6 +_,52 @@ +@@ -1926,6 +1926,52 @@ public class CraftWorld extends CraftRegionAccessor implements World { return (this.getHandle().getDragonFight() == null) ? null : new CraftDragonBattle(this.getHandle().getDragonFight()); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/Main.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/Main.java.patch similarity index 63% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/Main.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/Main.java.patch index 49802a905..9b3ad91e4 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/Main.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/Main.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java +index 8ce8de8eedfe8557848b0508857744a5b9641239..e6ea34b18c6db63efa77bb67d3484e4d66315ed6 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -139,6 +_,14 @@ +@@ -139,6 +139,14 @@ public class Main { .defaultsTo(new File[] {}) .describedAs("Plugin directory"); diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java.patch similarity index 80% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java.patch index b2fe7e396..45b98c420 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java +index ed4692090a115d3d0a0826b10f77e903058eeec6..205c367fd5e2921d36f78ac7df5999d4adb819d0 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBeehive.java -@@ -16,8 +_,15 @@ +@@ -16,8 +16,15 @@ import org.bukkit.entity.Bee; public class CraftBeehive extends CraftBlockEntityState implements Beehive { @@ -16,7 +24,7 @@ } protected CraftBeehive(CraftBeehive state, Location location) { -@@ -76,14 +_,54 @@ +@@ -76,14 +83,54 @@ public class CraftBeehive extends CraftBlockEntityState impl } } @@ -71,7 +79,7 @@ } @Override -@@ -100,6 +_,7 @@ +@@ -100,6 +147,7 @@ public class CraftBeehive extends CraftBlockEntityState impl @Override public void clearEntities() { getSnapshot().clearBees(); diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java.patch similarity index 51% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java.patch index 7ce19fa24..61a4f71ee 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java +index 1c448bc38fa554707e0bfb99ded70b093e49926c..77e6913358ac992b503712cccb871518770fee0b 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftConduit.java -@@ -75,7 +_,7 @@ +@@ -75,7 +75,7 @@ public class CraftConduit extends CraftBlockEntityState impl public int getRange() { this.ensureNoWorldGeneration(); ConduitBlockEntity conduit = (ConduitBlockEntity) this.getBlockEntityFromWorld(); diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java.patch similarity index 60% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java.patch index 18d1a9162..0c3ecd6fa 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java b/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java +index 6e2f931b06d4ef702e0abf609a5f5bba780c5b7a..15ae2653c1809041b7ab7cb67015e82c226e9f77 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java +++ b/src/main/java/org/bukkit/craftbukkit/command/CraftConsoleCommandSender.java -@@ -21,7 +_,12 @@ +@@ -21,7 +21,12 @@ public class CraftConsoleCommandSender extends ServerCommandSender implements Co @Override public void sendMessage(String message) { @@ -14,7 +22,7 @@ } @Override -@@ -88,7 +_,7 @@ +@@ -88,7 +93,7 @@ public class CraftConsoleCommandSender extends ServerCommandSender implements Co @Override public void sendMessage(final net.kyori.adventure.identity.Identity identity, final net.kyori.adventure.text.Component message, final net.kyori.adventure.audience.MessageType type) { diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java.patch similarity index 53% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java.patch index 09805819f..6d0d84aee 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java +index f61abf0ecad0b5be477b0f3e8232c20789614986..1204ebdf76f0b54b8d0ff75f192d88a599d6317a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftCopperGolem.java -@@ -67,4 +_,17 @@ +@@ -67,4 +67,17 @@ public class CraftCopperGolem extends CraftGolem implements CopperGolem, PaperSh default -> throw new IllegalStateException("Unexpected value: " + oxidizing); } } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java.patch similarity index 50% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java.patch index e28023a49..8bf141c13 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java +index 000c5ea5d39d5ab6e5592012ab1cc7ee547505dc..140da7078217f833f490d88faaf803ab1763115d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEndermite.java -@@ -16,12 +_,12 @@ +@@ -16,12 +16,12 @@ public class CraftEndermite extends CraftMonster implements Endermite { @Override public boolean isPlayerSpawned() { diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java.patch similarity index 57% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java.patch index 8fd4ad85d..39ade180d 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +index 2a572ef0ba7405ecafaf6def2a2134bd71b60453..2f940ec42f4d657e40f4da1d974f46c87837a48c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -114,6 +_,18 @@ +@@ -114,6 +114,18 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { this.entityType = CraftEntityType.minecraftToBukkit(entity.getType()); } diff --git a/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java.patch new file mode 100644 index 000000000..039365890 --- /dev/null +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java.patch @@ -0,0 +1,18 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +index 5a4e9853103153b31456190e3f95dc98642f3ec5..e24eb67ad0742ac6116e7a5b84998db61dc0fc93 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +@@ -291,6 +291,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { + @Override + public void recalculatePermissions() { + this.perm.recalculatePermissions(); ++ getHandle().canPortalInstant = hasPermission("purpur.portal.instant"); // Purpur - Add portal permission bypass + } + + @Override diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java.patch similarity index 55% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java.patch index 6acff6eeb..318f6ce5b 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java +index 54cea2ff4abbb3780814aadc534e53cd97022971..e0a5b55005fd8a6ff16c7d13fff9caea1d836f66 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftIronGolem.java -@@ -22,4 +_,17 @@ +@@ -22,4 +22,17 @@ public class CraftIronGolem extends CraftGolem implements IronGolem { public void setPlayerCreated(boolean playerCreated) { this.getHandle().setPlayerCreated(playerCreated); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java.patch similarity index 76% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java.patch index 7a2d0a451..ed113bfff 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java +index d849e22060d0ec6d4b4ca8079ac5cec26e1a1855..4efb73372b91b8c83a6c5a2b2cb099d229db0621 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java -@@ -145,4 +_,53 @@ +@@ -145,4 +145,53 @@ public class CraftItem extends CraftEntity implements Item { public UUID getThrower() { return Optionull.map(this.getHandle().thrower, EntityReference::getUUID); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch similarity index 61% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch index 8f51efee9..84480123a 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +index b0987314d2635d685129af70b4b02cba3075e594..4f31c5604639b4699631449569ba73d064f83dc3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -490,7 +_,7 @@ +@@ -490,7 +490,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { net.minecraft.server.level.ServerPlayer nmsKiller = killer == null ? null : ((CraftPlayer) killer).getHandle(); this.getHandle().setLastHurtByMob(nmsKiller); if (nmsKiller != null) { diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java.patch similarity index 54% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java.patch index f185fa5ca..e066006a8 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java +index 443146323ee54a3ea7191ffe3a065a6fabb8a0fb..f87b472c6747271dfec4152f7be0754b42b05845 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLlama.java -@@ -86,4 +_,17 @@ +@@ -86,4 +86,17 @@ public class CraftLlama extends CraftChestedHorse implements Llama, com.destroys public Llama getCaravanTail() { return this.getHandle().caravanTail == null ? null : (Llama) this.getHandle().caravanTail.getBukkitEntity(); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch similarity index 87% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch index 1b5e14d49..1aa25cf89 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +index d86ebc4cd182076629eb8000267d7b1a38a06be1..225a88c6976de91b9115471e7942e5585e392ec4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -580,10 +_,15 @@ +@@ -580,10 +580,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa @Override public void setPlayerListName(String name) { @@ -17,7 +25,7 @@ if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined for (ServerPlayer player : this.server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { -@@ -984,6 +_,80 @@ +@@ -984,6 +989,80 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa } } @@ -98,11 +106,10 @@ @Override public void sendBlockDamage(Location loc, float progress, org.bukkit.entity.Entity source) { Preconditions.checkArgument(source != null, "source must not be null"); -@@ -2489,6 +_,28 @@ - public float getWalkSpeed() { +@@ -2490,6 +2569,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa return this.getHandle().getAbilities().walkingSpeed * 2f; } -+ + + // Purpur start - OfflinePlayer API + @Override + public boolean teleportOffline(Location destination) { @@ -124,6 +131,7 @@ + return this.teleportAsync(destination, cause); + } + // Purpur end - OfflinePlayer API - ++ private void validateSpeed(float value) { Preconditions.checkArgument(value <= 1f && value >= -1f, "Speed value (%s) need to be between -1f and 1f", value); + } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java.patch similarity index 53% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java.patch index 0c72e0175..f00b285d7 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java +index 0a912863fe9f5e07bfd51110a4f0124af92afbcf..ad1acb743abda5859071f795b34e8a958db6ba65 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java -@@ -24,4 +_,17 @@ +@@ -24,4 +24,17 @@ public class CraftSnowman extends CraftGolem implements Snowman, com.destroystok public void setDerp(boolean derpMode) { this.getHandle().setPumpkin(!derpMode); } diff --git a/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java.patch new file mode 100644 index 000000000..5df71deb2 --- /dev/null +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java.patch @@ -0,0 +1,22 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java +index 22704813d84f5ff44ef8d8b1baaa95ae4fc73b05..456f31b0a0663f0784b7c8b2b1a3995531e0f970 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftVillager.java +@@ -243,4 +243,11 @@ public class CraftVillager extends CraftAbstractVillager implements Villager { + public void restock() { + getHandle().restock(); + } ++ ++ // Purpur start - Lobotomize stuck villagers ++ @Override ++ public boolean isLobotomized() { ++ return getHandle().isLobotomized(); ++ } ++ // Purpur end - Lobotomize stuck villagers + } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java.patch similarity index 54% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java.patch index 61556048d..f7a0a40ae 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java +index 2e11df97e5c8ff5fbf22ba87946d6018ac8bbbed..83b779eb0adcaf2e6d5658cddc2607f6deea6bb9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftWither.java -@@ -92,4 +_,18 @@ +@@ -92,4 +92,18 @@ public class CraftWither extends CraftMonster implements Wither, com.destroystok public void enterInvulnerabilityPhase() { this.getHandle().makeInvulnerable(); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java.patch similarity index 59% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java.patch index 708b9bc1e..56470caa5 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java +index 1e24ae8526915154e270c297af1438ba82190755..a1f274dffbba4a5cdc5199c194c66da0dcae8912 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftWolf.java -@@ -90,6 +_,18 @@ +@@ -90,6 +90,18 @@ public class CraftWolf extends CraftTameableAnimal implements Wolf { this.getHandle().setSoundVariant(CraftSoundVariant.bukkitToMinecraftHolder(soundVariant)); } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java.patch similarity index 71% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java.patch index 58b895e59..a5b67b1aa 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java +index 792cb6adf0c7a6335cc5985fce8bed2e0f1149af..5734c5caffda79383ae30df20c3defb51b87f39e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryAnvil.java -@@ -19,6 +_,10 @@ +@@ -19,6 +19,10 @@ public class CraftInventoryAnvil extends CraftResultInventory implements AnvilIn private int repairCost; private int repairCostAmount; private int maximumRepairCost; @@ -11,7 +19,7 @@ public CraftInventoryAnvil(Location location, Container inventory, Container resultInventory) { super(inventory, resultInventory); -@@ -27,6 +_,10 @@ +@@ -27,6 +31,10 @@ public class CraftInventoryAnvil extends CraftResultInventory implements AnvilIn this.repairCost = CraftInventoryAnvil.DEFAULT_REPAIR_COST; this.repairCostAmount = CraftInventoryAnvil.DEFAULT_REPAIR_COST_AMOUNT; this.maximumRepairCost = CraftInventoryAnvil.DEFAULT_MAXIMUM_REPAIR_COST; @@ -22,7 +30,7 @@ } @Override -@@ -113,4 +_,30 @@ +@@ -113,4 +121,30 @@ public class CraftInventoryAnvil extends CraftResultInventory implements AnvilIn consumer.accept(cav); } } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java.patch similarity index 94% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java.patch index 0708b4d47..5865b057b 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +index 002682049fe890333794072e1e2717004f2ad0cf..388ec223420e0e3a9e975f216ecf1d86f097c66c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -@@ -672,4 +_,285 @@ +@@ -672,4 +672,285 @@ public final class CraftItemStack extends ItemStack { } // Paper end - data component API diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java.patch similarity index 65% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java.patch index d0024f75f..6aaa37ccf 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java +index 833182cb6ee25868426e44850487a4f299223130..d16eb1cfd482ee8ee2a2b24ca8cbd139a68a10c5 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftRecipe.java -@@ -43,6 +_,7 @@ +@@ -43,6 +43,7 @@ public interface CraftRecipe extends Recipe { stack = Ingredient.of(((RecipeChoice.MaterialChoice) bukkit).getChoices().stream().map((mat) -> CraftItemType.bukkitToMinecraft(mat))); } else if (bukkit instanceof RecipeChoice.ExactChoice) { stack = Ingredient.ofStacks(((RecipeChoice.ExactChoice) bukkit).getChoices().stream().map((mat) -> CraftItemStack.asNMSCopy(mat)).toList()); diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java.patch similarity index 59% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java.patch index 5d9234b7b..792a36633 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java b/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java +index 2b3844f5ecc1bfbf3f5dab1c00d06f8be27f39e9..4e535c287137ceedd4d48047b03f4578c33467b0 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java -@@ -73,4 +_,26 @@ +@@ -73,4 +73,26 @@ public class CraftAnvilView extends CraftInventoryView +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java b/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java +index fc24964d8921755f773267e4592ea61b65c171bf..415781668036a9961eb8b992fd42a4633b729835 100644 --- a/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java +++ b/src/main/java/org/bukkit/craftbukkit/legacy/CraftLegacy.java -@@ -260,6 +_,7 @@ +@@ -260,6 +260,7 @@ public final class CraftLegacy { } static { diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java.patch similarity index 75% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java.patch index 990500141..5cfdd503e 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java b/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java +index 9bc8055c36322c79077af57ab72d5493f5e65b7d..9f50bfc899d747f4e9287a646c6c6103bf501660 100644 --- a/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java +++ b/src/main/java/org/bukkit/craftbukkit/legacy/MaterialRerouting.java -@@ -703,4 +_,32 @@ +@@ -703,4 +703,32 @@ public class MaterialRerouting { meta.setCanPlaceOn(materials); } // Paper end diff --git a/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java.patch new file mode 100644 index 000000000..796b11efb --- /dev/null +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java.patch @@ -0,0 +1,21 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java b/src/main/java/org/bukkit/craftbukkit/map/CraftMapRenderer.java +index a573499fb96cb08d96e0b20602fc423bfd0e2f52..eb9cbc29181ffc83acd556f26f2c0b4f227808ab 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 { + } + } + ++ // Purpur start - Explorer Map API ++ @Override ++ public boolean isExplorerMap() { ++ return this.worldMap.isExplorerMap; ++ } ++ // Purpur end - Explorer Map API + } diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java.patch similarity index 62% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java.patch index 46d23c417..064db6b97 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +index 7ffb7a210bf840009158d5e4364dad78221ded6c..554fc2c53b5028c8f89a0ae69a75e075ba4f4435 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java -@@ -491,7 +_,7 @@ +@@ -491,7 +491,7 @@ public class CraftScheduler implements BukkitScheduler { this.parsePending(); } else { // this.debugTail = this.debugTail.setNext(new CraftAsyncDebugger(this.currentTick + CraftScheduler.RECENT_TICKS, task.getOwner(), task.getTaskClass())); // Paper diff --git a/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java.patch new file mode 100644 index 000000000..50730f0be --- /dev/null +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java.patch @@ -0,0 +1,19 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +index 9323383f7d1226d887fc9219354ac9613204cbc2..89d8e918f5e0242c7aa10b3e78382130a4631d00 100644 +--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java ++++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +@@ -485,7 +485,7 @@ public final class CraftMagicNumbers implements UnsafeValues { + + @Override + public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() { +- return new com.destroystokyo.paper.PaperVersionFetcher(); ++ return new org.purpurmc.purpur.PurpurVersionFetcher(); // Purpur - use old Paper version checker + } + + @Override diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java.patch similarity index 82% rename from purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java.patch index 6106785b3..c71815e79 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java b/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java +index a454350085f2f9302a45787df8f26726cc1104a9..aa473abf6008620a1f46f4ecaea99e6ad9aeb689 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java +++ b/src/main/java/org/bukkit/craftbukkit/util/permissions/CommandPermissions.java -@@ -23,7 +_,15 @@ +@@ -23,7 +23,15 @@ public final class CommandPermissions { DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "kick", "Allows the user to kick players", PermissionDefault.OP, commands); DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "stop", "Allows the user to stop the server", PermissionDefault.OP, commands); DefaultPermissions.registerPermission(CommandPermissions.PREFIX + "list", "Allows the user to list all online players", PermissionDefault.OP, commands); diff --git a/purpur-server/paper-patches/files/src/main/java/org/spigotmc/TicksPerSecondCommand.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/spigotmc/TicksPerSecondCommand.java.patch similarity index 56% rename from purpur-server/paper-patches/files/src/main/java/org/spigotmc/TicksPerSecondCommand.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/spigotmc/TicksPerSecondCommand.java.patch index 3b87a8487..fc0837915 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/spigotmc/TicksPerSecondCommand.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/spigotmc/TicksPerSecondCommand.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/spigotmc/TicksPerSecondCommand.java b/src/main/java/org/spigotmc/TicksPerSecondCommand.java +index 2756ca738b99792495f4fe6128b75e03f73936f1..2e252d9b1f8323670c91abe4832f1c63303fbf88 100644 --- a/src/main/java/org/spigotmc/TicksPerSecondCommand.java +++ b/src/main/java/org/spigotmc/TicksPerSecondCommand.java -@@ -47,7 +_,7 @@ +@@ -47,7 +47,7 @@ public class TicksPerSecondCommand extends Command { } TextComponent.Builder builder = text(); diff --git a/purpur-server/paper-patches/files/src/main/java/org/spigotmc/WatchdogThread.java.patch b/purpur-server/paper-patches/unapplied-files/src/main/java/org/spigotmc/WatchdogThread.java.patch similarity index 84% rename from purpur-server/paper-patches/files/src/main/java/org/spigotmc/WatchdogThread.java.patch rename to purpur-server/paper-patches/unapplied-files/src/main/java/org/spigotmc/WatchdogThread.java.patch index 7dc409927..44d89c2f9 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/spigotmc/WatchdogThread.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/java/org/spigotmc/WatchdogThread.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java +index 5c1306ac6eb620a38ed5ef3632b611214e1d5dcd..048b96047ac737cf515682593d4632b3c60d98a7 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java -@@ -25,7 +_,7 @@ +@@ -25,7 +25,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre private volatile boolean stopping; private WatchdogThread(long timeoutTime, boolean restart) { @@ -9,7 +17,7 @@ this.timeoutTime = timeoutTime; this.restart = restart; this.earlyWarningEvery = Math.min(GlobalConfiguration.get().watchdog.earlyWarningEvery, timeoutTime); -@@ -75,14 +_,14 @@ +@@ -75,14 +75,14 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre this.lastEarlyWarning = currentTime; if (isLongTimeout) { logger.log(Level.SEVERE, "------------------------------"); @@ -27,7 +35,7 @@ if (net.minecraft.world.level.Level.lastPhysicsProblem != null) { logger.log(Level.SEVERE, "------------------------------"); -@@ -102,12 +_,12 @@ +@@ -102,12 +102,12 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre } // Paper end } else { @@ -42,7 +50,7 @@ FeatureHooks.dumpAllChunkLoadInfo(MinecraftServer.getServer(), isLongTimeout); // Paper - log detailed tick information WatchdogThread.dumpThread(ManagementFactory.getThreadMXBean().getThreadInfo(MinecraftServer.getServer().serverThread.threadId(), Integer.MAX_VALUE), logger); logger.log(Level.SEVERE, "------------------------------"); -@@ -120,7 +_,7 @@ +@@ -120,7 +120,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre WatchdogThread.dumpThread(thread, logger); } } else { diff --git a/purpur-server/paper-patches/files/src/main/resources/log4j2.xml.patch b/purpur-server/paper-patches/unapplied-files/src/main/resources/log4j2.xml.patch similarity index 74% rename from purpur-server/paper-patches/files/src/main/resources/log4j2.xml.patch rename to purpur-server/paper-patches/unapplied-files/src/main/resources/log4j2.xml.patch index 8b4a31032..d9853d97b 100644 --- a/purpur-server/paper-patches/files/src/main/resources/log4j2.xml.patch +++ b/purpur-server/paper-patches/unapplied-files/src/main/resources/log4j2.xml.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml +index 4d881018248133d51661b45a087ebafdca62be8f..7441a667831a2f26c73bd03754846a9fd2a3353a 100644 --- a/src/main/resources/log4j2.xml +++ b/src/main/resources/log4j2.xml -@@ -2,7 +_,16 @@ +@@ -2,7 +2,16 @@ diff --git a/purpur-server/paper-patches/files/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java.patch b/purpur-server/paper-patches/unapplied-files/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java.patch similarity index 73% rename from purpur-server/paper-patches/files/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java.patch rename to purpur-server/paper-patches/unapplied-files/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java.patch index 6fb471079..153f5d136 100644 --- a/purpur-server/paper-patches/files/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java.patch +++ b/purpur-server/paper-patches/unapplied-files/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java.patch @@ -1,6 +1,14 @@ +From 641e5706903b49be5e7541af8d07dd1dea4ba4e4 Mon Sep 17 00:00:00 2001 +From: File +Date: Sun, 20 Apr 1997 05:37:42 -0800 +Subject: [PATCH] purpur paperServer File Patches + + +diff --git a/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java b/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java +index b9ce8c1a98ea847850809fea72a369bd8e7f249e..1ae700532dad07a39a3b973d7c077f308c3301ee 100644 --- a/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java +++ b/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java -@@ -46,6 +_,7 @@ +@@ -46,6 +46,7 @@ public class MinecraftCommandPermissionsTest { Set foundPerms = new HashSet<>(); for (CommandNode child : root.getChildren()) { final String vanillaPerm = VanillaCommandWrapper.getPermission(child); @@ -8,7 +16,7 @@ if (!perms.contains(vanillaPerm)) { missing.add("Missing permission for " + child.getName() + " (" + vanillaPerm + ") command"); } else { -@@ -58,6 +_,25 @@ +@@ -58,6 +59,25 @@ public class MinecraftCommandPermissionsTest { } private static final List TO_SKIP = List.of(