mirror of
https://github.com/Samsuik/Sakura.git
synced 2025-12-23 00:39:20 +00:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@850b736 Close PRs opened from orgs or bot accounts (#10281) PaperMC/Paper@54a2340 check if itemstack is stackable first (#10285) PaperMC/Paper@9c4bb0d add rich message component support to configuration (#10225) PaperMC/Paper@8870d22 Fire EntityDamageByEntityEvent for unowned wither skulls patch (#10244) PaperMC/Paper@bbc03d8 improve BanList types (#10239) PaperMC/Paper@ce5c8dd Configurable max block/fluid ticks (#10266) PaperMC/Paper@880fef7 Deprecate extra ban methods with raw BanEntry (#9580) PaperMC/Paper@60218cd Don't tick empty worlds (#9025) PaperMC/Paper@b21eb4d add overloads to use suspicious effect entry to mushroom cow and suspicious stew meta (#10245) PaperMC/Paper@89d51d5 Allow enabling sand duping (#10191) PaperMC/Paper@6ad63fb Per world ticks per spawn settings (#6891)
This commit is contained in:
@@ -2,7 +2,7 @@ group=me.samsuik.sakura
|
||||
version=1.20.4-R0.1-SNAPSHOT
|
||||
|
||||
mcVersion=1.20.4
|
||||
paperRef=681bbff110d9a56152ae898c4dfe1c0356b40e69
|
||||
paperRef=6ad63fba30e7ecd1b11bb8d77e8ed43f0a6e9ce9
|
||||
|
||||
org.gradle.jvmargs=-Xmx2G
|
||||
|
||||
|
||||
@@ -875,7 +875,7 @@ index 68d268b6fff126e8645b6deec3fb549ea2286b77..66eb8a462b472003333bb0af897e7650
|
||||
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 6907d1be36fbdf0856c0e11983218d2fd1f9cb46..46e060bab0a9adb05a9dadff7e0cee9277db9511 100644
|
||||
index bf5e47e8c3706590fdc0731bd9a5858b56d06136..06cfac5c68035f9ac04e879adc9ebaf65bca0350 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -692,7 +692,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -888,7 +888,7 @@ index 6907d1be36fbdf0856c0e11983218d2fd1f9cb46..46e060bab0a9adb05a9dadff7e0cee92
|
||||
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 f476ba6c97944bdffae5aacae2e285d17541f46e..7ea0aee066529720311c0089fc0b5d3bfde901d0 100644
|
||||
index bc89f9e90af3d69872a58c47a4c2545ba91b6ba5..1830fc9bb35f900df389e8886b5355478bf3148c 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -171,6 +171,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -904,7 +904,7 @@ index f476ba6c97944bdffae5aacae2e285d17541f46e..7ea0aee066529720311c0089fc0b5d3b
|
||||
|
||||
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
|
||||
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
|
||||
@@ -207,9 +213,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -216,9 +222,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||
|
||||
@@ -917,7 +917,7 @@ index f476ba6c97944bdffae5aacae2e285d17541f46e..7ea0aee066529720311c0089fc0b5d3b
|
||||
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 b77b2e5a0e90017828b3a7814ca1bff99f763415..6ae1be6e4a52f36eb1d6793f0e4db50455d99e85 100644
|
||||
index af2c7758373ca3ecd53ca185f6730c284e964b26..870da24cb911f1cad20c79cc1bfbf3dc69ed3b83 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1054,6 +1054,7 @@ public final class CraftServer implements Server {
|
||||
|
||||
@@ -391,7 +391,7 @@ index 529ab44baaf573b97cf7e89560c548642733188f..cce8f45c15b9a9acfbf9b769f7670cfd
|
||||
|
||||
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 46e060bab0a9adb05a9dadff7e0cee9277db9511..f217fed953fbb1838a6692ab36018869951ed4e0 100644
|
||||
index 06cfac5c68035f9ac04e879adc9ebaf65bca0350..c6fe91c02be5fe4bdb7bbe278c0522614bd07b10 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1941,7 +1941,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -561,7 +561,7 @@ index 87e5ee042ab2c052d25ab4c2521a68cf2e2d67b6..c47c6347fe666cdd83d71c177e57c7fe
|
||||
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 45439b0cc4ea69e409fd41d4684403c0e0feab12..006cd1fdd4c0f76043609a4b684f7818e21106ac 100644
|
||||
index 51097f1d04d981db2823e8647b546658b8fd27c1..8c246d5bad3f403fabbfe6548396e9f42bb0f720 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -567,6 +567,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
@@ -576,7 +576,7 @@ index 45439b0cc4ea69e409fd41d4684403c0e0feab12..006cd1fdd4c0f76043609a4b684f7818
|
||||
public Entity(EntityType<?> type, Level world) {
|
||||
this.id = Entity.ENTITY_COUNTER.incrementAndGet();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 0aef6a8d51cb1351daaea16022f5cbb27ceaff0d..788915f5e5cf54ee53222ded9939139ea982d306 100644
|
||||
index a52c2fc38fd97ffa1684270443646d605ec35830..4f072853272bedd79bdf53d2a8373d8e0f6fdd29 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -74,6 +74,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -600,10 +600,10 @@ index e712bd07ea2946167782473a536e0c72fab4bccd..2e6691b86e161616bb2dcf5ce0391ad5
|
||||
|
||||
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 28ddb9e74bc131b043f91107483b92531f5fd252..7b800ebae9787979613be845440a7dfa549c98ee 100644
|
||||
index 7a1eb9f7fa60125cc1660d6f9c244101991123d9..56572702d58f6dac38891e9c95979f927280a975 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -219,6 +219,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -228,6 +228,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ 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 006cd1fdd4c0f76043609a4b684f7818e21106ac..a63d1a624df5d84f4e8168cbe075ae3d9bd4ff84 100644
|
||||
index 8c246d5bad3f403fabbfe6548396e9f42bb0f720..effee51898d0d5e70b67fa75cccdd0cafbe18957 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -1253,7 +1253,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
@@ -158,10 +158,10 @@ index 006cd1fdd4c0f76043609a4b684f7818e21106ac..a63d1a624df5d84f4e8168cbe075ae3d
|
||||
|
||||
public final int getBlockX() {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 788915f5e5cf54ee53222ded9939139ea982d306..4e58a786f4c6a4b441e444c41c910b2cd486ee33 100644
|
||||
index 4f072853272bedd79bdf53d2a8373d8e0f6fdd29..91aa2714bae3f8f5d0fb76426b2b8cfc61941f54 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -146,7 +146,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -141,7 +141,7 @@ public class FallingBlockEntity extends Entity {
|
||||
|
||||
++this.time;
|
||||
if (!this.isNoGravity()) {
|
||||
@@ -170,7 +170,7 @@ index 788915f5e5cf54ee53222ded9939139ea982d306..4e58a786f4c6a4b441e444c41c910b2c
|
||||
}
|
||||
|
||||
this.move(MoverType.SELF, this.getDeltaMovement());
|
||||
@@ -191,7 +191,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -181,7 +181,7 @@ public class FallingBlockEntity extends Entity {
|
||||
} else {
|
||||
BlockState iblockdata = this.level().getBlockState(blockposition);
|
||||
|
||||
@@ -179,7 +179,7 @@ index 788915f5e5cf54ee53222ded9939139ea982d306..4e58a786f4c6a4b441e444c41c910b2c
|
||||
if (!iblockdata.is(Blocks.MOVING_PISTON)) {
|
||||
if (!this.cancelDrop) {
|
||||
boolean flag2 = iblockdata.canBeReplaced((BlockPlaceContext) (new DirectionalPlaceContext(this.level(), blockposition, Direction.DOWN, ItemStack.EMPTY, Direction.UP)));
|
||||
@@ -258,7 +258,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -248,7 +248,7 @@ public class FallingBlockEntity extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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 72b1fba4430cb2063b5305ee28758dffed272b8a..552780f56247c0f064c704679e4c2d81e652291b 100644
|
||||
index 7798dc673517ea59635b75b130f3dcd7fa0828ee..f3f5e10c8147f7fa7351daa91b3f410ca36bcf9b 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -584,6 +584,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
@@ -91,10 +91,10 @@ index 72b1fba4430cb2063b5305ee28758dffed272b8a..552780f56247c0f064c704679e4c2d81
|
||||
public Entity(EntityType<?> type, Level world) {
|
||||
this.id = Entity.ENTITY_COUNTER.incrementAndGet();
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 7b800ebae9787979613be845440a7dfa549c98ee..a57ae743a7be1835799d286c8c9d3ea82ed3da3e 100644
|
||||
index 56572702d58f6dac38891e9c95979f927280a975..fb2fa37ba62d9945dfb89efbc5609ecd94cfd6c1 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -1321,6 +1321,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1330,6 +1330,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
public <T extends Entity> void guardEntityTick(Consumer<T> tickConsumer, T entity) {
|
||||
try {
|
||||
|
||||
@@ -181,7 +181,7 @@ index 06af35cba1a7b9c11cade2bcd0cc72c4bc28e56f..f68da3e0168c9462aa05cce11e523b9c
|
||||
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 4bcbf7810b2c1c2067352f44e91187361c41641a..fe8a1ffe9a8030955d41b9324a59eb30db678e27 100644
|
||||
index 976cdac745212847d6b25bdb080f43314560e423..4b524e5b62f3d83c2f1ad750ff4237f5484da586 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -893,6 +893,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -209,7 +209,7 @@ index 4bcbf7810b2c1c2067352f44e91187361c41641a..fe8a1ffe9a8030955d41b9324a59eb30
|
||||
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 552780f56247c0f064c704679e4c2d81e652291b..aaa10bbc8adafa42ce4a14ae426cc7bb78d145c1 100644
|
||||
index f3f5e10c8147f7fa7351daa91b3f410ca36bcf9b..e600bcf392abb5bd40d93f73290c46a2478adb91 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -612,6 +612,108 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
@@ -366,7 +366,7 @@ index 552780f56247c0f064c704679e4c2d81e652291b..aaa10bbc8adafa42ce4a14ae426cc7bb
|
||||
if (this.removalReason == null) {
|
||||
this.removalReason = entity_removalreason;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index b8687b3c6386288609cfb1980da2ee727acae03e..b323b87ef01adcef6f21e4daa9566918bd958a67 100644
|
||||
index 743aac4ba5d08ef3e6b67136bd4919b62411a7a0..7a1cc86185b9f4b6aa82cb2dd92500063b9f0736 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -133,6 +133,59 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -428,8 +428,8 @@ index b8687b3c6386288609cfb1980da2ee727acae03e..b323b87ef01adcef6f21e4daa9566918
|
||||
+
|
||||
@Override
|
||||
public void tick() {
|
||||
// Paper start - fix sand duping
|
||||
@@ -210,6 +263,7 @@ public class FallingBlockEntity extends Entity {
|
||||
if (this.blockState.isAir()) {
|
||||
@@ -200,6 +253,7 @@ public class FallingBlockEntity extends Entity {
|
||||
return;
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -495,10 +495,10 @@ index 90f10473ae441d68333cd497c718a3c982544533..ed0234d6a2718d35af635c4b74243bb2
|
||||
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 a57ae743a7be1835799d286c8c9d3ea82ed3da3e..0ccfae5343c88481d3f8ed5ec9839a5b7fa7f25c 100644
|
||||
index fb2fa37ba62d9945dfb89efbc5609ecd94cfd6c1..c23ae4d49c59cdd49495f6e8ffb7c7d21b016b42 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -220,6 +220,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -229,6 +229,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||
|
||||
public final it.unimi.dsi.fastutil.longs.Long2IntMap minimalTNT = new it.unimi.dsi.fastutil.longs.Long2IntOpenHashMap(); // Sakura - visibility api
|
||||
|
||||
@@ -634,7 +634,7 @@ index f68da3e0168c9462aa05cce11e523b9cefefd7e7..771a23258d55cff17502acbe2341ed39
|
||||
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index fe8a1ffe9a8030955d41b9324a59eb30db678e27..942000dd75d1467ed59063173423bb737021be89 100644
|
||||
index 4b524e5b62f3d83c2f1ad750ff4237f5484da586..0b919f90b649b7e72244f65c5088219fa176fd83 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -1946,6 +1946,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||
@@ -1007,10 +1007,10 @@ 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 0ccfae5343c88481d3f8ed5ec9839a5b7fa7f25c..67ea475db771d09232777b08278c3ba881bec905 100644
|
||||
index c23ae4d49c59cdd49495f6e8ffb7c7d21b016b42..d7bafa6d84f2cf21af5af90260bae1a43221fb2f 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -221,6 +221,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -230,6 +230,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
public final it.unimi.dsi.fastutil.longs.Long2IntMap minimalTNT = new it.unimi.dsi.fastutil.longs.Long2IntOpenHashMap(); // Sakura - visibility api
|
||||
public final me.samsuik.sakura.entity.merge.MergeHistory mergeHistory = new me.samsuik.sakura.entity.merge.MergeHistory(); // Sakura - cannon entity merging
|
||||
@@ -1018,7 +1018,7 @@ index 0ccfae5343c88481d3f8ed5ec9839a5b7fa7f25c..67ea475db771d09232777b08278c3ba8
|
||||
|
||||
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 - create paper world config; Async-Anti-Xray: Pass executor
|
||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||
@@ -1409,7 +1410,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1418,7 +1419,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
}
|
||||
|
||||
Explosion.BlockInteraction explosion_effect1 = explosion_effect;
|
||||
|
||||
@@ -5,7 +5,7 @@ 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 3923ac7ec338956186f33f09d1f1cebebbef8732..d6afc7308698f41760938841967df3706d197082 100644
|
||||
index e600bcf392abb5bd40d93f73290c46a2478adb91..c04db5ed8cc925c1935d3670e2fa0edf70017b5f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -1236,6 +1236,95 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
@@ -201,18 +201,18 @@ index 3923ac7ec338956186f33f09d1f1cebebbef8732..d6afc7308698f41760938841967df370
|
||||
// Paper start - optimise collisions
|
||||
final boolean xZero = movement.x == 0.0;
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 11652215b96f4a0a2be58e5b547a84781731d253..cb216f5f7d5087503ae915915e562b33ccbf7fdd 100644
|
||||
index 7a1cc86185b9f4b6aa82cb2dd92500063b9f0736..0e60e3f694dd4d52ce92290148ff043e834d7c4c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -203,7 +203,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -198,7 +198,7 @@ public class FallingBlockEntity extends Entity {
|
||||
this.addDeltaMovement(0.0D, -0.04D, 0.0D); // Sakura - reduce movement allocations
|
||||
}
|
||||
|
||||
- this.move(MoverType.SELF, this.getDeltaMovement());
|
||||
+ this.moveBasic(MoverType.SELF, this.getDeltaMovement()); // Sakura - optimise simple entity movement
|
||||
// Paper start - fix sand duping
|
||||
if (this.isRemoved()) {
|
||||
return;
|
||||
// Paper start - Configurable falling blocks height nerf
|
||||
if (this.level().paperConfig().fixes.fallingBlockHeightNerf.test(v -> this.getY() > v)) {
|
||||
if (this.dropItem && this.level().getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS)) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java b/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
|
||||
index 2800af98260ebdab107466c596d2ec8cba6088fe..7ff11a09234606508dac8347af281885b0a1f7e1 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/PrimedTnt.java
|
||||
|
||||
@@ -329,10 +329,10 @@ index 8fcaa00e461c7f4413bf655ddd8165a2b908f900..404b99def4562942e036089085a66797
|
||||
if (this.count == 0) {
|
||||
return;
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 67ea475db771d09232777b08278c3ba881bec905..e3bf4a869e97efc7c09fae134f59d948011812e0 100644
|
||||
index d7bafa6d84f2cf21af5af90260bae1a43221fb2f..62916017bde1ea72ebdd75d71d4e98447971cdda 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -223,6 +223,39 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -232,6 +232,39 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
public final me.samsuik.sakura.entity.merge.MergeHistory mergeHistory = new me.samsuik.sakura.entity.merge.MergeHistory(); // Sakura - cannon entity merging
|
||||
public final me.samsuik.sakura.explosion.DensityCache densityCache = new me.samsuik.sakura.explosion.DensityCache(); // Sakura - specialised density cache for swinging explosions
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Despawn falling blocks inside moving pistons
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 9c41177ed25a93f7aff8795fc56a0a478903630e..5ff54673066dd26b4eed5c5f86cfd1c0f4190bf3 100644
|
||||
index 8ee503cb9cee4984a6fbb79e486c5e730c46e125..60d7ffebb2fa4e39d5ba0033c746e85ff4b97727 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -242,7 +242,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -232,7 +232,7 @@ public class FallingBlockEntity extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -163,10 +163,10 @@ index f7b2ebc636b8f01654ac917e2b9c4aa590454a8c..08c7109b0bb613388b5a98a5d312b4ba
|
||||
Entity sourceEntity = this.source == null ? null : this.source;
|
||||
BlockPos sourceBlock = sourceEntity == null ? BlockPos.containing(this.x, this.y, this.z) : null;
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 5316c8802111ea969334a075e542437eabe89f04..403d12ecd56d7ed56b19bbdafcbcf33c06c13679 100644
|
||||
index 62916017bde1ea72ebdd75d71d4e98447971cdda..0ca2c48c3922f67d5ff2a50e15e86c44aae8e3f9 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -222,6 +222,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -231,6 +231,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
public final it.unimi.dsi.fastutil.longs.Long2IntMap minimalTNT = new it.unimi.dsi.fastutil.longs.Long2IntOpenHashMap(); // Sakura - visibility api
|
||||
public final me.samsuik.sakura.entity.merge.MergeHistory mergeHistory = new me.samsuik.sakura.entity.merge.MergeHistory(); // Sakura - cannon entity merging
|
||||
public final me.samsuik.sakura.explosion.DensityCache densityCache = new me.samsuik.sakura.explosion.DensityCache(); // Sakura - specialised density cache for swinging explosions
|
||||
|
||||
@@ -353,10 +353,10 @@ index a3aa2c38169de2636f2e2a1c352e618959c4ac7a..c24fc4df2c835267160dc8355419904a
|
||||
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 403d12ecd56d7ed56b19bbdafcbcf33c06c13679..96d67bae33543b90013c6cd312f01f5ab98ff5ab 100644
|
||||
index 0ca2c48c3922f67d5ff2a50e15e86c44aae8e3f9..1db7ce24a7459b5509d2f420ed56f3b3b2c1ffe8 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -223,6 +223,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -232,6 +232,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
public final me.samsuik.sakura.entity.merge.MergeHistory mergeHistory = new me.samsuik.sakura.entity.merge.MergeHistory(); // Sakura - cannon entity merging
|
||||
public final me.samsuik.sakura.explosion.DensityCache densityCache = new me.samsuik.sakura.explosion.DensityCache(); // Sakura - specialised density cache for swinging explosions
|
||||
public final me.samsuik.sakura.explosion.durable.DurableBlockManager durabilityManager = new me.samsuik.sakura.explosion.durable.DurableBlockManager(); // Sakura - explosion durable blocks
|
||||
@@ -364,7 +364,7 @@ index 403d12ecd56d7ed56b19bbdafcbcf33c06c13679..96d67bae33543b90013c6cd312f01f5a
|
||||
|
||||
// Sakura start - add entity retrival methods with search limits
|
||||
public void getLimitedEntities(Entity except, AABB box, Predicate<? super Entity> predicate, List<Entity> into, int limit, int search) {
|
||||
@@ -1000,6 +1001,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -1009,6 +1010,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
} else {
|
||||
BlockState iblockdata2 = this.getBlockState(pos);
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Falling Block Stacking Restrictions
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 7cce7ef607358f0e4ee154c2684dc4ad065d9512..90e33d8217aa8f570d9b68c638f3e71adc2018d6 100644
|
||||
index 60d7ffebb2fa4e39d5ba0033c746e85ff4b97727..2c51b5f927fc08b5077bd0e58b08ce2acbb0331a 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -260,7 +260,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -250,7 +250,7 @@ public class FallingBlockEntity extends Entity {
|
||||
boolean flag3 = FallingBlock.isFree(this.level().getBlockState(blockposition.below())) && (!flag || !flag1);
|
||||
boolean flag4 = this.blockState.canSurvive(this.level(), blockposition) && !flag3;
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ index fbdd4c4ec21cff4c9651402a9e94dd99996723e1..0dd7b5dcb59e9eee2af769cc0989d30c
|
||||
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 432601bc7a33a0da2034b3032e827fbdce8f6b6e..d0a70a1035aa7b24879b16d6e85adb834685fb1e 100644
|
||||
index e682b52c6f295506f25223950e73188ed5eb4e1a..4c8ef097735020642811decc2e9122dd6373d2df 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||
@@ -380,7 +380,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
|
||||
@@ -226,7 +226,7 @@ index 432601bc7a33a0da2034b3032e827fbdce8f6b6e..d0a70a1035aa7b24879b16d6e85adb83
|
||||
if (this.level().hasChunksAt(blockposition, blockposition1)) {
|
||||
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 642cfdfa8fe31aa5e0a6a60a5852df3dd11054e7..222fb210f97e9bc06cfd9431d297dcdb10fc6e1e 100644
|
||||
index 2c51b5f927fc08b5077bd0e58b08ce2acbb0331a..f22b2c52aaeab6757b4a50accb8fb6c66ffd1c1f 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -90,6 +90,8 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -299,7 +299,7 @@ index 642cfdfa8fe31aa5e0a6a60a5852df3dd11054e7..222fb210f97e9bc06cfd9431d297dcdb
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
@@ -206,9 +249,16 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -201,9 +244,16 @@ public class FallingBlockEntity extends Entity {
|
||||
} else {
|
||||
Block block = this.blockState.getBlock();
|
||||
|
||||
@@ -317,7 +317,7 @@ index 642cfdfa8fe31aa5e0a6a60a5852df3dd11054e7..222fb210f97e9bc06cfd9431d297dcdb
|
||||
}
|
||||
|
||||
this.moveBasic(MoverType.SELF, this.getDeltaMovement()); // Sakura - optimise simple entity movement
|
||||
@@ -227,8 +277,16 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -217,8 +267,16 @@ public class FallingBlockEntity extends Entity {
|
||||
return;
|
||||
}
|
||||
// Paper end - Configurable falling blocks height nerf
|
||||
@@ -335,7 +335,7 @@ index 642cfdfa8fe31aa5e0a6a60a5852df3dd11054e7..222fb210f97e9bc06cfd9431d297dcdb
|
||||
boolean flag = this.blockState.getBlock() instanceof ConcretePowderBlock;
|
||||
boolean flag1 = flag && this.level().getFluidState(blockposition).is(FluidTags.WATER);
|
||||
double d0 = this.getDeltaMovement().lengthSqr();
|
||||
@@ -253,8 +311,11 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -243,8 +301,11 @@ public class FallingBlockEntity extends Entity {
|
||||
} else {
|
||||
BlockState iblockdata = this.level().getBlockState(blockposition);
|
||||
|
||||
@@ -349,7 +349,7 @@ index 642cfdfa8fe31aa5e0a6a60a5852df3dd11054e7..222fb210f97e9bc06cfd9431d297dcdb
|
||||
if (!this.cancelDrop) {
|
||||
boolean flag2 = iblockdata.canBeReplaced((BlockPlaceContext) (new DirectionalPlaceContext(this.level(), blockposition, Direction.DOWN, ItemStack.EMPTY, Direction.UP)));
|
||||
boolean flag3 = FallingBlock.isFree(this.level().getBlockState(blockposition.below())) && (!flag || !flag1);
|
||||
@@ -321,7 +382,12 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -311,7 +372,12 @@ public class FallingBlockEntity extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -544,10 +544,10 @@ index e09d159007922d29a2cdc1b2597a52c16958b819..e10a78213da1514f54e0659960f76338
|
||||
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 8dc99872cf778a784e81a54abefa73a4f25e2a49..db433c73df018e5953053041f058291f42ebb8ec 100644
|
||||
index 1db7ce24a7459b5509d2f420ed56f3b3b2c1ffe8..a93e22d81939cc7fa3247550da91bb39e6d5b111 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -257,6 +257,205 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -266,6 +266,205 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
return this.getLimitedEntities(except, box, net.minecraft.world.entity.EntitySelector.NO_SPECTATORS, limit, search);
|
||||
}
|
||||
// Sakura end - add entity retrival methods with search limits
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configure concrete solidifying in water
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 222fb210f97e9bc06cfd9431d297dcdb10fc6e1e..14914d0e96f6640e8dd52dd40b98d30b68a1034f 100644
|
||||
index f22b2c52aaeab6757b4a50accb8fb6c66ffd1c1f..bf6281dabd78fdfaf9dc1a036c9a2193a03fdb5c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -287,7 +287,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -277,7 +277,7 @@ public class FallingBlockEntity extends Entity {
|
||||
BlockPos blockposition = this.physics.before(1_17_0) ? this.patchedBlockPosition() : this.blockPosition();
|
||||
// Sakura end - physics version api
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Fix paper findSupportingBlock not updating last chunk
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index e4783deff8eafdb6e84bbe8e5f636dd5f4ad10d8..20ca6517a15e755b2faf0e1892e5a33b0210ae31 100644
|
||||
index a93e22d81939cc7fa3247550da91bb39e6d5b111..798c817dd75615458a60c3063174ad7da175eb51 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -887,6 +887,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -896,6 +896,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
|
||||
if (chunkDiff != 0) {
|
||||
lastChunk = chunkProvider.getChunkAtIfLoadedImmediately(newChunkX, newChunkZ);
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Fix doEntityDrops gamerule preventing falling blocks from
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 14914d0e96f6640e8dd52dd40b98d30b68a1034f..c0f8f8b7c7159fb43497376152d16441c3491721 100644
|
||||
index bf6281dabd78fdfaf9dc1a036c9a2193a03fdb5c..f2fbe8f7015a6614e0fec4f59e16cfbecb0cbc55 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -362,10 +362,14 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -352,10 +352,14 @@ public class FallingBlockEntity extends Entity {
|
||||
tileentity.setChanged();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user