From 7c953451d5de5000228e66ede2ef7ebb2864d0bc Mon Sep 17 00:00:00 2001 From: granny Date: Fri, 19 Dec 2025 20:44:53 -0800 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@f0298536 Fix allowEnteringNetherUsingPortals gamerule not being respected (#13263) PaperMC/Paper@8e5e54f5 Add Waypoint Styling API (#12964) --- gradle.properties | 2 +- .../main/java/org/bukkit/entity/LivingEntity.java.patch | 8 ++++---- .../minecraft-patches/features/0001-Ridables.patch | 4 ++-- .../sources/net/minecraft/world/entity/Entity.java.patch | 8 ++++---- .../features/0004-API-for-any-mob-to-burn-daylight.patch | 8 ++++---- .../craftbukkit/entity/CraftLivingEntity.java.patch | 2 +- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/gradle.properties b/gradle.properties index 99f7c03bb..6160869cd 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ version = 1.21.11-R0.1-SNAPSHOT mcVersion = 1.21.11 apiVersion=1.21.11 -paperCommit = 1f94f1f7af8204ec7bbd94f7b0c1a8ba5fcf5ba8 +paperCommit = 8e5e54f5664c19096ec1a3040dc038bab4fb306b org.gradle.configuration-cache = true org.gradle.caching = true diff --git a/purpur-api/paper-patches/files/src/main/java/org/bukkit/entity/LivingEntity.java.patch b/purpur-api/paper-patches/files/src/main/java/org/bukkit/entity/LivingEntity.java.patch index 092e2189b..f4045e747 100644 --- a/purpur-api/paper-patches/files/src/main/java/org/bukkit/entity/LivingEntity.java.patch +++ b/purpur-api/paper-patches/files/src/main/java/org/bukkit/entity/LivingEntity.java.patch @@ -1,10 +1,10 @@ --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1494,4 +_,20 @@ +@@ -1538,4 +_,20 @@ */ - @ApiStatus.Experimental - @NotNull CombatTracker getCombatTracker(); -+ + @Nullable + Color getWaypointColor(); ++ + // Purpur start - API for any mob to burn daylight + /** + * If this mob will burn in the sunlight diff --git a/purpur-server/minecraft-patches/features/0001-Ridables.patch b/purpur-server/minecraft-patches/features/0001-Ridables.patch index 6a0dd35fe..df4714fee 100644 --- a/purpur-server/minecraft-patches/features/0001-Ridables.patch +++ b/purpur-server/minecraft-patches/features/0001-Ridables.patch @@ -75,7 +75,7 @@ index cd7ecd971b5a0ffdf6cabeaa874f2a221431052e..e587414dd1250b14a0fecf8d1b25dd70 if (itemType == Items.WATER_BUCKET && target instanceof net.minecraft.world.entity.animal.Bucketable && target instanceof LivingEntity && resendData) { target.resendPossiblyDesyncedEntityData(ServerGamePacketListenerImpl.this.player); // Paper - The entire mob gets deleted, so resend it diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 33d2e32880653713da8543c6f6dd1748464474dd..406bc2db911e06bd516f852aed1d72dbdc9ff10e 100644 +index 1f0d0b203a476abb4a9ca223558b3639f15f4f54..497d24540273a1ab5301f4efb8ef66c912f93d8e 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -3373,6 +3373,13 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name @@ -107,7 +107,7 @@ index 33d2e32880653713da8543c6f6dd1748464474dd..406bc2db911e06bd516f852aed1d72db if (this.passengers.size() == 1 && this.passengers.get(0) == passenger) { this.passengers = ImmutableList.of(); } else { -@@ -5464,4 +5479,44 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name +@@ -5463,4 +5478,44 @@ public abstract class Entity implements SyncedDataHolder, DebugValueSource, Name return ((ServerLevel) this.level()).isPositionEntityTicking(this.blockPosition()); } // Paper end - Expose entity id counter diff --git a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch b/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch index cf8c13f92..507819501 100644 --- a/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch +++ b/purpur-server/minecraft-patches/sources/net/minecraft/world/entity/Entity.java.patch @@ -127,7 +127,7 @@ } } } -@@ -3687,7 +_,7 @@ +@@ -3686,7 +_,7 @@ } public int getMaxAirSupply() { @@ -136,7 +136,7 @@ } public int getAirSupply() { -@@ -4222,7 +_,7 @@ +@@ -4221,7 +_,7 @@ } public boolean canUsePortal(boolean allowPassengers) { @@ -145,7 +145,7 @@ } public boolean canTeleport(Level fromLevel, Level toLevel) { -@@ -4741,6 +_,12 @@ +@@ -4740,6 +_,12 @@ return Mth.lerp(partialTick, this.yRotO, this.yRot); } @@ -158,7 +158,7 @@ // Paper start - optimise collisions public boolean updateFluidHeightAndDoFluidPushing(final TagKey fluid, final double flowScale) { if (this.touchingUnloadedChunk()) { -@@ -5161,7 +_,7 @@ +@@ -5160,7 +_,7 @@ } public float maxUpStep() { diff --git a/purpur-server/paper-patches/features/0004-API-for-any-mob-to-burn-daylight.patch b/purpur-server/paper-patches/features/0004-API-for-any-mob-to-burn-daylight.patch index 41d99e777..45e0399b4 100644 --- a/purpur-server/paper-patches/features/0004-API-for-any-mob-to-burn-daylight.patch +++ b/purpur-server/paper-patches/features/0004-API-for-any-mob-to-burn-daylight.patch @@ -24,12 +24,12 @@ index da588e4622aac635ecc2205ea09ceb9722cd59c9..d04ff11b293c458fd4f18f04336421e5 Preconditions.checkArgument(entity != null, "Unknown entity"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index d9129420acaf992c36e171d1b6d399a4b322fea6..d64c10a86a63dac5ce9babcd826e2ecc83b08423 100644 +index 4f31c5604639b4699631449569ba73d064f83dc3..2eeb96681ac9bbc8ba2cba2dfe1cef4a7e61e500 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1088,4 +1088,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { - public CombatTracker getCombatTracker() { - return this.getHandle().getCombatTracker().paperCombatTracker; +@@ -1132,4 +1132,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { + manager.untrackWaypoint(getHandle()); + manager.trackWaypoint(getHandle()); } + + // Purpur start - API for any mob to burn daylight diff --git a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch b/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch index c713f73ad..8f51efee9 100644 --- a/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch +++ b/purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java.patch @@ -1,6 +1,6 @@ --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -482,7 +_,7 @@ +@@ -490,7 +_,7 @@ net.minecraft.server.level.ServerPlayer nmsKiller = killer == null ? null : ((CraftPlayer) killer).getHandle(); this.getHandle().setLastHurtByMob(nmsKiller); if (nmsKiller != null) {