From f752694463b0d1a57e2823fe8282da2d9ee9e775 Mon Sep 17 00:00:00 2001 From: Alpha Date: Sun, 4 Sep 2022 13:28:13 +0900 Subject: [PATCH 01/14] [CI-Skip] Update Funding --- .github/FUNDING.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index d2dc188..ed9ec06 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,9 +1,9 @@ # These are supported funding model platforms -# github: [PrismarineTeam, AlphaKR93] # Stripe doesn't support korea -# open_collective: Prismarine # WIP -patreon: alphakr93_ -# issuehunt: alphakr93 -ko_fi: alphakr93 -custom: ["https://www.paypal.me/alphakr93"]#, "https://toon.at/donate/637349490049950363", "https://www.buymeacoffee.com/alpha93", "TOSS HERE"] +# Stripe github: [PrismarineTeam, AlphaKR93] custom: "https://www.buymeacoffee.com/alphakr93" +# open_collective: Prismarine # Work In Progress +# patreon: alphakr93_ # Work In Progress +# issuehunt: alphakr93 # Work In Progress +# ko_fi: alphakr93 # Work In Progress +custom: ["https://www.paypal.me/alphakr93", "https://toss.me/alphakr93"] #"https://toon.at/donate/637349490049950363" # liberapay: alphakr93 From 494fc8b174476099c15140b92d6f49c28c115284 Mon Sep 17 00:00:00 2001 From: Alpha Date: Sun, 4 Sep 2022 19:12:31 +0900 Subject: [PATCH 02/14] [CI-Skip] i don't have money --- .github/FUNDING.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index ed9ec06..f570df3 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -2,8 +2,8 @@ # Stripe github: [PrismarineTeam, AlphaKR93] custom: "https://www.buymeacoffee.com/alphakr93" # open_collective: Prismarine # Work In Progress -# patreon: alphakr93_ # Work In Progress +patreon: alphakr93_ # Work In Progress # issuehunt: alphakr93 # Work In Progress -# ko_fi: alphakr93 # Work In Progress +ko_fi: alphakr93 # Work In Progress custom: ["https://www.paypal.me/alphakr93", "https://toss.me/alphakr93"] #"https://toon.at/donate/637349490049950363" # liberapay: alphakr93 From 6a100110ae40945cb1ed47be7c88965ba16d81e6 Mon Sep 17 00:00:00 2001 From: Github Actions Date: Tue, 6 Sep 2022 13:42:03 +0000 Subject: [PATCH 03/14] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@8d152b7 [ci-skip] Clarify instructions in README.md --- patches/api/0001-Pufferfish-API-Changes.patch | 2 +- patches/api/0002-Purpur-API-Changes.patch | 2 +- patches/server/0001-Pufferfish-Server-Changes.patch | 2 +- patches/server/0002-Purpur-Server-Changes.patch | 2 +- upstream-data | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index f991548..6685fd8 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 2 Sep 2022 18:48:27 +0000 +Date: Tue, 6 Sep 2022 13:33:19 +0000 Subject: [PATCH] Pufferfish API Changes Original by Kevin Raneri diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index 687891a..a59a6a4 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 2 Sep 2022 18:50:16 +0000 +Date: Tue, 6 Sep 2022 13:35:04 +0000 Subject: [PATCH] Purpur API Changes Original by PurpurMC Team diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index cf07278..acff87f 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 2 Sep 2022 18:48:27 +0000 +Date: Tue, 6 Sep 2022 13:33:19 +0000 Subject: [PATCH] Pufferfish Server Changes Original by Kevin Raneri diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index 6a2d0ab..dbaad47 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 2 Sep 2022 18:50:16 +0000 +Date: Tue, 6 Sep 2022 13:35:03 +0000 Subject: [PATCH] Purpur Server Changes Original by PurpurMC Team diff --git a/upstream-data b/upstream-data index 4cce853..7d64aa2 100644 --- a/upstream-data +++ b/upstream-data @@ -1,2 +1,2 @@ -purpur = dca1dec832262574c133ac1db4e4b97a735c2020 +purpur = 8d152b704b2e6cce52cbaf7ec2be6d7896564efd pufferfish = 3888607ea6f8424c4a8e393d93cd21932e4500ea From 2530a112d0943ea29a49b8e8e5994330d5a0491b Mon Sep 17 00:00:00 2001 From: Github Actions Date: Tue, 6 Sep 2022 19:46:11 +0000 Subject: [PATCH 04/14] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@6dc65d2 Fix MC-179072 --- patches/api/0001-Pufferfish-API-Changes.patch | 2 +- patches/api/0002-Purpur-API-Changes.patch | 2 +- .../0001-Pufferfish-Server-Changes.patch | 2 +- .../server/0002-Purpur-Server-Changes.patch | 20 ++++++++++++++++++- upstream-data | 2 +- 5 files changed, 23 insertions(+), 5 deletions(-) diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index 6685fd8..01353b7 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 13:33:19 +0000 +Date: Tue, 6 Sep 2022 19:36:02 +0000 Subject: [PATCH] Pufferfish API Changes Original by Kevin Raneri diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index a59a6a4..a69b199 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 13:35:04 +0000 +Date: Tue, 6 Sep 2022 19:38:01 +0000 Subject: [PATCH] Purpur API Changes Original by PurpurMC Team diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index acff87f..63f016b 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 13:33:19 +0000 +Date: Tue, 6 Sep 2022 19:36:02 +0000 Subject: [PATCH] Pufferfish Server Changes Original by Kevin Raneri diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index dbaad47..b6e8a7a 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 13:35:03 +0000 +Date: Tue, 6 Sep 2022 19:38:01 +0000 Subject: [PATCH] Purpur Server Changes Original by PurpurMC Team @@ -5822,6 +5822,24 @@ index 5c64905e90ccca6e0b347241ddf9cc3f71058b8e..3bd7521b131b2b40f807bdc7ab95e64c this.horse.tameWithName((Player) entity); return; } +diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/SwellGoal.java b/src/main/java/net/minecraft/world/entity/ai/goal/SwellGoal.java +index 19540fd4a7f992888fadb6501d0c8a5a7e71fcf6..8562cbfa258499bc04e5ffbcb4402dfc78ed20c3 100644 +--- a/src/main/java/net/minecraft/world/entity/ai/goal/SwellGoal.java ++++ b/src/main/java/net/minecraft/world/entity/ai/goal/SwellGoal.java +@@ -21,6 +21,13 @@ public class SwellGoal extends Goal { + return this.creeper.getSwellDir() > 0 || livingEntity != null && this.creeper.distanceToSqr(livingEntity) < 9.0D; + } + ++ // Purpur start ++ @Override ++ public boolean canContinueToUse() { ++ return !net.minecraft.world.entity.EntitySelector.NO_CREATIVE_OR_SPECTATOR.test(this.creeper.getTarget()) && canUse(); ++ } ++ // Purpur end ++ + @Override + public void start() { + this.creeper.getNavigation().stop(); diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/TemptGoal.java b/src/main/java/net/minecraft/world/entity/ai/goal/TemptGoal.java index 79bb13c5614bab1f0749c5f8f57f762c6216c564..2cbc9adc8e417def48be03d08174a5833068ec65 100644 --- a/src/main/java/net/minecraft/world/entity/ai/goal/TemptGoal.java diff --git a/upstream-data b/upstream-data index 7d64aa2..78bc1a7 100644 --- a/upstream-data +++ b/upstream-data @@ -1,2 +1,2 @@ -purpur = 8d152b704b2e6cce52cbaf7ec2be6d7896564efd +purpur = 6dc65d28c63416f89f2e43d227484d75f25c0352 pufferfish = 3888607ea6f8424c4a8e393d93cd21932e4500ea From d7a6ca56d4e6d5e6f0959e73dd7567d17c87b67f Mon Sep 17 00:00:00 2001 From: Github Actions Date: Thu, 8 Sep 2022 15:20:53 +0000 Subject: [PATCH 05/14] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@36a5f15 Allow preventing BlockDestroyEvent from dropping items (#8349) --- gradle.properties | 2 +- .../server/0001-Pufferfish-Server-Changes.patch | 6 +++--- patches/server/0002-Purpur-Server-Changes.patch | 14 +++++++------- .../0019-Try-to-remove-erroring-entity.patch | 4 ++-- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/gradle.properties b/gradle.properties index 7ed806b..984267c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = net.prismarineteam.prismarine version = 1.19.2-R0.1-SNAPSHOT -paperCommit = 09904fd780175821a43adf74cc5a00d363e4a83d +paperCommit = 36a5f150c550d03ea24cbc5b1bcc1993a44cb2eb org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 63f016b..e85d9e6 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -4851,7 +4851,7 @@ index 468c635d31cfa8051666bbefce8df4b448e9ed93..17e869074b8cf29a8c3280499a27e951 final String id; private final GameRules.Category category; diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 5a2a1d394852d39ea576624586f7fa736dec807c..0681a7499755b573c191804b38ac8783eb7d0f32 100644 +index ceb1f18ec16ddcda792ef0393b5f4649fbef3017..388a153113d87ba99515828c6d535110b4413c7c 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -271,6 +271,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -4978,7 +4978,7 @@ index 5a2a1d394852d39ea576624586f7fa736dec807c..0681a7499755b573c191804b38ac8783 public boolean isInWorldBounds(BlockPos pos) { return pos.isInsideBuildHeightAndWorldBoundsHorizontal(this); // Paper - use better/optimized check } -@@ -896,13 +999,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -897,13 +1000,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { try { tickConsumer.accept(entity); MinecraftServer.getServer().executeMidTickTasks(); // Paper - execute chunk tasks mid tick @@ -4994,7 +4994,7 @@ index 5a2a1d394852d39ea576624586f7fa736dec807c..0681a7499755b573c191804b38ac8783 // Paper end } } -@@ -1388,6 +1491,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1389,6 +1492,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } public ProfilerFiller getProfiler() { diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index b6e8a7a..274630f 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -16914,7 +16914,7 @@ index 01477e7240f9e33d08d416a7d40ee10f3e5d4abf..c9def2202d7c2a523858ec124df2beaf } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed2b8de3dd 100644 +index 388a153113d87ba99515828c6d535110b4413c7c..5e0fb02ccd1204a72b2d730a25e35844a07c5759 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -174,6 +174,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -17006,7 +17006,7 @@ index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed } /* -@@ -944,18 +991,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -945,18 +992,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } protected void tickBlockEntities() { @@ -17030,7 +17030,7 @@ index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed // Spigot start // Iterator iterator = this.blockEntityTickers.iterator(); int tilesThisCycle = 0; -@@ -988,10 +1035,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -989,10 +1036,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } this.blockEntityTickers.removeAll(toRemove); @@ -17043,7 +17043,7 @@ index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed spigotConfig.currentPrimedTnt = 0; // Spigot } -@@ -1152,7 +1199,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1153,7 +1200,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Override public List getEntities(@Nullable Entity except, AABB box, Predicate predicate) { @@ -17052,7 +17052,7 @@ index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed List list = Lists.newArrayList(); this.entitySliceManager.getEntities(except, box, list, predicate); // Paper - optimise this call return list; -@@ -1160,7 +1207,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1161,7 +1208,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Override public List getEntities(EntityTypeTest filter, AABB box, Predicate predicate) { @@ -17061,7 +17061,7 @@ index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed List list = Lists.newArrayList(); // Paper start - optimise this call -@@ -1491,7 +1538,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1492,7 +1539,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } public ProfilerFiller getProfiler() { @@ -17070,7 +17070,7 @@ index 0681a7499755b573c191804b38ac8783eb7d0f32..018a5c13d3f0321d4346e6c1845f1aed return (ProfilerFiller) this.profiler.get(); } -@@ -1567,4 +1614,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1568,4 +1615,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return null; } // Paper end diff --git a/patches/server/0019-Try-to-remove-erroring-entity.patch b/patches/server/0019-Try-to-remove-erroring-entity.patch index d28925c..03696a2 100644 --- a/patches/server/0019-Try-to-remove-erroring-entity.patch +++ b/patches/server/0019-Try-to-remove-erroring-entity.patch @@ -26,10 +26,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 2b0f8f1c4b31ab80a8b118f6b4598d1eb26ed802..d3bef912129a0524977b2950555b566ddaced7cb 100644 +index d16e8c5d3e20ee449955f77a212e84724fd50df4..3bebca04092b1a42c774cfacb273032ee9ecb3c9 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1049,13 +1049,22 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1050,13 +1050,22 @@ public abstract class Level implements LevelAccessor, AutoCloseable { tickConsumer.accept(entity); MinecraftServer.getServer().executeMidTickTasks(); // Paper - execute chunk tasks mid tick } catch (Throwable throwable) { // Pufferfish - diff on change ServerLevel.tick From 52c3540f5d3f64f64fe6525959533ac23c943fce Mon Sep 17 00:00:00 2001 From: Github Actions Date: Fri, 9 Sep 2022 18:11:44 +0000 Subject: [PATCH 06/14] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@5f14c32 Updated Upstream (Paper) --- patches/api/0001-Pufferfish-API-Changes.patch | 2 +- patches/api/0002-Purpur-API-Changes.patch | 2 +- patches/server/0001-Pufferfish-Server-Changes.patch | 2 +- patches/server/0002-Purpur-Server-Changes.patch | 2 +- upstream-data | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index 01353b7..7142c47 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 19:36:02 +0000 +Date: Fri, 9 Sep 2022 18:00:15 +0000 Subject: [PATCH] Pufferfish API Changes Original by Kevin Raneri diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index a69b199..a5b6390 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 19:38:01 +0000 +Date: Fri, 9 Sep 2022 18:02:28 +0000 Subject: [PATCH] Purpur API Changes Original by PurpurMC Team diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index e85d9e6..512c908 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 19:36:02 +0000 +Date: Fri, 9 Sep 2022 18:00:15 +0000 Subject: [PATCH] Pufferfish Server Changes Original by Kevin Raneri diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index 274630f..f9a7b52 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Tue, 6 Sep 2022 19:38:01 +0000 +Date: Fri, 9 Sep 2022 18:02:27 +0000 Subject: [PATCH] Purpur Server Changes Original by PurpurMC Team diff --git a/upstream-data b/upstream-data index 78bc1a7..9c793b3 100644 --- a/upstream-data +++ b/upstream-data @@ -1,2 +1,2 @@ -purpur = 6dc65d28c63416f89f2e43d227484d75f25c0352 +purpur = 5f14c32a66346931150de4026a38365b19000fcc pufferfish = 3888607ea6f8424c4a8e393d93cd21932e4500ea From f73f2cec5188a36278cd298d321cb4326e253414 Mon Sep 17 00:00:00 2001 From: Github Actions Date: Fri, 9 Sep 2022 19:18:57 +0000 Subject: [PATCH 07/14] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@e51401e Updated Upstream (Bukkit/CraftBukkit/Spigot) (#8347) --- gradle.properties | 2 +- patches/api/0002-Purpur-API-Changes.patch | 4 +-- .../server/0002-Purpur-Server-Changes.patch | 26 +++++++++---------- patches/server/0005-Rebrand.patch | 10 +++---- .../server/0006-Prismarine-config-files.patch | 6 ++--- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/gradle.properties b/gradle.properties index 984267c..8c7e018 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = net.prismarineteam.prismarine version = 1.19.2-R0.1-SNAPSHOT -paperCommit = 36a5f150c550d03ea24cbc5b1bcc1993a44cb2eb +paperCommit = e51401e7649bc7359bfc41b4be3083240354a2b2 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index a5b6390..6ef97c3 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1171,10 +1171,10 @@ index d0bef15785493b512ff0f7414c1d58d38fead581..fd213c026fdfb3030d0c37f651a88857 + // Purpur end } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 8fa8922ad2fb0ea8f770368faff61e56e9761df9..6c46107e13a5fd648d64844ffa5b326d4909d702 100644 +index a1dba2bcc2a636718a6f377907afc82add617fa2..a9b79beb8d16ed74c953ff46ad61945327d685e8 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -909,4 +909,41 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -917,4 +917,41 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setHurtDirection(float hurtDirection); // Paper end diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index f9a7b52..633398b 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -2895,7 +2895,7 @@ index 80c1e0e47818486a68e0114b063395290365346b..c677a55db62b4d197eeb1bf5d929e240 Util.logAndPauseIfInIde("Detected setBlock in a far chunk [" + i + ", " + j + "], pos: " + pos + ", status: " + this.generatingStatus + (this.currentlyGenerating == null ? "" : ", currently generating: " + (String) this.currentlyGenerating.get())); hasSetFarWarned = true; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d66b44c5fe 100644 +index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76dbf4500c4 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -260,6 +260,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -3221,7 +3221,7 @@ index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d6 ServerGamePacketListenerImpl.LOGGER.warn("{} sent expired chat: '{}'. Is the client/server system time unsynchronized? c: {} s: {}", this.player.getName().getString(), playerchatmessage.signedContent().plain(), playerchatmessage.timeStamp().getEpochSecond(), Instant.now().getEpochSecond()); // Paper } -@@ -2905,6 +2996,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2899,6 +2990,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) { @@ -3229,7 +3229,7 @@ index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d6 packet.dispatch(new ServerboundInteractPacket.Handler() { private void performInteraction(InteractionHand enumhand, ServerGamePacketListenerImpl.EntityInteraction playerconnection_a, PlayerInteractEntityEvent event) { // CraftBukkit ItemStack itemstack = ServerGamePacketListenerImpl.this.player.getItemInHand(enumhand).copy(); -@@ -2915,6 +3007,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2909,6 +3001,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event); @@ -3238,7 +3238,7 @@ index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d6 // Entity in bucket - SPIGOT-4048 and SPIGOT-6859 if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { ServerGamePacketListenerImpl.this.send(new ClientboundAddEntityPacket(entity)); -@@ -3571,11 +3665,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3565,11 +3659,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic for (int i = 0; i < signText.size(); ++i) { FilteredText filteredtext = (FilteredText) signText.get(i); @@ -3259,7 +3259,7 @@ index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d6 } SignChangeEvent event = new SignChangeEvent((org.bukkit.craftbukkit.block.CraftBlock) player.getWorld().getBlockAt(x, y, z), this.player.getBukkitEntity(), lines); this.cserver.getPluginManager().callEvent(event); -@@ -3597,6 +3697,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3591,6 +3691,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @Override public void handleKeepAlive(ServerboundKeepAlivePacket packet) { @@ -3276,7 +3276,7 @@ index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d6 //PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); // CraftBukkit // Paper - This shouldn't be on the main thread if (this.keepAlivePending && packet.getId() == this.keepAliveChallenge) { int i = (int) (Util.getMillis() - this.keepAliveTime); -@@ -3647,6 +3757,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3641,6 +3751,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister"); private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support @@ -3284,7 +3284,7 @@ index 3d4e0be647f48a33d1afcdbec62c6624f2086294..d70c9d4a77edce10f783ab6c53b1e2d6 @Override public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { -@@ -3671,6 +3782,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3665,6 +3776,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex); this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause } @@ -19797,10 +19797,10 @@ index 1b6ae90acffa06502902e11473b65c8431616b05..42058ebca02f1ae7fdf970b9fdf36afc public PersistentDataContainer getPersistentDataContainer() { return this.persistentDataContainer; diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 56a784e943cb5d8b15b41e3e66545ebf166c221c..3080b2a7920a736880c48b66164ed45686ab1d44 100644 +index f30621be24c6c3a4f173436fce1ad1c13507c84f..8a4c8701122edf2f29edbe97e4fa199da2744e9e 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -164,6 +164,20 @@ public class Main { +@@ -166,6 +166,20 @@ public class Main { .describedAs("Jar file"); // Paper end @@ -19821,7 +19821,7 @@ index 56a784e943cb5d8b15b41e3e66545ebf166c221c..3080b2a7920a736880c48b66164ed456 // Paper start acceptsAll(asList("server-name"), "Name of the server") .withRequiredArg() -@@ -268,7 +282,7 @@ public class Main { +@@ -270,7 +284,7 @@ public class Main { System.setProperty(TerminalConsoleAppender.JLINE_OVERRIDE_PROPERTY, "false"); // Paper } @@ -20040,7 +20040,7 @@ index fea44ba6a6584b4a510af6a58cab07eecec6b68b..f3bf5199bc7ddf8a3d0dc67a184e7690 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index c022751e3b45469cc0ad6732e2d6ff08918bafa4..76a4803decea19f8bed8cb11e73bd7895675a3f4 100644 +index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e2c5e9cb3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -425,7 +425,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -20079,7 +20079,7 @@ index c022751e3b45469cc0ad6732e2d6ff08918bafa4..76a4803decea19f8bed8cb11e73bd789 } return effects; } -@@ -808,7 +808,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -813,7 +813,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return EntityCategory.WATER; } @@ -20088,7 +20088,7 @@ index c022751e3b45469cc0ad6732e2d6ff08918bafa4..76a4803decea19f8bed8cb11e73bd789 } @Override -@@ -920,4 +920,32 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -925,4 +925,32 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { throw new IllegalArgumentException(entityCategory + " is an unrecognized entity category"); } // Paper end diff --git a/patches/server/0005-Rebrand.patch b/patches/server/0005-Rebrand.patch index e5b2536..1d15d9d 100644 --- a/patches/server/0005-Rebrand.patch +++ b/patches/server/0005-Rebrand.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand diff --git a/build.gradle.kts b/build.gradle.kts -index 6b72c9d76ac7a98cc0af0adc9220d21072d4f478..f6cfb7b6b7fc3b9a98268f39b54b23b40d0f54f1 100644 +index dc00d06f9bd4cc7403e0fe89822ed40ed2e148c8..cdfc24c814f15fe8ade592192f7c6a251b5b6e3d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ plugins { @@ -168,7 +168,7 @@ index 6b2c99ddfb37fdafb4734bdbba4de2b130ea18e8..90713ba4af50af926dda8dc53fe07c08 this.getRunningThread().stop(); try { diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index f613825c69a8d683b8029fe34503125969980341..af7c916f31926399445aeb1f76ec2bee79dd7821 100644 +index 13399302916bbf39cd08cfcefaf3358ad58ee8c4..0c648611658c4c1fae08e867c3090c7d0241a189 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -113,7 +113,7 @@ public class RegionFileStorage implements AutoCloseable { @@ -181,7 +181,7 @@ index f613825c69a8d683b8029fe34503125969980341..af7c916f31926399445aeb1f76ec2bee private static final int DEFAULT_SIZE_THRESHOLD = 1024 * 8; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7e89628e1f440a9088fff27952e4a958b2a4f4d3..ae57213514254811f85a26c5861df99bdec0c1f6 100644 +index db30708c5376d00a42baebf6957821798253aa64..f7c2aaff199f039daf79e39c19355d4a6d31f05e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper @@ -194,10 +194,10 @@ index 7e89628e1f440a9088fff27952e4a958b2a4f4d3..ae57213514254811f85a26c5861df99b private final String bukkitVersion = Versioning.getBukkitVersion(); private final Logger logger = Logger.getLogger("Minecraft"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 76a4803decea19f8bed8cb11e73bd7895675a3f4..2ff05b28158feea57f44a8e7ceda7e24ee72e571 100644 +index c0f32ec1f8c14d310a044889b520446e2c5e9cb3..a5e1e430b443e58c9cdb4fb2c055fde0a41dacc7 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -808,7 +808,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -813,7 +813,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return EntityCategory.WATER; } diff --git a/patches/server/0006-Prismarine-config-files.patch b/patches/server/0006-Prismarine-config-files.patch index 9f8db9e..e6e599b 100644 --- a/patches/server/0006-Prismarine-config-files.patch +++ b/patches/server/0006-Prismarine-config-files.patch @@ -25,7 +25,7 @@ index 68ee7f105ad0e5e885fdf78b049cf9a6d3f7b2ed..c387154d61a0ab9a7ba4bdd8f07a8a58 io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider // Paper end diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 018a5c13d3f0321d4346e6c1845f1aed2b8de3dd..25c8294a36d2f062ca4882820e99315aabf5dde8 100644 +index 5e0fb02ccd1204a72b2d730a25e35844a07c5759..9a38eebd6805e5ae18390eaa2f5cfd36be31be4e 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -175,6 +175,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -391,10 +391,10 @@ index f7c2aaff199f039daf79e39c19355d4a6d31f05e..9b3c1b79f766ff7b801971cb917ed17e @Override public void restart() { diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 3080b2a7920a736880c48b66164ed45686ab1d44..6b4cb407f1134f097c586ae5b855739f9b3d9e6a 100644 +index 8a4c8701122edf2f29edbe97e4fa199da2744e9e..2fc8c86a810329307c63758364bd494d8c328f80 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -178,6 +178,14 @@ public class Main { +@@ -180,6 +180,14 @@ public class Main { .describedAs("Yml file"); // Purpur end From 3ec9336b70d3640feb29a617e57a082dd9b115f1 Mon Sep 17 00:00:00 2001 From: Github Actions Date: Fri, 9 Sep 2022 21:40:12 +0000 Subject: [PATCH 08/14] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@51183af Fix console completer/highlighter having invalid source stack (#8346) --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 8c7e018..52ee006 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = net.prismarineteam.prismarine version = 1.19.2-R0.1-SNAPSHOT -paperCommit = e51401e7649bc7359bfc41b4be3083240354a2b2 +paperCommit = 51183af967aafb3d57dc19421da1bcb0aea9d3d2 org.gradle.caching = true org.gradle.parallel = true From 03e85877882bbbee7940bf105f0c6c0623654e16 Mon Sep 17 00:00:00 2001 From: Github Actions Date: Sat, 10 Sep 2022 01:31:43 +0000 Subject: [PATCH 09/14] Updated Upstream (Pufferfish) Upstream has released updates that appear to apply and compile correctly Pufferfish Changes: pufferfish-gg/Pufferfish@08aeb1a Updated Upstream (Paper) --- patches/api/0001-Pufferfish-API-Changes.patch | 2 +- patches/server/0001-Pufferfish-Server-Changes.patch | 4 ++-- upstream-data | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index 7142c47..be8cc1a 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 9 Sep 2022 18:00:15 +0000 +Date: Sat, 10 Sep 2022 01:24:57 +0000 Subject: [PATCH] Pufferfish API Changes Original by Kevin Raneri diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 512c908..7bb6a56 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 9 Sep 2022 18:00:15 +0000 +Date: Sat, 10 Sep 2022 01:24:57 +0000 Subject: [PATCH] Pufferfish Server Changes Original by Kevin Raneri @@ -3203,7 +3203,7 @@ index 96bb0e56f12437037b598cd7baabf369e5994517..8ed9f14f1ca71111a8215b28821bd5e3 this.getRandomBlockPosition(j, 0, k, 15, blockposition); int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 325def3149693f64b2b21e0e655b5b3e888fd9a0..3d4e0be647f48a33d1afcdbec62c6624f2086294 100644 +index 2efb20bf15f766ecb36477ec9739abaa66813dcc..d3dd458dc1d3eb7f426565e38d63bb26c48cec4b 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1216,6 +1216,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic diff --git a/upstream-data b/upstream-data index 9c793b3..35fdd61 100644 --- a/upstream-data +++ b/upstream-data @@ -1,2 +1,2 @@ purpur = 5f14c32a66346931150de4026a38365b19000fcc -pufferfish = 3888607ea6f8424c4a8e393d93cd21932e4500ea +pufferfish = 08aeb1a67c9ec3a5c788a8cec0b2c819a17af60f From 408396a12a4f41518723f669dec9bf80e9af9111 Mon Sep 17 00:00:00 2001 From: Github Actions Date: Sat, 10 Sep 2022 10:04:02 +0000 Subject: [PATCH 10/14] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@664774a Updated Upstream (Paper) --- patches/api/0001-Pufferfish-API-Changes.patch | 2 +- patches/api/0002-Purpur-API-Changes.patch | 2 +- patches/server/0001-Pufferfish-Server-Changes.patch | 2 +- patches/server/0002-Purpur-Server-Changes.patch | 4 ++-- upstream-data | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index be8cc1a..381c063 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Sat, 10 Sep 2022 01:24:57 +0000 +Date: Sat, 10 Sep 2022 09:54:55 +0000 Subject: [PATCH] Pufferfish API Changes Original by Kevin Raneri diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index 6ef97c3..80142d2 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 9 Sep 2022 18:02:28 +0000 +Date: Sat, 10 Sep 2022 09:56:51 +0000 Subject: [PATCH] Purpur API Changes Original by PurpurMC Team diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 7bb6a56..34426e7 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Sat, 10 Sep 2022 01:24:57 +0000 +Date: Sat, 10 Sep 2022 09:54:55 +0000 Subject: [PATCH] Pufferfish Server Changes Original by Kevin Raneri diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index 633398b..fc8fae5 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Fri, 9 Sep 2022 18:02:27 +0000 +Date: Sat, 10 Sep 2022 09:56:51 +0000 Subject: [PATCH] Purpur Server Changes Original by PurpurMC Team @@ -179,7 +179,7 @@ index bf42969859545a8a520923ef1836ffa4a5cc24a0..fba5dbdb7bcbb55400ef18342c9b5461 } } diff --git a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java -index b0390eedb507d27426d1e1d73bd4ab63aec89ebe..005fdd2e2ebc0b6f7cb06b2efdb705b9ed23a1ea 100644 +index c5d5648f4ca603ef2b1df723b58f9caf4dd3c722..3cb56595822799926a8141e60a42f5d1edfc6de5 100644 --- a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java +++ b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java @@ -17,7 +17,7 @@ public final class PaperConsole extends SimpleTerminalConsole { diff --git a/upstream-data b/upstream-data index 35fdd61..d9b71aa 100644 --- a/upstream-data +++ b/upstream-data @@ -1,2 +1,2 @@ -purpur = 5f14c32a66346931150de4026a38365b19000fcc +purpur = 664774af5abe25721a61eff50cdec1b3b622711d pufferfish = 08aeb1a67c9ec3a5c788a8cec0b2c819a17af60f From 5af5013d55252c6dba4069d0913ebd44816f346b Mon Sep 17 00:00:00 2001 From: Alpha Date: Mon, 12 Sep 2022 21:06:45 +0900 Subject: [PATCH 11/14] Add 1 second tps average in TPS --- ...0025-Add-1-second-tps-average-in-TPS.patch | 106 ++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 patches/server/0025-Add-1-second-tps-average-in-TPS.patch diff --git a/patches/server/0025-Add-1-second-tps-average-in-TPS.patch b/patches/server/0025-Add-1-second-tps-average-in-TPS.patch new file mode 100644 index 0000000..8af5b8c --- /dev/null +++ b/patches/server/0025-Add-1-second-tps-average-in-TPS.patch @@ -0,0 +1,106 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Alpha +Date: Mon, 12 Sep 2022 20:11:12 +0900 +Subject: [PATCH] Add 1 second tps average in TPS + + +diff --git a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java +index f9251183df72ddc56662fd3f02acf21641a2200c..e4d169ba4cf6d0bee8242f826825181c7afc4a92 100644 +--- a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java ++++ b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java +@@ -58,7 +58,7 @@ public class RAMDetails extends JList { + GraphData data = RAMGraph.DATA.peekLast(); + Vector vector = new Vector<>(); + +- double[] tps = new double[] {server.tps5s.getAverage(), server.tps1.getAverage(), server.tps5.getAverage(), server.tps15.getAverage()}; // Purpur ++ double[] tps = new double[] {server.tps1s.getAverage(), server.tps5s.getAverage(), server.tps1.getAverage(), server.tps5.getAverage(), server.tps15.getAverage()}; // Purpur // Prismarine + String[] tpsAvg = new String[tps.length]; + + for ( int g = 0; g < tps.length; g++) { +@@ -67,7 +67,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(getAverage(server.tickTimes)) + " ms"); +- vector.add("TPS from last 5s, 1m, 5m, 15m: " + String.join(", ", tpsAvg)); // Purpur ++ vector.add("TPS from last 1s, 5s, 1m, 5m, 15m: " + String.join(", ", tpsAvg)); // Purpur // Prismarine + + setListData(vector); + } +diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java +index 521741f363243fcc7d727825a0d1c84de56ac7bb..0e4d08cf3db9ea429ffd018d8b163d59e2d29502 100644 +--- a/src/main/java/net/minecraft/server/MinecraftServer.java ++++ b/src/main/java/net/minecraft/server/MinecraftServer.java +@@ -291,7 +291,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0 && args[0].equals("mem") && sender.hasPermission("bukkit.command.tpsmemory")) { + sender.sendMessage(ChatColor.GOLD + "Current Memory Usage: " + ChatColor.GREEN + ((Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()) / (1024 * 1024)) + "/" + (Runtime.getRuntime().totalMemory() / (1024 * 1024)) + " mb (Max: " + (Runtime.getRuntime().maxMemory() / (1024 * 1024)) + " mb)"); + if (!hasShownMemoryWarning) { From 1b045e1faee3d38ea6c7cdd681f9c5c9cedb53c0 Mon Sep 17 00:00:00 2001 From: Alpha Date: Mon, 12 Sep 2022 22:21:58 +0900 Subject: [PATCH 12/14] Updated Upstream (Paper) --- gradle.properties | 2 +- patches/api/0002-Purpur-API-Changes.patch | 8 +- .../api/0007-Purpur-PR-Fire-Immune-API.patch | 4 +- .../0001-Pufferfish-Server-Changes.patch | 22 +-- .../server/0002-Purpur-Server-Changes.patch | 166 +++++++++--------- patches/server/0005-Rebrand.patch | 6 +- patches/server/0008-Akarin-patches.patch | 4 +- .../server/0009-JettPack-Server-Patches.patch | 12 +- .../server/0010-Slice-Server-Patches.patch | 8 +- .../0014-Purpur-PR-Fire-Immune-API.patch | 12 +- .../0022-Implement-No-Chat-Reports.patch | 6 +- 11 files changed, 121 insertions(+), 129 deletions(-) diff --git a/gradle.properties b/gradle.properties index 52ee006..3f4d700 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = net.prismarineteam.prismarine version = 1.19.2-R0.1-SNAPSHOT -paperCommit = 51183af967aafb3d57dc19421da1bcb0aea9d3d2 +paperCommit = ef0e5a642d33ac62f070c45a61cb42647b2744cd org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index 80142d2..433f47f 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1032,10 +1032,10 @@ index 9e7f42caab1204036f4203354c115fd40c6def92..1bc6a6930e9a5881a4fe4bf208da4430 void setPlayerSpawned(boolean playerSpawned); } diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 4d4a0d15876cc48c9c0456b9f11a5dda37fd56ce..1f116f33e6dbce8d8d67d799beeedecf792cd728 100644 +index 6dd81f07ef4d6993187987d3352a01771ffb715e..be7ad89699619aba9df4699403c9a70fd2bc9da1 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -919,4 +919,42 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -946,4 +946,42 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent */ boolean wouldCollideUsing(@NotNull BoundingBox boundingBox); // Paper End - Collision API @@ -1171,10 +1171,10 @@ index d0bef15785493b512ff0f7414c1d58d38fead581..fd213c026fdfb3030d0c37f651a88857 + // Purpur end } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index a1dba2bcc2a636718a6f377907afc82add617fa2..a9b79beb8d16ed74c953ff46ad61945327d685e8 100644 +index 4af5e8d0cba6555f7615e4e809d9aff221c0dc4d..4a4606f2598b868e43c270cd3056d44549bc914e 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -917,4 +917,41 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -986,4 +986,41 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setHurtDirection(float hurtDirection); // Paper end diff --git a/patches/api/0007-Purpur-PR-Fire-Immune-API.patch b/patches/api/0007-Purpur-PR-Fire-Immune-API.patch index eceb3ea..826d5ab 100644 --- a/patches/api/0007-Purpur-PR-Fire-Immune-API.patch +++ b/patches/api/0007-Purpur-PR-Fire-Immune-API.patch @@ -27,10 +27,10 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java -index 1f116f33e6dbce8d8d67d799beeedecf792cd728..94e824ea3fcdce12ed5da0cbb5ad4a031e14707f 100644 +index be7ad89699619aba9df4699403c9a70fd2bc9da1..2c063e7c3725c23129478bcb386b7db029c0821e 100644 --- a/src/main/java/org/bukkit/entity/Entity.java +++ b/src/main/java/org/bukkit/entity/Entity.java -@@ -956,5 +956,20 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent +@@ -983,5 +983,20 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent * @return True if in daylight */ boolean isInDaylight(); diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 34426e7..2c86eb7 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -3203,7 +3203,7 @@ index 96bb0e56f12437037b598cd7baabf369e5994517..8ed9f14f1ca71111a8215b28821bd5e3 this.getRandomBlockPosition(j, 0, k, 15, blockposition); int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 2efb20bf15f766ecb36477ec9739abaa66813dcc..d3dd458dc1d3eb7f426565e38d63bb26c48cec4b 100644 +index 9eb921fec32afa360f3a402e978411fcf3ec618c..cc55cb14f2d0f656213be25a1e428132871ac5dd 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1216,6 +1216,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -3214,7 +3214,7 @@ index 2efb20bf15f766ecb36477ec9739abaa66813dcc..d3dd458dc1d3eb7f426565e38d63bb26 // Paper start if (!this.cserver.isPrimaryThread()) { List pageList = packet.getPages(); -@@ -2362,6 +2363,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2363,6 +2364,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } private boolean updateChatOrder(Instant timestamp) { @@ -3335,7 +3335,7 @@ index 540bc9500c35c0db719b00aa26f6fb3a1b08ed9f..806cb760822a99316b08ad95ff8922df int LARGE_MAX_STACK_SIZE = 64; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f925a8d550ecbf2044a37bfe58b30d6578c5f6af..9630d95ad2d47bb4a043dcb143bb58cd183c00c1 100644 +index 0b3765ff8a25215bc42298b591eeffe022107079..417570c2ad71bc3727e7d5eb841a92ec815d12f6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -292,7 +292,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -3420,7 +3420,7 @@ index f925a8d550ecbf2044a37bfe58b30d6578c5f6af..9630d95ad2d47bb4a043dcb143bb58cd this.level.getProfiler().push("entityBaseTick"); if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking this.feetBlockState = null; -@@ -3991,16 +4024,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4005,16 +4038,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double speed) { @@ -3446,7 +3446,7 @@ index f925a8d550ecbf2044a37bfe58b30d6578c5f6af..9630d95ad2d47bb4a043dcb143bb58cd double d1 = 0.0D; boolean flag = this.isPushedByFluid(); boolean flag1 = false; -@@ -4008,14 +4043,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4022,14 +4057,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { int k1 = 0; BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); @@ -3514,7 +3514,7 @@ index f925a8d550ecbf2044a37bfe58b30d6578c5f6af..9630d95ad2d47bb4a043dcb143bb58cd if (d2 >= axisalignedbb.minY) { flag1 = true; -@@ -4037,9 +4119,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4051,9 +4133,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // CraftBukkit end } } @@ -3541,7 +3541,7 @@ index ac0f0a4da4282c13f6e1f37710cb615d66b8ef2c..ec0319dd4b115e18b368027cc5dbe4d4 public final String id; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cff7993bdafd2f69e46c9985c7601a69ae47f452..8a0e566aa0124480481b17b5b31691849c3ee7cd 100644 +index 33c22f908440664dc9d67f1678a3c4bd8b862457..94f5d710464de0ec4a972b36051e8672b6673cc7 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -3578,7 +3578,7 @@ index cff7993bdafd2f69e46c9985c7601a69ae47f452..8a0e566aa0124480481b17b5b3169184 @Override public boolean hurt(DamageSource source, float amount) { if (this.isInvulnerableTo(source)) { -@@ -1881,6 +1888,20 @@ public abstract class LivingEntity extends Entity { +@@ -1903,6 +1910,20 @@ public abstract class LivingEntity extends Entity { return this.lastClimbablePos; } @@ -3599,7 +3599,7 @@ index cff7993bdafd2f69e46c9985c7601a69ae47f452..8a0e566aa0124480481b17b5b3169184 public boolean onClimbable() { if (this.isSpectator()) { return false; -@@ -3583,7 +3604,10 @@ public abstract class LivingEntity extends Entity { +@@ -3605,7 +3626,10 @@ public abstract class LivingEntity extends Entity { Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ()); // Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists @@ -3612,7 +3612,7 @@ index cff7993bdafd2f69e46c9985c7601a69ae47f452..8a0e566aa0124480481b17b5b3169184 } diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 3646b969fa51b9683ab4137e530c3a6f6fc6c465..e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b 100644 +index 557e90e54439ce0430075403392b5052d5181feb..5ab1f5d36a61e7a7fe8da4e74f75963ea6432101 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -210,14 +210,16 @@ public abstract class Mob extends LivingEntity { @@ -3634,7 +3634,7 @@ index 3646b969fa51b9683ab4137e530c3a6f6fc6c465..e8e60ea8b9e97ed87be78752f398ab25 this.targetSelector.tick(); } } -@@ -854,16 +856,20 @@ public abstract class Mob extends LivingEntity { +@@ -860,16 +862,20 @@ public abstract class Mob extends LivingEntity { if (i % 2 != 0 && this.tickCount > 1) { this.level.getProfiler().push("targetSelector"); diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index fc8fae5..69e705a 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -2895,7 +2895,7 @@ index 80c1e0e47818486a68e0114b063395290365346b..c677a55db62b4d197eeb1bf5d929e240 Util.logAndPauseIfInIde("Detected setBlock in a far chunk [" + i + ", " + j + "], pos: " + pos + ", status: " + this.generatingStatus + (this.currentlyGenerating == null ? "" : ", currently generating: " + (String) this.currentlyGenerating.get())); hasSetFarWarned = true; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76dbf4500c4 100644 +index cc55cb14f2d0f656213be25a1e428132871ac5dd..8533b31b31138b000308107ce4215746edd1f16b 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -260,6 +260,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -3154,7 +3154,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d org.bukkit.event.player.PlayerInteractEvent event = CraftEventFactory.callPlayerInteractEvent(this.player, Action.RIGHT_CLICK_AIR, itemstack, enumhand); cancelled = event.useItemInHand() == Event.Result.DENY; } else { -@@ -2075,12 +2157,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2076,12 +2158,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @Override public void handleResourcePackResponse(ServerboundResourcePackPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); @@ -3176,7 +3176,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d player.getBukkitEntity().setResourcePackStatus(packStatus); this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packStatus)); // CraftBukkit // Paper end -@@ -2369,7 +2460,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2370,7 +2461,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic do { instant1 = (Instant) this.lastChatTimeStamp.get(); if (timestamp.isBefore(instant1)) { @@ -3185,7 +3185,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d } } while (!this.lastChatTimeStamp.compareAndSet(instant1, timestamp)); -@@ -2519,7 +2610,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2520,7 +2611,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } } // Paper End @@ -3194,7 +3194,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot this.LOGGER.info(this.player.getScoreboardName() + " issued server command: " + s); -@@ -2529,7 +2620,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2530,7 +2621,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic this.cserver.getPluginManager().callEvent(event); if (event.isCancelled()) { @@ -3203,7 +3203,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d return; } -@@ -2542,7 +2633,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2543,7 +2634,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic java.util.logging.Logger.getLogger(ServerGamePacketListenerImpl.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); return; } finally { @@ -3212,7 +3212,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d } } // CraftBukkit end -@@ -2604,7 +2695,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2608,7 +2699,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } } @@ -3221,7 +3221,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d ServerGamePacketListenerImpl.LOGGER.warn("{} sent expired chat: '{}'. Is the client/server system time unsynchronized? c: {} s: {}", this.player.getName().getString(), playerchatmessage.signedContent().plain(), playerchatmessage.timeStamp().getEpochSecond(), Instant.now().getEpochSecond()); // Paper } -@@ -2899,6 +2990,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2903,6 +2994,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) { @@ -3229,7 +3229,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d packet.dispatch(new ServerboundInteractPacket.Handler() { private void performInteraction(InteractionHand enumhand, ServerGamePacketListenerImpl.EntityInteraction playerconnection_a, PlayerInteractEntityEvent event) { // CraftBukkit ItemStack itemstack = ServerGamePacketListenerImpl.this.player.getItemInHand(enumhand).copy(); -@@ -2909,6 +3001,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2913,6 +3005,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event); @@ -3238,7 +3238,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d // Entity in bucket - SPIGOT-4048 and SPIGOT-6859 if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { ServerGamePacketListenerImpl.this.send(new ClientboundAddEntityPacket(entity)); -@@ -3565,11 +3659,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3569,11 +3663,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic for (int i = 0; i < signText.size(); ++i) { FilteredText filteredtext = (FilteredText) signText.get(i); @@ -3259,7 +3259,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d } SignChangeEvent event = new SignChangeEvent((org.bukkit.craftbukkit.block.CraftBlock) player.getWorld().getBlockAt(x, y, z), this.player.getBukkitEntity(), lines); this.cserver.getPluginManager().callEvent(event); -@@ -3591,6 +3691,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3595,6 +3695,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @Override public void handleKeepAlive(ServerboundKeepAlivePacket packet) { @@ -3276,7 +3276,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d //PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); // CraftBukkit // Paper - This shouldn't be on the main thread if (this.keepAlivePending && packet.getId() == this.keepAliveChallenge) { int i = (int) (Util.getMillis() - this.keepAliveTime); -@@ -3641,6 +3751,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3645,6 +3755,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister"); private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support @@ -3284,7 +3284,7 @@ index d3dd458dc1d3eb7f426565e38d63bb26c48cec4b..d96ac24bcded35b6009aec7dc7b8c76d @Override public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { -@@ -3665,6 +3776,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3669,6 +3780,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex); this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause } @@ -3942,7 +3942,7 @@ index f5c9be3fde2654bd5a6b3ee737afe96a9393e836..64571396652d4447ce3665cd8cef668c public void setNoCounter(boolean permanent) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039e280c567 100644 +index 417570c2ad71bc3727e7d5eb841a92ec815d12f6..b5a7c5e68daf4fd916930129d70c2c24312457a9 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -156,7 +156,7 @@ import org.bukkit.plugin.PluginManager; @@ -4059,11 +4059,11 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 false, false, null, null); - if (io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { -+ if (this.collidingWithWorldBorder = io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { // Purpur ++ if (this.collidingWithWorldBorder = io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { // Purpur io.papermc.paper.util.CollisionUtil.addBoxesToIfIntersects(world.getWorldBorder().getCollisionShape(), collisionBox, potentialCollisions); } -@@ -1718,7 +1719,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1732,7 +1733,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return this.isInWater() || flag; } @@ -4072,7 +4072,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 if (this.getVehicle() instanceof Boat) { this.wasTouchingWater = false; } else if (this.updateFluidHeightAndDoFluidPushing(FluidTags.WATER, 0.014D)) { -@@ -2767,6 +2768,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2781,6 +2782,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.passengers = ImmutableList.copyOf(list); } @@ -4085,7 +4085,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 } return true; // CraftBukkit } -@@ -2807,6 +2814,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2821,6 +2828,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return false; } // Spigot end @@ -4100,7 +4100,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 if (this.passengers.size() == 1 && this.passengers.get(0) == entity) { this.passengers = ImmutableList.of(); } else { -@@ -2861,12 +2876,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2875,12 +2890,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return Vec3.directionFromRotation(this.getRotationVector()); } @@ -4117,7 +4117,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 } this.isInsidePortal = true; -@@ -2884,7 +2902,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2898,7 +2916,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { ServerLevel worldserver1 = minecraftserver.getLevel(resourcekey); if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit @@ -4126,7 +4126,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 this.portalTime = i; // Paper start io.papermc.paper.event.entity.EntityPortalReadyEvent event = new io.papermc.paper.event.entity.EntityPortalReadyEvent(this.getBukkitEntity(), worldserver1 == null ? null : worldserver1.getWorld(), org.bukkit.PortalType.NETHER); -@@ -2902,7 +2920,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2916,7 +2934,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } } // Paper // CraftBukkit end @@ -4135,7 +4135,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 } this.isInsidePortal = false; -@@ -2917,7 +2935,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2931,7 +2949,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.processPortalCooldown(); @@ -4144,7 +4144,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 } } -@@ -3097,7 +3115,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3111,7 +3129,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public int getMaxAirSupply() { @@ -4153,7 +4153,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 } public int getAirSupply() { -@@ -3356,14 +3374,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3370,14 +3388,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } // Paper end if (this.level instanceof ServerLevel && !this.isRemoved()) { @@ -4170,7 +4170,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 PortalInfo shapedetectorshape = (location == null) ? this.findDimensionEntryPoint(worldserver) : new PortalInfo(new Vec3(location.x(), location.y(), location.z()), Vec3.ZERO, this.yRot, this.xRot, worldserver, null); // CraftBukkit if (shapedetectorshape == null) { -@@ -3397,7 +3415,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3411,7 +3429,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.unRide(); // CraftBukkit end @@ -4179,7 +4179,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 // Paper start - Change lead drop timing to prevent dupe if (this instanceof Mob) { ((Mob) this).dropLeash(true, true); // Paper drop lead -@@ -3420,10 +3438,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3434,10 +3452,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.removeAfterChangingDimensions(); @@ -4192,7 +4192,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 return entity; } } else { -@@ -3536,7 +3554,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3550,7 +3568,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean canChangeDimensions() { @@ -4201,7 +4201,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 } public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) { -@@ -3783,6 +3801,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3797,6 +3815,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return SlotAccess.NULL; } @@ -4222,7 +4222,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 @Override public void sendSystemMessage(Component message) {} -@@ -4023,6 +4055,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4037,6 +4069,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.yRotO = this.getYRot(); } @@ -4235,7 +4235,7 @@ index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..0cdac68d20a77948ef7dd4072b3db039 public boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double speed) { if (false && this.touchingUnloadedChunk()) { // Pufferfish - cost of a lookup here is the same cost as below, so skip return false; -@@ -4516,4 +4554,64 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4530,4 +4568,64 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return ((ServerChunkCache) level.getChunkSource()).isPositionTicking(this); } // Paper end @@ -4495,7 +4495,7 @@ index c1e9b40a4a0f9cdc650caa88b5ea132e06ee2496..b7abcaa32341c292f9f884fa6319fd65 protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4ee43b67b7 100644 +index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc05155a65ba6 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -44,6 +44,7 @@ import net.minecraft.network.syncher.EntityDataAccessor; @@ -4514,7 +4514,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e - public float yya; - public float zza; + public float xxa; public float getStrafeMot() { return xxa; } public void setStrafeMot(float strafe) { xxa = strafe; } // Purpur - OBFHELPER -+ public float yya; public float getVerticalMot() { return yya; } public void setVerticalMot(float vertical) { yya = vertical; } // Purpur - OBFHELPER ++ public public float yya; public float getVerticalMot() { return yya; } public void setVerticalMot(float vertical) { yya = vertical; } // Purpur - OBFHELPER + public float zza; public float getForwardMot() { return zza; } public void setForwardMot(float forward) { zza = forward; } // Purpur - OBFHELPER protected int lerpSteps; protected double lerpX; @@ -4523,7 +4523,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e private boolean skipDropExperience; // CraftBukkit start public int expToDrop; -+ public float safeFallDistance = 3.0F; // Purpur ++ + public float safeFallDistance = 3.0F; // Purpur public boolean forceDrops; public ArrayList drops = new ArrayList(); public final org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes; @@ -4729,7 +4729,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e } // CraftBukkit start - Call death event // Paper start - call advancement triggers with correct entity equipment org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, this.drops, () -> { -@@ -1962,7 +2010,7 @@ public abstract class LivingEntity extends Entity { +@@ -1984,7 +2032,7 @@ public abstract class LivingEntity extends Entity { MobEffectInstance mobeffect = this.getEffect(MobEffects.JUMP); float f2 = mobeffect == null ? 0.0F : (float) (mobeffect.getAmplifier() + 1); @@ -4738,7 +4738,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e } protected void playBlockFallSound() { -@@ -2179,6 +2227,20 @@ public abstract class LivingEntity extends Entity { +@@ -2201,6 +2249,20 @@ public abstract class LivingEntity extends Entity { ((ServerPlayer) damagesource.getEntity()).awardStat(Stats.DAMAGE_DEALT_ABSORBED, Math.round(f2 * 10.0F)); } @@ -4759,7 +4759,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e if (f > 0 || !human) { if (human) { // PAIL: Be sure to drag all this code from the EntityHuman subclass each update. -@@ -2459,7 +2521,7 @@ public abstract class LivingEntity extends Entity { +@@ -2481,7 +2543,7 @@ public abstract class LivingEntity extends Entity { @Override protected void outOfWorld() { @@ -4768,7 +4768,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e } protected void updateSwingTime() { -@@ -2648,7 +2710,7 @@ public abstract class LivingEntity extends Entity { +@@ -2670,7 +2732,7 @@ public abstract class LivingEntity extends Entity { } protected long lastJumpTime = 0L; // Paper @@ -4777,15 +4777,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e double d0 = (double) this.getJumpPower() + this.getJumpBoostPower(); Vec3 vec3d = this.getDeltaMovement(); // Paper start -@@ -2806,6 +2868,7 @@ public abstract class LivingEntity extends Entity { - - if (f3 > 0.0F) { - this.playSound(this.getFallDamageSound((int) f3), 1.0F, 1.0F); -+ if (level.purpurConfig.elytraKineticDamage) // Purpur - this.hurt(DamageSource.FLY_INTO_WALL, f3); - } - } -@@ -3002,10 +3065,10 @@ public abstract class LivingEntity extends Entity { +@@ -3024,10 +3086,10 @@ public abstract class LivingEntity extends Entity { } this.run += (f3 - this.run) * 0.3F; @@ -4799,7 +4791,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e while (this.getYRot() - this.yRotO < -180.0F) { this.yRotO -= 360.0F; -@@ -3039,7 +3102,7 @@ public abstract class LivingEntity extends Entity { +@@ -3061,7 +3123,7 @@ public abstract class LivingEntity extends Entity { this.yHeadRotO += 360.0F; } @@ -4808,7 +4800,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e this.animStep += f2; if (this.isFallFlying()) { ++this.fallFlyTicks; -@@ -3321,19 +3384,19 @@ public abstract class LivingEntity extends Entity { +@@ -3343,19 +3405,19 @@ public abstract class LivingEntity extends Entity { } this.setDeltaMovement(d4, d5, d6); @@ -4833,7 +4825,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e if (this.jumping && this.isAffectedByFluids()) { double d7; -@@ -3360,8 +3423,8 @@ public abstract class LivingEntity extends Entity { +@@ -3382,8 +3444,8 @@ public abstract class LivingEntity extends Entity { this.noJumpDelay = 0; } @@ -4844,7 +4836,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e this.xxa *= 0.98F; this.zza *= 0.98F; this.updateFallFlying(); -@@ -3370,8 +3433,8 @@ public abstract class LivingEntity extends Entity { +@@ -3392,8 +3454,8 @@ public abstract class LivingEntity extends Entity { // SpigotTimings.timerEntityAIMove.startTiming(); // Spigot // Paper this.travel(new Vec3((double) this.xxa, (double) this.yya, (double) this.zza)); // SpigotTimings.timerEntityAIMove.stopTiming(); // Spigot // Paper @@ -4855,7 +4847,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e boolean flag1 = this.getType().is(EntityTypeTags.FREEZE_HURTS_EXTRA_TYPES); int i; -@@ -3391,18 +3454,20 @@ public abstract class LivingEntity extends Entity { +@@ -3413,18 +3475,20 @@ public abstract class LivingEntity extends Entity { this.hurt(DamageSource.FREEZE, (float) i); } @@ -4881,7 +4873,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO); Location to = new Location (this.level.getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot()); io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone()); -@@ -3412,12 +3477,48 @@ public abstract class LivingEntity extends Entity { +@@ -3434,12 +3498,48 @@ public abstract class LivingEntity extends Entity { absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch()); } } @@ -4930,7 +4922,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e } public boolean isSensitiveToWater() { -@@ -3438,7 +3539,16 @@ public abstract class LivingEntity extends Entity { +@@ -3460,7 +3560,16 @@ public abstract class LivingEntity extends Entity { int j = i / 10; if (j % 2 == 0) { @@ -4949,7 +4941,7 @@ index 8a0e566aa0124480481b17b5b31691849c3ee7cd..cd414a9275e6d9f8c704854763b18f4e }); } diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6b6ef1057 100644 +index 5ab1f5d36a61e7a7fe8da4e74f75963ea6432101..ec4f04327eb875989af4d7da0171e2000fadef6b 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -65,6 +65,7 @@ import net.minecraft.world.item.ProjectileWeaponItem; @@ -5025,7 +5017,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 @Override protected void playHurtSound(DamageSource source) { this.resetAmbientSoundTime(); -@@ -521,6 +544,7 @@ public abstract class Mob extends LivingEntity { +@@ -527,6 +550,7 @@ public abstract class Mob extends LivingEntity { } nbt.putBoolean("Bukkit.Aware", this.aware); // CraftBukkit @@ -5033,7 +5025,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 } @Override -@@ -591,6 +615,11 @@ public abstract class Mob extends LivingEntity { +@@ -597,6 +621,11 @@ public abstract class Mob extends LivingEntity { this.aware = nbt.getBoolean("Bukkit.Aware"); } // CraftBukkit end @@ -5045,7 +5037,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 } @Override -@@ -634,8 +663,8 @@ public abstract class Mob extends LivingEntity { +@@ -640,8 +669,8 @@ public abstract class Mob extends LivingEntity { @Override public void aiStep() { super.aiStep(); @@ -5056,7 +5048,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 Vec3i baseblockposition = this.getPickupReach(); List list = this.level.getEntitiesOfClass(ItemEntity.class, this.getBoundingBox().inflate((double) baseblockposition.getX(), (double) baseblockposition.getY(), (double) baseblockposition.getZ())); Iterator iterator = list.iterator(); -@@ -654,7 +683,7 @@ public abstract class Mob extends LivingEntity { +@@ -660,7 +689,7 @@ public abstract class Mob extends LivingEntity { } } @@ -5065,7 +5057,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 } protected Vec3i getPickupReach() { -@@ -849,46 +878,46 @@ public abstract class Mob extends LivingEntity { +@@ -855,46 +884,46 @@ public abstract class Mob extends LivingEntity { return; } // Paper end @@ -5132,7 +5124,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 this.sendDebugPackets(); } -@@ -1110,6 +1139,12 @@ public abstract class Mob extends LivingEntity { +@@ -1116,6 +1145,12 @@ public abstract class Mob extends LivingEntity { } @@ -5145,7 +5137,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 @Nullable public static Item getEquipmentForSlot(EquipmentSlot equipmentSlot, int equipmentLevel) { switch (equipmentSlot) { -@@ -1204,7 +1239,7 @@ public abstract class Mob extends LivingEntity { +@@ -1210,7 +1245,7 @@ public abstract class Mob extends LivingEntity { RandomSource randomsource = world.getRandom(); this.getAttribute(Attributes.FOLLOW_RANGE).addPermanentModifier(new AttributeModifier("Random spawn bonus", randomsource.triangle(0.0D, 0.11485000000000001D), AttributeModifier.Operation.MULTIPLY_BASE)); @@ -5154,7 +5146,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 this.setLeftHanded(true); } else { this.setLeftHanded(false); -@@ -1252,6 +1287,7 @@ public abstract class Mob extends LivingEntity { +@@ -1258,6 +1293,7 @@ public abstract class Mob extends LivingEntity { if (!this.isAlive()) { return InteractionResult.PASS; } else if (this.getLeashHolder() == player) { @@ -5162,7 +5154,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 // CraftBukkit start - fire PlayerUnleashEntityEvent // Paper start - drop leash variable org.bukkit.event.player.PlayerUnleashEntityEvent event = CraftEventFactory.callPlayerUnleashEntityEvent(this, player, !player.getAbilities().instabuild); -@@ -1323,7 +1359,7 @@ public abstract class Mob extends LivingEntity { +@@ -1329,7 +1365,7 @@ public abstract class Mob extends LivingEntity { protected void onOffspringSpawnedFromEgg(Player player, Mob child) {} protected InteractionResult mobInteract(Player player, InteractionHand hand) { @@ -5171,7 +5163,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 } public boolean isWithinRestriction() { -@@ -1626,6 +1662,7 @@ public abstract class Mob extends LivingEntity { +@@ -1632,6 +1668,7 @@ public abstract class Mob extends LivingEntity { this.setLastHurtMob(target); } @@ -5179,7 +5171,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 return flag; } -@@ -1642,17 +1679,7 @@ public abstract class Mob extends LivingEntity { +@@ -1648,17 +1685,7 @@ public abstract class Mob extends LivingEntity { } public boolean isSunBurnTick() { @@ -5198,7 +5190,7 @@ index e8e60ea8b9e97ed87be78752f398ab25ba8e9a1b..b75243eca01cae108093368e426ea2d6 } @Override -@@ -1694,4 +1721,52 @@ public abstract class Mob extends LivingEntity { +@@ -1700,4 +1727,52 @@ public abstract class Mob extends LivingEntity { public Iterable iteratePathfindingStartNodeCandidatePositions() { return ImmutableSet.of(new BlockPos(this.getBoundingBox().minX, (double) this.getBlockY(), this.getBoundingBox().minZ), new BlockPos(this.getBoundingBox().minX, (double) this.getBlockY(), this.getBoundingBox().maxZ), new BlockPos(this.getBoundingBox().maxX, (double) this.getBlockY(), this.getBoundingBox().minZ), new BlockPos(this.getBoundingBox().maxX, (double) this.getBlockY(), this.getBoundingBox().maxZ)); } @@ -19900,10 +19892,10 @@ index 04976616da8c85b1278dad33ff05554aa74a6b33..046e0e174119e65686e74eaf11853e68 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 492fd9b72cc68d43d3a021f768a87296ff601ac9..8a728818913ec4eae440ef75efa55b84d2b94ccf 100644 +index d4ea7d19ae16a8ccafcfe5300bb380b28fd42b75..b6e0d832a5685fd6105c5307015d58a2d7900221 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -203,6 +203,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -205,6 +205,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { this.entity = entity; } @@ -19915,7 +19907,7 @@ index 492fd9b72cc68d43d3a021f768a87296ff601ac9..8a728818913ec4eae440ef75efa55b84 public static CraftEntity getEntity(CraftServer server, Entity entity) { /* * Order is *EXTREMELY* important -- keep it right! =D -@@ -562,6 +567,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -564,6 +569,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { // Paper end if ((!ignorePassengers && this.entity.isVehicle()) || this.entity.isRemoved()) { // Paper - Teleport passenger API @@ -19926,7 +19918,7 @@ index 492fd9b72cc68d43d3a021f768a87296ff601ac9..8a728818913ec4eae440ef75efa55b84 return false; } -@@ -1355,4 +1364,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1372,4 +1381,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return !this.getHandle().level.noCollision(this.getHandle(), aabb); } // Paper End - Collision API @@ -19955,10 +19947,10 @@ index 492fd9b72cc68d43d3a021f768a87296ff601ac9..8a728818913ec4eae440ef75efa55b84 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index c0a7b7bb9757de55424188629087d2ec82479e3c..dabbb41c9a7b0a825a241143ae7c196fceff3d60 100644 +index e779dcc4982ff51e4d450265fd61bc26e8e74d3a..e4afb366ba6f03c1e852e31ca14b58e21abe99d8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -@@ -255,6 +255,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { +@@ -258,6 +258,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity { @Override public void recalculatePermissions() { this.perm.recalculatePermissions(); @@ -20040,11 +20032,11 @@ index fea44ba6a6584b4a510af6a58cab07eecec6b68b..f3bf5199bc7ddf8a3d0dc67a184e7690 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e2c5e9cb3 100644 +index 1994dd3c272395a27474ec1b37a924a24fc50fd6..5711535e40e3174049deb39b72c760a225a0fd2f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -425,7 +425,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { - ServerPlayer entityPlayer = killer == null ? null : ((CraftPlayer) killer).getHandle(); +@@ -427,7 +427,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { + net.minecraft.server.level.ServerPlayer entityPlayer = killer == null ? null : ((CraftPlayer) killer).getHandle(); getHandle().lastHurtByPlayer = entityPlayer; getHandle().lastHurtByMob = entityPlayer; - getHandle().lastHurtByPlayerTime = entityPlayer == null ? 0 : 100; // 100 value taken from EntityLiving#damageEntity @@ -20052,7 +20044,7 @@ index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e } // Paper end -@@ -436,7 +436,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -438,7 +438,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @Override public boolean addPotionEffect(PotionEffect effect, boolean force) { @@ -20061,7 +20053,7 @@ index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e return true; } -@@ -457,7 +457,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -459,7 +459,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @Override public PotionEffect getPotionEffect(PotionEffectType type) { MobEffectInstance handle = this.getHandle().getEffect(MobEffect.byId(type.getId())); @@ -20070,7 +20062,7 @@ index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e } @Override -@@ -469,7 +469,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -471,7 +471,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { public Collection getActivePotionEffects() { List effects = new ArrayList(); for (MobEffectInstance handle : this.getHandle().activeEffects.values()) { @@ -20079,7 +20071,7 @@ index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e } return effects; } -@@ -813,7 +813,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -854,7 +854,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return EntityCategory.WATER; } @@ -20088,7 +20080,7 @@ index 5d15295604e40ed7b580c949868ce9be5f8065a6..c0f32ec1f8c14d310a044889b520446e } @Override -@@ -925,4 +925,32 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -966,4 +966,32 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { throw new IllegalArgumentException(entityCategory + " is an unrecognized entity category"); } // Paper end @@ -20582,18 +20574,18 @@ index 88d3ca586ff6905f18a8ab9f0e229f440ed44088..27dd4eb4781a3c75772860c11db886e1 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaPotion.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaPotion.java -index 4d325f61e9171b9e1a069ae69a87ec397735da79..056de387d0971f0b994e562c0b638442875b3a71 100644 +index 298326115f048bb79e3c949861c187134eb5efb8..9b060070ddbbade4c1b6830b9b861f462d60b138 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaPotion.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaPotion.java -@@ -11,6 +11,7 @@ import net.minecraft.nbt.ListTag; +@@ -13,6 +13,7 @@ import net.minecraft.nbt.ListTag; import org.apache.commons.lang.Validate; import org.bukkit.Color; import org.bukkit.Material; +import org.bukkit.NamespacedKey; import org.bukkit.configuration.serialization.DelegateDeserialization; - import org.bukkit.craftbukkit.inventory.CraftMetaItem.ItemMetaKey; import org.bukkit.craftbukkit.inventory.CraftMetaItem.SerializableMeta; -@@ -33,6 +34,7 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { + import org.bukkit.craftbukkit.potion.CraftPotionUtil; +@@ -42,6 +43,7 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { static final ItemMetaKey POTION_COLOR = new ItemMetaKey("CustomPotionColor", "custom-color"); static final ItemMetaKey ID = new ItemMetaKey("Id", "potion-id"); static final ItemMetaKey DEFAULT_POTION = new ItemMetaKey("Potion", "potion-type"); @@ -20601,7 +20593,7 @@ index 4d325f61e9171b9e1a069ae69a87ec397735da79..056de387d0971f0b994e562c0b638442 // Having an initial "state" in ItemMeta seems bit dirty but the UNCRAFTABLE potion type // is treated as the empty form of the meta because it represents an empty potion with no effect -@@ -83,7 +85,13 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { +@@ -92,7 +94,13 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { boolean ambient = effect.getBoolean(AMBIENT.NBT); boolean particles = tag.contains(SHOW_PARTICLES.NBT, CraftMagicNumbers.NBT.TAG_BYTE) ? effect.getBoolean(SHOW_PARTICLES.NBT) : true; boolean icon = tag.contains(SHOW_ICON.NBT, CraftMagicNumbers.NBT.TAG_BYTE) ? effect.getBoolean(SHOW_ICON.NBT) : particles; @@ -20616,7 +20608,7 @@ index 4d325f61e9171b9e1a069ae69a87ec397735da79..056de387d0971f0b994e562c0b638442 } } } -@@ -132,6 +140,11 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { +@@ -141,6 +149,11 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { effectData.putBoolean(AMBIENT.NBT, effect.isAmbient()); effectData.putBoolean(SHOW_PARTICLES.NBT, effect.hasParticles()); effectData.putBoolean(SHOW_ICON.NBT, effect.hasIcon()); @@ -20628,7 +20620,7 @@ index 4d325f61e9171b9e1a069ae69a87ec397735da79..056de387d0971f0b994e562c0b638442 effectList.add(effectData); } } -@@ -201,7 +214,7 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { +@@ -202,7 +215,7 @@ class CraftMetaPotion extends CraftMetaItem implements PotionMeta { if (index != -1) { if (overwrite) { PotionEffect old = this.customEffects.get(index); diff --git a/patches/server/0005-Rebrand.patch b/patches/server/0005-Rebrand.patch index 1d15d9d..5394d70 100644 --- a/patches/server/0005-Rebrand.patch +++ b/patches/server/0005-Rebrand.patch @@ -120,7 +120,7 @@ index fba5dbdb7bcbb55400ef18342c9b54612972a718..27b04711cb79491c27e14e5324e19fa8 // Contributed by Techcable in GH-65 private static int fetchDistanceFromGitHub(@Nonnull String repo, @Nonnull String branch, @Nonnull String hash) { diff --git a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java -index 005fdd2e2ebc0b6f7cb06b2efdb705b9ed23a1ea..988c39f87dd086fb8676baa9513064a861c52be9 100644 +index 3cb56595822799926a8141e60a42f5d1edfc6de5..22e477b36ad0886f8f2733076b3099f060c90310 100644 --- a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java +++ b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java @@ -17,7 +17,7 @@ public final class PaperConsole extends SimpleTerminalConsole { @@ -194,10 +194,10 @@ index db30708c5376d00a42baebf6957821798253aa64..f7c2aaff199f039daf79e39c19355d4a private final String bukkitVersion = Versioning.getBukkitVersion(); private final Logger logger = Logger.getLogger("Minecraft"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index c0f32ec1f8c14d310a044889b520446e2c5e9cb3..a5e1e430b443e58c9cdb4fb2c055fde0a41dacc7 100644 +index 5711535e40e3174049deb39b72c760a225a0fd2f..dbb728ac1712f914b9ca3d77d63dd2bb1603db91 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -813,7 +813,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -854,7 +854,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { return EntityCategory.WATER; } diff --git a/patches/server/0008-Akarin-patches.patch b/patches/server/0008-Akarin-patches.patch index 4ff4c56..ad7eac2 100644 --- a/patches/server/0008-Akarin-patches.patch +++ b/patches/server/0008-Akarin-patches.patch @@ -28,7 +28,7 @@ with this program. If not, see . 0011 - Swaps the predicate order of collision diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ab3f5d8df443f1f23f4cf11af46ed4c95ff30f0e..cbe7f5c1f51b1315009eb4127a3d58cb34831d1b 100644 +index b5a7c5e68daf4fd916930129d70c2c24312457a9..b71a39afa565700f4c64840846aa5006e974e830 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -419,7 +419,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -40,7 +40,7 @@ index ab3f5d8df443f1f23f4cf11af46ed4c95ff30f0e..cbe7f5c1f51b1315009eb4127a3d58cb public float getBukkitYaw() { return this.yRot; } -@@ -1954,38 +1954,37 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1968,38 +1968,37 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public void playerTouch(Player player) {} public void push(Entity entity) { diff --git a/patches/server/0009-JettPack-Server-Patches.patch b/patches/server/0009-JettPack-Server-Patches.patch index bc30ffe..79fa75f 100644 --- a/patches/server/0009-JettPack-Server-Patches.patch +++ b/patches/server/0009-JettPack-Server-Patches.patch @@ -903,7 +903,7 @@ index 7a4ade1a4190bf4fbb048919ae2be230f7b80fff..ab33194cb4d00e033632e753fb131d55 protected void doRunTask(R task) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cd414a9275e6d9f8c704854763b18f4ee43b67b7..61bbb8a3738f289bd61c438a27a496f904c26b78 100644 +index 34c48c9a1cf14c4eb76a0449f04cc05155a65ba6..bbf4d6b14a37a3dc3684c00380f6da546b6533e8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -577,11 +577,11 @@ public abstract class LivingEntity extends Entity { @@ -929,7 +929,7 @@ index cd414a9275e6d9f8c704854763b18f4ee43b67b7..61bbb8a3738f289bd61c438a27a496f9 } -@@ -2525,6 +2525,7 @@ public abstract class LivingEntity extends Entity { +@@ -2547,6 +2547,7 @@ public abstract class LivingEntity extends Entity { } protected void updateSwingTime() { @@ -938,10 +938,10 @@ index cd414a9275e6d9f8c704854763b18f4ee43b67b7..61bbb8a3738f289bd61c438a27a496f9 if (this.swinging) { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index b75243eca01cae108093368e426ea2d6b6ef1057..a6d022298e2b993f803c4c51bf1543009a8dab2b 100644 +index ec4f04327eb875989af4d7da0171e2000fadef6b..2b17237eebc7d4aa939a0954f154b2206ed33293 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -835,9 +835,6 @@ public abstract class Mob extends LivingEntity { +@@ -841,9 +841,6 @@ public abstract class Mob extends LivingEntity { } else if (!this.isPersistenceRequired() && !this.requiresCustomPersistence()) { // Paper start - optimise checkDespawn Player entityhuman = this.level.findNearbyPlayer(this, level.paperConfig().entities.spawning.despawnRanges.get(this.getType().getCategory()).hard() + 1, EntitySelector.affectsSpawning); // Paper @@ -951,7 +951,7 @@ index b75243eca01cae108093368e426ea2d6b6ef1057..a6d022298e2b993f803c4c51bf154300 // Paper end - optimise checkDespawn if (entityhuman != null) { -@@ -858,6 +855,9 @@ public abstract class Mob extends LivingEntity { +@@ -864,6 +861,9 @@ public abstract class Mob extends LivingEntity { this.noActionTime = 0; } } @@ -1059,7 +1059,7 @@ index 809c6531d056cc9538e9bec9cdc5ca6e4c9f4792..1e1147f40ea27a676756eb7f9fd6b175 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 25c8294a36d2f062ca4882820e99315aabf5dde8..2b0f8f1c4b31ab80a8b118f6b4598d1eb26ed802 100644 +index 9a38eebd6805e5ae18390eaa2f5cfd36be31be4e..d16e8c5d3e20ee449955f77a212e84724fd50df4 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -117,9 +117,9 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0010-Slice-Server-Patches.patch b/patches/server/0010-Slice-Server-Patches.patch index 1174640..4567fb3 100644 --- a/patches/server/0010-Slice-Server-Patches.patch +++ b/patches/server/0010-Slice-Server-Patches.patch @@ -184,7 +184,7 @@ index 78c01b08ff8683960d1d227523ca6cecf56c06b1..22acc4d451a96c4b7655a9f2333a283d this.broadcastAndSend(new ClientboundSetEntityDataPacket(this.entity.getId(), datawatcher, false)) ); // Pufferfish diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index cbe7f5c1f51b1315009eb4127a3d58cb34831d1b..b3f9151e211ee52910e4e1598e193c00b1c58725 100644 +index b71a39afa565700f4c64840846aa5006e974e830..83b48e59cba8a2298628800fdf81cb6b901a73ac 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -878,6 +878,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -202,7 +202,7 @@ index cbe7f5c1f51b1315009eb4127a3d58cb34831d1b..b3f9151e211ee52910e4e1598e193c00 this.setSharedFlagOnFire(this.remainingFireTicks > 0); } -@@ -3132,7 +3140,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3146,7 +3154,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.entityData.markDirty(Entity.DATA_AIR_SUPPLY_ID); return; } @@ -212,10 +212,10 @@ index cbe7f5c1f51b1315009eb4127a3d58cb34831d1b..b3f9151e211ee52910e4e1598e193c00 } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 61bbb8a3738f289bd61c438a27a496f904c26b78..0805c3be61395d31f78524240a7330f6e9b24af3 100644 +index bbf4d6b14a37a3dc3684c00380f6da546b6533e8..9ca064b8f7b33cad9860951974f8278673ae9a59 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3151,7 +3151,7 @@ public abstract class LivingEntity extends Entity { +@@ -3172,7 +3172,7 @@ public abstract class LivingEntity extends Entity { ItemStack itemstack1 = this.getItemBySlot(enumitemslot); diff --git a/patches/server/0014-Purpur-PR-Fire-Immune-API.patch b/patches/server/0014-Purpur-PR-Fire-Immune-API.patch index 2bf2d08..2ddba52 100644 --- a/patches/server/0014-Purpur-PR-Fire-Immune-API.patch +++ b/patches/server/0014-Purpur-PR-Fire-Immune-API.patch @@ -27,7 +27,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b3f9151e211ee52910e4e1598e193c00b1c58725..bd5c6015d7a5ad19cffc6d791bfca50db9b77849 100644 +index 83b48e59cba8a2298628800fdf81cb6b901a73ac..f232231bf01602809437892a3f88f025b9ed5737 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -399,6 +399,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -38,7 +38,7 @@ index b3f9151e211ee52910e4e1598e193c00b1c58725..bd5c6015d7a5ad19cffc6d791bfca50d public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); -@@ -1658,7 +1659,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1672,7 +1673,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean fireImmune() { @@ -47,7 +47,7 @@ index b3f9151e211ee52910e4e1598e193c00b1c58725..bd5c6015d7a5ad19cffc6d791bfca50d } public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) { -@@ -2294,6 +2295,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2308,6 +2309,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { nbt.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -61,7 +61,7 @@ index b3f9151e211ee52910e4e1598e193c00b1c58725..bd5c6015d7a5ad19cffc6d791bfca50d return nbt; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2461,6 +2469,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2475,6 +2483,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { freezeLocked = nbt.getBoolean("Paper.FreezeLock"); } // Paper end @@ -76,10 +76,10 @@ index b3f9151e211ee52910e4e1598e193c00b1c58725..bd5c6015d7a5ad19cffc6d791bfca50d } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT"); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index be5cadf73ca4e2a2aa490e77ab7747ec8647a2ef..c78dec8d7f203971bfe5de905e3766732825b7c8 100644 +index b6e0d832a5685fd6105c5307015d58a2d7900221..08fa6244dcfda8a8a05cb2b89352575e91400607 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -1386,5 +1386,17 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1403,5 +1403,17 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { public boolean isRidableInWater() { return getHandle().rideableUnderWater(); } diff --git a/patches/server/0022-Implement-No-Chat-Reports.patch b/patches/server/0022-Implement-No-Chat-Reports.patch index 4c5105c..af2c5f7 100644 --- a/patches/server/0022-Implement-No-Chat-Reports.patch +++ b/patches/server/0022-Implement-No-Chat-Reports.patch @@ -53,10 +53,10 @@ index 47600c5fd0625f42a21821719ab869e273eaf807..c52618b56da668a53d0e881e1b328637 protected boolean convertOldUsers() { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d70c9d4a77edce10f783ab6c53b1e2d66b44c5fe..ed16b35a17508a04d704193885114465f44508b4 100644 +index 8533b31b31138b000308107ce4215746edd1f16b..6a2732e10f2458dd635eaa8e78daf4b5527306c1 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2238,10 +2238,28 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2239,10 +2239,28 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @Override public void send(Packet packet) { @@ -85,7 +85,7 @@ index d70c9d4a77edce10f783ab6c53b1e2d66b44c5fe..ed16b35a17508a04d704193885114465 // CraftBukkit start if (packet == null || this.processedDisconnect) { // Spigot return; -@@ -2640,7 +2658,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2641,7 +2659,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic private PlayerChatMessage getSignedMessage(ServerboundChatPacket packet) { MessageSigner messagesigner = packet.getSigner(this.player); From a37e6b3df9467c30de6d48e4ca1d22c4610e4655 Mon Sep 17 00:00:00 2001 From: Github Actions Date: Tue, 13 Sep 2022 22:53:12 +0000 Subject: [PATCH 13/14] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@6e7bb83 Updated Upstream (Paper) --- patches/api/0001-Pufferfish-API-Changes.patch | 2 +- patches/api/0002-Purpur-API-Changes.patch | 2 +- .../0001-Pufferfish-Server-Changes.patch | 2 +- .../server/0002-Purpur-Server-Changes.patch | 36 +++++++++++-------- .../server/0010-Slice-Server-Patches.patch | 6 ++-- upstream-data | 2 +- 6 files changed, 29 insertions(+), 21 deletions(-) diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index 381c063..3e22de5 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Sat, 10 Sep 2022 09:54:55 +0000 +Date: Tue, 13 Sep 2022 22:44:37 +0000 Subject: [PATCH] Pufferfish API Changes Original by Kevin Raneri diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index 433f47f..5d5087c 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Sat, 10 Sep 2022 09:56:51 +0000 +Date: Tue, 13 Sep 2022 22:46:32 +0000 Subject: [PATCH] Purpur API Changes Original by PurpurMC Team diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 2c86eb7..88c15b1 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Sat, 10 Sep 2022 09:54:55 +0000 +Date: Tue, 13 Sep 2022 22:44:37 +0000 Subject: [PATCH] Pufferfish Server Changes Original by Kevin Raneri diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index 69e705a..1899c2a 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: AlphaKR93 -Date: Sat, 10 Sep 2022 09:56:51 +0000 +Date: Tue, 13 Sep 2022 22:46:32 +0000 Subject: [PATCH] Purpur Server Changes Original by PurpurMC Team @@ -3942,7 +3942,7 @@ index f5c9be3fde2654bd5a6b3ee737afe96a9393e836..64571396652d4447ce3665cd8cef668c public void setNoCounter(boolean permanent) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 417570c2ad71bc3727e7d5eb841a92ec815d12f6..b5a7c5e68daf4fd916930129d70c2c24312457a9 100644 +index 417570c2ad71bc3727e7d5eb841a92ec815d12f6..ffbe6f3b5fdd60332627fdb6a7ea050d21ad8cdb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -156,7 +156,7 @@ import org.bukkit.plugin.PluginManager; @@ -4059,7 +4059,7 @@ index 417570c2ad71bc3727e7d5eb841a92ec815d12f6..b5a7c5e68daf4fd916930129d70c2c24 false, false, null, null); - if (io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { -+ if (this.collidingWithWorldBorder = io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { // Purpur ++ if (this.collidingWithWorldBorder = io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { // Purpur io.papermc.paper.util.CollisionUtil.addBoxesToIfIntersects(world.getWorldBorder().getCollisionShape(), collisionBox, potentialCollisions); } @@ -4495,7 +4495,7 @@ index c1e9b40a4a0f9cdc650caa88b5ea132e06ee2496..b7abcaa32341c292f9f884fa6319fd65 protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc05155a65ba6 100644 +index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0df177dc5 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -44,6 +44,7 @@ import net.minecraft.network.syncher.EntityDataAccessor; @@ -4514,7 +4514,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 - public float yya; - public float zza; + public float xxa; public float getStrafeMot() { return xxa; } public void setStrafeMot(float strafe) { xxa = strafe; } // Purpur - OBFHELPER -+ public public float yya; public float getVerticalMot() { return yya; } public void setVerticalMot(float vertical) { yya = vertical; } // Purpur - OBFHELPER ++ public float yya; public float getVerticalMot() { return yya; } public void setVerticalMot(float vertical) { yya = vertical; } // Purpur - OBFHELPER + public float zza; public float getForwardMot() { return zza; } public void setForwardMot(float forward) { zza = forward; } // Purpur - OBFHELPER protected int lerpSteps; protected double lerpX; @@ -4523,7 +4523,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 private boolean skipDropExperience; // CraftBukkit start public int expToDrop; -+ + public float safeFallDistance = 3.0F; // Purpur ++ public float safeFallDistance = 3.0F; // Purpur public boolean forceDrops; public ArrayList drops = new ArrayList(); public final org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes; @@ -4777,7 +4777,15 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 double d0 = (double) this.getJumpPower() + this.getJumpBoostPower(); Vec3 vec3d = this.getDeltaMovement(); // Paper start -@@ -3024,10 +3086,10 @@ public abstract class LivingEntity extends Entity { +@@ -2828,6 +2890,7 @@ public abstract class LivingEntity extends Entity { + + if (f3 > 0.0F) { + this.playSound(this.getFallDamageSound((int) f3), 1.0F, 1.0F); ++ if (level.purpurConfig.elytraKineticDamage) // Purpur + this.hurt(DamageSource.FLY_INTO_WALL, f3); + } + } +@@ -3024,10 +3087,10 @@ public abstract class LivingEntity extends Entity { } this.run += (f3 - this.run) * 0.3F; @@ -4791,7 +4799,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 while (this.getYRot() - this.yRotO < -180.0F) { this.yRotO -= 360.0F; -@@ -3061,7 +3123,7 @@ public abstract class LivingEntity extends Entity { +@@ -3061,7 +3124,7 @@ public abstract class LivingEntity extends Entity { this.yHeadRotO += 360.0F; } @@ -4800,7 +4808,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 this.animStep += f2; if (this.isFallFlying()) { ++this.fallFlyTicks; -@@ -3343,19 +3405,19 @@ public abstract class LivingEntity extends Entity { +@@ -3343,19 +3406,19 @@ public abstract class LivingEntity extends Entity { } this.setDeltaMovement(d4, d5, d6); @@ -4825,7 +4833,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 if (this.jumping && this.isAffectedByFluids()) { double d7; -@@ -3382,8 +3444,8 @@ public abstract class LivingEntity extends Entity { +@@ -3382,8 +3445,8 @@ public abstract class LivingEntity extends Entity { this.noJumpDelay = 0; } @@ -4836,7 +4844,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 this.xxa *= 0.98F; this.zza *= 0.98F; this.updateFallFlying(); -@@ -3392,8 +3454,8 @@ public abstract class LivingEntity extends Entity { +@@ -3392,8 +3455,8 @@ public abstract class LivingEntity extends Entity { // SpigotTimings.timerEntityAIMove.startTiming(); // Spigot // Paper this.travel(new Vec3((double) this.xxa, (double) this.yya, (double) this.zza)); // SpigotTimings.timerEntityAIMove.stopTiming(); // Spigot // Paper @@ -4847,7 +4855,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 boolean flag1 = this.getType().is(EntityTypeTags.FREEZE_HURTS_EXTRA_TYPES); int i; -@@ -3413,18 +3475,20 @@ public abstract class LivingEntity extends Entity { +@@ -3413,18 +3476,20 @@ public abstract class LivingEntity extends Entity { this.hurt(DamageSource.FREEZE, (float) i); } @@ -4873,7 +4881,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO); Location to = new Location (this.level.getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot()); io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone()); -@@ -3434,12 +3498,48 @@ public abstract class LivingEntity extends Entity { +@@ -3434,12 +3499,48 @@ public abstract class LivingEntity extends Entity { absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch()); } } @@ -4922,7 +4930,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..34c48c9a1cf14c4eb76a0449f04cc051 } public boolean isSensitiveToWater() { -@@ -3460,7 +3560,16 @@ public abstract class LivingEntity extends Entity { +@@ -3460,7 +3561,16 @@ public abstract class LivingEntity extends Entity { int j = i / 10; if (j % 2 == 0) { diff --git a/patches/server/0010-Slice-Server-Patches.patch b/patches/server/0010-Slice-Server-Patches.patch index 4567fb3..2eaa00f 100644 --- a/patches/server/0010-Slice-Server-Patches.patch +++ b/patches/server/0010-Slice-Server-Patches.patch @@ -184,7 +184,7 @@ index 78c01b08ff8683960d1d227523ca6cecf56c06b1..22acc4d451a96c4b7655a9f2333a283d this.broadcastAndSend(new ClientboundSetEntityDataPacket(this.entity.getId(), datawatcher, false)) ); // Pufferfish diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b71a39afa565700f4c64840846aa5006e974e830..83b48e59cba8a2298628800fdf81cb6b901a73ac 100644 +index 38bc49ee42cbbba8186e639b7d5b3eccac809ba6..7292a04706ee2703df603837233b1e8ec4050895 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -878,6 +878,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -212,10 +212,10 @@ index b71a39afa565700f4c64840846aa5006e974e830..83b48e59cba8a2298628800fdf81cb6b } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bbf4d6b14a37a3dc3684c00380f6da546b6533e8..9ca064b8f7b33cad9860951974f8278673ae9a59 100644 +index 2be6a5bd859927e803440736c162f7d0e35ac379..3e1ff5e9f8e8d06c3f1e765d1c76179ca54e76ed 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3172,7 +3172,7 @@ public abstract class LivingEntity extends Entity { +@@ -3173,7 +3173,7 @@ public abstract class LivingEntity extends Entity { ItemStack itemstack1 = this.getItemBySlot(enumitemslot); diff --git a/upstream-data b/upstream-data index d9b71aa..3cc1631 100644 --- a/upstream-data +++ b/upstream-data @@ -1,2 +1,2 @@ -purpur = 664774af5abe25721a61eff50cdec1b3b622711d +purpur = 6e7bb8323f2d71443bc6c4f74e84bf956db97595 pufferfish = 08aeb1a67c9ec3a5c788a8cec0b2c819a17af60f From 49e7e9c73336daa8fc00e4630a9e140bebf10766 Mon Sep 17 00:00:00 2001 From: Alpha Date: Sat, 17 Sep 2022 14:47:36 +0900 Subject: [PATCH 14/14] Updated Upstream (Paper) --- gradle.properties | 2 +- .../0001-Pufferfish-Server-Changes.patch | 6 ++-- .../server/0002-Purpur-Server-Changes.patch | 28 +++++++++---------- .../server/0010-Slice-Server-Patches.patch | 4 +-- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/gradle.properties b/gradle.properties index 3f4d700..578cd86 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = net.prismarineteam.prismarine version = 1.19.2-R0.1-SNAPSHOT -paperCommit = ef0e5a642d33ac62f070c45a61cb42647b2744cd +paperCommit = 36f0c1b3cc1037f50dc2abe0f2319eab0c4be4b7 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 88c15b1..6dee9f6 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -3541,7 +3541,7 @@ index ac0f0a4da4282c13f6e1f37710cb615d66b8ef2c..ec0319dd4b115e18b368027cc5dbe4d4 public final String id; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 33c22f908440664dc9d67f1678a3c4bd8b862457..94f5d710464de0ec4a972b36051e8672b6673cc7 100644 +index 1c8661afcfaaf56953cef3a5c26fbc4fa3ac5b1c..ded69bc892aaf35cc57a562116bb623c07b08550 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -3599,7 +3599,7 @@ index 33c22f908440664dc9d67f1678a3c4bd8b862457..94f5d710464de0ec4a972b36051e8672 public boolean onClimbable() { if (this.isSpectator()) { return false; -@@ -3605,7 +3626,10 @@ public abstract class LivingEntity extends Entity { +@@ -3583,7 +3604,10 @@ public abstract class LivingEntity extends Entity { Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ()); // Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists @@ -4635,7 +4635,7 @@ index a1a625a8dacf4d2bbf75ddd90dce1b1be663c919..23e375c9a6955d03e0fc9be91ff04032 return false; } diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index 66c3f374a779cd3a4548393ba23e9219f1caf6d3..39ba6ca32b827daee300e1240bd76fd8f680ea02 100644 +index c61ed38d0a824fee9b45acfc862baf03c85fe54b..85fb907fb149961611310c355d0911d81f1b735c 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java @@ -42,6 +42,36 @@ public abstract class Projectile extends Entity { diff --git a/patches/server/0002-Purpur-Server-Changes.patch b/patches/server/0002-Purpur-Server-Changes.patch index 1899c2a..6a48e0a 100644 --- a/patches/server/0002-Purpur-Server-Changes.patch +++ b/patches/server/0002-Purpur-Server-Changes.patch @@ -4495,7 +4495,7 @@ index c1e9b40a4a0f9cdc650caa88b5ea132e06ee2496..b7abcaa32341c292f9f884fa6319fd65 protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0df177dc5 100644 +index ded69bc892aaf35cc57a562116bb623c07b08550..260e094bad8d6f1b775e317ba2c9b3e25cfa7467 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -44,6 +44,7 @@ import net.minecraft.network.syncher.EntityDataAccessor; @@ -4797,18 +4797,18 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0 + //this.level.getProfiler().pop(); // Purpur + //this.level.getProfiler().push("rangeChecks"); // Purpur - while (this.getYRot() - this.yRotO < -180.0F) { - this.yRotO -= 360.0F; -@@ -3061,7 +3124,7 @@ public abstract class LivingEntity extends Entity { - this.yHeadRotO += 360.0F; - } + // Paper start - stop large pitch and yaw changes from crashing the server + this.yRotO += Math.round((this.getYRot() - this.yRotO) / 360.0F) * 360.0F; +@@ -3039,7 +3102,7 @@ public abstract class LivingEntity extends Entity { + this.yHeadRotO += Math.round((this.yHeadRot - this.yHeadRotO) / 360.0F) * 360.0F; + // Paper end - this.level.getProfiler().pop(); + //this.level.getProfiler().pop(); // Purpur this.animStep += f2; if (this.isFallFlying()) { ++this.fallFlyTicks; -@@ -3343,19 +3406,19 @@ public abstract class LivingEntity extends Entity { +@@ -3321,19 +3384,19 @@ public abstract class LivingEntity extends Entity { } this.setDeltaMovement(d4, d5, d6); @@ -4833,7 +4833,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0 if (this.jumping && this.isAffectedByFluids()) { double d7; -@@ -3382,8 +3445,8 @@ public abstract class LivingEntity extends Entity { +@@ -3360,8 +3423,8 @@ public abstract class LivingEntity extends Entity { this.noJumpDelay = 0; } @@ -4844,7 +4844,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0 this.xxa *= 0.98F; this.zza *= 0.98F; this.updateFallFlying(); -@@ -3392,8 +3455,8 @@ public abstract class LivingEntity extends Entity { +@@ -3370,8 +3433,8 @@ public abstract class LivingEntity extends Entity { // SpigotTimings.timerEntityAIMove.startTiming(); // Spigot // Paper this.travel(new Vec3((double) this.xxa, (double) this.yya, (double) this.zza)); // SpigotTimings.timerEntityAIMove.stopTiming(); // Spigot // Paper @@ -4855,7 +4855,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0 boolean flag1 = this.getType().is(EntityTypeTags.FREEZE_HURTS_EXTRA_TYPES); int i; -@@ -3413,18 +3476,20 @@ public abstract class LivingEntity extends Entity { +@@ -3391,18 +3454,20 @@ public abstract class LivingEntity extends Entity { this.hurt(DamageSource.FREEZE, (float) i); } @@ -4881,7 +4881,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0 Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO); Location to = new Location (this.level.getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot()); io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone()); -@@ -3434,12 +3499,48 @@ public abstract class LivingEntity extends Entity { +@@ -3412,12 +3477,48 @@ public abstract class LivingEntity extends Entity { absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch()); } } @@ -4930,7 +4930,7 @@ index 94f5d710464de0ec4a972b36051e8672b6673cc7..8f80b2f14c582d248988a824193d1fd0 } public boolean isSensitiveToWater() { -@@ -3460,7 +3561,16 @@ public abstract class LivingEntity extends Entity { +@@ -3438,7 +3539,16 @@ public abstract class LivingEntity extends Entity { int j = i / 10; if (j % 2 == 0) { @@ -15210,10 +15210,10 @@ index 4132c1113f5437a776e5e3c1cb306904775aed88..1a945a32c3d3705a318ebca72a365931 public void tick() { super.tick(); diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index 39ba6ca32b827daee300e1240bd76fd8f680ea02..41adf8762919dffbac6adc4e9a6c120e48c3dd43 100644 +index 85fb907fb149961611310c355d0911d81f1b735c..c37832b3fee9d7d8577f8b1701c1c2c27cfdbf09 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -@@ -308,6 +308,6 @@ public abstract class Projectile extends Entity { +@@ -302,6 +302,6 @@ public abstract class Projectile extends Entity { public boolean mayInteract(Level world, BlockPos pos) { Entity entity = this.getOwner(); diff --git a/patches/server/0010-Slice-Server-Patches.patch b/patches/server/0010-Slice-Server-Patches.patch index 2eaa00f..3abc34d 100644 --- a/patches/server/0010-Slice-Server-Patches.patch +++ b/patches/server/0010-Slice-Server-Patches.patch @@ -212,10 +212,10 @@ index 38bc49ee42cbbba8186e639b7d5b3eccac809ba6..7292a04706ee2703df603837233b1e8e } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 2be6a5bd859927e803440736c162f7d0e35ac379..3e1ff5e9f8e8d06c3f1e765d1c76179ca54e76ed 100644 +index 6758de92fb111cde1fc63d81afee6789159bfdd8..4132e17fc09c79dd68d5dc16e33b2c604e36f73e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3173,7 +3173,7 @@ public abstract class LivingEntity extends Entity { +@@ -3151,7 +3151,7 @@ public abstract class LivingEntity extends Entity { ItemStack itemstack1 = this.getItemBySlot(enumitemslot);