Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@1281f4f Make region/lock shift accessors per world
This commit is contained in:
granny
2023-12-31 18:03:16 -08:00
parent c049bfbd53
commit 837307112c
13 changed files with 61 additions and 61 deletions

View File

@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
version = 1.20.4-R0.1-SNAPSHOT
mcVersion = 1.20.4
paperCommit = 0ae58c09a15ee1ad307a2b8ef7e8ad735d336651
paperCommit = 1281f4f5526c0b8bdc32915c41dc6af6b4f9fea2
org.gradle.caching = true
org.gradle.parallel = true

View File

@@ -1718,10 +1718,10 @@ index 35674f92a67f93382103c2766df4b678ba5c862f..d46e61640b241d32df05240dedd2c23f
this.wasOnGround = this.entity.onGround();
this.teleportDelay = 0;
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 6041f1f5151f26d389f946d70f16e1de76db496b..4a802588f58bdea30b58521cbc4f0d76743f732e 100644
index 676087c3addd712939c865b39ddb5d9f0bc7ce25..2f89625c216e9751423c623b6e88b98c87d9a00b 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -895,6 +895,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -900,6 +900,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
this.timings.entityTick.startTiming(); // Spigot
this.entityTickList.forEach((entity) -> {
@@ -1729,7 +1729,7 @@ index 6041f1f5151f26d389f946d70f16e1de76db496b..4a802588f58bdea30b58521cbc4f0d76
if (!entity.isRemoved()) {
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
entity.discard();
@@ -914,7 +915,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -919,7 +920,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
gameprofilerfiller.push("tick");
@@ -1751,7 +1751,7 @@ index 6041f1f5151f26d389f946d70f16e1de76db496b..4a802588f58bdea30b58521cbc4f0d76
gameprofilerfiller.pop();
}
}
@@ -979,9 +993,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -984,9 +998,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
// Paper start - optimise random block ticking
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
@@ -1764,7 +1764,7 @@ index 6041f1f5151f26d389f946d70f16e1de76db496b..4a802588f58bdea30b58521cbc4f0d76
public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
ChunkPos chunkcoordintpair = chunk.getPos();
boolean flag = this.isRaining();
@@ -992,7 +1008,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -997,7 +1013,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
gameprofilerfiller.push("thunder");
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change

View File

@@ -40,10 +40,10 @@ index 0dd3374468e05f7a312ba5856b9cf8a4787dfa59..960c0555a001fe63de78d77d5ea47d08
"This can improve performance by a few percent, but has minor gameplay implications.");
}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 66cbea2fd146bdabf1241dae72bd76dc256afe45..5493e7e8ec1de5bb52ee7bd145e436fdb03e59b6 100644
index 2f89625c216e9751423c623b6e88b98c87d9a00b..51631a4d93daaa8e9ce3408836ee743fd35e16ff 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -993,7 +993,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -998,7 +998,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
// Paper start - optimise random block ticking
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
@@ -53,7 +53,7 @@ index 66cbea2fd146bdabf1241dae72bd76dc256afe45..5493e7e8ec1de5bb52ee7bd145e436fd
private int currentIceAndSnowTick = 0; protected void resetIceAndSnowTick() { this.currentIceAndSnowTick = this.randomTickRandom.nextInt(16); } // Pufferfish
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 3fb317e5df780abb7fa8c3d78717306cad2bc650..879f9ba2395b2856e8cd0c78a2b25782e29a7234 100644
index 2e14e03d01c97b9da97e8e15c663262d22b1b3fc..d0bc64a5970e06dcbec5e2b833977da24f1c0af3 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -213,7 +213,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Zombie horse naturally spawn
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 53131fc1fc02df8f60f0a44dd8c3a5a53e24fddb..7126dacffb7302927a6ca88ce3bfdec975ee342f 100644
index 9dbedb8ab967f5f8989b121b712d505f3ebc16a5..514bccb60ad65770507d26d270d2e5488fe8f329 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1017,10 +1017,18 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1022,10 +1022,18 @@ public class ServerLevel extends Level implements WorldGenLevel {
boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01D) && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper
if (flag1) {

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Allow toggling special MobSpawners per world
In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this.
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 7126dacffb7302927a6ca88ce3bfdec975ee342f..dfec321501523e1d953811961d1b5495cb41d815 100644
index 514bccb60ad65770507d26d270d2e5488fe8f329..73c1115cebb7d12874ae5de379bf9ac7481ac808 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -709,7 +709,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -714,7 +714,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.dragonParts = new Int2ObjectOpenHashMap();
this.tickTime = flag1;
this.server = minecraftserver;

View File

@@ -31,7 +31,7 @@ index 2bc4073bb331e4b3beae9cccb06d3ca46f9d3b24..9de37c25f7a970326dc96a3dd4b2fddf
}
ServerPlayer entityplayer = (ServerPlayer) entityhuman;
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index dfec321501523e1d953811961d1b5495cb41d815..3f95ede3602c3dea611ba9a6b4f6891419638283 100644
index 73c1115cebb7d12874ae5de379bf9ac7481ac808..a19cf61172822ce199a280d1b7dc8cdb036a49ac 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -216,6 +216,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -43,7 +43,7 @@ index dfec321501523e1d953811961d1b5495cb41d815..3f95ede3602c3dea611ba9a6b4f68914
private final RandomSequences randomSequences;
public long lastMidTickExecuteFailure; // Paper - execute chunk tasks mid tick
@@ -788,6 +790,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -793,6 +795,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.chunkTaskScheduler = new io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler(this, io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler.workerThreads); // Paper - rewrite chunk system
this.entityLookup = new io.papermc.paper.chunk.system.entity.EntityLookup(this, new EntityCallbacks()); // Paper - rewrite chunk system
@@ -51,7 +51,7 @@ index dfec321501523e1d953811961d1b5495cb41d815..3f95ede3602c3dea611ba9a6b4f68914
}
// Paper start
@@ -978,6 +981,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -983,6 +986,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.serverLevelData.setGameTime(i);
this.serverLevelData.getScheduledEvents().tick(this.server, i);
if (this.levelData.getGameRules().getBoolean(GameRules.RULE_DAYLIGHT)) {
@@ -65,7 +65,7 @@ index dfec321501523e1d953811961d1b5495cb41d815..3f95ede3602c3dea611ba9a6b4f68914
this.setDayTime(this.levelData.getDayTime() + 1L);
}
@@ -986,7 +996,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -991,7 +1001,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
public void setDayTime(long timeOfDay) {
this.serverLevelData.setDayTime(timeOfDay);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Config for skipping night
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3f95ede3602c3dea611ba9a6b4f6891419638283..b8bb7281208a03202bd0575e8dc998190751d46e 100644
index a19cf61172822ce199a280d1b7dc8cdb036a49ac..ceba48b52c9e01c073b89b04282fc1f8bfb9f700 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -841,7 +841,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -846,7 +846,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);
long j;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Make lightning rod range configurable
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index b8bb7281208a03202bd0575e8dc998190751d46e..735be788e584152bd2c33eaf9c08ebb21769a1db 100644
index ceba48b52c9e01c073b89b04282fc1f8bfb9f700..de2b3b931901ea4155e9313d5edc5ba9b95b2e75 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1193,7 +1193,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1198,7 +1198,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
return holder.is(PoiTypes.LIGHTNING_ROD);
}, (blockposition1) -> {
return blockposition1.getY() == this.getHeight(Heightmap.Types.WORLD_SURFACE, blockposition1.getX(), blockposition1.getZ()) - 1;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Customizable sleeping actionbar messages
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 5b6511f2394adce6785f5d8d6914c37b4e5fdedc..77b80dfd5409a6de848430e14cbc8d457ebccf83 100644
index de2b3b931901ea4155e9313d5edc5ba9b95b2e75..a655e163d6c0c340c2ef2abf00eca611eaad6660 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1242,11 +1242,27 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1247,11 +1247,27 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (this.canSleepThroughNights()) {
if (!this.getServer().isSingleplayer() || this.getServer().isPublished()) {
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Option for if rain and thunder should stop on sleep
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 64a56285c32fa70454371db366982f2530df0df5..59d6729e5e96ff34fd9cd31b2938a1da3826fa57 100644
index a655e163d6c0c340c2ef2abf00eca611eaad6660..9751b8b052cd47bc460207224aaf547b5d271411 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1402,6 +1402,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1407,6 +1407,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@VisibleForTesting
public void resetWeatherCycle() {
// CraftBukkit start
@@ -16,7 +16,7 @@ index 64a56285c32fa70454371db366982f2530df0df5..59d6729e5e96ff34fd9cd31b2938a1da
this.serverLevelData.setRaining(false, org.bukkit.event.weather.WeatherChangeEvent.Cause.SLEEP); // Paper - when passing the night
// If we stop due to everyone sleeping we should reset the weather duration to some other random value.
// Not that everyone ever manages to get the whole server to sleep at the same time....
@@ -1409,6 +1410,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1414,6 +1415,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.serverLevelData.setRainTime(0);
}
// CraftBukkit end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Allow void trading
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 59d6729e5e96ff34fd9cd31b2938a1da3826fa57..9121c5371b083d07d6b488e1a49d24a91ecccba0 100644
index 9751b8b052cd47bc460207224aaf547b5d271411..2e457d9c2a65875419fcc8cfcda33cfe9b528640 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -2924,7 +2924,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -2929,7 +2929,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
// Spigot Start
if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message
// Paper start

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Remove Timings
diff --git a/src/main/java/io/papermc/paper/chunk/system/scheduling/ChunkHolderManager.java b/src/main/java/io/papermc/paper/chunk/system/scheduling/ChunkHolderManager.java
index abd0217cf0bff183c8e262edc173a53403797c1a..2519ad2884b6c09b312432b933c31476b369e599 100644
index 6bc7c6f16a1649fc9e24e7cf90fca401e5bd4875..e1ffd62f4ebceecb9bc5471df3da406cffea0483 100644
--- a/src/main/java/io/papermc/paper/chunk/system/scheduling/ChunkHolderManager.java
+++ b/src/main/java/io/papermc/paper/chunk/system/scheduling/ChunkHolderManager.java
@@ -1315,9 +1315,9 @@ public final class ChunkHolderManager {
@@ -1316,9 +1316,9 @@ public final class ChunkHolderManager {
}
public boolean processTicketUpdates() {
@@ -447,10 +447,10 @@ index 5cf74fe0214191d42e74fc104eba150a95894e0f..9f438b41b61ee1174d8f23bcb7d93380
gameprofilerfiller.pop();
gameprofilerfiller.pop();
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab5382437dc0 100644
index 2e457d9c2a65875419fcc8cfcda33cfe9b528640..1ccdea0e7c64de5bcb7a6a6f14105cf62a211fd6 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -867,7 +867,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -872,7 +872,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
gameprofilerfiller.popPush("tickPending");
@@ -459,7 +459,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
if (!this.isDebug() && flag) {
j = this.getGameTime();
gameprofilerfiller.push("blockTicks");
@@ -876,24 +876,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -881,24 +881,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.fluidTicks.tick(j, 65536, this::tickFluid);
gameprofilerfiller.pop();
}
@@ -491,7 +491,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
}
this.handlingTick = false;
@@ -906,7 +906,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -911,7 +911,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (flag1 || this.emptyTime++ < 300) {
gameprofilerfiller.push("entities");
@@ -500,7 +500,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
if (this.dragonFight != null && flag) {
gameprofilerfiller.push("dragonFight");
this.dragonFight.tick();
@@ -914,7 +914,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -919,7 +919,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
@@ -509,7 +509,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
this.entityTickList.forEach((entity) -> {
entity.activatedPriorityReset = false; // Pufferfish - DAB
if (!entity.isRemoved()) {
@@ -955,8 +955,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -960,8 +960,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
}
});
@@ -520,7 +520,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
gameprofilerfiller.pop();
this.tickBlockEntities();
}
@@ -1100,7 +1100,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1105,7 +1105,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
} // Paper
gameprofilerfiller.popPush("tickBlocks");
@@ -529,7 +529,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
if (randomTickSpeed > 0) {
// Paper start - optimize random block ticking
LevelChunkSection[] sections = chunk.getSections();
@@ -1134,7 +1134,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1139,7 +1139,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
// Paper end - optimise random block ticking
@@ -538,7 +538,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
gameprofilerfiller.pop();
}
@@ -1478,8 +1478,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1483,8 +1483,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
// Spigot end
// Paper start- timings
final boolean isActive = org.spigotmc.ActivationRange.checkIfActive(entity);
@@ -549,7 +549,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
// Paper end - timings
entity.setOldPosAndRot();
ProfilerFiller gameprofilerfiller = this.getProfiler();
@@ -1495,7 +1495,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1500,7 +1500,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
entity.postTick(); // CraftBukkit
} else { entity.inactiveTick(); } // Paper - EAR 2
this.getProfiler().pop();
@@ -558,7 +558,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
Iterator iterator = entity.getPassengers().iterator();
while (iterator.hasNext()) {
@@ -1518,8 +1518,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1523,8 +1523,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (passenger instanceof Player || this.entityTickList.contains(passenger)) {
// Paper - EAR 2
final boolean isActive = org.spigotmc.ActivationRange.checkIfActive(passenger);
@@ -569,7 +569,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
// Paper end
passenger.setOldPosAndRot();
++passenger.tickCount;
@@ -1549,7 +1549,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1554,7 +1554,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.tickPassenger(passenger, entity2);
}
@@ -578,7 +578,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
}
} else {
passenger.stopRiding();
@@ -1569,14 +1569,14 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1574,14 +1574,14 @@ public class ServerLevel extends Level implements WorldGenLevel {
org.bukkit.Bukkit.getPluginManager().callEvent(new org.bukkit.event.world.WorldSaveEvent(getWorld()));
}
@@ -596,7 +596,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
// Copied from save()
// CraftBukkit start - moved from MinecraftServer.saveChunks
@@ -1588,7 +1588,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1593,7 +1593,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.convertable.saveDataTag(this.server.registryAccess(), this.serverLevelData, this.server.getPlayerList().getSingleplayerData());
}
// CraftBukkit end
@@ -605,7 +605,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
}
// Paper end
@@ -1602,7 +1602,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1607,7 +1607,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (!savingDisabled) {
org.bukkit.Bukkit.getPluginManager().callEvent(new org.bukkit.event.world.WorldSaveEvent(this.getWorld())); // CraftBukkit
@@ -614,7 +614,7 @@ index ed627a719656456844267309f5d9e5cd97ea5ead..3e00aec02b36ed62424f7271c4d1ab53
if (progressListener != null) {
progressListener.progressStartNoAbort(Component.translatable("menu.savingLevel"));
}
@@ -1612,11 +1612,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1617,11 +1617,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
progressListener.progressStage(Component.translatable("menu.savingChunks"));
}

View File

@@ -626,10 +626,10 @@ index 9f438b41b61ee1174d8f23bcb7d93380ad932e9c..c3c47857515a7f75d69c718f352d8bae
}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc822296e5 100644
index 1ccdea0e7c64de5bcb7a6a6f14105cf62a211fd6..7912c26d27e9f143c34d63410155052cd00e0b8d 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -825,16 +825,16 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -830,16 +830,16 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
public void tick(BooleanSupplier shouldKeepTicking) {
@@ -649,7 +649,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
this.advanceWeatherCycle();
}
@@ -866,30 +866,30 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -871,30 +871,30 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.tickTime();
}
@@ -687,7 +687,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
if (flag) {
// this.timings.doSounds.startTiming(); // Spigot // Purpur
this.runBlockEvents();
@@ -897,7 +897,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -902,7 +902,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
this.handlingTick = false;
@@ -696,7 +696,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
boolean flag1 = true || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players
if (flag1) {
@@ -905,12 +905,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -910,12 +910,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
if (flag1 || this.emptyTime++ < 300) {
@@ -712,7 +712,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
}
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
@@ -921,9 +921,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -926,9 +926,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
entity.discard();
} else if (!tickratemanager.isEntityFrozen(entity)) {
@@ -724,7 +724,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
if (true || this.chunkSource.chunkMap.getDistanceManager().inEntityTickingRange(entity.chunkPosition().toLong())) { // Paper - now always true if in the ticking list
Entity entity1 = entity.getVehicle();
@@ -935,7 +935,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -940,7 +940,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
entity.stopRiding();
}
@@ -733,7 +733,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
// Pufferfish start - copied from this.guardEntityTick
try {
this.tickNonPassenger(entity); // Pufferfish - changed
@@ -950,20 +950,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -955,20 +955,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
// Paper end
}
// Pufferfish end
@@ -757,7 +757,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
}
@Override
@@ -1045,9 +1044,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1050,9 +1049,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
boolean flag = this.isRaining();
int j = chunkcoordintpair.getMinBlockX();
int k = chunkcoordintpair.getMinBlockZ();
@@ -769,7 +769,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change
if (!this.paperConfig().environment.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && /*this.random.nextInt(this.spigotConfig.thunderChance) == 0 &&*/ chunk.shouldDoLightning(this.random)) { // Spigot // Paper - disable thunder // Pufferfish - replace random with shouldDoLightning
@@ -1086,7 +1085,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1091,7 +1090,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
}
@@ -778,7 +778,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
if (!this.paperConfig().environment.disableIceAndSnow) { // Paper
for (int l = 0; l < randomTickSpeed; ++l) {
@@ -1099,7 +1098,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1104,7 +1103,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
} // Paper
@@ -787,7 +787,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
//timings.chunkTicksBlocks.startTiming(); // Paper // Purpur
if (randomTickSpeed > 0) {
// Paper start - optimize random block ticking
@@ -1135,7 +1134,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1140,7 +1139,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
// Paper end - optimise random block ticking
//timings.chunkTicksBlocks.stopTiming(); // Paper // Purpur
@@ -796,7 +796,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
}
@VisibleForTesting
@@ -1482,19 +1481,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1487,19 +1486,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
//try { // Purpur
// Paper end - timings
entity.setOldPosAndRot();
@@ -821,7 +821,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
//} finally { timer.stopTiming(); } // Paper - timings // Purpur
Iterator iterator = entity.getPassengers().iterator();
@@ -1523,12 +1522,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1528,12 +1527,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
// Paper end
passenger.setOldPosAndRot();
++passenger.tickCount;
@@ -838,7 +838,7 @@ index 3e00aec02b36ed62424f7271c4d1ab5382437dc0..76fd80b1d5674b89f9b13df5b5d70fbc
// Paper start - EAR 2
if (isActive) {
passenger.rideTick();
@@ -1540,7 +1539,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1545,7 +1544,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
vehicle.positionRider(passenger);
}
// Paper end - EAR 2