9
0
mirror of https://github.com/LeavesMC/Leaves.git synced 2025-12-21 15:59:33 +00:00

Update Paper

This commit is contained in:
violetc
2023-12-23 17:17:01 +08:00
parent 1fcd6072e6
commit 9f8513bd78
32 changed files with 133 additions and 147 deletions

View File

@@ -4,6 +4,6 @@ version=1.20.4-R0.1-SNAPSHOT
mcVersion=1.20.4 mcVersion=1.20.4
packageVersion=1_20_R3 packageVersion=1_20_R3
org.gradle.jvmargs=-Xmx2G org.gradle.jvmargs=-Xmx2G
paperRef=f1820dc80a02009980e6466ea5847933861b911a paperRef=1e7dd72f15a1d13b43792367193547c656a16ab6
preVersion=true preVersion=true
updatingMinecraft=true updatingMinecraft=true

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Leaves Server Config
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index f1fa97d12f97baf97beb92ca0719cf3cf906b225..119429ff7b4b7c3313b9affdd1adb25ae814f089 100644 index 9af4bc16da09e59009c47911219e99450cdf2aa5..2d59fffd32299af90c7fa9579d8ce667ec9642b2 100644
--- a/src/main/java/org/bukkit/Server.java --- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java
@@ -2189,6 +2189,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi @@ -2197,6 +2197,14 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
throw new UnsupportedOperationException("Not supported yet."); throw new UnsupportedOperationException("Not supported yet.");
} }
// Paper end // Paper end

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add fakeplayer api
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index 4863d9f21f0a0f11974be85360edc587ffd7eab3..f54403c29005b891377577a36aa79af1365adc31 100644 index 48fab492609e0bae459d20cc2eae78b87e37ab75..d3efd7baa57135aafe840f9de06f42b73e1e4447 100644
--- a/src/main/java/org/bukkit/Bukkit.java --- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java
@@ -58,6 +58,7 @@ import org.jetbrains.annotations.Contract; @@ -58,6 +58,7 @@ import org.jetbrains.annotations.Contract;
@@ -16,7 +16,7 @@ index 4863d9f21f0a0f11974be85360edc587ffd7eab3..f54403c29005b891377577a36aa79af1
/** /**
* Represents the Bukkit core, for version and Server singleton handling * Represents the Bukkit core, for version and Server singleton handling
@@ -2828,6 +2829,17 @@ public final class Bukkit { @@ -2838,6 +2839,17 @@ public final class Bukkit {
} }
// Paper end - Folia region threading API // Paper end - Folia region threading API
@@ -35,7 +35,7 @@ index 4863d9f21f0a0f11974be85360edc587ffd7eab3..f54403c29005b891377577a36aa79af1
public static Server.Spigot spigot() { public static Server.Spigot spigot() {
return server.spigot(); return server.spigot();
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 119429ff7b4b7c3313b9affdd1adb25ae814f089..7171f1b4729bf28e6c528c2f1036018a5ffcc895 100644 index 2d59fffd32299af90c7fa9579d8ce667ec9642b2..c3f30fcf4bafd61331aeffab9539c86a0220f85d 100644
--- a/src/main/java/org/bukkit/Server.java --- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java
@@ -58,6 +58,7 @@ import org.bukkit.util.CachedServerIcon; @@ -58,6 +58,7 @@ import org.bukkit.util.CachedServerIcon;
@@ -46,7 +46,7 @@ index 119429ff7b4b7c3313b9affdd1adb25ae814f089..7171f1b4729bf28e6c528c2f1036018a
/** /**
* Represents a server implementation. * Represents a server implementation.
@@ -2481,4 +2482,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi @@ -2489,4 +2490,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
*/ */
boolean isOwnedByCurrentRegion(@NotNull Entity entity); boolean isOwnedByCurrentRegion(@NotNull Entity entity);
// Paper end - Folia region threading API // Paper end - Folia region threading API

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Hide irrelevant compilation warnings
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 9d817bf3f26ffd484945a00a6538970eca22ee20..a4baf13537c24b9c49fc35cf8f0fad09d14c9863 100644 index 3e3ea0e4e4ceb3283ad2b99957e3795d66a9a716..757dd80342ace11a019a70c91201c5b43f35acb3 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -109,6 +109,15 @@ val generateApiVersioningFile by tasks.registering { @@ -109,6 +109,15 @@ val generateApiVersioningFile by tasks.registering {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] SIMD support
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index a4baf13537c24b9c49fc35cf8f0fad09d14c9863..311a3134cf4b60d48c3096aebe500106dd4bd267 100644 index 757dd80342ace11a019a70c91201c5b43f35acb3..30c391a6c884efce9d10a60f896be6f264cc8eef 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -115,6 +115,7 @@ tasks.withType<JavaCompile> { @@ -115,6 +115,7 @@ tasks.withType<JavaCompile> {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Leaves API publish
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 311a3134cf4b60d48c3096aebe500106dd4bd267..c124ac034906a065514f5a1af53b88e550ba37eb 100644 index 30c391a6c884efce9d10a60f896be6f264cc8eef..837dfdc3a069cc2c5ba7bf8ef40d7c7699571138 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -212,3 +212,14 @@ tasks.check { @@ -212,3 +212,14 @@ tasks.check {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Replay Mod API
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index f54403c29005b891377577a36aa79af1365adc31..15f18b4961effe78645e54d0b0cc8c530a807a68 100644 index d3efd7baa57135aafe840f9de06f42b73e1e4447..1c1f1c0c7ef30bde55137bc29564d8ab84dd8437 100644
--- a/src/main/java/org/bukkit/Bukkit.java --- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java
@@ -59,6 +59,7 @@ import org.jetbrains.annotations.NotNull; @@ -59,6 +59,7 @@ import org.jetbrains.annotations.NotNull;
@@ -16,7 +16,7 @@ index f54403c29005b891377577a36aa79af1365adc31..15f18b4961effe78645e54d0b0cc8c53
/** /**
* Represents the Bukkit core, for version and Server singleton handling * Represents the Bukkit core, for version and Server singleton handling
@@ -2839,6 +2840,11 @@ public final class Bukkit { @@ -2849,6 +2850,11 @@ public final class Bukkit {
return server.getBotManager(); return server.getBotManager();
} }
// Leaves end - Bot API // Leaves end - Bot API
@@ -29,7 +29,7 @@ index f54403c29005b891377577a36aa79af1365adc31..15f18b4961effe78645e54d0b0cc8c53
@NotNull @NotNull
public static Server.Spigot spigot() { public static Server.Spigot spigot() {
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 7171f1b4729bf28e6c528c2f1036018a5ffcc895..bb02f2e08597cd9362a587b1c9b442393cc19d54 100644 index c3f30fcf4bafd61331aeffab9539c86a0220f85d..0162f771532a6899a60dc56b2effdd259fd3b2e4 100644
--- a/src/main/java/org/bukkit/Server.java --- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java
@@ -59,6 +59,7 @@ import org.jetbrains.annotations.Contract; @@ -59,6 +59,7 @@ import org.jetbrains.annotations.Contract;
@@ -40,7 +40,7 @@ index 7171f1b4729bf28e6c528c2f1036018a5ffcc895..bb02f2e08597cd9362a587b1c9b44239
/** /**
* Represents a server implementation. * Represents a server implementation.
@@ -2491,4 +2492,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi @@ -2499,4 +2500,7 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
*/ */
@NotNull BotManager getBotManager(); @NotNull BotManager getBotManager();
// Leaves end - Bot API // Leaves end - Bot API

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Build changes
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 170a915098f09ace226648da342a04c5c7583d11..9dd0f8b3e4042bdd3adcb2ec59fdbe9629d0915f 100644 index b12b5a1e82a5ebf47135a3863a390a45a9d8d8ec..257520120913ab39d57ac0e79ae6381fbda0011b 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -26,9 +26,13 @@ repositories { @@ -26,9 +26,13 @@ repositories {
@@ -186,10 +186,10 @@ index 58536aabf607015939a1326f80207c0a06eed8ff..5a07dad83602425b35f480cf8a31ed32
this.setFlightAllowed(dedicatedserverproperties.allowFlight); this.setFlightAllowed(dedicatedserverproperties.allowFlight);
this.setMotd(dedicatedserverproperties.motd); this.setMotd(dedicatedserverproperties.motd);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 782bb8ca67517dde5dba8f0a133eb8699353dd01..057b5fd0fd4f5dc2340cd80f316703edc1f88cae 100644 index e011cfcdda2e0a609d4158b0454bdf046b04c9d9..a8b92ff8975730fb8ac752aa21aa28f9cae26dd9 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -270,7 +270,7 @@ import javax.annotation.Nullable; // Paper @@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper
import javax.annotation.Nonnull; // Paper import javax.annotation.Nonnull; // Paper
public final class CraftServer implements Server { public final class CraftServer implements Server {
@@ -199,7 +199,7 @@ index 782bb8ca67517dde5dba8f0a133eb8699353dd01..057b5fd0fd4f5dc2340cd80f316703ed
private final String bukkitVersion = Versioning.getBukkitVersion(); private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft"); private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 4b457cbfc56e55e0ae0fee5b69e2e75349702aab..0815d354bbcb3ce2e263690f71f32c320fe3d1d2 100644 index a74a8a027c99eef199c1a6a54232ac2c8ffb9d08..1cc94f4edd225524b31c73700e624a6b3e2aa7db 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -301,7 +301,7 @@ public class Main { @@ -301,7 +301,7 @@ public class Main {

View File

@@ -1274,7 +1274,7 @@ index caa73632aee15583c6b6ed12a668c8f49b794708..d9a33968fa0f1aa5def297f34ba1dbf2
} }
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index 6e212f672579a3e08dc362c287be59ca5170d717..1f07d7cc8e15d54bc7841454aa47c8e51d77ea86 100644 index 44ada45d9bf2d9b48e5de1c3cb1a855902f3884b..d6089c0d0b076d232834619bc93bc64f0be57340 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -293,10 +293,8 @@ public class ServerChunkCache extends ChunkSource { @@ -293,10 +293,8 @@ public class ServerChunkCache extends ChunkSource {
@@ -1331,15 +1331,13 @@ index 6e212f672579a3e08dc362c287be59ca5170d717..1f07d7cc8e15d54bc7841454aa47c8e5
this.level.getProfiler().pop(); this.level.getProfiler().pop();
this.clearCache(); this.clearCache();
} }
@@ -516,7 +504,6 @@ public class ServerChunkCache extends ChunkSource { @@ -517,13 +505,11 @@ public class ServerChunkCache extends ChunkSource {
gameprofilerfiller.push("pollingChunks"); gameprofilerfiller.push("pollingChunks");
gameprofilerfiller.push("filteringLoadedChunks"); gameprofilerfiller.push("filteringLoadedChunks");
// Paper - optimise chunk tick iteration
- if (this.level.getServer().tickRateManager().runsNormally()) this.level.timings.chunkTicks.startTiming(); // Paper - if (this.level.getServer().tickRateManager().runsNormally()) this.level.timings.chunkTicks.startTiming(); // Paper
// Paper start - optimise chunk tick iteration // Paper - optimise chunk tick iteration
ChunkMap playerChunkMap = this.chunkMap;
@@ -556,7 +543,6 @@ public class ServerChunkCache extends ChunkSource {
if (this.level.getServer().tickRateManager().runsNormally()) { if (this.level.getServer().tickRateManager().runsNormally()) {
gameprofilerfiller.popPush("naturalSpawnCount"); gameprofilerfiller.popPush("naturalSpawnCount");
@@ -1347,7 +1345,7 @@ index 6e212f672579a3e08dc362c287be59ca5170d717..1f07d7cc8e15d54bc7841454aa47c8e5
int k = this.distanceManager.getNaturalSpawnChunkCount(); int k = this.distanceManager.getNaturalSpawnChunkCount();
// Paper start - per player mob spawning // Paper start - per player mob spawning
int naturalSpawnChunkCount = k; int naturalSpawnChunkCount = k;
@@ -581,7 +567,6 @@ public class ServerChunkCache extends ChunkSource { @@ -548,7 +534,6 @@ public class ServerChunkCache extends ChunkSource {
spawnercreature_d = NaturalSpawner.createState(naturalSpawnChunkCount, this.level.getAllEntities(), this::getFullChunk, !this.level.paperConfig().entities.spawning.perPlayerMobSpawns ? new LocalMobCapCalculator(this.chunkMap) : null, false); spawnercreature_d = NaturalSpawner.createState(naturalSpawnChunkCount, this.level.getAllEntities(), this::getFullChunk, !this.level.paperConfig().entities.spawning.perPlayerMobSpawns ? new LocalMobCapCalculator(this.chunkMap) : null, false);
} }
// Paper end // Paper end
@@ -1355,7 +1353,7 @@ index 6e212f672579a3e08dc362c287be59ca5170d717..1f07d7cc8e15d54bc7841454aa47c8e5
this.lastSpawnState = spawnercreature_d; this.lastSpawnState = spawnercreature_d;
gameprofilerfiller.popPush("spawnAndTick"); gameprofilerfiller.popPush("spawnAndTick");
@@ -688,19 +673,14 @@ public class ServerChunkCache extends ChunkSource { @@ -657,19 +642,14 @@ public class ServerChunkCache extends ChunkSource {
} }
} }
// Paper end - optimise chunk tick iteration // Paper end - optimise chunk tick iteration
@@ -1375,7 +1373,7 @@ index 6e212f672579a3e08dc362c287be59ca5170d717..1f07d7cc8e15d54bc7841454aa47c8e5
// Paper start - optimise chunk tick iteration // Paper start - optimise chunk tick iteration
if (!this.chunkMap.needsChangeBroadcasting.isEmpty()) { if (!this.chunkMap.needsChangeBroadcasting.isEmpty()) {
it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<ChunkHolder> copy = this.chunkMap.needsChangeBroadcasting.clone(); it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<ChunkHolder> copy = this.chunkMap.needsChangeBroadcasting.clone();
@@ -714,8 +694,6 @@ public class ServerChunkCache extends ChunkSource { @@ -683,8 +663,6 @@ public class ServerChunkCache extends ChunkSource {
} }
} }
// Paper end - optimise chunk tick iteration // Paper end - optimise chunk tick iteration
@@ -1954,7 +1952,7 @@ index fa170cc1ce7011d201295b89718292d696c7fc24..6b47cd3dfd0b7a9fc670522d8591e2f4
} }
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 0815d354bbcb3ce2e263690f71f32c320fe3d1d2..e815dc2a36343925150c3bcb3a0ef6fded1bc955 100644 index 1cc94f4edd225524b31c73700e624a6b3e2aa7db..01d907e3266095bb33d3a73dc56004fd79043943 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -343,8 +343,8 @@ public class Main { @@ -343,8 +343,8 @@ public class Main {

View File

@@ -31,18 +31,18 @@ index 46954db7ecd35ac4018fdf476df7c8020d7ce6c8..044c51ebb058fc36074fd178929e3279
public PlayerAreaMap() { public PlayerAreaMap() {
super(); super();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 9abe817ae202edaa2d88cd59ae5c7db0b1c634be..a260235364b7acaac5ffa28234400ee907a4889b 100644 index 0c46a4aeafd03fbbfd590b0362d41bf2b1d5ca74..3c9b90b8d997790f3e4302eee41919780e561aff 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -422,6 +422,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -422,6 +422,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
private UUID originWorld; private UUID originWorld;
public boolean freezeLocked = false; // Paper - Freeze Tick Lock API public boolean freezeLocked = false; // Paper - Freeze Tick Lock API
public boolean collidingWithWorldBorder; // Paper
+ private CompoundTag leavesData = new CompoundTag(); // Leaves - Leaves ex data
public boolean fixedPose = false; // Paper public boolean fixedPose = false; // Paper
+ private CompoundTag leavesData = new CompoundTag(); // Leaves - Leaves ex data
public void setOrigin(@javax.annotation.Nonnull Location location) { public void setOrigin(@javax.annotation.Nonnull Location location) {
@@ -2478,6 +2479,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.origin = location.toVector();
@@ -2473,6 +2474,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
nbttagcompound.putBoolean("Paper.FreezeLock", true); nbttagcompound.putBoolean("Paper.FreezeLock", true);
} }
// Paper end // Paper end
@@ -50,7 +50,7 @@ index 9abe817ae202edaa2d88cd59ae5c7db0b1c634be..a260235364b7acaac5ffa28234400ee9
return nbttagcompound; return nbttagcompound;
} catch (Throwable throwable) { } catch (Throwable throwable) {
CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT");
@@ -2625,6 +2627,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2620,6 +2622,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
freezeLocked = nbt.getBoolean("Paper.FreezeLock"); freezeLocked = nbt.getBoolean("Paper.FreezeLock");
} }
// Paper end // Paper end
@@ -62,7 +62,7 @@ index 9abe817ae202edaa2d88cd59ae5c7db0b1c634be..a260235364b7acaac5ffa28234400ee9
} catch (Throwable throwable) { } catch (Throwable throwable) {
CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT"); CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT");
@@ -4916,4 +4923,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4911,4 +4918,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this); return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this);
} }
// Paper end // Paper end

View File

@@ -68,10 +68,10 @@ index d1f19c87d6112e7ab9afa5c2e6d6ec529b351d24..1c4a75b556be384807cbc26e7ee8b580
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env); this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 057b5fd0fd4f5dc2340cd80f316703edc1f88cae..04d9a1838f1c47c83eb94ea85e46d689c83a679a 100644 index a8b92ff8975730fb8ac752aa21aa28f9cae26dd9..89f4f6d1a9822569b267a90ee091b8d219b73abe 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1036,6 +1036,7 @@ public final class CraftServer implements Server { @@ -1037,6 +1037,7 @@ public final class CraftServer implements Server {
org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot
this.console.paperConfigurations.reloadConfigs(this.console); this.console.paperConfigurations.reloadConfigs(this.console);
@@ -79,7 +79,7 @@ index 057b5fd0fd4f5dc2340cd80f316703edc1f88cae..04d9a1838f1c47c83eb94ea85e46d689
for (ServerLevel world : this.console.getAllLevels()) { for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty // world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean)) world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
@@ -1051,6 +1052,7 @@ public final class CraftServer implements Server { @@ -1052,6 +1053,7 @@ public final class CraftServer implements Server {
} }
} }
world.spigotConfig.init(); // Spigot world.spigotConfig.init(); // Spigot
@@ -87,7 +87,7 @@ index 057b5fd0fd4f5dc2340cd80f316703edc1f88cae..04d9a1838f1c47c83eb94ea85e46d689
} }
Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
@@ -1066,6 +1068,7 @@ public final class CraftServer implements Server { @@ -1067,6 +1069,7 @@ public final class CraftServer implements Server {
this.reloadData(); this.reloadData();
org.spigotmc.SpigotConfig.registerCommands(); // Spigot org.spigotmc.SpigotConfig.registerCommands(); // Spigot
io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper
@@ -95,7 +95,7 @@ index 057b5fd0fd4f5dc2340cd80f316703edc1f88cae..04d9a1838f1c47c83eb94ea85e46d689
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
@@ -3009,6 +3012,14 @@ public final class CraftServer implements Server { @@ -3010,6 +3013,14 @@ public final class CraftServer implements Server {
{ {
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console); return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
} }
@@ -111,7 +111,7 @@ index 057b5fd0fd4f5dc2340cd80f316703edc1f88cae..04d9a1838f1c47c83eb94ea85e46d689
@Override @Override
public void restart() { public void restart() {
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index e815dc2a36343925150c3bcb3a0ef6fded1bc955..afe922d39eeacc7916862a3287a9e97e22813dab 100644 index 01d907e3266095bb33d3a73dc56004fd79043943..06c00aa070334deeae96524b35ff129547e675ea 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -166,6 +166,14 @@ public class Main { @@ -166,6 +166,14 @@ public class Main {

View File

@@ -77,10 +77,10 @@ index cd4e8facc10796fbb68141994b7fed5ca379f1a4..937c4aefc5f24cbfe3f9c9fce3cfb2f4
ServerLevel worldserver = entityplayer.serverLevel(); ServerLevel worldserver = entityplayer.serverLevel();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 04d9a1838f1c47c83eb94ea85e46d689c83a679a..8fa5e507214b79573506c987a7060013dbf5ac2e 100644 index 89f4f6d1a9822569b267a90ee091b8d219b73abe..72e8f8cc4db8b75e3c93470911a0509eef2d9a1f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -467,6 +467,7 @@ public final class CraftServer implements Server { @@ -463,6 +463,7 @@ public final class CraftServer implements Server {
MapPalette.setMapColorCache(new CraftMapColorCache(this.logger)); MapPalette.setMapColorCache(new CraftMapColorCache(this.logger));
} }
datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper
@@ -88,7 +88,7 @@ index 04d9a1838f1c47c83eb94ea85e46d689c83a679a..8fa5e507214b79573506c987a7060013
} }
public boolean getCommandBlockOverride(String command) { public boolean getCommandBlockOverride(String command) {
@@ -1071,6 +1072,7 @@ public final class CraftServer implements Server { @@ -1072,6 +1073,7 @@ public final class CraftServer implements Server {
top.leavesmc.leaves.LeavesConfig.registerCommands(); // Leaves - Server Command top.leavesmc.leaves.LeavesConfig.registerCommands(); // Leaves - Server Command
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix gravity block duper
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index a260235364b7acaac5ffa28234400ee907a4889b..ab66958a734ff303f25e62fec21f1b250aeec5ab 100644 index 3c9b90b8d997790f3e4302eee41919780e561aff..2134c810da69a8c4a2bddcb29c0534d7ad65e8aa 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -505,38 +505,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -504,38 +504,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public boolean updatingSectionStatus = false; public boolean updatingSectionStatus = false;
// Paper end // Paper end
@@ -48,7 +48,7 @@ index a260235364b7acaac5ffa28234400ee907a4889b..ab66958a734ff303f25e62fec21f1b25
public boolean isLegacyTrackingEntity = false; public boolean isLegacyTrackingEntity = false;
@@ -3183,7 +3154,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3178,7 +3149,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
this.processPortalCooldown(); this.processPortalCooldown();

View File

@@ -17,7 +17,7 @@ index 31fa6a0cb00139bfcb71f4fd30da8b736bf491f2..1ad8b58fc3e97026173727fd4bb84782
Set<CriterionTrigger.Listener<T>> set = (Set) playerAdvancements.criterionData.get(this); // Paper - fix AdvancementDataPlayer leak Set<CriterionTrigger.Listener<T>> set = (Set) playerAdvancements.criterionData.get(this); // Paper - fix AdvancementDataPlayer leak
if (set != null && !set.isEmpty()) { if (set != null && !set.isEmpty()) {
diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java
index c0ea20dcee8bb293df96bc6ee019e50ad6b383fd..f265b3b3736de5ff3bc1b52146d11f92033730a5 100644 index 2ae08b21c63490bbf8cd870f9585d82ed131f815..c6f773afc39e7c97d13d1977a7609fc46714709d 100644
--- a/src/main/java/net/minecraft/network/Connection.java --- a/src/main/java/net/minecraft/network/Connection.java
+++ b/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java
@@ -339,6 +339,14 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> { @@ -339,6 +339,14 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
@@ -99,18 +99,10 @@ index d9a33968fa0f1aa5def297f34ba1dbf229ee7c32..a54e9a6a35760eae2c70eb6b9d4881ec
} }
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 8efbbd379244e3ed54d4aba199037cc20ccd096a..5ae4f2a4138611ef4428719f27b991612cb962e8 100644 index d1f20a8a3ccea1f074624163eb96da023142a459..5922236bc6c69a8266144435e665861a657778ac 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -95,7 +95,6 @@ import net.minecraft.util.Mth; @@ -186,6 +186,7 @@ import org.bukkit.event.player.PlayerTeleportEvent;
import net.minecraft.util.RandomSource;
import net.minecraft.util.Unit;
import net.minecraft.world.damagesource.DamageSource;
-import net.minecraft.world.damagesource.DamageSources;
import net.minecraft.world.effect.MobEffectInstance;
import net.minecraft.world.effect.MobEffects;
import net.minecraft.world.entity.Entity;
@@ -186,6 +185,7 @@ import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.event.player.PlayerToggleSneakEvent; import org.bukkit.event.player.PlayerToggleSneakEvent;
import org.bukkit.inventory.MainHand; import org.bukkit.inventory.MainHand;
@@ -118,7 +110,7 @@ index 8efbbd379244e3ed54d4aba199037cc20ccd096a..5ae4f2a4138611ef4428719f27b99161
// CraftBukkit end // CraftBukkit end
public class ServerPlayer extends Player { public class ServerPlayer extends Player {
@@ -730,15 +730,19 @@ public class ServerPlayer extends Player { @@ -730,15 +731,19 @@ public class ServerPlayer extends Player {
} }
// Paper start - Configurable container update tick rate // Paper start - Configurable container update tick rate
@@ -146,7 +138,7 @@ index 8efbbd379244e3ed54d4aba199037cc20ccd096a..5ae4f2a4138611ef4428719f27b99161
Entity entity = this.getCamera(); Entity entity = this.getCamera();
@@ -754,7 +758,7 @@ public class ServerPlayer extends Player { @@ -754,7 +759,7 @@ public class ServerPlayer extends Player {
} }
} }
@@ -155,7 +147,7 @@ index 8efbbd379244e3ed54d4aba199037cc20ccd096a..5ae4f2a4138611ef4428719f27b99161
if (this.levitationStartPos != null) { if (this.levitationStartPos != null) {
CriteriaTriggers.LEVITATION.trigger(this, this.levitationStartPos, this.tickCount - this.levitationStartTime); CriteriaTriggers.LEVITATION.trigger(this, this.levitationStartPos, this.tickCount - this.levitationStartTime);
} }
@@ -947,7 +951,7 @@ public class ServerPlayer extends Player { @@ -947,7 +952,7 @@ public class ServerPlayer extends Player {
List<DefaultDrop> loot = new java.util.ArrayList<>(this.getInventory().getContainerSize()); // Paper List<DefaultDrop> loot = new java.util.ArrayList<>(this.getInventory().getContainerSize()); // Paper
boolean keepInventory = this.level().getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) || this.isSpectator(); boolean keepInventory = this.level().getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) || this.isSpectator();
@@ -163,8 +155,8 @@ index 8efbbd379244e3ed54d4aba199037cc20ccd096a..5ae4f2a4138611ef4428719f27b99161
+ if (!keepInventory || this instanceof ServerBot) { // Leaves - skip bot + if (!keepInventory || this instanceof ServerBot) { // Leaves - skip bot
for (ItemStack item : this.getInventory().getContents()) { for (ItemStack item : this.getInventory().getContents()) {
if (!item.isEmpty() && !EnchantmentHelper.hasVanishingCurse(item)) { if (!item.isEmpty() && !EnchantmentHelper.hasVanishingCurse(item)) {
loot.add(new DefaultDrop(item, stack -> this.drop(stack, true, false))); // Paper - drop function taken from Inventory#dropAll loot.add(new DefaultDrop(item, stack -> this.drop(stack, true, false, false))); // Paper - drop function taken from Inventory#dropAll (don't fire drop event)
@@ -1271,6 +1275,13 @@ public class ServerPlayer extends Player { @@ -1271,6 +1276,13 @@ public class ServerPlayer extends Player {
this.lastSentHealth = -1.0F; this.lastSentHealth = -1.0F;
this.lastSentFood = -1; this.lastSentFood = -1;
@@ -282,10 +274,10 @@ index 937c4aefc5f24cbfe3f9c9fce3cfb2f40db5675b..81c09a9686731953787b56c3c8a20543
+ // Leaves end - fakeplayer support + // Leaves end - fakeplayer support
} }
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index ab66958a734ff303f25e62fec21f1b250aeec5ab..741b090e46a34e9c7711ddebf06c12316b5ad7de 100644 index 2134c810da69a8c4a2bddcb29c0534d7ad65e8aa..2bd6e02291b6ac6ff31e85f6721bb89b2efc704b 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1421,7 +1421,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1420,7 +1420,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return offsetFactor; return offsetFactor;
} }
@@ -361,10 +353,10 @@ index dfeb3e336e06ef01f5401a362755030db942bb07..c51413bf02b3572a05f09d2f0d02493d
if (randomsource.nextInt(j) >= world.paperConfig().entities.behavior.playerInsomniaStartTicks) { // Paper if (randomsource.nextInt(j) >= world.paperConfig().entities.behavior.playerInsomniaStartTicks) { // Paper
BlockPos blockposition1 = blockposition.above(20 + randomsource.nextInt(15)).east(-10 + randomsource.nextInt(21)).south(-10 + randomsource.nextInt(21)); BlockPos blockposition1 = blockposition.above(20 + randomsource.nextInt(15)).east(-10 + randomsource.nextInt(21)).south(-10 + randomsource.nextInt(21));
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8fa5e507214b79573506c987a7060013dbf5ac2e..a36b234f884e2aae88a29fae872aeef662b27712 100644 index 72e8f8cc4db8b75e3c93470911a0509eef2d9a1f..9782a52dbbad0f1c4baaf3651790b19619def28f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -265,6 +265,7 @@ import org.yaml.snakeyaml.constructor.SafeConstructor; @@ -259,6 +259,7 @@ import org.yaml.snakeyaml.constructor.SafeConstructor;
import org.yaml.snakeyaml.error.MarkedYAMLException; import org.yaml.snakeyaml.error.MarkedYAMLException;
import net.md_5.bungee.api.chat.BaseComponent; // Spigot import net.md_5.bungee.api.chat.BaseComponent; // Spigot
@@ -372,7 +364,7 @@ index 8fa5e507214b79573506c987a7060013dbf5ac2e..a36b234f884e2aae88a29fae872aeef6
import javax.annotation.Nullable; // Paper import javax.annotation.Nullable; // Paper
import javax.annotation.Nonnull; // Paper import javax.annotation.Nonnull; // Paper
@@ -310,6 +311,7 @@ public final class CraftServer implements Server { @@ -305,6 +306,7 @@ public final class CraftServer implements Server {
public static Exception excessiveVelEx; // Paper - Velocity warnings public static Exception excessiveVelEx; // Paper - Velocity warnings
private final io.papermc.paper.logging.SysoutCatcher sysoutCatcher = new io.papermc.paper.logging.SysoutCatcher(); // Paper private final io.papermc.paper.logging.SysoutCatcher sysoutCatcher = new io.papermc.paper.logging.SysoutCatcher(); // Paper
private final CraftPotionBrewer potionBrewer = new CraftPotionBrewer(); // Paper private final CraftPotionBrewer potionBrewer = new CraftPotionBrewer(); // Paper
@@ -380,7 +372,7 @@ index 8fa5e507214b79573506c987a7060013dbf5ac2e..a36b234f884e2aae88a29fae872aeef6
// Paper start - Folia region threading API // Paper start - Folia region threading API
private final io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler(); private final io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler();
@@ -3241,4 +3243,11 @@ public final class CraftServer implements Server { @@ -3242,4 +3244,11 @@ public final class CraftServer implements Server {
} }
// Paper end // Paper end
@@ -393,10 +385,10 @@ index 8fa5e507214b79573506c987a7060013dbf5ac2e..a36b234f884e2aae88a29fae872aeef6
+ // Leaves end - Bot API + // Leaves end - Bot API
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index aa4dbf91cf6da329fdcacbde98bb870eb48e8f5c..801ee163a71ab2afd822c7f17bf45573c0fd83f5 100644 index 1727e932ac6b9ca09b5df96f9547ff125114e15a..418f16debd40e7588c8cfea2876a9688ceb11730 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -199,6 +199,8 @@ import org.bukkit.plugin.Plugin; @@ -54,6 +54,8 @@ import org.bukkit.plugin.Plugin;
import org.bukkit.util.BoundingBox; import org.bukkit.util.BoundingBox;
import org.bukkit.util.NumberConversions; import org.bukkit.util.NumberConversions;
import org.bukkit.util.Vector; import org.bukkit.util.Vector;
@@ -405,20 +397,15 @@ index aa4dbf91cf6da329fdcacbde98bb870eb48e8f5c..801ee163a71ab2afd822c7f17bf45573
import net.md_5.bungee.api.chat.BaseComponent; // Spigot import net.md_5.bungee.api.chat.BaseComponent; // Spigot
@@ -236,7 +238,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -91,6 +93,8 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
if (entity instanceof LivingEntity) { return new CraftHumanEntity(server, (net.minecraft.world.entity.player.Player) entity);
// Players }
if (entity instanceof net.minecraft.world.entity.player.Player) {
- if (entity instanceof ServerPlayer) { return new CraftPlayer(server, (ServerPlayer) entity); } + if (entity instanceof ServerBot) { return new CraftBot(server, (ServerBot) entity); }
+ // Leaves start - add CraftBot +
+ if (entity instanceof ServerPlayer) { // Special case complex part, since there is no extra entity type for them
+ if (entity instanceof ServerBot) { return new CraftBot(server, (ServerBot) entity); } if (entity instanceof EnderDragonPart complexPart) {
+ else { return new CraftPlayer(server, (ServerPlayer) entity); } if (complexPart.parentMob instanceof EnderDragon) {
+ }
+ // Leaves end - add CraftBot
else { return new CraftHumanEntity(server, (net.minecraft.world.entity.player.Player) entity); }
}
// Water Animals
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
index 74ff54724626908a083063c54983e0adfbbf7749..7afc1618f2014df67ca42f00c09e863c16afda56 100644 index 74ff54724626908a083063c54983e0adfbbf7749..7afc1618f2014df67ca42f00c09e863c16afda56 100644
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java

View File

@@ -25,7 +25,7 @@ index 200ed770b57e1a9240abf0473968d4b85cbefe3c..bf16715db2424f0b05854ae7665b4448
public static long getCoordinateKey(final ChunkPos pair) { public static long getCoordinateKey(final ChunkPos pair) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 741b090e46a34e9c7711ddebf06c12316b5ad7de..94de127e75688b6e5fa5660eb853140438258083 100644 index 2bd6e02291b6ac6ff31e85f6721bb89b2efc704b..0cdfb9470c29132f75a5b3df05178626a56e4e6e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -307,7 +307,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -307,7 +307,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] Optimize random calls in chunk ticking
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish) This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index 1f07d7cc8e15d54bc7841454aa47c8e51d77ea86..8a3e55b3a79a174a2a55f38d39ed4b8ba29b8763 100644 index d6089c0d0b076d232834619bc93bc64f0be57340..c4577d7dc27bb48c95794212de4abf2e31458380 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -503,6 +503,11 @@ public class ServerChunkCache extends ChunkSource { @@ -503,6 +503,11 @@ public class ServerChunkCache extends ChunkSource {
@@ -19,8 +19,8 @@ index 1f07d7cc8e15d54bc7841454aa47c8e51d77ea86..8a3e55b3a79a174a2a55f38d39ed4b8b
+ } + }
+ // Leaves end - reset ice & snow tick random + // Leaves end - reset ice & snow tick random
gameprofilerfiller.push("filteringLoadedChunks"); gameprofilerfiller.push("filteringLoadedChunks");
// Paper - optimise chunk tick iteration
// Paper start - optimise chunk tick iteration
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index eacc88d49f1c4158eb60a7b4425134fa827a6381..62745cdb8cb2d153621dc5e4c8ebd2cbd5fc7c08 100644 index eacc88d49f1c4158eb60a7b4425134fa827a6381..62745cdb8cb2d153621dc5e4c8ebd2cbd5fc7c08 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Reduce entity allocations
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish) This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 94de127e75688b6e5fa5660eb853140438258083..13d6f4e7ca613fe11e97b5a562b494ce9ce5d211 100644 index 0cdfb9470c29132f75a5b3df05178626a56e4e6e..c4fb0f8e4aa77f8c6d77ad0ca9f8d985ea6cec3e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -440,6 +440,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -439,6 +439,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return this.originWorld; return this.originWorld;
} }
// Paper end // Paper end

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Reduce entity fluid lookups if no fluids
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish) This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 13d6f4e7ca613fe11e97b5a562b494ce9ce5d211..2d9af0ad73e718fe387dc0df1984c83a962319f3 100644 index c4fb0f8e4aa77f8c6d77ad0ca9f8d985ea6cec3e..76508bdb3331f8b33d1b7575e8500cef3fa7e8f4 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4384,16 +4384,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4379,16 +4379,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) { public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
@@ -35,7 +35,7 @@ index 13d6f4e7ca613fe11e97b5a562b494ce9ce5d211..2d9af0ad73e718fe387dc0df1984c83a
double d1 = 0.0D; double d1 = 0.0D;
boolean flag = this.isPushedByFluid(); boolean flag = this.isPushedByFluid();
boolean flag1 = false; boolean flag1 = false;
@@ -4401,38 +4403,123 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4396,38 +4398,123 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
int k1 = 0; int k1 = 0;
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Player operation limiter
This patch is Powered by plusls-carpet-addition(https://github.com/plusls/plusls-carpet-addition) This patch is Powered by plusls-carpet-addition(https://github.com/plusls/plusls-carpet-addition)
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 5ae4f2a4138611ef4428719f27b991612cb962e8..7ba1067382a53740e82480db9ce2ba48f28beb92 100644 index 5922236bc6c69a8266144435e665861a657778ac..d8f0e6f64a28df720306f6b77d78cfabfba4ffe9 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -281,6 +281,10 @@ public class ServerPlayer extends Player { @@ -282,6 +282,10 @@ public class ServerPlayer extends Player {
public com.destroystokyo.paper.event.entity.PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper public com.destroystokyo.paper.event.entity.PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
public @Nullable String clientBrandName = null; // Paper - Brand name public @Nullable String clientBrandName = null; // Paper - Brand name
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
@@ -20,7 +20,7 @@ index 5ae4f2a4138611ef4428719f27b991612cb962e8..7ba1067382a53740e82480db9ce2ba48
// Paper start - replace player chunk loader // Paper start - replace player chunk loader
private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1)); private final java.util.concurrent.atomic.AtomicReference<io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances> viewDistances = new java.util.concurrent.atomic.AtomicReference<>(new io.papermc.paper.chunk.system.RegionizedPlayerChunkLoader.ViewDistances(-1, -1, -1));
@@ -722,6 +726,7 @@ public class ServerPlayer extends Player { @@ -723,6 +727,7 @@ public class ServerPlayer extends Player {
this.joining = false; this.joining = false;
} }
// CraftBukkit end // CraftBukkit end
@@ -28,7 +28,7 @@ index 5ae4f2a4138611ef4428719f27b991612cb962e8..7ba1067382a53740e82480db9ce2ba48
this.gameMode.tick(); this.gameMode.tick();
this.wardenSpawnTracker.tick(); this.wardenSpawnTracker.tick();
--this.spawnInvulnerableTime; --this.spawnInvulnerableTime;
@@ -2765,5 +2770,32 @@ public class ServerPlayer extends Player { @@ -2766,5 +2771,32 @@ public class ServerPlayer extends Player {
public CraftPlayer getBukkitEntity() { public CraftPlayer getBukkitEntity() {
return (CraftPlayer) super.getBukkitEntity(); return (CraftPlayer) super.getBukkitEntity();
} }

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Return nether portal fix
This patch is powered by NetherPortalFix(https://github.com/TwelveIterationMods/NetherPortalFix) This patch is powered by NetherPortalFix(https://github.com/TwelveIterationMods/NetherPortalFix)
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 7ba1067382a53740e82480db9ce2ba48f28beb92..b60f13f552b5bccf01e1c9e0bfc1e82013ad31a9 100644 index d8f0e6f64a28df720306f6b77d78cfabfba4ffe9..08851bf5f7aa89b18f347bfc6e7f3d40b59a99e3 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -186,6 +186,7 @@ import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; @@ -187,6 +187,7 @@ import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.event.player.PlayerToggleSneakEvent; import org.bukkit.event.player.PlayerToggleSneakEvent;
import org.bukkit.inventory.MainHand; import org.bukkit.inventory.MainHand;
import top.leavesmc.leaves.bot.ServerBot; import top.leavesmc.leaves.bot.ServerBot;
@@ -17,7 +17,7 @@ index 7ba1067382a53740e82480db9ce2ba48f28beb92..b60f13f552b5bccf01e1c9e0bfc1e820
// CraftBukkit end // CraftBukkit end
public class ServerPlayer extends Player { public class ServerPlayer extends Player {
@@ -1291,6 +1292,24 @@ public class ServerPlayer extends Player { @@ -1292,6 +1293,24 @@ public class ServerPlayer extends Player {
PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld()); PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld());
this.level().getCraftServer().getPluginManager().callEvent(changeEvent); this.level().getCraftServer().getPluginManager().callEvent(changeEvent);
// CraftBukkit end // CraftBukkit end
@@ -42,7 +42,7 @@ index 7ba1067382a53740e82480db9ce2ba48f28beb92..b60f13f552b5bccf01e1c9e0bfc1e820
} }
// Paper start // Paper start
if (this.isBlocking()) { if (this.isBlocking()) {
@@ -1343,6 +1362,30 @@ public class ServerPlayer extends Player { @@ -1344,6 +1363,30 @@ public class ServerPlayer extends Player {
protected Optional<BlockUtil.FoundRectangle> getExitPortal(ServerLevel worldserver, BlockPos blockposition, boolean flag, WorldBorder worldborder, int searchRadius, boolean canCreatePortal, int createRadius) { // CraftBukkit protected Optional<BlockUtil.FoundRectangle> getExitPortal(ServerLevel worldserver, BlockPos blockposition, boolean flag, WorldBorder worldborder, int searchRadius, boolean canCreatePortal, int createRadius) { // CraftBukkit
Optional<BlockUtil.FoundRectangle> optional = super.getExitPortal(worldserver, blockposition, flag, worldborder, searchRadius, canCreatePortal, createRadius); // CraftBukkit Optional<BlockUtil.FoundRectangle> optional = super.getExitPortal(worldserver, blockposition, flag, worldborder, searchRadius, canCreatePortal, createRadius); // CraftBukkit

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Use vanilla random config
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 2d9af0ad73e718fe387dc0df1984c83a962319f3..4c703438c091171df4bd673b6b732d07490e9cc5 100644 index 76508bdb3331f8b33d1b7575e8500cef3fa7e8f4..e4ad454fed1d4f615621c7973598f8106f57b5ab 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -548,7 +548,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -547,7 +547,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.bb = Entity.INITIAL_AABB; this.bb = Entity.INITIAL_AABB;
this.stuckSpeedMultiplier = Vec3.ZERO; this.stuckSpeedMultiplier = Vec3.ZERO;
this.nextStep = 1.0F; this.nextStep = 1.0F;

View File

@@ -58,10 +58,10 @@ index ab64a28775d3b5b57a103e2bedaf6af30e62bca7..c70597690364e044a0d4231eb2895cc5
!worldserver.areChunksLoadedForMove(entity.getBoundingBox().expandTowards(new Vec3(toX, toY, toZ).subtract(entity.position()))) !worldserver.areChunksLoadedForMove(entity.getBoundingBox().expandTowards(new Vec3(toX, toY, toZ).subtract(entity.position())))
)) { )) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4c703438c091171df4bd673b6b732d07490e9cc5..9752b4205b5d3047b29fc7e98233f4f601826a57 100644 index e4ad454fed1d4f615621c7973598f8106f57b5ab..c555922aaf678261fa67403194b3df08ab390e15 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1069,7 +1069,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1068,7 +1068,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return; return;
} }
} }
@@ -76,7 +76,7 @@ index 4c703438c091171df4bd673b6b732d07490e9cc5..9752b4205b5d3047b29fc7e98233f4f6
this.level().getProfiler().push("move"); this.level().getProfiler().push("move");
if (this.stuckSpeedMultiplier.lengthSqr() > 1.0E-7D) { if (this.stuckSpeedMultiplier.lengthSqr() > 1.0E-7D) {
movement = movement.multiply(this.stuckSpeedMultiplier); movement = movement.multiply(this.stuckSpeedMultiplier);
@@ -2008,6 +2014,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2003,6 +2009,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.yo = y; this.yo = y;
this.zo = d4; this.zo = d4;
this.setPos(d3, y, d4); this.setPos(d3, y, d4);

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Fix Paper#9372
This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish) This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish)
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index b60f13f552b5bccf01e1c9e0bfc1e82013ad31a9..700613bf12bb1b1c23bc33f335edb553edb2c630 100644 index 08851bf5f7aa89b18f347bfc6e7f3d40b59a99e3..40cd9577157ff1c3eb7a018c5803c6b49701065d 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1262,6 +1262,7 @@ public class ServerPlayer extends Player { @@ -1263,6 +1263,7 @@ public class ServerPlayer extends Player {
this.setServerLevel(worldserver); this.setServerLevel(worldserver);
this.connection.teleport(exit); // CraftBukkit - use internal teleport without event this.connection.teleport(exit); // CraftBukkit - use internal teleport without event
this.connection.resetPosition(); this.connection.resetPosition();
@@ -17,7 +17,7 @@ index b60f13f552b5bccf01e1c9e0bfc1e82013ad31a9..700613bf12bb1b1c23bc33f335edb553
worldserver.addDuringPortalTeleport(this); worldserver.addDuringPortalTeleport(this);
worldserver1.getProfiler().pop(); worldserver1.getProfiler().pop();
this.triggerDimensionChangeTriggers(worldserver1); this.triggerDimensionChangeTriggers(worldserver1);
@@ -2075,6 +2076,7 @@ public class ServerPlayer extends Player { @@ -2076,6 +2077,7 @@ public class ServerPlayer extends Player {
public void moveTo(double x, double y, double z) { public void moveTo(double x, double y, double z) {
super.moveTo(x, y, z); super.moveTo(x, y, z);
this.connection.resetPosition(); this.connection.resetPosition();
@@ -25,7 +25,7 @@ index b60f13f552b5bccf01e1c9e0bfc1e82013ad31a9..700613bf12bb1b1c23bc33f335edb553
} }
@Override @Override
@@ -2321,6 +2323,7 @@ public class ServerPlayer extends Player { @@ -2322,6 +2324,7 @@ public class ServerPlayer extends Player {
this.connection.send(new ClientboundSetCameraPacket(this.camera)); this.connection.send(new ClientboundSetCameraPacket(this.camera));
this.connection.resetPosition(); this.connection.resetPosition();
@@ -33,7 +33,7 @@ index b60f13f552b5bccf01e1c9e0bfc1e82013ad31a9..700613bf12bb1b1c23bc33f335edb553
} }
} }
@@ -2760,6 +2763,7 @@ public class ServerPlayer extends Player { @@ -2761,6 +2764,7 @@ public class ServerPlayer extends Player {
public void forceSetPositionRotation(double x, double y, double z, float yaw, float pitch) { public void forceSetPositionRotation(double x, double y, double z, float yaw, float pitch) {
this.moveTo(x, y, z, yaw, pitch); this.moveTo(x, y, z, yaw, pitch);
this.connection.resetPosition(); this.connection.resetPosition();

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Container open passthrough
diff --git a/src/main/java/net/minecraft/world/level/block/SignBlock.java b/src/main/java/net/minecraft/world/level/block/SignBlock.java diff --git a/src/main/java/net/minecraft/world/level/block/SignBlock.java b/src/main/java/net/minecraft/world/level/block/SignBlock.java
index ade170b4c76ad4a36eb2fba831d438642c096205..872f50bdf238ff6cf3d327b3858323a84fcb777d 100644 index a09f6a2f9fdbe8361f67b543f3b337789897b982..fa9670bec73398225f670f64dc96ce9ee17443a9 100644
--- a/src/main/java/net/minecraft/world/level/block/SignBlock.java --- a/src/main/java/net/minecraft/world/level/block/SignBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/SignBlock.java +++ b/src/main/java/net/minecraft/world/level/block/SignBlock.java
@@ -117,6 +117,25 @@ public abstract class SignBlock extends BaseEntityBlock implements SimpleWaterlo @@ -117,6 +117,25 @@ public abstract class SignBlock extends BaseEntityBlock implements SimpleWaterlo

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] SIMD support
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 9dd0f8b3e4042bdd3adcb2ec59fdbe9629d0915f..eb7f6bda9fb38dd100d24fb92fce77b93974d874 100644 index 257520120913ab39d57ac0e79ae6381fbda0011b..7c020e9ff53d05af5512ac65f3a3f1c3da6fe2a8 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -83,6 +83,7 @@ tasks.withType<JavaCompile> { @@ -83,6 +83,7 @@ tasks.withType<JavaCompile> {

View File

@@ -202,7 +202,7 @@ index ff13d67151c50ea11a45117e524c7524e2b1a202..c25d23c9c2ed887ce9ae7f07cd8aa0d1
@Override @Override
diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java
index f265b3b3736de5ff3bc1b52146d11f92033730a5..50c73aaf95df8cb993994c59d1d4ecdd97951772 100644 index c6f773afc39e7c97d13d1977a7609fc46714709d..9cdf39bef3112ac0a522c8bc8cb1b2b5171272ea 100644
--- a/src/main/java/net/minecraft/network/Connection.java --- a/src/main/java/net/minecraft/network/Connection.java
+++ b/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java
@@ -57,6 +57,7 @@ import org.apache.commons.lang3.Validate; @@ -57,6 +57,7 @@ import org.apache.commons.lang3.Validate;

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Optimize sun burn tick
This patch is Powered by Gale(https://github.com/GaleMC/Gale) This patch is Powered by Gale(https://github.com/GaleMC/Gale)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 9752b4205b5d3047b29fc7e98233f4f601826a57..3d450dd637502941fb0a0be9aa64f09bf14eef0a 100644 index c555922aaf678261fa67403194b3df08ab390e15..595fd0bd92714b262db500dfafa6b651be8a19cd 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1994,8 +1994,22 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1989,8 +1989,22 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
/** @deprecated */ /** @deprecated */
@Deprecated @Deprecated
public float getLightLevelDependentMagicValue() { public float getLightLevelDependentMagicValue() {

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] Skip entity move if movement is zero
This patch is Powered by Gale(https://github.com/GaleMC/Gale) This patch is Powered by Gale(https://github.com/GaleMC/Gale)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 3d450dd637502941fb0a0be9aa64f09bf14eef0a..98570eb6c9c42bba4daf32d447c29650cfcd4de7 100644 index 595fd0bd92714b262db500dfafa6b651be8a19cd..30b49bdf47145e7ca87cd31a67a5aef4f46162fd 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -315,6 +315,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -315,6 +315,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -17,7 +17,7 @@ index 3d450dd637502941fb0a0be9aa64f09bf14eef0a..98570eb6c9c42bba4daf32d447c29650
public boolean onGround; public boolean onGround;
public boolean horizontalCollision; public boolean horizontalCollision;
public boolean verticalCollision; public boolean verticalCollision;
@@ -1047,6 +1048,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1046,6 +1047,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// Paper end - detailed watchdog information // Paper end - detailed watchdog information
public void move(MoverType movementType, Vec3 movement) { public void move(MoverType movementType, Vec3 movement) {
@@ -31,7 +31,7 @@ index 3d450dd637502941fb0a0be9aa64f09bf14eef0a..98570eb6c9c42bba4daf32d447c29650
// Paper start - detailed watchdog information // Paper start - detailed watchdog information
io.papermc.paper.util.TickThread.ensureTickThread("Cannot move an entity off-main"); io.papermc.paper.util.TickThread.ensureTickThread("Cannot move an entity off-main");
synchronized (this.posLock) { synchronized (this.posLock) {
@@ -4085,6 +4093,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4080,6 +4088,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public final void setBoundingBox(AABB boundingBox) { public final void setBoundingBox(AABB boundingBox) {

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Skip negligible planar movement multiplication
This patch is Powered by Gale(https://github.com/GaleMC/Gale) This patch is Powered by Gale(https://github.com/GaleMC/Gale)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 98570eb6c9c42bba4daf32d447c29650cfcd4de7..295f16965ef33c6369303b3c9a19be047223afaa 100644 index 30b49bdf47145e7ca87cd31a67a5aef4f46162fd..ee531617b44988cd8b65b4dc5618aac43076330c 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1218,9 +1218,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1217,9 +1217,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
this.tryCheckInsideBlocks(); this.tryCheckInsideBlocks();

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Force peaceful mode switch
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index 8a3e55b3a79a174a2a55f38d39ed4b8ba29b8763..d1a32a9e5267c27d1983abfb4812a6063964291f 100644 index c4577d7dc27bb48c95794212de4abf2e31458380..dc4b71023e43757ef0dad9d8b850afd304308ad9 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -74,6 +74,12 @@ public class ServerChunkCache extends ChunkSource { @@ -74,6 +74,12 @@ public class ServerChunkCache extends ChunkSource {
@@ -21,10 +21,12 @@ index 8a3e55b3a79a174a2a55f38d39ed4b8ba29b8763..d1a32a9e5267c27d1983abfb4812a606
private static int getChunkCacheKey(int x, int z) { private static int getChunkCacheKey(int x, int z) {
return x & 3 | ((z & 3) << 2); return x & 3 | ((z & 3) << 2);
} }
@@ -510,6 +516,21 @@ public class ServerChunkCache extends ChunkSource { @@ -509,7 +515,21 @@ public class ServerChunkCache extends ChunkSource {
}
// Leaves end - reset ice & snow tick random // Leaves end - reset ice & snow tick random
gameprofilerfiller.push("filteringLoadedChunks"); gameprofilerfiller.push("filteringLoadedChunks");
- // Paper - optimise chunk tick iteration
+
+ // Leaves start - peaceful mode switch + // Leaves start - peaceful mode switch
+ if (peacefulModeSwitchTick > 0) { + if (peacefulModeSwitchTick > 0) {
+ if (this.level.getLevelData().getGameTime() % peacefulModeSwitchTick == 0) { + if (this.level.getLevelData().getGameTime() % peacefulModeSwitchTick == 0) {
@@ -39,11 +41,10 @@ index 8a3e55b3a79a174a2a55f38d39ed4b8ba29b8763..d1a32a9e5267c27d1983abfb4812a606
+ peacefulModeSwitchCount = -1; + peacefulModeSwitchCount = -1;
+ } + }
+ // Leaves end - peaceful mode switch + // Leaves end - peaceful mode switch
+
// Paper start - optimise chunk tick iteration // Paper - optimise chunk tick iteration
ChunkMap playerChunkMap = this.chunkMap;
for (ServerPlayer player : this.level.players) { @@ -597,10 +617,20 @@ public class ServerChunkCache extends ChunkSource {
@@ -628,10 +649,20 @@ public class ServerChunkCache extends ChunkSource {
} }
Util.shuffle(shuffled, this.level.random); Util.shuffle(shuffled, this.level.random);
chunkIterator = shuffled.iterator(); chunkIterator = shuffled.iterator();
@@ -64,10 +65,10 @@ index 8a3e55b3a79a174a2a55f38d39ed4b8ba29b8763..d1a32a9e5267c27d1983abfb4812a606
+ try { + try {
+ // Paper end - optimise chunk tick iteration + // Paper end - optimise chunk tick iteration
+ while (chunkIterator.hasNext()) { + while (chunkIterator.hasNext()) {
LevelChunk chunk1 = chunkIterator.next(); // Paper - optimise chunk tick iteration LevelChunk chunk1 = chunkIterator.next();
// Paper end - optimise chunk tick iteration
ChunkPos chunkcoordintpair = chunk1.getPos(); ChunkPos chunkcoordintpair = chunk1.getPos();
@@ -631,7 +661,7 @@ public class ServerChunkCache extends ChunkSource {
@@ -662,7 +693,7 @@ public class ServerChunkCache extends ChunkSource {
// Paper end - optimise chunk tick iteration // Paper end - optimise chunk tick iteration
chunk1.incrementInhabitedTime(j); chunk1.incrementInhabitedTime(j);
if (spawn && flag && (this.spawnEnemies || this.spawnFriendlies) && this.level.getWorldBorder().isWithinBounds(chunkcoordintpair)) { // Spigot // Paper - optimise chunk tick iteration if (spawn && flag && (this.spawnEnemies || this.spawnFriendlies) && this.level.getWorldBorder().isWithinBounds(chunkcoordintpair)) { // Spigot // Paper - optimise chunk tick iteration

View File

@@ -334,10 +334,10 @@ index cd962621ee0d8bd17926a90ce960c46f1ae5a8dd..2a2262a9f0ead7a9b477cf7a75905b8d
this.server.getCustomBossEvents().onPlayerDisconnect(entityplayer); this.server.getCustomBossEvents().onPlayerDisconnect(entityplayer);
UUID uuid = entityplayer.getUUID(); UUID uuid = entityplayer.getUUID();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index a36b234f884e2aae88a29fae872aeef662b27712..43e4c9fe0243f29d66b0255306b02e07f886d8c6 100644 index 9782a52dbbad0f1c4baaf3651790b19619def28f..824adc860bd01b30e1669bb1635a1da0ef8996a8 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -266,6 +266,7 @@ import org.yaml.snakeyaml.error.MarkedYAMLException; @@ -260,6 +260,7 @@ import org.yaml.snakeyaml.error.MarkedYAMLException;
import net.md_5.bungee.api.chat.BaseComponent; // Spigot import net.md_5.bungee.api.chat.BaseComponent; // Spigot
import top.leavesmc.leaves.entity.CraftBotManager; import top.leavesmc.leaves.entity.CraftBotManager;
@@ -345,7 +345,7 @@ index a36b234f884e2aae88a29fae872aeef662b27712..43e4c9fe0243f29d66b0255306b02e07
import javax.annotation.Nullable; // Paper import javax.annotation.Nullable; // Paper
import javax.annotation.Nonnull; // Paper import javax.annotation.Nonnull; // Paper
@@ -312,6 +313,7 @@ public final class CraftServer implements Server { @@ -307,6 +308,7 @@ public final class CraftServer implements Server {
private final io.papermc.paper.logging.SysoutCatcher sysoutCatcher = new io.papermc.paper.logging.SysoutCatcher(); // Paper private final io.papermc.paper.logging.SysoutCatcher sysoutCatcher = new io.papermc.paper.logging.SysoutCatcher(); // Paper
private final CraftPotionBrewer potionBrewer = new CraftPotionBrewer(); // Paper private final CraftPotionBrewer potionBrewer = new CraftPotionBrewer(); // Paper
private final CraftBotManager botManager = new CraftBotManager(); private final CraftBotManager botManager = new CraftBotManager();
@@ -353,7 +353,7 @@ index a36b234f884e2aae88a29fae872aeef662b27712..43e4c9fe0243f29d66b0255306b02e07
// Paper start - Folia region threading API // Paper start - Folia region threading API
private final io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler(); private final io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler();
@@ -393,7 +395,7 @@ public final class CraftServer implements Server { @@ -388,7 +390,7 @@ public final class CraftServer implements Server {
public CraftServer(DedicatedServer console, PlayerList playerList) { public CraftServer(DedicatedServer console, PlayerList playerList) {
this.console = console; this.console = console;
this.playerList = (DedicatedPlayerList) playerList; this.playerList = (DedicatedPlayerList) playerList;
@@ -362,7 +362,7 @@ index a36b234f884e2aae88a29fae872aeef662b27712..43e4c9fe0243f29d66b0255306b02e07
@Override @Override
public CraftPlayer apply(ServerPlayer player) { public CraftPlayer apply(ServerPlayer player) {
return player.getBukkitEntity(); return player.getBukkitEntity();
@@ -3250,4 +3252,11 @@ public final class CraftServer implements Server { @@ -3251,4 +3253,11 @@ public final class CraftServer implements Server {
return botManager; return botManager;
} }
// Leaves end - Bot API // Leaves end - Bot API
@@ -375,10 +375,10 @@ index a36b234f884e2aae88a29fae872aeef662b27712..43e4c9fe0243f29d66b0255306b02e07
+ // Leaves end - replay mod api + // Leaves end - replay mod api
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 801ee163a71ab2afd822c7f17bf45573c0fd83f5..8598a20fa2a2a81ccbf2099f52c15103f91d53d0 100644 index 418f16debd40e7588c8cfea2876a9688ceb11730..a7215be2bdafaa35c3553eb5a94f0f4fc3ea9047 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -203,6 +203,8 @@ import top.leavesmc.leaves.bot.ServerBot; @@ -58,6 +58,8 @@ import top.leavesmc.leaves.bot.ServerBot;
import top.leavesmc.leaves.entity.CraftBot; import top.leavesmc.leaves.entity.CraftBot;
import net.md_5.bungee.api.chat.BaseComponent; // Spigot import net.md_5.bungee.api.chat.BaseComponent; // Spigot
@@ -387,14 +387,14 @@ index 801ee163a71ab2afd822c7f17bf45573c0fd83f5..8598a20fa2a2a81ccbf2099f52c15103
public abstract class CraftEntity implements org.bukkit.entity.Entity { public abstract class CraftEntity implements org.bukkit.entity.Entity {
private static PermissibleBase perm; private static PermissibleBase perm;
@@ -241,6 +243,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -94,6 +96,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
// Leaves start - add CraftBot }
if (entity instanceof ServerPlayer) {
if (entity instanceof ServerBot) { return new CraftBot(server, (ServerBot) entity); } if (entity instanceof ServerBot) { return new CraftBot(server, (ServerBot) entity); }
+ if (entity instanceof ServerPhotographer) { return new CraftPhotographer(server, (ServerPhotographer) entity); } + if (entity instanceof ServerPhotographer) { return new CraftPhotographer(server, (ServerPhotographer) entity); }
else { return new CraftPlayer(server, (ServerPlayer) entity); }
} // Special case complex part, since there is no extra entity type for them
// Leaves end - add CraftBot if (entity instanceof EnderDragonPart complexPart) {
diff --git a/src/main/java/top/leavesmc/leaves/entity/CraftPhotographer.java b/src/main/java/top/leavesmc/leaves/entity/CraftPhotographer.java diff --git a/src/main/java/top/leavesmc/leaves/entity/CraftPhotographer.java b/src/main/java/top/leavesmc/leaves/entity/CraftPhotographer.java
new file mode 100644 new file mode 100644
index 0000000000000000000000000000000000000000..65fd6fd9e6af4e43268f1f1507a37e1bd95d41b8 index 0000000000000000000000000000000000000000..65fd6fd9e6af4e43268f1f1507a37e1bd95d41b8

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Spider jockeys drop gapples
diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java
index 6f12e342adf1a008709fd9a4fbbbe1da8ec31b83..aaac1df6a29b64446f964285b5e825bc145017b0 100644 index 9063f66b0497a3eb3893e307e685be692cc5c128..02b5bac9fd1687278e77a5a644b6b1ead33fc6ef 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Spider.java --- a/src/main/java/net/minecraft/world/entity/monster/Spider.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java +++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java
@@ -154,6 +154,18 @@ public class Spider extends Monster { @@ -154,6 +154,18 @@ public class Spider extends Monster {