9
0
mirror of https://github.com/Samsuik/Sakura.git synced 2025-12-20 07:19:33 +00:00

Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@1e7dd72 Remove 'fix Vanilla Minecart speed' patch (#10068)
PaperMC/Paper@e7e1c8a Fix and add new scoreboard API (#10037)
PaperMC/Paper@49f9f6f Add Registry#getKey (#10066)
PaperMC/Paper@4adca3d Update to adventure 4.15 (#10045)
PaperMC/Paper@ff7b9b0 Increase default custom payload channel size limit (#10006)
PaperMC/Paper@1cda66e Hotfix Entity isInRain reobf issue
PaperMC/Paper@61768e0 [ci skip] Remove no longer needed mappings change
PaperMC/Paper@e035fd7 Updated Upstream (Bukkit/CraftBukkit/Spigot)
PaperMC/Paper@c215ce1 [ci skip] cleanup patch diff from last commit
PaperMC/Paper@4fdda9e Keep newlines in outdated client/server message (#10042)
PaperMC/Paper@f483b38 fix NPE on EntityTeleportEvent getTo (#10016)
PaperMC/Paper@dc62150 Catch async usage of playsound (#10021)
PaperMC/Paper@0d6a0c3 Fix command block async message (again) (#10082)
PaperMC/Paper@d1f507f Don't fire 2 game events for certain cauldron interactions (#8904)
PaperMC/Paper@a401585 Fix campfire recipes not always outputting full result (#8754)
PaperMC/Paper@88d28d6 Fix long loading screen when refreshing skins (#10026)
PaperMC/Paper@c081104 Add experience points api (#9688)
PaperMC/Paper@8221b08 Fix global sound event gamerule not being respected (#8727)
PaperMC/Paper@3c0d6aa Updated Upstream (Bukkit/CraftBukkit/Spigot) (#10085)
PaperMC/Paper@2c3ccb8 Add drops to shear events (#5678)
PaperMC/Paper@b2ffb1b Add PlayerShieldDisableEvent (#9177)
PaperMC/Paper@2951732 Add HiddenPotionEffect API (#9910)
PaperMC/Paper@e4ab50d Properly disallow async Player#chat (#8123)
PaperMC/Paper@5e978d3 Fix Folia scheduler tasks not canceling when plugin disable (#10091)
PaperMC/Paper@e56e53f Fix some component bugs in login disconnect packet (#10090)
PaperMC/Paper@3484ae9 Call entity_die game event after event cancel check (#10096)
PaperMC/Paper@0ae58c0 cleanup player death event adventure logic (#10095)
PaperMC/Paper@1281f4f Make region/lock shift accessors per world
PaperMC/Paper@983377b Correctly check if bucket dispenses will succeed for event (#10109)
PaperMC/Paper@58e120b [ci skip] Remove extraneous diff added in 1.20.3 update (#10101)
PaperMC/Paper@816bacc Call EntityChangeBlockEvent for cake eating (#10105)
PaperMC/Paper@692db0c fix CustomModelData being removed (#10113)
PaperMC/Paper@509876d Keep fully frozen entities fully activated (#10103)
PaperMC/Paper@1fa48d1 include relative flags in PlayerTeleportEvent (#8190)
PaperMC/Paper@ae001ae Fix untrack event not being called for all 'untracks' (#10110)
PaperMC/Paper@259bc76 Pass system properties to maven repo session (#10117)
PaperMC/Paper@b2a6d57 Validate ResourceLocation in NBT reading
PaperMC/Paper@7eaff48 [ci skip] Replace some magic values with constant references
PaperMC/Paper@19a6202 Fix experience & improvements to block events (#8067)
PaperMC/Paper@8379027 Fix cmd permission levels for command blocks (#7404)
PaperMC/Paper@a93acc4 Fix EntityChangePoseEvent being called during worldgen (#10120)
PaperMC/Paper@25a99b1 Fix BlockDestroyEvents effectBlock not being set (#10131)
PaperMC/Paper@a58e29d Fix a borked update of 'Properly handle BlockBreakEvent#isDropItems' (#10134)
PaperMC/Paper@570cfb4 Validate missed resource location parsing
PaperMC/Paper@e46276e Fixup NamespacedKey parsing
PaperMC/Paper@f1c5f01 [ci skip] Fix typo
PaperMC/Paper@07b956e Fix tests by disabling them
This commit is contained in:
Samsuik
2024-01-08 14:50:33 +00:00
parent 9ac588a6ff
commit fb091042cc
18 changed files with 88 additions and 88 deletions

View File

@@ -2,7 +2,7 @@ group=me.samsuik.sakura
version=1.20.4-R0.1-SNAPSHOT
mcVersion=1.20.4
paperRef=b4c9e7e5d40fd4a0a7fea270fd4ebb72b38fa0fc
paperRef=07b956e3a30d9cd192111829b59bdf4372f128b1
org.gradle.jvmargs=-Xmx2G

View File

@@ -6,25 +6,25 @@ Subject: [PATCH] Branding changes
From ForkPaper.
diff --git a/build.gradle.kts b/build.gradle.kts
index b12b5a1e82a5ebf47135a3863a390a45a9d8d8ec..2d57d5611cc5784e07c2e28b30891b75b05dca43 100644
index 58da26ad2f128ba0b66f86820f60853f4be352f0..732d617578b58c0430b42d1c84efc54fb3c43b5e 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -27,8 +27,12 @@ repositories {
@@ -13,8 +13,12 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
val alsoShade: Configuration by configurations.creating
dependencies {
extraRuntime(platform("net.kyori:adventure-bom:4.15.0-SNAPSHOT"))
- implementation(project(":paper-api"))
- implementation(project(":paper-mojangapi"))
+ // Sakura start
+ implementation(project(":sakura-api"))
+ implementation("io.papermc.paper:paper-mojangapi:1.20.3-R0.1-SNAPSHOT") {
+ implementation("io.papermc.paper:paper-mojangapi:1.20.4-R0.1-SNAPSHOT") {
+ exclude("io.papermc.paper", "paper-api")
+ }
+ // Sakura end
// Paper start
implementation("org.jline:jline-terminal-jansi:3.21.0")
implementation("net.minecrell:terminalconsoleappender:1.3.0")
@@ -84,7 +88,7 @@ tasks.jar {
@@ -70,7 +74,7 @@ tasks.jar {
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
@@ -47,7 +47,7 @@ index 34f19ac897a30c0c4e3ab406013fcca1c8b7db93..6e1c140d0d26728d64b827f6f3e5a450
public SystemReport fillSystemReport(SystemReport details) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index e011cfcdda2e0a609d4158b0454bdf046b04c9d9..75198c29643f88ad6f6e94b142eac05f124c5a10 100644
index 142d2c48239d4ebe3896218536656d116cd24d7c..8e47a8a4fde1eb390b4df5b02cb7bc9170bc1e12 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper

View File

@@ -925,10 +925,10 @@ index 58536aabf607015939a1326f80207c0a06eed8ff..102c5bb9a1702b06ed6418bfe9e41319
this.setPvpAllowed(dedicatedserverproperties.pvp);
this.setFlightAllowed(dedicatedserverproperties.allowFlight);
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index b78a9628a88f2a495ef6de74446a02a14d41a1f6..1f36015d2e9c433cfe2de079b8eba144f0dad4cf 100644
index 7c31f619a6e8e3539c547fc43d821d2cce7df7e7..033f24f57cca49bba4a36c50c4b1860645d95440 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -693,7 +693,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -698,7 +698,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
// Holder holder = worlddimension.type(); // CraftBukkit - decompile error
// Objects.requireNonNull(minecraftserver); // CraftBukkit - decompile error
@@ -938,7 +938,7 @@ index b78a9628a88f2a495ef6de74446a02a14d41a1f6..1f36015d2e9c433cfe2de079b8eba144
this.convertable = convertable_conversionsession;
this.uuid = WorldUUID.getUUID(convertable_conversionsession.levelDirectory.path().toFile());
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 0b56e5f7f18fc4286992af22d402205b771165a3..be86deb703272d014de14a9789a5c50528184d31 100644
index 6403341f2e9d7ac4251336cb0bcc5d79dbb7bb0e..98086f40f83cc1af71dde06cb3b682edaddb0369 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -177,6 +177,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -967,7 +967,7 @@ index 0b56e5f7f18fc4286992af22d402205b771165a3..be86deb703272d014de14a9789a5c505
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
index 75198c29643f88ad6f6e94b142eac05f124c5a10..1cd650d96686c34d2d439e3edef3c214306b975b 100644
index 8e47a8a4fde1eb390b4df5b02cb7bc9170bc1e12..2e6c093a381110105ad2f8c0fae8e23dee0fb88e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1037,6 +1037,7 @@ public final class CraftServer implements Server {

View File

@@ -231,7 +231,7 @@ index dbd88282420e73df44b7a2ea52a7abcbab7e51c9..b5e2ae560431cd3ecfc780deb2548801
this.isIteratingOverLevels = false; // Paper
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index be86deb703272d014de14a9789a5c50528184d31..512088b5457e5afbc29d2937051fc4dcc4c5aed6 100644
index 98086f40f83cc1af71dde06cb3b682edaddb0369..646433f2db609f19dcc9da64232f3a3ab4a9d171 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -183,6 +183,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -249,10 +249,10 @@ index be86deb703272d014de14a9789a5c50528184d31..512088b5457e5afbc29d2937051fc4dc
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index e1fad381b861471a17529c246bb8a4a9c7646420..701bca8a87d3d25cc536ebfed9f8611ca8442baf 100644
index 38d842bc0fb7d9c39a3673983a643248e9563fe2..39f120071c5ebb939fb5effefd3f0beb0d5c4fb1 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -238,6 +238,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
@@ -237,6 +237,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
}
// Paper end

View File

@@ -263,10 +263,10 @@ index b5e2ae560431cd3ecfc780deb25488016c0ad0e7..73dc4f245039805b635f9e89438104e3
this.isIteratingOverLevels = false; // Paper
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index caa73632aee15583c6b6ed12a668c8f49b794708..7e205ccdc7c6691581eb7423d01a383b87f0d2af 100644
index ecb09c74153349e78bb81d1188c282e4be4000bf..f3d4f8ba3bc148e28cab1a4d3def805081391ecc 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -1435,6 +1435,22 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1434,6 +1434,22 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
}
// Paper end - check Y
@@ -391,10 +391,10 @@ index 35674f92a67f93382103c2766df4b678ba5c862f..83c4639c2bdca4dc4281d9f5eca104af
if (this.entity instanceof LivingEntity) {
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 1f36015d2e9c433cfe2de079b8eba144f0dad4cf..c33c9cb3a0e574e5284e48ffaf8d0945061ea388 100644
index 033f24f57cca49bba4a36c50c4b1860645d95440..5eee6ce1122ea21bd3ceaf4bb1ac365b9aa0d6da 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1956,7 +1956,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1962,7 +1962,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
while (iterator.hasNext()) {
ServerPlayer entityplayer = (ServerPlayer) iterator.next();
@@ -404,7 +404,7 @@ index 1f36015d2e9c433cfe2de079b8eba144f0dad4cf..c33c9cb3a0e574e5284e48ffaf8d0945
}
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index d1f20a8a3ccea1f074624163eb96da023142a459..29422f36aa5727ae9e8f6728964fda9889986e02 100644
index be05a52be037042c6158100e2ce880b8ed415d53..3b2b020c5a756a9eb3f100277d96c95a10b2de29 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -261,6 +261,7 @@ public class ServerPlayer extends Player {
@@ -446,7 +446,7 @@ index d1f20a8a3ccea1f074624163eb96da023142a459..29422f36aa5727ae9e8f6728964fda98
}
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
index 4a712f5fc4f0b4a4434ae808c989113bee8d8634..c59db7ea7d4dafc6df030c2c4d5f51395fe1c363 100644
index d28d0ef6105ddeb562ddf31ae9088739856941fc..0328179cb0134b54e61a4b60b98a780d9abeeaba 100644
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
@@ -40,6 +40,23 @@ import org.bukkit.craftbukkit.util.Waitable;
@@ -473,7 +473,7 @@ index 4a712f5fc4f0b4a4434ae808c989113bee8d8634..c59db7ea7d4dafc6df030c2c4d5f5139
public abstract class ServerCommonPacketListenerImpl implements ServerCommonPacketListener {
@@ -234,6 +251,61 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -247,6 +264,61 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
} else if (packet instanceof ClientboundSetDefaultSpawnPositionPacket) {
ClientboundSetDefaultSpawnPositionPacket packet6 = (ClientboundSetDefaultSpawnPositionPacket) packet;
this.player.compassTarget = CraftLocation.toBukkit(packet6.pos, this.getCraftPlayer().getWorld());
@@ -535,7 +535,7 @@ index 4a712f5fc4f0b4a4434ae808c989113bee8d8634..c59db7ea7d4dafc6df030c2c4d5f5139
}
// CraftBukkit end
boolean flag = !this.suspendFlushingOnServerThread || !this.server.isSameThread();
@@ -244,8 +316,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -257,8 +329,11 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
CrashReport crashreport = CrashReport.forThrowable(throwable, "Sending packet");
CrashReportCategory crashreportsystemdetails = crashreport.addCategory("Packet being sent");
@@ -549,10 +549,10 @@ index 4a712f5fc4f0b4a4434ae808c989113bee8d8634..c59db7ea7d4dafc6df030c2c4d5f5139
throw new ReportedException(crashreport);
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 30ccbab1586a656e0ae41d7406525fb02d9e025b..187ba90c50256aaa0514f4b2bd79bf30bc04b0af 100644
index 8b630fc4da8a7fda08c416e70c22463f04c3b6b5..6d9cf8bb81597489729b57a8834bf0293471fbea 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3107,6 +3107,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -3114,6 +3114,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
event.setCancelled(cancelled);
AbstractContainerMenu oldContainer = this.player.containerMenu; // SPIGOT-1224
@@ -561,7 +561,7 @@ index 30ccbab1586a656e0ae41d7406525fb02d9e025b..187ba90c50256aaa0514f4b2bd79bf30
if (this.player.containerMenu != oldContainer) {
return;
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 0c46a4aeafd03fbbfd590b0362d41bf2b1d5ca74..b2d2b6d588572682730a228888b6dcdae2dc5020 100644
index 1be10c57e374ad4018c08d96cfb69397a2f541d3..33a317696c62243952bbf686ff3e52a776672599 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -535,6 +535,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -598,7 +598,7 @@ index c3e47426382296d650fa00ce0bc1a82bf23c7877..62a3cd512d473d5ed673386d5c15091a
public PrimedTnt(Level world, double x, double y, double z, @Nullable LivingEntity igniter) {
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 512088b5457e5afbc29d2937051fc4dcc4c5aed6..8fd4d63fdbff9c454d903f4797ec9281df7266fc 100644
index 646433f2db609f19dcc9da64232f3a3ab4a9d171..1d00a1499d9921ff66eaaf405fbbc0f44497fa0d 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -226,6 +226,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -611,7 +611,7 @@ index 512088b5457e5afbc29d2937051fc4dcc4c5aed6..8fd4d63fdbff9c454d903f4797ec9281
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 3be5e4df190bff0087c8450b16e4e37b07169040..201a5c5652232cfc64c476d066225df6bb1690d3 100644
index da63b4050be25dcb91d04df8c2fcc643cbb0751d..2331c21068720528d87bdb9e3f1bb76ea6fd45dd 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -494,6 +494,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Reduce deltaMovement Allocations
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index b2d2b6d588572682730a228888b6dcdae2dc5020..4ffa96f7eeefd6a2a07458f68458cdbf4369340f 100644
index 33a317696c62243952bbf686ff3e52a776672599..8cae7a1ac496995ebe59ad88c56fbc424ca98930 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1233,7 +1233,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1237,7 +1237,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.tryCheckInsideBlocks();
float f = this.getBlockSpeedFactor();
@@ -17,7 +17,7 @@ index b2d2b6d588572682730a228888b6dcdae2dc5020..4ffa96f7eeefd6a2a07458f68458cdbf
// Paper start - remove expensive streams from here
boolean noneMatch = true;
AABB fireSearchBox = this.getBoundingBox().deflate(1.0E-6D);
@@ -2049,6 +2049,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2053,6 +2053,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public void moveTo(double x, double y, double z, float yaw, float pitch) {
// Paper - cancel entity velocity if teleported
if (!preserveMotion) {
@@ -25,7 +25,7 @@ index b2d2b6d588572682730a228888b6dcdae2dc5020..4ffa96f7eeefd6a2a07458f68458cdbf
this.deltaMovement = Vec3.ZERO;
} else {
this.preserveMotion = false;
@@ -3451,29 +3452,33 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3455,29 +3456,33 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public void onAboveBubbleCol(boolean drag) {
@@ -67,7 +67,7 @@ index b2d2b6d588572682730a228888b6dcdae2dc5020..4ffa96f7eeefd6a2a07458f68458cdbf
this.resetFallDistance();
}
@@ -4460,16 +4465,19 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4471,16 +4476,19 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
vec3d = vec3d.normalize();
}
@@ -90,7 +90,7 @@ index b2d2b6d588572682730a228888b6dcdae2dc5020..4ffa96f7eeefd6a2a07458f68458cdbf
}
this.fluidHeight.put(tag, d1);
@@ -4540,11 +4548,53 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4551,11 +4559,53 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return this.chunkPosition;
}
@@ -144,7 +144,7 @@ index b2d2b6d588572682730a228888b6dcdae2dc5020..4ffa96f7eeefd6a2a07458f68458cdbf
synchronized (this.posLock) { // Paper
this.deltaMovement = velocity;
} // Paper
@@ -4555,7 +4605,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4566,7 +4616,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public void setDeltaMovement(double x, double y, double z) {
@@ -232,10 +232,10 @@ index 9cd244090c294927a7a92c920854d2282ea3f021..3d4a75302d72bdbe47d0efbe08c89401
if (!entityhuman.isSpectator() && (!entityhuman.isCreative() || !entityhuman.getAbilities().flying) && !level.paperConfig().environment.disableExplosionKnockback) { // Paper - Disable explosion knockback
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
index 4d50dd92a7f3187ee1d8edb926e7c273c8156549..ec24eadbe7dd7e60c023303dc8050e3e784516a1 100644
index e21867d3956078bb0db4ceed45e5811e9acd7377..c2daf4421b5838fe57dc16184c4a5a8c190fa641 100644
--- a/src/main/java/net/minecraft/world/level/block/Block.java
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
@@ -460,7 +460,7 @@ public class Block extends BlockBehaviour implements ItemLike {
@@ -468,7 +468,7 @@ public class Block extends BlockBehaviour implements ItemLike {
}
public void updateEntityAfterFallOn(BlockGetter world, Entity entity) {

View File

@@ -51,7 +51,7 @@ index 658e63ebde81dc14c8ab5850fb246dc0aab25dea..f1ff1a67fee37ee7b241ceaa164fa4ee
public static <T> TicketType<T> create(String name, Comparator<T> argumentComparator) {
return new TicketType<>(name, argumentComparator, 0L);
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4ffa96f7eeefd6a2a07458f68458cdbf4369340f..583f94cd4f517f17909da43f546e8c9e4580d3ad 100644
index 8cae7a1ac496995ebe59ad88c56fbc424ca98930..218866882e3b08b1eb46b2a286bc7fe480db9c74 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -537,6 +537,19 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -74,7 +74,7 @@ index 4ffa96f7eeefd6a2a07458f68458cdbf4369340f..583f94cd4f517f17909da43f546e8c9e
public boolean isLegacyTrackingEntity = false;
@@ -1494,7 +1507,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1498,7 +1511,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
io.papermc.paper.util.CollisionUtil.getCollisions(
world, this, collisionBox, potentialCollisionsVoxel, potentialCollisionsBB,
@@ -83,7 +83,7 @@ index 4ffa96f7eeefd6a2a07458f68458cdbf4369340f..583f94cd4f517f17909da43f546e8c9e
null, null
);
@@ -4875,7 +4888,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4886,7 +4899,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@Override
public boolean isAlwaysTicking() {

View File

@@ -203,10 +203,10 @@ index 83c4639c2bdca4dc4281d9f5eca104af3063bfa5..f7d8aaededd39ce52a9d0105f66fd759
if (this.entity instanceof LivingEntity) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 583f94cd4f517f17909da43f546e8c9e4580d3ad..d69dfd44a9ff3ee6861042fa8f5a64c2031815cd 100644
index 218866882e3b08b1eb46b2a286bc7fe480db9c74..7fad22ee8a24399acbae6a9bc07ad5de39d41020 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3395,7 +3395,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3399,7 +3399,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.entityData.markDirty(Entity.DATA_AIR_SUPPLY_ID);
return;
}
@@ -242,7 +242,7 @@ index 0be7c39fbb19a0cdca3f5dc779c2690df5f08647..cc30c119f519e7cd947ab40beae56e49
public int getFuse() {
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
index 7f3466340891b4409d1399ebeb2ca865d77841cd..c3170384afa8d3bc4b1b428ecea04b1276621136 100644
index ccc1caafb0ada52c7b99b7358253826f5390843e..ad8114246633498c22d615f1bc669ea83f97c930 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -644,7 +644,7 @@ public abstract class Player extends LivingEntity {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Use Optimised TrackedEntityMap
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 7e205ccdc7c6691581eb7423d01a383b87f0d2af..216438a9c285edcd5dfa56b7ae49a674f92ae415 100644
index f3d4f8ba3bc148e28cab1a4d3def805081391ecc..24e0eaf25b2b366fd0e63a530c90f233c11d1bca 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -252,7 +252,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -251,7 +251,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
// Paper - rewrite chunk system
this.tickingGenerated = new AtomicInteger();
this.playerMap = new PlayerMap();

View File

@@ -52,7 +52,7 @@ index 0000000000000000000000000000000000000000..c9f2c5ae57878283e8c8bc3847fe63b9
+
+}
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d69dfd44a9ff3ee6861042fa8f5a64c2031815cd..70ca40c87c161d96a3661066386f2560d0aeca6d 100644
index 7fad22ee8a24399acbae6a9bc07ad5de39d41020..393e951102c49d45a135b37ccd876283c5355710 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -550,6 +550,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -91,10 +91,10 @@ index d69dfd44a9ff3ee6861042fa8f5a64c2031815cd..70ca40c87c161d96a3661066386f2560
public boolean isLegacyTrackingEntity = false;
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 9ef1d77dd87793577223402808ff7a6baad42ee4..862a56ce8de55bdca99af24fcf3909e820a0598e 100644
index bf361855ecf8c1d5dee2e735278243b836bf0f2a..902ec524d209ab56a6dadb260559910c76dbf96b 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -1343,6 +1343,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1342,6 +1342,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public <T extends Entity> void guardEntityTick(Consumer<T> tickConsumer, T entity) {
try {

View File

@@ -150,10 +150,10 @@ index 39081c0052a333580b22da10310d86de73693b2c..08e8de35fddcd54c5f466edb264aa454
this.isIteratingOverLevels = false; // Paper
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index f48eaebb0f9a10fb77e85619b2d2a4996e461195..a507605a04af7f576548129517029192309fd9e7 100644
index 431af1cc839e89e5d9831cd8533971a50a01d7c8..620966965f3d73cd6fdbf03dabe2605c45d51d57 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -894,6 +894,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -899,6 +899,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
this.timings.entityTick.startTiming(); // Spigot
@@ -161,7 +161,7 @@ index f48eaebb0f9a10fb77e85619b2d2a4996e461195..a507605a04af7f576548129517029192
this.entityTickList.forEach((entity) -> {
if (!entity.isRemoved()) {
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
@@ -913,6 +914,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -918,6 +919,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
entity.stopRiding();
}
@@ -178,7 +178,7 @@ index f48eaebb0f9a10fb77e85619b2d2a4996e461195..a507605a04af7f576548129517029192
this.guardEntityTick(this::tickNonPassenger, entity);
gameprofilerfiller.pop();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 70ca40c87c161d96a3661066386f2560d0aeca6d..ce0f8567f8b3d52b806c2c0ef600852ee192c05b 100644
index 393e951102c49d45a135b37ccd876283c5355710..8562e2794fc2cc29e55d34186480e820bffe1237 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -578,6 +578,107 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -297,7 +297,7 @@ index 70ca40c87c161d96a3661066386f2560d0aeca6d..ce0f8567f8b3d52b806c2c0ef600852e
}
public boolean isColliding(BlockPos pos, BlockState state) {
@@ -2517,6 +2619,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2521,6 +2623,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
nbttagcompound.putBoolean("Paper.FreezeLock", true);
}
// Paper end
@@ -309,7 +309,7 @@ index 70ca40c87c161d96a3661066386f2560d0aeca6d..ce0f8567f8b3d52b806c2c0ef600852e
return nbttagcompound;
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT");
@@ -2664,6 +2771,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2668,6 +2775,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
freezeLocked = nbt.getBoolean("Paper.FreezeLock");
}
// Paper end
@@ -321,7 +321,7 @@ index 70ca40c87c161d96a3661066386f2560d0aeca6d..ce0f8567f8b3d52b806c2c0ef600852e
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT");
@@ -4871,6 +4983,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4882,6 +4994,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return;
}
// Paper end - rewrite chunk system
@@ -462,7 +462,7 @@ index cc30c119f519e7cd947ab40beae56e493e977176..811a5224a02bb3badb1b8d6de370b716
this.explode();
}
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 862a56ce8de55bdca99af24fcf3909e820a0598e..37fbba2f6eb32f2806ae1fec90d7be800ba91d49 100644
index 902ec524d209ab56a6dadb260559910c76dbf96b..467ac21893d2e2ee07bc3ce7852ceb87dfe56cdf 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -237,6 +237,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {

View File

@@ -632,10 +632,10 @@ index 08e8de35fddcd54c5f466edb264aa454a5935c42..26b0c5d77fe10153300030c0f0fb0f63
this.isIteratingOverLevels = false; // Paper
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index a507605a04af7f576548129517029192309fd9e7..65fe46780a9f9687d328afb5cca176ab4da23318 100644
index 620966965f3d73cd6fdbf03dabe2605c45d51d57..a25b1e73e33459dc0a4c8d64f35d5731ec44e5cc 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1961,6 +1961,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1967,6 +1967,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
explosion.clearToBlow();
}
@@ -648,7 +648,7 @@ index a507605a04af7f576548129517029192309fd9e7..65fe46780a9f9687d328afb5cca176ab
Iterator iterator = this.players.iterator();
while (iterator.hasNext()) {
@@ -1971,7 +1977,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1977,7 +1983,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
}
@@ -999,7 +999,7 @@ index f529f5d0f28533ec89f3ee712e59745991d068ee..d0ff7710577c1cfedae494796e6db420
public float getEntityDamageAmount(Explosion explosion, Entity entity, double seenPercent) {
// Paper end - actually optimise explosions
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 37fbba2f6eb32f2806ae1fec90d7be800ba91d49..c63c5c1451d5678ddea0d570ff2628af258490ae 100644
index 467ac21893d2e2ee07bc3ce7852ceb87dfe56cdf..1bb8c3c3a64826261bab23cfb3098596ac972084 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -238,6 +238,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1010,7 +1010,7 @@ index 37fbba2f6eb32f2806ae1fec90d7be800ba91d49..c63c5c1451d5678ddea0d570ff2628af
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, Supplier<me.samsuik.sakura.configuration.WorldConfiguration> sakuraWorldConfigCreator, java.util.concurrent.Executor executor) { // Sakura // Paper - Async-Anti-Xray - Pass executor
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
@@ -1431,7 +1432,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1430,7 +1431,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
Explosion.BlockInteraction explosion_effect1 = explosion_effect;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Optimise Fast Movement
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index ce0f8567f8b3d52b806c2c0ef600852ee192c05b..8733e11bdfdb355928a332c20ed94bb57c57045f 100644
index 8562e2794fc2cc29e55d34186480e820bffe1237..b25ee7bf3ff5d8d533055f737c17e0e21b4f641a 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1216,6 +1216,95 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1220,6 +1220,95 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
// Paper end - detailed watchdog information
@@ -104,7 +104,7 @@ index ce0f8567f8b3d52b806c2c0ef600852ee192c05b..8733e11bdfdb355928a332c20ed94bb5
public void move(MoverType movementType, Vec3 movement) {
// Paper start - detailed watchdog information
io.papermc.paper.util.TickThread.ensureTickThread("Cannot move an entity off-main");
@@ -1593,6 +1682,95 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1597,6 +1686,95 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return offsetFactor;
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] isPushedByFluid API
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 8733e11bdfdb355928a332c20ed94bb57c57045f..8ff5e03e35cea60a53711d058f103e3b8569c170 100644
index b25ee7bf3ff5d8d533055f737c17e0e21b4f641a..1e5378f02dd51607dbb14e8886f2ab2b978bc92f 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -679,6 +679,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -16,7 +16,7 @@ index 8733e11bdfdb355928a332c20ed94bb57c57045f..8ff5e03e35cea60a53711d058f103e3b
public boolean isLegacyTrackingEntity = false;
@@ -4231,7 +4232,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4235,7 +4236,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public boolean isPushedByFluid() {
@@ -26,7 +26,7 @@ index 8733e11bdfdb355928a332c20ed94bb57c57045f..8ff5e03e35cea60a53711d058f103e3b
public static double getViewScale() {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 1727e932ac6b9ca09b5df96f9547ff125114e15a..9ce5bb9f15501a17a13e0d13874ff992d5df8a52 100644
index 1c3e1153d08b59d29b3613fc3b50a4780aa7a3ac..859e534d2880f4d14a2d066b4146e32cb1acfa25 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -200,6 +200,18 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Optimise TNT fluid state and pushing
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 8ff5e03e35cea60a53711d058f103e3b8569c170..4c55fe458378f2f376a8c31cec57e4751aa3d290 100644
index 1e5378f02dd51607dbb14e8886f2ab2b978bc92f..2beb43acfd1e4cc26e50ae11fd1eec6080d7c1fd 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2178,7 +2178,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2182,7 +2182,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return this.isInWater() || flag;
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configure cannon physics by version
diff --git a/src/main/java/io/papermc/paper/util/CollisionUtil.java b/src/main/java/io/papermc/paper/util/CollisionUtil.java
index 57ca8212991d0660dd41b70350f59830d4fd09f3..39085c2a356f575f0ef6acaa3de7d9ff560b5a87 100644
index 19086bbfdf3a015eafec5ca868c8d2451f554ef0..a40dcbde87860fd6d3b60d0b9e2d5e63e18e69b7 100644
--- a/src/main/java/io/papermc/paper/util/CollisionUtil.java
+++ b/src/main/java/io/papermc/paper/util/CollisionUtil.java
@@ -1495,6 +1495,14 @@ public final class CollisionUtil {
@@ -87,7 +87,7 @@ index b87748ae90863abe8f85dcbdc5a202cb3c9e2037..a291516ec7bdb9d8b840f41ca52e6bba
x /= distance;
y /= distance;
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23cf9cf818 100644
index 2beb43acfd1e4cc26e50ae11fd1eec6080d7c1fd..599706984734b8979b432b1bbc15f8ac13d2b334 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -378,7 +378,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -113,7 +113,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
public boolean isLegacyTrackingEntity = false;
@@ -1162,7 +1169,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1166,7 +1173,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
protected void checkSupportingBlock(boolean onGround, @Nullable Vec3 movement) {
@@ -122,7 +122,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
AABB axisalignedbb = this.getBoundingBox();
AABB axisalignedbb1 = new AABB(axisalignedbb.minX, axisalignedbb.minY - 1.0E-6D, axisalignedbb.minZ, axisalignedbb.maxX, axisalignedbb.minY, axisalignedbb.maxZ);
Optional<BlockPos> optional = this.level.findSupportingBlock(this, axisalignedbb1);
@@ -1224,7 +1231,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1228,7 +1235,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (this.noPhysics) {
this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z);
} else {
@@ -131,7 +131,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
movement = this.limitPistonMovement(movement);
if (movement.equals(Vec3.ZERO)) {
return;
@@ -1242,10 +1249,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1246,10 +1253,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
Vec3 vec3d1 = this.collideScan(movement);
double d0 = vec3d1.lengthSqr();
@@ -144,7 +144,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
BlockHitResult movingobjectpositionblock = this.level().clip(new ClipContext(this.position(), this.position().add(vec3d1), ClipContext.Block.FALLDAMAGE_RESETTING, ClipContext.Fluid.WATER, this));
if (movingobjectpositionblock.getType() != HitResult.Type.MISS) {
@@ -1281,6 +1288,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1285,6 +1292,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (this.horizontalCollision) {
Vec3 vec3d2 = this.getDeltaMovement();
@@ -157,7 +157,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
this.setDeltaMovement(flag ? 0.0D : vec3d2.x, vec3d2.y, flag1 ? 0.0D : vec3d2.z);
}
@@ -1321,7 +1334,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1325,7 +1338,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z);
} else {
this.wasOnFire = this.isOnFire();
@@ -166,7 +166,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
this.activatedTick = Math.max(this.activatedTick, MinecraftServer.currentTick + 20); // Paper
this.activatedImmunityTick = Math.max(this.activatedImmunityTick, MinecraftServer.currentTick + 20); // Paper
movement = this.limitPistonMovement(movement);
@@ -1348,8 +1361,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1352,8 +1365,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
Vec3 vec3d1 = this.collide(movement);
double d0 = vec3d1.lengthSqr();
@@ -177,7 +177,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
BlockHitResult movingobjectpositionblock = this.level().clip(new ClipContext(this.position(), this.position().add(vec3d1), ClipContext.Block.FALLDAMAGE_RESETTING, ClipContext.Fluid.WATER, this));
if (movingobjectpositionblock.getType() != HitResult.Type.MISS) {
@@ -1385,6 +1398,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1389,6 +1402,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (this.horizontalCollision) {
Vec3 vec3d2 = this.getDeltaMovement();
@@ -190,7 +190,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
this.setDeltaMovement(flag ? 0.0D : vec3d2.x, vec3d2.y, flag1 ? 0.0D : vec3d2.z);
}
@@ -1708,7 +1727,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1712,7 +1731,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
double y = movement.y;
double z = movement.z;
@@ -202,7 +202,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
if (y != 0.0) {
y = scanY(currBoundingBox, y, voxelList, bbList);
@@ -1824,7 +1846,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1828,7 +1850,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return movement;
}
@@ -211,7 +211,7 @@ index 4c55fe458378f2f376a8c31cec57e4751aa3d290..852276d9bedc51c3c8a28b60c85fdb23
if (stepHeight > 0.0
&& (onGround || (limitedMoveVector.y != movement.y && movement.y < 0.0))
@@ -1940,8 +1962,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1944,8 +1966,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
protected void checkInsideBlocks() {
AABB axisalignedbb = this.getBoundingBox();
@@ -541,7 +541,7 @@ index 5a10afb92fd62f433be9be6751e5222f3666c9f3..d92798d848754bb02f2de9ee91e1342c
if (data == null || !data.isExpandable() && (blockDensity == 0.0f || blockDensity == 1.0f)) {
level.densityCache.createCache(key, entity, vec3d, blockDensity);
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 09ff77ec8967645df0de253f6e8ee8cb6b998c0d..5afbdbd07afc671c3c6db491a713abfa467fffa3 100644
index 3292c06d040b6c1996f27a34532ed098f9e7a6c9..cd022e636bf31186b7be36d671932b8e0355d948 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -274,6 +274,205 @@ public abstract class Level implements LevelAccessor, AutoCloseable {

View File

@@ -20,10 +20,10 @@ index 33d9131e9c75ef23cd637f5d6c39a2704a0c92a5..715994cbcb6c4dfa016eb9af49b40cde
+ // Sakura end
}
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 216438a9c285edcd5dfa56b7ae49a674f92ae415..1200ff38189983b647ae8ba99ccea923681107f5 100644
index 24e0eaf25b2b366fd0e63a530c90f233c11d1bca..a09ac6167757b29ca2c6c78f1fd38039e8c19534 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -1160,6 +1160,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1159,6 +1159,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
try {
for (TrackedEntity tracker : this.entityMap.values()) {
// update tracker entry
@@ -31,7 +31,7 @@ index 216438a9c285edcd5dfa56b7ae49a674f92ae415..1200ff38189983b647ae8ba99ccea923
tracker.updatePlayers(tracker.entity.getPlayersInTrackRange());
}
} finally {
@@ -1334,6 +1335,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1333,6 +1334,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
this.lastSectionPos = SectionPos.of((EntityAccess) entity);
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Optimise check inside blocks and fluids
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 2588180e543dc8ca2e41c15802b59c9b87df7ee6..f8e39e84a73754954be72bcd3e91de7cf0b0f6d7 100644
index e6bcc60810c551e92e7f01f49cfbff58735b97ed..78787a972b9fbc6dd5caaad06e5047133f2a1993 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1976,18 +1976,37 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1980,18 +1980,37 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
BlockPos blockposition1 = BlockPos.containing(axisalignedbb.maxX - offset, axisalignedbb.maxY - offset, axisalignedbb.maxZ - offset);
// Sakura end
@@ -50,7 +50,7 @@ index 2588180e543dc8ca2e41c15802b59c9b87df7ee6..f8e39e84a73754954be72bcd3e91de7c
try {
iblockdata.entityInside(this.level(), blockposition_mutableblockposition, this);
@@ -4771,7 +4790,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4782,7 +4801,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
@@ -59,7 +59,7 @@ index 2588180e543dc8ca2e41c15802b59c9b87df7ee6..f8e39e84a73754954be72bcd3e91de7c
return false;
} else {
AABB axisalignedbb = this.getBoundingBox().deflate(0.001D);
@@ -4788,11 +4807,30 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4799,11 +4818,30 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
int k1 = 0;
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();