mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-21 02:17:42 +01:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@cc491a3 Finish updating chunk system patch PaperMC/Paper@619d7c9 Add in some patches PaperMC/Paper@902691b Apply last patch PaperMC/Paper@efb4197 Fix final compilation issues PaperMC/Paper@57a5924 Fix boot errors PaperMC/Paper@c1def9d Updated Upstream (CraftBukkit/Spigot) PaperMC/Paper@a0a2e72 fix sculk npe PaperMC/Paper@318a08c add missing block entity type to CraftBlockStates PaperMC/Paper@aed9ef0 Update adventure PaperMC/Paper@9d42879 Fix breaking pots throwing exception PaperMC/Paper@59060aa fix some failing tests PaperMC/Paper@e325e37 add missing call to EntityInsideBlockEvent PaperMC/Paper@8ce5219 Fix inconsistent chunk sending with vanilla PaperMC/Paper@04509f0 Fix crash relating to "Already sent chunk" PaperMC/Paper@c9eb393 Updated Upstream (Bukkit) PaperMC/Paper@21f2d15 Avoid duplicate poi entries from the first section (#9235) PaperMC/Paper@3621d76 Fix collision between AABB and a dot (#8733) PaperMC/Paper@ccb194b Move block farther away for Player#setRotation (#8514) PaperMC/Paper@03c3587 fix not editable sign after openSign PaperMC/Paper@6d74ad1 Finish tests & bad calls PaperMC/Paper@e829a9d Fix javadoc PaperMC/Paper@82c6479 Add back Anti-Xray patch (#9283) PaperMC/Paper@0d969f0 comment out update logic from build.gradle.kts PaperMC/Paper@ea9fdc3 Ignore inline definitions of trim material & pattern PaperMC/Paper@9ada4bd Prevent the rcon thread from attempting connections after shutdown PaperMC/Paper@c9e125f Fix setListenerRange for calibrated sculk sensors PaperMC/Paper@9ebf75d fix some more 1.20 tracking issues PaperMC/Paper@f9fc44f add side to PlayerSignCommandPreprocessEvent PaperMC/Paper@4e3febb fix missing trigger entity for xp orb from breeding PaperMC/Paper@4b5f847 Minimise EntityFertilizeEggEvent and add sniffer (#9280)
This commit is contained in:
@@ -388,10 +388,10 @@ index aa3f4ca3be843616d34897e41909255f512f8963..426ac5faa9344472560fb20bdea8bdc3
|
||||
|
||||
++j;
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
index 89aebe46deff84ab458b6e2302a98a42103b7195..530ce9950b83420d5a033e6c552dafb388945c05 100644
|
||||
index f60c8dbe8d6e04a19450a6cc1f3b2a27ca3ba2db..7fb00407b75603cf6ff63f1fd1f3e020524caf82 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
@@ -542,20 +542,20 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
@@ -618,20 +618,20 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
}
|
||||
|
||||
protected void tick(BooleanSupplier shouldKeepTicking) {
|
||||
@@ -417,10 +417,10 @@ index 89aebe46deff84ab458b6e2302a98a42103b7195..530ce9950b83420d5a033e6c552dafb3
|
||||
|
||||
public boolean hasWork() {
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||
index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cdf92b6dcf 100644
|
||||
index c4601ee883ecff651585aaaf33fe3a9f747d4338..f75f7b39aa4ed5c18cd2d761a1337df5b1771a23 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||
@@ -428,16 +428,16 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -277,16 +277,16 @@ public class ServerChunkCache extends ChunkSource {
|
||||
return ifLoaded;
|
||||
}
|
||||
// Paper end
|
||||
@@ -440,7 +440,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
CompletableFuture<Either<ChunkAccess, ChunkHolder.ChunkLoadingFailure>> completablefuture = this.getChunkFutureMainThread(x, z, leastStatus, create, true); // Paper
|
||||
ServerChunkCache.MainThreadExecutor chunkproviderserver_b = this.mainThreadProcessor;
|
||||
|
||||
@@ -626,24 +626,24 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -475,24 +475,24 @@ public class ServerChunkCache extends ChunkSource {
|
||||
// CraftBukkit start - modelled on below
|
||||
public void purgeUnload() {
|
||||
if (true) return; // Paper - tickets will be removed later, this behavior isn't really well accounted for by the chunk system
|
||||
@@ -470,7 +470,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
if (tickChunks) {
|
||||
//this.level.timings.chunks.startTiming(); // Paper - timings // Purpur
|
||||
this.chunkMap.level.playerChunkLoader.tick(); // Paper - replace player chunk loader - this is mostly required to account for view distance changes
|
||||
@@ -652,10 +652,10 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -501,10 +501,10 @@ public class ServerChunkCache extends ChunkSource {
|
||||
}
|
||||
|
||||
//this.level.timings.doChunkUnload.startTiming(); // Spigot // Purpur
|
||||
@@ -483,7 +483,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
this.clearCache();
|
||||
}
|
||||
|
||||
@@ -701,13 +701,13 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -550,13 +550,13 @@ public class ServerChunkCache extends ChunkSource {
|
||||
}
|
||||
// Paper end - optimize isOutisdeRange
|
||||
LevelData worlddata = this.level.getLevelData();
|
||||
@@ -500,7 +500,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
//this.level.timings.countNaturalMobs.startTiming(); // Paper - timings // Purpur
|
||||
int l = this.distanceManager.getNaturalSpawnChunkCount();
|
||||
// Paper start - per player mob spawning
|
||||
@@ -725,13 +725,13 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -574,13 +574,13 @@ public class ServerChunkCache extends ChunkSource {
|
||||
//this.level.timings.countNaturalMobs.stopTiming(); // Paper - timings // Purpur
|
||||
|
||||
this.lastSpawnState = spawnercreature_d;
|
||||
@@ -516,7 +516,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
boolean flag2 = this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && !this.level.players().isEmpty(); // CraftBukkit
|
||||
|
||||
// Paper - only shuffle if per-player mob spawning is disabled
|
||||
@@ -783,15 +783,15 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -632,15 +632,15 @@ public class ServerChunkCache extends ChunkSource {
|
||||
}
|
||||
// Paper end - optimise chunk tick iteration
|
||||
//this.level.timings.chunkTicks.stopTiming(); // Paper // Purpur
|
||||
@@ -535,7 +535,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
//this.level.timings.broadcastChunkUpdates.startTiming(); // Paper - timing // Purpur
|
||||
if (!this.chunkMap.needsChangeBroadcasting.isEmpty()) {
|
||||
ReferenceOpenHashSet<ChunkHolder> copy = this.chunkMap.needsChangeBroadcasting.clone();
|
||||
@@ -805,7 +805,7 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -654,7 +654,7 @@ public class ServerChunkCache extends ChunkSource {
|
||||
}
|
||||
}
|
||||
//this.level.timings.broadcastChunkUpdates.stopTiming(); // Paper - timing // Purpur
|
||||
@@ -544,7 +544,7 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
// Paper end - use set of chunks requiring updates, rather than iterating every single one loaded
|
||||
// Paper start - controlled flush for entity tracker packets
|
||||
List<net.minecraft.network.Connection> disabledFlushes = new java.util.ArrayList<>(this.level.players.size());
|
||||
@@ -996,7 +996,7 @@ public class ServerChunkCache extends ChunkSource {
|
||||
@@ -845,7 +845,7 @@ public class ServerChunkCache extends ChunkSource {
|
||||
|
||||
@Override
|
||||
protected void doRunTask(Runnable task) {
|
||||
@@ -554,10 +554,10 @@ index a616c9a2532beb67960259bf1910da1759cfe698..e2bab8e845e7ac940ab690dcb2db25cd
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a1c294ff7 100644
|
||||
index 55f892e0b9eb098f3cdd922fa5d5d53005722859..653e469c726e6e44b93452e0cac2448e3816b3c8 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -714,12 +714,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -795,12 +795,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
}
|
||||
// Paper end - optimise checkDespawn
|
||||
@@ -573,7 +573,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
this.advanceWeatherCycle();
|
||||
int i = this.getGameRules().getInt(GameRules.RULE_PLAYERS_SLEEPING_PERCENTAGE);
|
||||
long j;
|
||||
@@ -746,32 +746,32 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -827,32 +827,32 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
|
||||
this.updateSkyBrightness();
|
||||
this.tickTime();
|
||||
@@ -614,7 +614,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
boolean flag = true || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players
|
||||
|
||||
if (flag) {
|
||||
@@ -779,12 +779,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -860,12 +860,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
if (flag || this.emptyTime++ < 300) {
|
||||
@@ -630,7 +630,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
}
|
||||
|
||||
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
|
||||
@@ -794,9 +794,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -875,9 +875,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 {
|
||||
@@ -642,7 +642,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
if (true || this.chunkSource.chunkMap.getDistanceManager().inEntityTickingRange(entity.chunkPosition().toLong())) { // Paper - now always true if in the ticking list
|
||||
Entity entity1 = entity.getVehicle();
|
||||
|
||||
@@ -808,22 +808,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -889,22 +889,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
entity.stopRiding();
|
||||
}
|
||||
|
||||
@@ -669,7 +669,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -903,9 +902,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -984,9 +983,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
boolean flag = this.isRaining();
|
||||
int j = chunkcoordintpair.getMinBlockX();
|
||||
int k = chunkcoordintpair.getMinBlockZ();
|
||||
@@ -681,7 +681,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
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) { // Spigot // Paper - disable thunder
|
||||
@@ -943,7 +942,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1024,7 +1023,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -690,7 +690,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
int l;
|
||||
int i1;
|
||||
|
||||
@@ -995,7 +994,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1076,7 +1075,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
|
||||
// Paper start - optimise random block ticking
|
||||
@@ -699,7 +699,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
//timings.chunkTicksBlocks.startTiming(); // Paper // Purpur
|
||||
if (randomTickSpeed > 0) {
|
||||
LevelChunkSection[] sections = chunk.getSections();
|
||||
@@ -1031,7 +1030,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1112,7 +1111,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
}
|
||||
// Paper end - optimise random block ticking
|
||||
//timings.chunkTicksBlocks.stopTiming(); // Paper // Purpur
|
||||
@@ -708,7 +708,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
}
|
||||
|
||||
public Optional<BlockPos> findLightningRod(BlockPos pos) {
|
||||
@@ -1327,19 +1326,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1408,19 +1407,19 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
//try { // Purpur
|
||||
// Paper end - timings
|
||||
entity.setOldPosAndRot();
|
||||
@@ -733,7 +733,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
//} finally { timer.stopTiming(); } // Paper - timings // Purpur
|
||||
Iterator iterator = entity.getPassengers().iterator();
|
||||
|
||||
@@ -1368,12 +1367,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1449,12 +1448,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
// Paper end
|
||||
passenger.setOldPosAndRot();
|
||||
++passenger.tickCount;
|
||||
@@ -750,7 +750,7 @@ index 48e259562bd46075e4d64ed1a291e32c33fbefca..bfa949be7bb08b0d7c3ec5611181151a
|
||||
// Paper start - EAR 2
|
||||
if (isActive) {
|
||||
passenger.rideTick();
|
||||
@@ -1385,7 +1384,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1466,7 +1465,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
vehicle.positionRider(passenger);
|
||||
}
|
||||
// Paper end - EAR 2
|
||||
@@ -793,7 +793,7 @@ index a155e61a95c0fe4fc16d6d18a02a83b6d5b2a930..c3bb1f0d4ea44d88f2f5453e9fc8b109
|
||||
this.connection.send(new ClientboundPlayerAbilitiesPacket(this.getAbilities()));
|
||||
playerlist.sendLevelInfo(this, worldserver);
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 1205b3099fdaa56e2d45e46b650fb602892e9c8b..eb62c04013d981390524beb74dc37bc2443b844c 100644
|
||||
index cc46bb346b7cd8e0a730fbc9b43b4d04f719115e..e3ec7429e262658ca94db9b74f3fe39e927f93c1 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -410,7 +410,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1019,10 +1019,10 @@ index 2e6e8eac987c4ef6b2dcd3de592d8a51d2b29792..863343a87fe34d72f04af89d75268b47
|
||||
};
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c446a499fb 100644
|
||||
index 7a955f3848fcea9a72e5b758165f7685e74436c2..4dcb02a7326361ecef6fe3cc5cd426fc949f9fd8 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -783,7 +783,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -816,7 +816,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
// CraftBukkit end
|
||||
|
||||
public void baseTick() {
|
||||
@@ -1031,7 +1031,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking
|
||||
this.feetBlockState = null;
|
||||
if (this.isPassenger() && this.getVehicle().isRemoved()) {
|
||||
@@ -844,7 +844,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -877,7 +877,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
|
||||
this.firstTick = false;
|
||||
@@ -1040,7 +1040,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
}
|
||||
|
||||
public void setSharedFlagOnFire(boolean onFire) {
|
||||
@@ -1063,7 +1063,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -1096,7 +1096,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1049,7 +1049,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
if (this.stuckSpeedMultiplier.lengthSqr() > 1.0E-7D) {
|
||||
movement = movement.multiply(this.stuckSpeedMultiplier);
|
||||
this.stuckSpeedMultiplier = Vec3.ZERO;
|
||||
@@ -1072,7 +1072,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -1105,7 +1105,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
// Paper start - ignore movement changes while inactive.
|
||||
if (isTemporarilyActive && !(this instanceof ItemEntity || this instanceof net.minecraft.world.entity.vehicle.AbstractMinecart) && movement == getDeltaMovement() && movementType == MoverType.SELF) {
|
||||
setDeltaMovement(Vec3.ZERO);
|
||||
@@ -1058,7 +1058,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
return;
|
||||
}
|
||||
// Paper end
|
||||
@@ -1093,8 +1093,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -1126,8 +1126,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
this.setPos(this.getX() + vec3d1.x, this.getY() + vec3d1.y, this.getZ() + vec3d1.z);
|
||||
}
|
||||
|
||||
@@ -1069,7 +1069,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
boolean flag = !Mth.equal(movement.x, vec3d1.x);
|
||||
boolean flag1 = !Mth.equal(movement.z, vec3d1.z);
|
||||
|
||||
@@ -1113,7 +1113,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -1146,7 +1146,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
|
||||
this.checkFallDamage(vec3d1.y, this.onGround(), iblockdata, blockposition);
|
||||
if (this.isRemoved()) {
|
||||
@@ -1078,7 +1078,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
} else {
|
||||
if (this.horizontalCollision) {
|
||||
Vec3 vec3d2 = this.getDeltaMovement();
|
||||
@@ -1251,7 +1251,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -1284,7 +1284,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
this.setRemainingFireTicks(-this.getFireImmuneTicks());
|
||||
}
|
||||
|
||||
@@ -1087,7 +1087,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
}
|
||||
}
|
||||
// Paper start - detailed watchdog information
|
||||
@@ -3037,7 +3037,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -3070,7 +3070,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
ServerLevel worldserver1 = minecraftserver.getLevel(resourcekey);
|
||||
|
||||
if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit
|
||||
@@ -1096,7 +1096,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
this.portalTime = i;
|
||||
// Paper start
|
||||
io.papermc.paper.event.entity.EntityPortalReadyEvent event = new io.papermc.paper.event.entity.EntityPortalReadyEvent(this.getBukkitEntity(), worldserver1 == null ? null : worldserver1.getWorld(), org.bukkit.PortalType.NETHER);
|
||||
@@ -3055,7 +3055,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -3088,7 +3088,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
} // Paper
|
||||
// CraftBukkit end
|
||||
@@ -1105,7 +1105,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
}
|
||||
|
||||
this.isInsidePortal = false;
|
||||
@@ -3526,14 +3526,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -3559,14 +3559,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
// Paper end
|
||||
if (this.level() instanceof ServerLevel && !this.isRemoved()) {
|
||||
@@ -1122,7 +1122,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
PortalInfo shapedetectorshape = (location == null) ? this.findDimensionEntryPoint(worldserver) : new PortalInfo(new Vec3(location.x(), location.y(), location.z()), Vec3.ZERO, this.yRot, this.xRot, worldserver, null); // CraftBukkit
|
||||
|
||||
if (shapedetectorshape == null) {
|
||||
@@ -3567,7 +3567,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -3600,7 +3600,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
this.unRide();
|
||||
// CraftBukkit end
|
||||
|
||||
@@ -1131,7 +1131,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
// Paper start - Change lead drop timing to prevent dupe
|
||||
if (this instanceof Mob) {
|
||||
((Mob) this).dropLeash(true, true); // Paper drop lead
|
||||
@@ -3590,10 +3590,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -3623,10 +3623,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
|
||||
this.removeAfterChangingDimensions();
|
||||
@@ -1145,7 +1145,7 @@ index 3a5ca6953a28c13b2f6ba0f38d7fa3a46df7947b..b2853cdac60ff1497423078e907530c4
|
||||
}
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index b8fbc726f1f73a4c20ea7eeca2846c864b9e67bc..3084ea26a9364a58a78a4f75df40aa509124ac44 100644
|
||||
index 6e2412640d76c45158777136bc38cbe523440e69..af5a747241966dd93b331f1d79e3a857a38ac86c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -412,7 +412,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1508,7 +1508,7 @@ index d560bb344fefdfb2e8393dc1c5d96ef6d9dbf0e5..42c571c154ebdd24fabc5354618e6be0
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
index e60f530f78feebf851382f30b035ec9bcacf22b4..4eb091a1cd9c803bfc0a2258099f03404be7d82b 100644
|
||||
index eab6d7bb5ae6635eb881156f50c8fd4ed2adb11a..21f0554ae9281ddd088cf36c79bb005e18473a7f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
|
||||
@@ -217,12 +217,12 @@ public class Frog extends Animal implements VariantHolder<FrogVariant> {
|
||||
@@ -1572,10 +1572,10 @@ index 0ebb9ac9d951741eb9dea8475380cfcc68becae3..a707954d8e5b88ed37c2640437a10781
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java b/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
|
||||
index ac84a3812fa8d5b61b69cc29cf0a756f5ac8a886..479b041711134ea2eaa0e00f8ef4858a84de30d2 100644
|
||||
index 3ab900c53469327b8d686da81ed5b4aaaddb7440..14df8a4e0c1a1dcfbbd2f4fdfd865bd77bb02325 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/sniffer/Sniffer.java
|
||||
@@ -514,11 +514,11 @@ public class Sniffer extends Animal {
|
||||
@@ -519,11 +519,11 @@ public class Sniffer extends Animal {
|
||||
|
||||
@Override
|
||||
protected void customServerAiStep() {
|
||||
@@ -1719,10 +1719,10 @@ index 8f97c9df726ac20cfce7bdddd5dd4f8c5aa76c35..e35ebb5b923c2f63e37e5dae006bc4a0
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index b4bfddb406fce51d1100976d9445db161dcb3f22..57fceb21ca6bc536a6faf04dbc8ddc782a52db8e 100644
|
||||
index 000697994299163fa3287450652be551a81cf466..5287a6fe5742bdfe179fe669ee1f1edfbbd0fae6 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -906,9 +906,9 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -909,9 +909,9 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
}
|
||||
|
||||
protected void tickBlockEntities() {
|
||||
@@ -1734,7 +1734,7 @@ index b4bfddb406fce51d1100976d9445db161dcb3f22..57fceb21ca6bc536a6faf04dbc8ddc78
|
||||
//timings.tileEntityPending.startTiming(); // Spigot // Purpur
|
||||
this.tickingBlockEntities = true;
|
||||
if (!this.pendingBlockEntityTickers.isEmpty()) {
|
||||
@@ -953,7 +953,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -956,7 +956,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
//timings.tileEntityTick.stopTiming(); // Spigot // Purpur
|
||||
this.tickingBlockEntities = false;
|
||||
co.aikar.timings.TimingHistory.tileEntityTicks += this.blockEntityTickers.size(); // Paper
|
||||
@@ -1743,7 +1743,7 @@ index b4bfddb406fce51d1100976d9445db161dcb3f22..57fceb21ca6bc536a6faf04dbc8ddc78
|
||||
spigotConfig.currentPrimedTnt = 0; // Spigot
|
||||
}
|
||||
|
||||
@@ -1146,7 +1146,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1149,7 +1149,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
@Override
|
||||
public List<Entity> getEntities(@Nullable Entity except, AABB box, Predicate<? super Entity> predicate) {
|
||||
@@ -1752,7 +1752,7 @@ index b4bfddb406fce51d1100976d9445db161dcb3f22..57fceb21ca6bc536a6faf04dbc8ddc78
|
||||
List<Entity> list = Lists.newArrayList();
|
||||
((ServerLevel)this).getEntityLookup().getEntities(except, box, list, predicate); // Paper - optimise this call
|
||||
return list;
|
||||
@@ -1165,7 +1165,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1168,7 +1168,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
}
|
||||
|
||||
public <T extends Entity> void getEntities(EntityTypeTest<Entity, T> filter, AABB box, Predicate<? super T> predicate, List<? super T> result, int limit) {
|
||||
@@ -1761,7 +1761,7 @@ index b4bfddb406fce51d1100976d9445db161dcb3f22..57fceb21ca6bc536a6faf04dbc8ddc78
|
||||
// Paper start - optimise this call
|
||||
//TODO use limit
|
||||
if (filter instanceof net.minecraft.world.entity.EntityType entityTypeTest) {
|
||||
@@ -1422,6 +1422,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1425,6 +1425,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
}
|
||||
|
||||
public ProfilerFiller getProfiler() {
|
||||
@@ -1792,7 +1792,7 @@ index 4e2611c9a7df8343f76e3be3f01f2f828cdf8a1d..03fc9c6ef0fb320924038f2730c6f084
|
||||
|
||||
// Paper start
|
||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||
index c4b4091a52cc08c33ab73bc1ed725477aae26982..590cb3c8fe3061e861aa3c792a2898d4e9f971bd 100644
|
||||
index 5de3b6cd73a45348d0feba858d96a500bf236ce7..d7b8b8250564831ab3e84043292e48f058698a93 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
|
||||
@@ -1256,9 +1256,9 @@ public class LevelChunk extends ChunkAccess {
|
||||
|
||||
Reference in New Issue
Block a user