Update to 1.19.4
This commit is contained in:
34 files changed
+143
-144
No files matched your search
+3
-3
@@ -3,7 +3,7 @@ import io.papermc.paperweight.util.constants.PAPERCLIP_CONFIG
|
||||
plugins {
|
||||
java
|
||||
id("com.github.johnrengelman.shadow") version "8.1.0" apply false
|
||||
id("io.papermc.paperweight.patcher") version "1.5.2"
|
||||
id("io.papermc.paperweight.patcher") version "1.5.3"
|
||||
}
|
||||
|
||||
repositories {
|
||||
@@ -15,8 +15,8 @@ repositories {
|
||||
|
||||
dependencies {
|
||||
remapper("net.fabricmc:tiny-remapper:0.8.6:fat")
|
||||
decompiler("net.minecraftforge:forgeflower:2.0.605.1")
|
||||
paperclip("io.papermc:paperclip:3.0.2")
|
||||
decompiler("net.minecraftforge:forgeflower:2.0.627.2")
|
||||
paperclip("io.papermc:paperclip:3.0.3")
|
||||
}
|
||||
|
||||
subprojects {
|
||||
|
||||
+3
-3
@@ -3,6 +3,6 @@ org.gradle.caching=true
|
||||
org.gradle.vfs.watch=false
|
||||
|
||||
group=gg.pufferfish.pufferfish
|
||||
version=1.19.3-R0.1-SNAPSHOT
|
||||
mcVersion=1.19.3
|
||||
paperRef=155aa36d89b260ef5841615899299756b5983c0a
|
||||
version=1.19.4-R0.1-SNAPSHOT
|
||||
mcVersion=1.19.4
|
||||
paperRef=e8b82590d0c3dd57ac1728b236117d2fcd531c4f
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add Sentry
|
||||
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 9421e45653e68922a51cf0071792e6fa7999d0b8..b385787e126ffd2563f02d8876780e6e0fc68ca3 100644
|
||||
index cad12a2632b9ebb569280441c42869685db1f31a..48d254cd1ee3dc13846ce283cdae5938865607fd 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -41,6 +41,7 @@ dependencies {
|
||||
@@ -42,6 +42,7 @@ dependencies {
|
||||
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
|
||||
api("org.apache.logging.log4j:log4j-api:2.17.1")
|
||||
api("org.slf4j:slf4j-api:1.8.0-beta4")
|
||||
|
||||
@@ -8,10 +8,10 @@ and API spec stability is NOT guaranteed. If you use this in plugins,
|
||||
they WILL break eventually.
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 28ad50e03c55336bd7a467516f31b398a74cbd2a..4e78a535b528a87ad0ec9c361541c79854929c6e 100644
|
||||
index 48d254cd1ee3dc13846ce283cdae5938865607fd..b83e2c5a0a094002d12aee55ec0cf8d12bf33f3e 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -85,6 +85,13 @@ val generateApiVersioningFile by tasks.registering {
|
||||
@@ -86,6 +86,13 @@ val generateApiVersioningFile by tasks.registering {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Pufferfish branding
|
||||
Update branding
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 1919a8e9cb7c995b2a9c876ff4980bdc98977133..70316602339c9676fbb9f631214473c6e845d7f4 100644
|
||||
index 9cf389defdaeb887e9cad4f0fed3f3b95667b238..397aeeef65c823c507b4287e89bb1d27449432b4 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -7,8 +7,12 @@ plugins {
|
||||
@@ -204,10 +204,10 @@ index 0000000000000000000000000000000000000000..e877921370f6009a4bd204d9b17d2d58
|
||||
+}
|
||||
\ No newline at end of file
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 753a917d34a1e1c1521a8916bc8e44a6acd90a46..6b5e0833176e343ce4caf99e64a3cb94d22d215c 100644
|
||||
index 4450d825a5474da211f0e83f845d8c7129fa08aa..2c9ff8990e5c7a03db22a1ad345c022ab0733801 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1654,7 +1654,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1681,7 +1681,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
||||
@DontObfuscate
|
||||
public String getServerModName() {
|
||||
@@ -217,10 +217,10 @@ index 753a917d34a1e1c1521a8916bc8e44a6acd90a46..6b5e0833176e343ce4caf99e64a3cb94
|
||||
|
||||
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 bbb8335dae0a3e2761e6bbb8dc723bcf28cd82ba..1a114d326463a37ae78b6e2034a3d9b608f92d6f 100644
|
||||
index f9a9d2bb7b6d1bf4a0931438de4d8c7ee0757479..0f76cd4ce0faa577c97c2e4ef9868518b323cfbc 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -261,7 +261,7 @@ import javax.annotation.Nullable; // Paper
|
||||
@@ -256,7 +256,7 @@ import javax.annotation.Nullable; // Paper
|
||||
import javax.annotation.Nonnull; // Paper
|
||||
|
||||
public final class CraftServer implements Server {
|
||||
@@ -230,7 +230,7 @@ index bbb8335dae0a3e2761e6bbb8dc723bcf28cd82ba..1a114d326463a37ae78b6e2034a3d9b6
|
||||
private final String bukkitVersion = Versioning.getBukkitVersion();
|
||||
private final Logger logger = Logger.getLogger("Minecraft");
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
index 81ffcca62c2ebb15889d286bfe9138b86ccfe71e..0ccde7fe2a852f7da72f0b3f5a53cb48d28d1840 100644
|
||||
index 64c50c52c11214740de7903e5592b8b6b2c170b3..d4f62940504e3ef7a70e13b1f4a7726f23b4c637 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||
@@ -464,7 +464,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||
|
||||
@@ -5,13 +5,13 @@ Subject: [PATCH] Add SIMD utilities
|
||||
|
||||
|
||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||
index 3225405136314625b316e6be78e08efaa3a096aa..d9ace6cd8e9cbf088e6664469fb94df0c964998f 100644
|
||||
index 29400f248b05732d9a7d6ae220aa40f429ba4ad0..b41b186397d013c19436c345be98b785d4bd0295 100644
|
||||
--- a/build.gradle.kts
|
||||
+++ b/build.gradle.kts
|
||||
@@ -61,6 +61,14 @@ dependencies {
|
||||
}
|
||||
|
||||
val craftbukkitPackageVersion = "1_19_R2" // Paper
|
||||
val craftbukkitPackageVersion = "1_19_R3" // Paper
|
||||
+
|
||||
+// Pufferfish Start
|
||||
+tasks.withType<JavaCompile> {
|
||||
|
||||
@@ -29,10 +29,10 @@ index 5b7fe3d6c2169d07b79a0937e889fc847962fdfe..ac56a5ba83184ee7b24b58cc25aa3d5a
|
||||
+
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 08cb3db28f13c352a162009deeb28ee637e98d2a..64e666e612694fedaed05ce7aec8e86a75fa7c29 100644
|
||||
index 2d8488b9aa088b6d5f0c7e557b8ad0b29bc4cd88..c960dbbf158171ee39a4a407f194c2ee9095559d 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -1204,6 +1204,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1206,6 +1206,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
@Override
|
||||
public void handleEditBook(ServerboundEditBookPacket packet) {
|
||||
|
||||
@@ -35,19 +35,19 @@ index ac56a5ba83184ee7b24b58cc25aa3d5aa953caee..9a8896f51be5028724563cd505478247
|
||||
+
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 864ab97b7a6c62c376ca38dbbc65bc9406dfd62b..91e6491fc31e57743e4178dded34b3ee8c799426 100644
|
||||
index dcfb71b5a53df789e366fea2080921d677549a2e..645f957359967b168b40550b16ba880718a59465 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -402,7 +402,7 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -397,7 +397,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
boolean flag = this instanceof net.minecraft.world.entity.player.Player;
|
||||
|
||||
if (!this.level.isClientSide) {
|
||||
- if (this.isInWall()) {
|
||||
+ if ((!gg.pufferfish.pufferfish.PufferfishConfig.enableSuffocationOptimization || (tickCount % 10 == 0 && couldPossiblyBeHurt(1.0F))) && this.isInWall()) { // Pufferfish - optimize suffocation
|
||||
this.hurt(DamageSource.IN_WALL, 1.0F);
|
||||
this.hurt(this.damageSources().inWall(), 1.0F);
|
||||
} else if (flag && !this.level.getWorldBorder().isWithinBounds(this.getBoundingBox())) {
|
||||
double d0 = this.level.getWorldBorder().getDistanceToBorder(this) + this.level.getWorldBorder().getDamageSafeZone();
|
||||
@@ -1327,6 +1327,15 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1321,6 +1321,15 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
return this.getHealth() <= 0.0F;
|
||||
}
|
||||
|
||||
|
||||
@@ -43,10 +43,10 @@ index 9a8896f51be5028724563cd5054782477868edef..b3dba80e30268f85befd2495cbf5bc5f
|
||||
+
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 5dcc3b80b4a13944b39458802362a6bb1a5fbe41..9134d6b655cbf7f4e71c33abde4dabd231c6b470 100644
|
||||
index 2c9ff8990e5c7a03db22a1ad345c022ab0733801..70086d05b02bc0949317b03dddf6e246ae7249b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -309,6 +309,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -312,6 +312,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public volatile Thread shutdownThread; // Paper
|
||||
public volatile boolean abnormalExit = false; // Paper
|
||||
public boolean isIteratingOverLevels = false; // Paper
|
||||
@@ -68,10 +68,10 @@ index 1556bb2b9c92f5f0e51cf35f3d53c04f2708dd15..ad4fdbdcf09f30d10e61ccf47f8fb9ce
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
index 2212f9f48636357265d8e44aba415ea4f09f1fe7..7aa247fd9dabe79d7b7f0b18a6f82ac926440c70 100644
|
||||
index fbe209a66c77c47935ad026dd3e45e682af91fd8..02abc76333e8244cfcaa052a7df948b68079559a 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
@@ -342,7 +342,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
@@ -345,7 +345,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
this.dataRegionManager = new io.papermc.paper.chunk.SingleThreadChunkRegionManager(this.level, 2, (1.0 / 3.0), 1, 6, "Data", DataRegionData::new, DataRegionSectionData::new);
|
||||
this.regionManagers.add(this.dataRegionManager);
|
||||
// Paper end
|
||||
|
||||
@@ -27,10 +27,10 @@ You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 7fff06eeac35b666936b1c0903234bc823d380c2..e2ff40386204eecf68a999690c2caa18d6410b29 100644
|
||||
index 645f957359967b168b40550b16ba880718a59465..775c4bc04c8464b66855901b7aae5dce574eb4df 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3656,7 +3656,10 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -3618,7 +3618,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ());
|
||||
|
||||
// Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists
|
||||
@@ -43,7 +43,7 @@ index 7fff06eeac35b666936b1c0903234bc823d380c2..e2ff40386204eecf68a999690c2caa18
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/BlockGetter.java b/src/main/java/net/minecraft/world/level/BlockGetter.java
|
||||
index d1eefa6ef3e9abfe7af4d8310aa64465fa2d5463..0f4aa330e5b179bb706a31917c671f165e22b9cd 100644
|
||||
index 2ee9e8e3c1a28c1823de8e1fe421cc1f3e72f384..cf4a8084158b10bf047d418dda375f8c1fd3216e 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/BlockGetter.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/BlockGetter.java
|
||||
@@ -73,6 +73,16 @@ public interface BlockGetter extends LevelHeightAccessor {
|
||||
@@ -64,10 +64,10 @@ index d1eefa6ef3e9abfe7af4d8310aa64465fa2d5463..0f4aa330e5b179bb706a31917c671f16
|
||||
default BlockHitResult clip(ClipContext raytrace1, BlockPos blockposition) {
|
||||
// Paper start - Prevent raytrace from loading chunks
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 3cbf801b2e5420c0e870f73788deb550e49ad54d..6254f5b78dbb9f66833043d81aa83f964308627d 100644
|
||||
index 973ecd50f9cb6b86c353586e84d15dcb118ccb60..34f11b6dc53a75da1fa416283e1cd1969eb1d50d 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -407,6 +407,91 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -413,6 +413,91 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -24,10 +24,10 @@ You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
||||
index e7c06d98532160499f2610f69de27e30a326b16f..830622bd92431df5bc4a57fe6785689f8585e14b 100644
|
||||
index f4f3f3a19d3cadaef1ae1a47daa68251a983dcf2..8da06f8bea0239c5206d5d4f4ff48bdeb0a89f9d 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java
|
||||
@@ -26,8 +26,13 @@ public class ShapelessRecipe implements CraftingRecipe {
|
||||
@@ -27,8 +27,13 @@ public class ShapelessRecipe implements CraftingRecipe {
|
||||
final CraftingBookCategory category;
|
||||
final ItemStack result;
|
||||
final NonNullList<Ingredient> ingredients;
|
||||
@@ -41,7 +41,7 @@ index e7c06d98532160499f2610f69de27e30a326b16f..830622bd92431df5bc4a57fe6785689f
|
||||
this.id = id;
|
||||
this.group = group;
|
||||
this.category = category;
|
||||
@@ -81,6 +86,28 @@ public class ShapelessRecipe implements CraftingRecipe {
|
||||
@@ -82,6 +87,28 @@ public class ShapelessRecipe implements CraftingRecipe {
|
||||
}
|
||||
|
||||
public boolean matches(CraftingContainer inventory, Level world) {
|
||||
|
||||
@@ -40,10 +40,10 @@ index b3dba80e30268f85befd2495cbf5bc5f59a57cde..0b7a43b6f2ec9a69281ff38f9bef6e33
|
||||
}
|
||||
+
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java
|
||||
index 66476b33cede1e44db5ec166a0cea81f82ffe47a..5ccd7dc0a093277d3ea09c0fe8be03c0073ee1a8 100644
|
||||
index 8b2a3a8482018b7db7de81bc295862f783e17ce5..e6f87e1e3c99195ed11c81162cb54e7f5750c4ba 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java
|
||||
@@ -43,6 +43,36 @@ public abstract class Projectile extends Entity {
|
||||
@@ -44,6 +44,36 @@ public abstract class Projectile extends Entity implements TraceableEntity {
|
||||
super(type, world);
|
||||
}
|
||||
|
||||
|
||||
@@ -20,10 +20,10 @@ You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
index 320c558bbe80d4bbc641e895ec43cfa2b45e8d70..1572a81ce1718964d795f2a2a411402f88901c73 100644
|
||||
index f5efdf59617d43de18a2267351fa784c0be3ae83..59338d739b6130f667d151bc27646c4a346886a2 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
|
||||
@@ -256,13 +256,22 @@ public class Bat extends AmbientCreature {
|
||||
@@ -251,13 +251,22 @@ public class Bat extends AmbientCreature {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ require it to be initialized earlier. By moving it to the superclass, we
|
||||
initialize it earlier, ensuring that it is available sooner.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 54c2b7fba83d6f06dba95b1bb5b487a02048d6e6..76122db852ae2f75ec3a65b255f9b4af2b3a771f 100644
|
||||
index 5a5ff40df37db9cbd53c584ed26a3ce4888b29c0..f82a25e91dff03d41ddf952e3abf6feaf368abb6 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -793,7 +793,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -21,15 +21,15 @@ index 54c2b7fba83d6f06dba95b1bb5b487a02048d6e6..76122db852ae2f75ec3a65b255f9b4af
|
||||
|
||||
public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 6254f5b78dbb9f66833043d81aa83f964308627d..71873149f040e1ce15ea7c278a846fe12797bc82 100644
|
||||
index 34f11b6dc53a75da1fa416283e1cd1969eb1d50d..9df45355a56885bc142563a5e5022afc0391e665 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -270,6 +270,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -274,6 +274,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||
|
||||
+ protected final io.papermc.paper.util.math.ThreadUnsafeRandom randomTickRandom = new io.papermc.paper.util.math.ThreadUnsafeRandom(java.util.concurrent.ThreadLocalRandom.current().nextLong()); // Pufferfish - move thread unsafe random initialization
|
||||
+
|
||||
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, 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, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||
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, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
|
||||
@@ -84,7 +84,7 @@ index 0b7a43b6f2ec9a69281ff38f9bef6e33878be3f8..bd3ca0af0f50b2bf1f1b95d4578c1b05
|
||||
+}
|
||||
\ No newline at end of file
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 2d78c8ca87f341c4b05db27a2cdd27ac437764b2..942e829114d73a12ef43cf972d77fa5a445ebb80 100644
|
||||
index 430bd8ce9b5d796885fc1ad48260361013205100..db05e68407f56675d0a86dc4459cdb2b3b784961 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -709,6 +709,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -96,10 +96,10 @@ index 2d78c8ca87f341c4b05db27a2cdd27ac437764b2..942e829114d73a12ef43cf972d77fa5a
|
||||
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
|
||||
entity.discard();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 9e4403614c1ae40ef580ef0525442f5492106584..7bdf545f4c1065ba9d94dfd878af0d91fb51c417 100644
|
||||
index 91dec8c834879f39ee8ec68abc38e3d5702e627a..3abe1bb84359f9b0c57ac484d0031a1b23510f38 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -414,6 +414,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -415,6 +415,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
return this.originWorld;
|
||||
}
|
||||
// Paper end
|
||||
@@ -112,10 +112,10 @@ index 9e4403614c1ae40ef580ef0525442f5492106584..7bdf545f4c1065ba9d94dfd878af0d91
|
||||
return this.yRot;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
index e5cd4b7609243669c9d84ff8a4988c209e6101aa..8ca7181dcf742cf33d4a44387c168eafeadd8da4 100644
|
||||
index ceacc0d383e2ee674783d3c0a7df0a951595faca..559bce4bbcc03117f52dc2810bad5becddf14a8e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
@@ -293,6 +293,7 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
@@ -300,6 +300,7 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
private final boolean canSpawnFarFromPlayer;
|
||||
private final int clientTrackingRange;
|
||||
private final int updateInterval;
|
||||
@@ -124,10 +124,10 @@ index e5cd4b7609243669c9d84ff8a4988c209e6101aa..8ca7181dcf742cf33d4a44387c168eaf
|
||||
private String descriptionId;
|
||||
@Nullable
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
index 49b983064ea810382b6112f5dc7f93ba4e5710bd..c85f5545e4246c63088b13a5884e74b8f6e00289 100644
|
||||
index 02cb6b8c1d59855ff4a8aad3024fe12007eca0ee..28268bcfdd4dc21f12d1493c288e2960d483058a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
@@ -214,10 +214,10 @@ public abstract class Mob extends LivingEntity {
|
||||
@@ -219,10 +219,10 @@ public abstract class Mob extends LivingEntity implements Targeting {
|
||||
@Override
|
||||
public void inactiveTick() {
|
||||
super.inactiveTick();
|
||||
@@ -140,7 +140,7 @@ index 49b983064ea810382b6112f5dc7f93ba4e5710bd..c85f5545e4246c63088b13a5884e74b8
|
||||
this.targetSelector.tick();
|
||||
}
|
||||
}
|
||||
@@ -878,16 +878,20 @@ public abstract class Mob extends LivingEntity {
|
||||
@@ -907,16 +907,20 @@ public abstract class Mob extends LivingEntity implements Targeting {
|
||||
|
||||
if (i % 2 != 0 && this.tickCount > 1) {
|
||||
this.level.getProfiler().push("targetSelector");
|
||||
@@ -198,10 +198,10 @@ index b738ee2d3801fadfd09313f05ae24593e56b0ec6..1635818fc4b1788c0d397085239df6dd
|
||||
public boolean hasTasks() {
|
||||
for (WrappedGoal task : this.availableGoals) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
index c0084b1f146a4697194c421519537e612ff737c0..c66a214dfbde7fd8e7a68efaa82ac260178f297f 100644
|
||||
index 9b57d2b766f2de2d3fb4a3b5ef4df8d6756a1942..a41d8101c960163803179d3717889aee6182d0bb 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
|
||||
@@ -228,9 +228,11 @@ public class Allay extends PathfinderMob implements InventoryCarrier {
|
||||
@@ -223,9 +223,11 @@ public class Allay extends PathfinderMob implements InventoryCarrier {
|
||||
return 0.4F;
|
||||
}
|
||||
|
||||
@@ -214,7 +214,7 @@ index c0084b1f146a4697194c421519537e612ff737c0..c66a214dfbde7fd8e7a68efaa82ac260
|
||||
this.level.getProfiler().pop();
|
||||
this.level.getProfiler().push("allayActivityUpdate");
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
index 0d7f951e3837de7553d93f3d4525276048feb405..02219f5ca614fefffa1ceb3c7036dfe1c90c8676 100644
|
||||
index a4e98b02175da96472474b8d7ad5975ce4d2fc43..38d21943fb2940f53c2d0ac2c3b94a6f0e46e700 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
|
||||
@@ -285,9 +285,11 @@ public class Axolotl extends Animal implements LerpingModel, VariantHolder<Axolo
|
||||
@@ -230,11 +230,11 @@ index 0d7f951e3837de7553d93f3d4525276048feb405..02219f5ca614fefffa1ceb3c7036dfe1
|
||||
this.level.getProfiler().pop();
|
||||
this.level.getProfiler().push("axolotlActivityUpdate");
|
||||
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 f2e84e832ad95df26fe3b9ba439ce38fc59b3585..0a051c7e7f5a172a9b906de04ef2a0419eda26eb 100644
|
||||
index a65cec3c9837882df5b61de58f03d276d4db6bfc..be44667b8205cd3bb1cefddf8e0e743535414e14 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
|
||||
@@ -177,9 +177,11 @@ public class Frog extends Animal implements VariantHolder<FrogVariant> {
|
||||
return this.getDeltaMovement().horizontalDistanceSqr() > 1.0E-6D && this.isInWaterOrBubble();
|
||||
@@ -167,9 +167,11 @@ public class Frog extends Animal implements VariantHolder<FrogVariant> {
|
||||
return true;
|
||||
}
|
||||
|
||||
+ private int behaviorTick = 0; // Pufferfish
|
||||
@@ -262,7 +262,7 @@ index 9058f9f2e561cda9f475f33218bf7a78297de4bc..e591b0a09f5a8475b3ec9cd28bd5d5b6
|
||||
this.level.getProfiler().pop();
|
||||
this.level.getProfiler().push("tadpoleActivityUpdate");
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
|
||||
index e9f7c08ae3ea9c578971b1ede88788572c20e277..0f365b9dbb160d90ddf5fcd40895305df48ce916 100644
|
||||
index cfa904d42734d0fb0c1ed8b18f4d8bc131027962..4fdc3bd591b6df4c28901e4571aa23baf034d885 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java
|
||||
@@ -188,9 +188,11 @@ public class Goat extends Animal {
|
||||
@@ -310,7 +310,7 @@ index afa7ecfa8453da510ec5ccecb1ceeb1d9893d259..b401fb4f276ca81b4bb18426ee56abed
|
||||
this.level.getProfiler().pop();
|
||||
PiglinAi.updateActivity(this);
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||
index 1ae7408048f951cb94d7cfbea60efc5567b1af84..904826ea563bd2eb469f403df459def62cc1b5e6 100644
|
||||
index b2b63d9df3c07696f47281e9be74f1799f50b93e..907d77dd74066c723238155b42028a811365b1f8 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
|
||||
@@ -270,11 +270,13 @@ public class Warden extends Monster implements VibrationListener.VibrationListen
|
||||
@@ -328,7 +328,7 @@ index 1ae7408048f951cb94d7cfbea60efc5567b1af84..904826ea563bd2eb469f403df459def6
|
||||
this.level.getProfiler().pop();
|
||||
super.customServerAiStep();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
index 18eac340386a396c9850f53f30d20a41c1437788..76a9da8209d557b913c49ccd281bf147b9ac4fa4 100644
|
||||
index 6023b9eb3001e1a98ab8b970d853c4e7c7603f4d..5402a084ef5fe0b3cfea897a90cffade1eff5b66 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
|
||||
@@ -140,6 +140,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
|
||||
@@ -360,7 +360,7 @@ index 18eac340386a396c9850f53f30d20a41c1437788..76a9da8209d557b913c49ccd281bf147
|
||||
if (this.assignProfessionWhenSpawned) {
|
||||
this.assignProfessionWhenSpawned = false;
|
||||
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
index 1b42c98956342832c37f0aa266f85271daa4ba5b..55a4d21a062ceb59e5eeba6361c4d28de19edbdf 100644
|
||||
index e881584d38dc354204479863f004e974a0ac6c07..faff5357e1c205a9ab36ee04c78ea9d7a484b1a1 100644
|
||||
--- a/src/main/java/org/spigotmc/ActivationRange.java
|
||||
+++ b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
@@ -38,6 +38,10 @@ import co.aikar.timings.MinecraftTimings;
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Remove iterators from inventory contains
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/player/Inventory.java b/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
||||
index a1a625a8dacf4d2bbf75ddd90dce1b1be663c919..23e375c9a6955d03e0fc9be91ff0403251c8216c 100644
|
||||
index 27c028ab6b1edb6e413af3bbaa27bf30f2d85540..302ca7391109c10e81a7745504b3c530bc3be6ad 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/player/Inventory.java
|
||||
@@ -681,6 +681,8 @@ public class Inventory implements Container, Nameable {
|
||||
@@ -682,6 +682,8 @@ public class Inventory implements Container, Nameable {
|
||||
}
|
||||
|
||||
public boolean contains(ItemStack stack) {
|
||||
@@ -17,7 +17,7 @@ index a1a625a8dacf4d2bbf75ddd90dce1b1be663c919..23e375c9a6955d03e0fc9be91ff04032
|
||||
Iterator iterator = this.compartments.iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
@@ -695,6 +697,18 @@ public class Inventory implements Container, Nameable {
|
||||
@@ -696,6 +698,18 @@ public class Inventory implements Container, Nameable {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] More debug for plugins not shutting down tasks
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 1a114d326463a37ae78b6e2034a3d9b608f92d6f..7ddf52de4b095f63c75b696008fcdde6345fc3c8 100644
|
||||
index 0f76cd4ce0faa577c97c2e4ef9868518b323cfbc..b2d94582037c091bd6a04451bf62b3f9c4923d19 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1048,6 +1048,11 @@ public final class CraftServer implements Server {
|
||||
@@ -1043,6 +1043,11 @@ public final class CraftServer implements Server {
|
||||
plugin.getDescription().getName(),
|
||||
"This plugin is not properly shutting down its async tasks when it is being shut down. This task may throw errors during the final shutdown logs and might not complete before process dies."
|
||||
));
|
||||
|
||||
@@ -5,18 +5,18 @@ Subject: [PATCH] Cache climbing check for activation
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index e2ff40386204eecf68a999690c2caa18d6410b29..d134e88ae9aa2bd0b2b51056bfcc37941c713002 100644
|
||||
index 775c4bc04c8464b66855901b7aae5dce574eb4df..791f672b30f2a4d3b329e2ce0f4fb9c2ca627b01 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -143,7 +143,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
|
||||
@@ -141,7 +141,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
|
||||
import org.bukkit.event.player.PlayerItemConsumeEvent;
|
||||
// CraftBukkit end
|
||||
|
||||
-import co.aikar.timings.MinecraftTimings; // Paper
|
||||
|
||||
public abstract class LivingEntity extends Entity {
|
||||
public abstract class LivingEntity extends Entity implements Attackable {
|
||||
|
||||
@@ -1943,6 +1942,20 @@ public abstract class LivingEntity extends Entity {
|
||||
@@ -1938,6 +1937,20 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
return this.lastClimbablePos;
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ index e2ff40386204eecf68a999690c2caa18d6410b29..d134e88ae9aa2bd0b2b51056bfcc3794
|
||||
if (this.isSpectator()) {
|
||||
return false;
|
||||
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
index 55a4d21a062ceb59e5eeba6361c4d28de19edbdf..b87756d9a7b04ea2613208984b2583eca3f32af6 100644
|
||||
index faff5357e1c205a9ab36ee04c78ea9d7a484b1a1..63d3fcc45be732a4cd2dc8b5347d860fd6577bdd 100644
|
||||
--- a/src/main/java/org/spigotmc/ActivationRange.java
|
||||
+++ b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
@@ -314,7 +314,7 @@ public class ActivationRange
|
||||
|
||||
@@ -22,10 +22,10 @@ index 9ff0f60f03a532dabb8740ad5c44e068d5a9c8bf..03ef5e6b578aa1e9391e891d3e005b30
|
||||
+
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 673e82f0d9b161d46178ceea4f14f53d17d9841c..33a5e900c2cab99c311fa5f5b71a609cf8f802cb 100644
|
||||
index 70086d05b02bc0949317b03dddf6e246ae7249b7..6d5e9400892b86562519a893349ca55e566bfb24 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -2240,6 +2240,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2268,6 +2268,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
|
||||
public ProfilerFiller getProfiler() {
|
||||
@@ -34,10 +34,10 @@ index 673e82f0d9b161d46178ceea4f14f53d17d9841c..33a5e900c2cab99c311fa5f5b71a609c
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 4af3d134aaf33e752367e58a7e9159372caee0b4..f5ce2e6b1db5d16fe6a98b19af3449bee9169e03 100644
|
||||
index 9df45355a56885bc142563a5e5022afc0391e665..c9854b28be7cd9a533e2775c7363d2d33c7f06a4 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -1539,6 +1539,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1541,6 +1541,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
}
|
||||
|
||||
public ProfilerFiller getProfiler() {
|
||||
|
||||
@@ -5,18 +5,18 @@ Subject: [PATCH] Use array for gamerule storage
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/GameRules.java b/src/main/java/net/minecraft/world/level/GameRules.java
|
||||
index 663c1d8c1611af915a1bae733920dd75ad73feb1..c15e4d95baacd30f9614dc5526dc8fc12ae5bd06 100644
|
||||
index edd2c9d0cf5a81c779011cb4215d496a8987b784..29d1f78dbc8410f9292f409b17705acde55979df 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/GameRules.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/GameRules.java
|
||||
@@ -98,6 +98,7 @@ public class GameRules {
|
||||
public static final GameRules.Key<GameRules.BooleanValue> RULE_LAVA_SOURCE_CONVERSION = GameRules.register("lavaSourceConversion", GameRules.Category.UPDATES, GameRules.BooleanValue.create(false));
|
||||
@@ -100,6 +100,7 @@ public class GameRules {
|
||||
public static final GameRules.Key<GameRules.BooleanValue> RULE_GLOBAL_SOUND_EVENTS = GameRules.register("globalSoundEvents", GameRules.Category.MISC, GameRules.BooleanValue.create(true));
|
||||
public static final GameRules.Key<GameRules.BooleanValue> RULE_DO_VINES_SPREAD = GameRules.register("doVinesSpread", GameRules.Category.UPDATES, GameRules.BooleanValue.create(true));
|
||||
private final Map<GameRules.Key<?>, GameRules.Value<?>> rules;
|
||||
+ private final GameRules.Value<?>[] gameruleArray;
|
||||
|
||||
private static <T extends GameRules.Value<T>> GameRules.Key<T> register(String name, GameRules.Category category, GameRules.Type<T> type) {
|
||||
GameRules.Key<T> gamerules_gamerulekey = new GameRules.Key<>(name, category);
|
||||
@@ -116,17 +117,33 @@ public class GameRules {
|
||||
@@ -118,17 +119,33 @@ public class GameRules {
|
||||
}
|
||||
|
||||
public GameRules() {
|
||||
@@ -53,7 +53,7 @@ index 663c1d8c1611af915a1bae733920dd75ad73feb1..c15e4d95baacd30f9614dc5526dc8fc1
|
||||
}
|
||||
|
||||
public CompoundTag createTag() {
|
||||
@@ -185,6 +202,10 @@ public class GameRules {
|
||||
@@ -187,6 +204,10 @@ public class GameRules {
|
||||
}
|
||||
|
||||
public static final class Key<T extends GameRules.Value<T>> {
|
||||
|
||||
@@ -160,19 +160,19 @@ index 241fec02e6869c638d3a160819b32173a081467b..6a8f9e8f5bf108674c47018def28906e
|
||||
public int getContainerSize() {
|
||||
return this.container1.getContainerSize() + this.container2.getContainerSize();
|
||||
diff --git a/src/main/java/net/minecraft/world/Container.java b/src/main/java/net/minecraft/world/Container.java
|
||||
index 540bc9500c35c0db719b00aa26f6fb3a1b08ed9f..806cb760822a99316b08ad95ff8922df717050e2 100644
|
||||
index 04b1531572e8fff1e46fe1c94e7fc863841e0f66..47ddc42f2b63d9d3fae5ae6ea93d418352d76c94 100644
|
||||
--- a/src/main/java/net/minecraft/world/Container.java
|
||||
+++ b/src/main/java/net/minecraft/world/Container.java
|
||||
@@ -2,6 +2,8 @@ package net.minecraft.world;
|
||||
|
||||
@@ -3,6 +3,8 @@ package net.minecraft.world;
|
||||
import java.util.Set;
|
||||
import java.util.function.Predicate;
|
||||
import net.minecraft.core.BlockPos;
|
||||
+
|
||||
+import net.minecraft.core.Direction; // Pufferfish
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.item.Item;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
@@ -10,6 +12,63 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity;
|
||||
@@ -13,6 +15,63 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity;
|
||||
// CraftBukkit end
|
||||
|
||||
public interface Container extends Clearable {
|
||||
@@ -235,9 +235,9 @@ index 540bc9500c35c0db719b00aa26f6fb3a1b08ed9f..806cb760822a99316b08ad95ff8922df
|
||||
+ // Pufferfish end
|
||||
|
||||
int LARGE_MAX_STACK_SIZE = 64;
|
||||
|
||||
int DEFAULT_DISTANCE_LIMIT = 8;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecartContainer.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecartContainer.java
|
||||
index cc74eeb45913fab03e85969957215d2811252a83..086feb19f11a6c646b5a1a06aef4df05a4beae8b 100644
|
||||
index 08f027cdcaeeca7b545483cb8c5eb8d13e4933b9..992ff554643b149d9c6101562a9754a84263ed7e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecartContainer.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecartContainer.java
|
||||
@@ -27,7 +27,10 @@ import org.bukkit.inventory.InventoryHolder;
|
||||
@@ -362,10 +362,10 @@ index a71414397bd45ee7bcacfeef0041d80dfa25f114..d66806565770cb03a21794f99e5c4b0f
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a7c28c031 100644
|
||||
index cba114f554644a37339c93026630c66c43f524b9..746b71ea96ecc441afd45cc779a1777c15d58ff2 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
@@ -45,7 +45,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -47,7 +47,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
|
||||
public static final int MOVE_ITEM_SPEED = 8;
|
||||
public static final int HOPPER_CONTAINER_SIZE = 5;
|
||||
@@ -376,7 +376,7 @@ index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a
|
||||
private int cooldownTime;
|
||||
private long tickedGameTime;
|
||||
|
||||
@@ -81,14 +84,37 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -83,14 +86,37 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
|
||||
public HopperBlockEntity(BlockPos pos, BlockState state) {
|
||||
super(BlockEntityType.HOPPER, pos, state);
|
||||
@@ -416,7 +416,7 @@ index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a
|
||||
if (!this.tryLoadLootTable(nbt)) {
|
||||
ContainerHelper.loadAllItems(nbt, this.items);
|
||||
}
|
||||
@@ -160,7 +186,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -162,7 +188,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
flag = HopperBlockEntity.ejectItems(world, pos, state, (Container) blockEntity, blockEntity); // CraftBukkit
|
||||
}
|
||||
|
||||
@@ -425,7 +425,7 @@ index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a
|
||||
flag |= booleansupplier.getAsBoolean();
|
||||
}
|
||||
|
||||
@@ -408,12 +434,18 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -451,11 +477,18 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
}
|
||||
|
||||
private static boolean isFullContainer(Container inventory, Direction direction) {
|
||||
@@ -437,16 +437,16 @@ index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a
|
||||
}
|
||||
|
||||
private static boolean isEmptyContainer(Container inv, Direction facing) {
|
||||
// Paper start
|
||||
- return allMatch(inv, facing, IS_EMPTY_TEST);
|
||||
+ // Paper start
|
||||
+ // Pufferfish start - use bitsets
|
||||
+ //return allMatch(inv, facing, IS_EMPTY_TEST);
|
||||
+ return inv.isCompletelyEmpty(facing);
|
||||
+ // Pufferfish end
|
||||
}
|
||||
private static boolean allMatch(Container iinventory, Direction enumdirection, java.util.function.BiPredicate<ItemStack, Integer> test) {
|
||||
if (iinventory instanceof WorldlyContainer) {
|
||||
@@ -592,7 +624,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
|
||||
public static boolean suckInItems(Level world, Hopper hopper) {
|
||||
@@ -636,7 +669,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
|
||||
if (HopperBlockEntity.canPlaceItemInContainer(to, stack, slot, side)) {
|
||||
boolean flag = false;
|
||||
@@ -455,7 +455,7 @@ index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a
|
||||
|
||||
if (itemstack1.isEmpty()) {
|
||||
// Spigot start - SPIGOT-6693, InventorySubcontainer#setItem
|
||||
@@ -745,7 +777,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -813,7 +846,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
|
||||
@Override
|
||||
protected void setItems(NonNullList<ItemStack> list) {
|
||||
@@ -468,21 +468,20 @@ index d76603c4172aa10889949c6c2acff05fee02a13d..1378b9ccd2369506cbd24ad1fc12718a
|
||||
|
||||
public static void entityInside(Level world, BlockPos pos, BlockState state, Entity entity, HopperBlockEntity blockEntity) {
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
|
||||
index d559f93a9a09bac414dd5d58afccad42c127f09b..13e749a3c40f0b2cc002f13675a9a56eedbefdac 100644
|
||||
index 79b01e32f89defb6b78f4764600d33d4945af592..6d62cc8fb347ccafd51df05896e616995990f005 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
|
||||
@@ -96,13 +96,8 @@ public abstract class RandomizableContainerBlockEntity extends BaseContainerBloc
|
||||
@@ -97,12 +97,7 @@ public abstract class RandomizableContainerBlockEntity extends BaseContainerBloc
|
||||
public boolean isEmpty() {
|
||||
this.unpackLootTable((Player)null);
|
||||
// Paper start
|
||||
- for (ItemStack itemStack : this.getItems()) {
|
||||
- for (final ItemStack itemStack : this.getItems()) {
|
||||
- if (!itemStack.isEmpty()) {
|
||||
- return false;
|
||||
- }
|
||||
- }
|
||||
- return true;
|
||||
+ return this.isCompletelyEmpty(null); // Pufferfish - use super
|
||||
// Paper end
|
||||
- return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -5,20 +5,20 @@ Subject: [PATCH] Better checking for useless move packets
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||
index 190e9761087baec5827d722a8281f0ffb6798341..50cf4d200bc2892f2140c9929193b4b20ad2bd17 100644
|
||||
index b7fd8e70413c38923d0719aff803449e392383ac..d5cb594f0b17ec9dc1a19cdb99bba553e70171be 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
|
||||
@@ -170,6 +170,7 @@ public class ServerEntity {
|
||||
boolean flag4 = k < -32768L || k > 32767L || l < -32768L || l > 32767L || i1 < -32768L || i1 > 32767L;
|
||||
@@ -185,6 +185,7 @@ public class ServerEntity {
|
||||
boolean flag6 = k < -32768L || k > 32767L || l < -32768L || l > 32767L || i1 < -32768L || i1 > 32767L;
|
||||
|
||||
if (!flag4 && this.teleportDelay <= 400 && !this.wasRiding && this.wasOnGround == this.entity.isOnGround() && !(io.papermc.paper.configuration.GlobalConfiguration.get().collisions.sendFullPosForHardCollidingEntities && this.entity.hardCollides())) { // Paper - send full pos for hard colliding entities to prevent collision problems due to desync
|
||||
if (!flag6 && this.teleportDelay <= 400 && !this.wasRiding && this.wasOnGround == this.entity.isOnGround() && !(io.papermc.paper.configuration.GlobalConfiguration.get().collisions.sendFullPosForHardCollidingEntities && this.entity.hardCollides())) { // Paper - send full pos for hard colliding entities to prevent collision problems due to desync
|
||||
+ if (flag2 || flag3 || this.entity instanceof AbstractArrow) { // Pufferfish
|
||||
if ((!flag2 || !flag3) && !(this.entity instanceof AbstractArrow)) {
|
||||
if (flag2) {
|
||||
packet1 = new ClientboundMoveEntityPacket.Pos(this.entity.getId(), (short) ((int) k), (short) ((int) l), (short) ((int) i1), this.entity.isOnGround());
|
||||
@@ -179,6 +180,7 @@ public class ServerEntity {
|
||||
} else {
|
||||
packet1 = new ClientboundMoveEntityPacket.PosRot(this.entity.getId(), (short) ((int) k), (short) ((int) l), (short) ((int) i1), (byte) i, (byte) j, this.entity.isOnGround());
|
||||
@@ -198,6 +199,7 @@ public class ServerEntity {
|
||||
flag4 = true;
|
||||
flag5 = true;
|
||||
}
|
||||
+ } // Pufferfish
|
||||
} else {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Patch Paper to use fast item merge raytracing
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
index f0ccdfbd7d7be8c6e302609accf8fe9cac8885c4..c58496c84b2b3f86890050813041fa49711f3a01 100644
|
||||
index d47b3ac633e7936d30abfda6fc46c2c7412d76fe..453f0f7042bdf204db73be139aa36f211c5455e7 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
|
||||
@@ -255,10 +255,16 @@ public class ItemEntity extends Entity {
|
||||
@@ -264,10 +264,16 @@ public class ItemEntity extends Entity implements TraceableEntity {
|
||||
if (entityitem.isMergable()) {
|
||||
// Paper Start - Fix items merging through walls
|
||||
if (this.level.paperConfig().fixes.fixItemsMergingThroughWalls) {
|
||||
|
||||
@@ -130,7 +130,7 @@ index 0000000000000000000000000000000000000000..a7f297ebb569f7c1f205e967ca485be7
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/biome/Biome.java b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||
index ca259e278ad10347567c021376abca0287610432..021f7c44285b13a0904c09ea7210f2a5d10c7c61 100644
|
||||
index 65012a12e1430956ef55ced56773e6354ac26444..ed439b7e94646141c93a7dd3704d1cdeb5c27e16 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||
@@ -66,14 +66,20 @@ public final class Biome {
|
||||
@@ -155,7 +155,7 @@ index ca259e278ad10347567c021376abca0287610432..021f7c44285b13a0904c09ea7210f2a5
|
||||
});
|
||||
});
|
||||
|
||||
@@ -114,17 +120,15 @@ public final class Biome {
|
||||
@@ -118,17 +124,15 @@ public final class Biome {
|
||||
@Deprecated
|
||||
public float getTemperature(BlockPos blockPos) {
|
||||
long l = blockPos.asLong();
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Ensure level height is inlined
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index e737f67c7482f5245fe34413ac2583739c5b744c..e78a322ee9d1d57c1db57a1899d39a266abddec5 100644
|
||||
index c9854b28be7cd9a533e2775c7363d2d33c7f06a4..46da2e103b2a661b9047278cce92aecfc3ae2981 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -272,6 +272,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -276,6 +276,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
protected final io.papermc.paper.util.math.ThreadUnsafeRandom randomTickRandom = new io.papermc.paper.util.math.ThreadUnsafeRandom(java.util.concurrent.ThreadLocalRandom.current().nextLong()); // Pufferfish - move thread unsafe random initialization
|
||||
|
||||
@@ -21,10 +21,10 @@ index e737f67c7482f5245fe34413ac2583739c5b744c..e78a322ee9d1d57c1db57a1899d39a26
|
||||
+ @Override public final int getHeight() { return this.height; }
|
||||
+ // Pufferfish end
|
||||
+
|
||||
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, 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, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||
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, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper
|
||||
@@ -294,6 +303,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -298,6 +307,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
});
|
||||
final DimensionType dimensionmanager = (DimensionType) holder.value();
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Use thread unsafe random for mob spawning
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index e78a322ee9d1d57c1db57a1899d39a266abddec5..6272a0ffc321bc672ce1c3c94b52253fc07751a2 100644
|
||||
index 46da2e103b2a661b9047278cce92aecfc3ae2981..6884b646fdbeb0e54be4ab221c11a63854a41a37 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -270,7 +270,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -274,7 +274,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||
|
||||
@@ -18,7 +18,7 @@ index e78a322ee9d1d57c1db57a1899d39a266abddec5..6272a0ffc321bc672ce1c3c94b52253f
|
||||
// Pufferfish start - ensure these get inlined
|
||||
private final int minBuildHeight, minSection, height, maxBuildHeight, maxSection;
|
||||
diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||
index 01b21f520ef1c834b9bafc3de85c1fa4fcf539d6..5521418fa307b3eeb4f02a10c39f05b360d1d06e 100644
|
||||
index 15d266fc97eb73338f4f6fb2cfe25d6861e79810..6180679d922ea61d05d452971ec2d506a724d3c3 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||
@@ -417,12 +417,12 @@ public final class NaturalSpawner {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Remove streams and iterators from range check
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
index 7aa247fd9dabe79d7b7f0b18a6f82ac926440c70..d939b1e3bc101e66bc1019cf49d8079665dadfcc 100644
|
||||
index 02abc76333e8244cfcaa052a7df948b68079559a..3ce4dbf4eed442d89d6bbc8e4c6a000172041da5 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
|
||||
@@ -1624,8 +1624,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
@@ -1637,8 +1637,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance);
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ index 7aa247fd9dabe79d7b7f0b18a6f82ac926440c70..d939b1e3bc101e66bc1019cf49d80796
|
||||
Iterator iterator = this.entity.getIndirectPassengers().iterator();
|
||||
|
||||
while (iterator.hasNext()) {
|
||||
@@ -1637,6 +1657,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
@@ -1650,6 +1670,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
|
||||
i = j;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,10 +7,10 @@ This results in a 3% improvement at 20,000 entities, but more
|
||||
importantly is the heaviest part of the entity tracker currently.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 7bdf545f4c1065ba9d94dfd878af0d91fb51c417..69e0c2a4253e0ba16a78815167ca5496005ba3d1 100644
|
||||
index 3abe1bb84359f9b0c57ac484d0031a1b23510f38..9b6c55f37915e2750bb87b7e9602cda020f035e4 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -493,17 +493,36 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -494,17 +494,36 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
this.isLegacyTrackingEntity = isLegacyTrackingEntity;
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ index 7bdf545f4c1065ba9d94dfd878af0d91fb51c417..69e0c2a4253e0ba16a78815167ca5496
|
||||
for (Entity passenger : passengers) {
|
||||
org.spigotmc.TrackingRange.TrackingRangeType passengerType = passenger.trackingRangeType;
|
||||
int passengerRange = chunkMap.getEntityTrackerRange(passengerType.ordinal());
|
||||
@@ -512,6 +531,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -513,6 +532,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
range = passengerRange;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Reduce entity allocations
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 69e0c2a4253e0ba16a78815167ca5496005ba3d1..61d1e4459bc44835092a5cef0b7a8ed27ab40b38 100644
|
||||
index 9b6c55f37915e2750bb87b7e9602cda020f035e4..9f63a4f348a8ba2ae34ee17f0ffc4c754dacb0f1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -417,6 +417,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -418,6 +418,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
// Pufferfish start
|
||||
public boolean activatedPriorityReset = false; // DAB
|
||||
public int activatedPriority = gg.pufferfish.pufferfish.PufferfishConfig.maximumActivationPrio; // golf score
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Remove lambda from ticking guard
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 942e829114d73a12ef43cf972d77fa5a445ebb80..53198ebfa30273c5ddc1bb4324f5174ff99f688d 100644
|
||||
index db05e68407f56675d0a86dc4459cdb2b3b784961..ff2862bf1f511196d1e911e2584262ed728e9a81 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -729,7 +729,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -31,10 +31,10 @@ index 942e829114d73a12ef43cf972d77fa5a445ebb80..53198ebfa30273c5ddc1bb4324f5174f
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 624c3ea027d3b5b19f846e5bdf851e3e5d3a0565..eb0a31c885ea64da00abcd5e67083392138b1ca0 100644
|
||||
index 6884b646fdbeb0e54be4ab221c11a63854a41a37..6aec1983a0236d6aa0507a2b3ad1c08b3330f0fc 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -1022,13 +1022,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1028,13 +1028,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
try {
|
||||
tickConsumer.accept(entity);
|
||||
MinecraftServer.getServer().executeMidTickTasks(); // Paper - execute chunk tasks mid tick
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Reduce entity fluid lookups if no fluids
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index 61d1e4459bc44835092a5cef0b7a8ed27ab40b38..a03ed3eccc0913b7df68bc5920aee6fe65b4676d 100644
|
||||
index 9f63a4f348a8ba2ae34ee17f0ffc4c754dacb0f1..31c92569fe373f256517820babd8f0e0bf1eaa60 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -4120,16 +4120,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -4184,16 +4184,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
}
|
||||
|
||||
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
|
||||
@@ -34,7 +34,7 @@ index 61d1e4459bc44835092a5cef0b7a8ed27ab40b38..a03ed3eccc0913b7df68bc5920aee6fe
|
||||
double d1 = 0.0D;
|
||||
boolean flag = this.isPushedByFluid();
|
||||
boolean flag1 = false;
|
||||
@@ -4137,14 +4139,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -4201,14 +4203,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
int k1 = 0;
|
||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
|
||||
|
||||
@@ -102,7 +102,7 @@ index 61d1e4459bc44835092a5cef0b7a8ed27ab40b38..a03ed3eccc0913b7df68bc5920aee6fe
|
||||
|
||||
if (d2 >= axisalignedbb.minY) {
|
||||
flag1 = true;
|
||||
@@ -4166,9 +4215,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -4230,9 +4279,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
// CraftBukkit end
|
||||
}
|
||||
}
|
||||
@@ -116,7 +116,7 @@ index 61d1e4459bc44835092a5cef0b7a8ed27ab40b38..a03ed3eccc0913b7df68bc5920aee6fe
|
||||
if (vec3d.length() > 0.0D) {
|
||||
if (k1 > 0) {
|
||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||
index b0c9fce9d4e06cac139e341d218d0b6aac1f1943..f25467ad1c5bac7eaef4b63b2845ad04d7c76e4e 100644
|
||||
index 1b80a91fa36c59a31b57ef7ef4a68eacbb0f17f5..b5e118456af6421ae3f85cb8232dc97a8b2d46b7 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||
@@ -27,6 +27,7 @@ public class LevelChunkSection {
|
||||
|
||||
@@ -23,10 +23,10 @@ index 03ef5e6b578aa1e9391e891d3e005b30925eb5a8..32b1d27550d297c7dfe00e3d91fcda8b
|
||||
public static URI profileWebUrl;
|
||||
private static void profilerOptions() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
index c85f5545e4246c63088b13a5884e74b8f6e00289..94b45579dc371ee980565aed2f5dee78ebd44427 100644
|
||||
index 28268bcfdd4dc21f12d1493c288e2960d483058a..636e601b004a412d02e5be86e97d489b52c28e1b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
@@ -210,11 +210,13 @@ public abstract class Mob extends LivingEntity {
|
||||
@@ -215,11 +215,13 @@ public abstract class Mob extends LivingEntity implements Targeting {
|
||||
return this.lookControl;
|
||||
}
|
||||
|
||||
|
||||
@@ -44,10 +44,10 @@ index 32b1d27550d297c7dfe00e3d91fcda8b752f6279..4a1a0dd4aab35a368185db3e70963539
|
||||
public static boolean throttleInactiveGoalSelectorTick;
|
||||
private static void inactiveGoalSelectorThrottle() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
index a03ed3eccc0913b7df68bc5920aee6fe65b4676d..6a9c0f0b4b749c5907a274d6a83254284d8763bb 100644
|
||||
index 31c92569fe373f256517820babd8f0e0bf1eaa60..8a2429f915da389360dcb16609fef7701b4a863a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -816,6 +816,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
@@ -817,6 +817,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
||||
// CraftBukkit end
|
||||
|
||||
public void baseTick() {
|
||||
@@ -61,10 +61,10 @@ index a03ed3eccc0913b7df68bc5920aee6fe65b4676d..6a9c0f0b4b749c5907a274d6a8325428
|
||||
if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking
|
||||
this.feetBlockState = null;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
index 8ca7181dcf742cf33d4a44387c168eafeadd8da4..4f3708f5f5dcb6af8225bda1cc9204a6d974665f 100644
|
||||
index 559bce4bbcc03117f52dc2810bad5becddf14a8e..8af0918d3a62de58a4b2af55022c812bb0e46092 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/EntityType.java
|
||||
@@ -294,6 +294,7 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
@@ -301,6 +301,7 @@ public class EntityType<T extends Entity> implements FeatureElement, EntityTypeT
|
||||
private final int clientTrackingRange;
|
||||
private final int updateInterval;
|
||||
public boolean dabEnabled = false; // Pufferfish
|
||||
|
||||
@@ -21,10 +21,10 @@ index 4a1a0dd4aab35a368185db3e7096353956e8a93b..e0076044d0a29e33ee297fe6180a0414
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 38886a155a12dca873ad0bf21496ce5d2c79874b..c89e430cfddb431ee1d20e59f8bd60e3a3a952b9 100644
|
||||
index c960dbbf158171ee39a4a407f194c2ee9095559d..24d48fb4a63c2db19c7f957ad2260415fe1db9fe 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2353,6 +2353,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2347,6 +2347,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
}
|
||||
|
||||
private boolean updateChatOrder(Instant timestamp) {
|
||||
|
||||
Reference in new issue
Block a user