9
0
mirror of https://github.com/Dreeam-qwq/Gale.git synced 2025-12-23 08:49:28 +00:00

Updated Upstream (Paper)

This commit is contained in:
Dreeam
2024-03-06 07:14:37 -05:00
parent 84c9345252
commit 377da10d2e
101 changed files with 297 additions and 371 deletions

View File

@@ -2,7 +2,7 @@ group=org.galemc.gale
version=1.20.4-R0.1-SNAPSHOT
mcVersion=1.20.4
paperRef=4939f8711884901ddf1c56337f606de71cdae78d
paperRef=6ad63fba30e7ecd1b11bb8d77e8ed43f0a6e9ce9
org.gradle.caching=true
org.gradle.parallel=true

View File

@@ -13,10 +13,10 @@ As part of: Paper (https://github.com/PaperMC/Paper)
Licensed under: MIT (https://opensource.org/licenses/MIT)
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index b4f8281d3797ec825a7671f38077cd65d5a1d76e..f77cc88aebcd51ad84d6e2bed2c09f6a2055ef64 100644
index 0eb61b090d6f8fa6d99735ff3680dac774c52c1f..0d443f469142766a1b6959d88930786e899b4aae 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -2212,6 +2212,15 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -2227,6 +2227,15 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
{
throw new UnsupportedOperationException("Not supported yet.");
}

View File

@@ -37,10 +37,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 254a02ddb5dc867c9dd6c2086791f7ab94247fd3..ad21ca6e9a2e77da185950a34f114480dddddec0 100644
index c6cb4f17469a8f2e60dd3e28d41402851ce5fb21..019237c2e536a118f7cd3d81fc59b74f21c34609 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2030,6 +2030,16 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -2054,6 +2054,16 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
boolean listPlayer(@NotNull Player other);
// Paper end

View File

@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index ca27559cf4aa1c2e44fdca2022e213b1b1c80f4e..b1172900c85b4cf82dbf30e38e983f52e253b7cc 100644
index db46e3233edf18bd91a6da8612ccc9f0080d5c17..7e040ac2228e12c32a563a3c9325d55e6d91828e 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -2335,6 +2335,37 @@ public final class Bukkit {
@@ -2351,6 +2351,37 @@ public final class Bukkit {
return server.getTPS();
}
@@ -49,10 +49,10 @@ index ca27559cf4aa1c2e44fdca2022e213b1b1c80f4e..b1172900c85b4cf82dbf30e38e983f52
* Get a sample of the servers last tick times (in nanos)
*
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index f77cc88aebcd51ad84d6e2bed2c09f6a2055ef64..364bbd8f0974e79ad876b2bf2218ef5a16836603 100644
index 0d443f469142766a1b6959d88930786e899b4aae..7ad9c543f8caf909f9548e2c549f29cf69407a29 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1994,6 +1994,31 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -2009,6 +2009,31 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@NotNull
public double[] getTPS();

View File

@@ -37,10 +37,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index b1172900c85b4cf82dbf30e38e983f52e253b7cc..e2faf638db7625164cdd84c1e4348d0c2b4dcfc3 100644
index 7e040ac2228e12c32a563a3c9325d55e6d91828e..2bff9e833c74f416b90bf9d2894117d91d2073c5 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -2335,8 +2335,30 @@ public final class Bukkit {
@@ -2351,8 +2351,30 @@ public final class Bukkit {
return server.getTPS();
}
@@ -72,10 +72,10 @@ index b1172900c85b4cf82dbf30e38e983f52e253b7cc..e2faf638db7625164cdd84c1e4348d0c
* Gets the average server TPS over the last 1 minute
*
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 364bbd8f0974e79ad876b2bf2218ef5a16836603..694c7068742d3bf7184893927da0bd56d83e991c 100644
index 7ad9c543f8caf909f9548e2c549f29cf69407a29..0c88ec1eba01cf07d87dbb0c66a1848597116692 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1994,8 +1994,27 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -2009,8 +2009,27 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@NotNull
public double[] getTPS();

View File

@@ -23,10 +23,10 @@ The above copyright notice and this permission notice shall be included in all c
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index e2faf638db7625164cdd84c1e4348d0c2b4dcfc3..77696b5505e9c05753ec95050ec55878794fcf7c 100644
index 2bff9e833c74f416b90bf9d2894117d91d2073c5..12412ffbfa05f91d46509a90fe3af7085349eb63 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -2911,6 +2911,20 @@ public final class Bukkit {
@@ -2927,6 +2927,20 @@ public final class Bukkit {
}
// Paper end - Folia region threading API
@@ -48,10 +48,10 @@ index e2faf638db7625164cdd84c1e4348d0c2b4dcfc3..77696b5505e9c05753ec95050ec55878
public static Server.Spigot spigot() {
return server.spigot();
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 694c7068742d3bf7184893927da0bd56d83e991c..6b7584082a12903184add379c3b1dddfcff015fc 100644
index 0c88ec1eba01cf07d87dbb0c66a1848597116692..bb73389fd8ffcc2fb89ece44e7704f87baa3058e 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -2550,4 +2550,30 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
@@ -2565,4 +2565,30 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
*/
boolean isOwnedByCurrentRegion(@NotNull Entity entity);
// Paper end - Folia region threading API

View File

@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/build.gradle.kts b/build.gradle.kts
index 79ead96666c1cb1e3639641e1636c2bb7096706a..e5b40a8da24f39391110291fe6c9bdfb82e933c8 100644
index b86398b20a38a1d06b44f328f191b44f73553aeb..4d5c2cbb26c97ac11d4908a1d734c421a06b1ba8 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -64,6 +64,16 @@ dependencies {
@@ -65,6 +65,16 @@ dependencies {
}
val craftbukkitPackageVersion = "1_20_R3" // Paper

View File

@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/build.gradle.kts b/build.gradle.kts
index e5b40a8da24f39391110291fe6c9bdfb82e933c8..d74cae963bf52a7a65a11540b527d49c017ebb3c 100644
index 4d5c2cbb26c97ac11d4908a1d734c421a06b1ba8..a5f1f49ed6b92e68e52b8e08b32bd0b4893a6a3c 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -194,6 +194,7 @@ fun TaskContainer.registerRunTask(
@@ -195,6 +195,7 @@ fun TaskContainer.registerRunTask(
val memoryGb = providers.gradleProperty("paper.runMemoryGb").getOrElse("2")
minHeapSize = "${memoryGb}G"
maxHeapSize = "${memoryGb}G"

View File

@@ -221,10 +221,10 @@ index 94a9ed024d3859793618152ea559a168bbcbb5e2..e60008693e017bec1b4eb49c84be3898
-<http://www.gnu.org/philosophy/why-not-lgpl.html>.
+<https://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/build.gradle.kts b/build.gradle.kts
index d74cae963bf52a7a65a11540b527d49c017ebb3c..dee43c516c6c09c4d3e2ef7595d8e5f1e4866e55 100644
index a5f1f49ed6b92e68e52b8e08b32bd0b4893a6a3c..b0dc9ee8808e0eb84969d0f59f83f3d2ab49d083 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -86,7 +86,7 @@ tasks.jar {
@@ -87,7 +87,7 @@ tasks.jar {
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
@@ -233,7 +233,7 @@ index d74cae963bf52a7a65a11540b527d49c017ebb3c..dee43c516c6c09c4d3e2ef7595d8e5f1
"Implementation-Vendor" to date, // Paper
"Specification-Title" to "Bukkit",
"Specification-Version" to project.version,
@@ -231,3 +231,22 @@ tasks.registerRunTask("runDev") {
@@ -232,3 +232,22 @@ tasks.registerRunTask("runDev") {
classpath(runtimeClasspathForRunDev)
jvmArgs("-DPaper.isRunDev=true")
}
@@ -455,7 +455,7 @@ index d06185566b447c432d4dc2e3ba04d121bcdbc71b..e909e960005c512c42c7b8643e8f9241
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 9f7ed337463cc9bb370a5541d9de5cd8f9c1a78a..0c1419478dc5bd74a89a23fcefa9ac6222986c3a 100644
index c490a29bcf7410bc54959ee71375605964379ed5..af7206ac02397971acc1505f76c666327cdae8b3 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -266,7 +266,7 @@ import javax.annotation.Nullable; // Paper

View File

@@ -325,7 +325,7 @@ index 68d268b6fff126e8645b6deec3fb549ea2286b77..1243b375d2cbdf224fe174e75d427392
if (this.convertOldUsers()) {
this.getProfileCache().save(false); // Paper
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 6934e9dac0d69c043b73b7c46d59f2d39b37c67f..3267978df4039d7b5096eee486d56345d619606d 100644
index bf5e47e8c3706590fdc0731bd9a5858b56d06136..675d2a1a19296e7390ffc92edb6d071925e51647 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -134,12 +134,10 @@ import net.minecraft.world.level.chunk.storage.EntityStorage;
@@ -351,7 +351,7 @@ index 6934e9dac0d69c043b73b7c46d59f2d39b37c67f..3267978df4039d7b5096eee486d56345
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 19f23a6c8fb5c02843c27fb8a242ec9d0d1b538b..c7abd433e70a6479fc81e5bce94144c9479eb372 100644
index bc89f9e90af3d69872a58c47a4c2545ba91b6ba5..2161664f96bf130d6ca690be47dc7f3ff3a84cd0 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -12,7 +12,6 @@ import java.util.function.Supplier;
@@ -403,7 +403,7 @@ index 19f23a6c8fb5c02843c27fb8a242ec9d0d1b538b..c7abd433e70a6479fc81e5bce94144c9
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
@@ -207,9 +208,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -216,9 +217,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public abstract ResourceKey<LevelStem> getTypeKey();
@@ -416,7 +416,7 @@ index 19f23a6c8fb5c02843c27fb8a242ec9d0d1b538b..c7abd433e70a6479fc81e5bce94144c9
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 0c1419478dc5bd74a89a23fcefa9ac6222986c3a..8b3f630fddb1cd7f87664711532bde8bb78d9c90 100644
index af7206ac02397971acc1505f76c666327cdae8b3..a3d3b36644f583c31df1a7b8814f3920615fd54b 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 {
@@ -427,7 +427,7 @@ index 0c1419478dc5bd74a89a23fcefa9ac6222986c3a..8b3f630fddb1cd7f87664711532bde8b
for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
@@ -3013,6 +3014,14 @@ public final class CraftServer implements Server {
@@ -3028,6 +3029,14 @@ public final class CraftServer implements Server {
return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console);
}

View File

@@ -599,7 +599,7 @@ index df0c15f6b5b2224d53e4f8fad42b9a1e5f33dc25..caa6dcfec13728863dcf21f9f778665b
}
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 5a7278b093e37b95fb005ad5cc3cac90ac36f8fb..f07a0008387c18dae5b133b90ed291b364428d02 100644
index 12109446fc76a39faee6cda042ca48b3fd3809f4..410818842f1029ddbe19a84d85ad20c80f681cf6 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -68,7 +68,6 @@ import net.minecraft.server.level.progress.ChunkProgressListener;
@@ -756,7 +756,7 @@ index 366c0c9b45a819f7f94ebe3e49b8ab7f9edf9ce7..20ec10b843f90d2077f49d293d65fa6e
}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3267978df4039d7b5096eee486d56345d619606d..2de2c2c09a57f46a7c7ff9603f57c104d5a911d9 100644
index 675d2a1a19296e7390ffc92edb6d071925e51647..8ffd3b1193233040013e435f26f3a3768c7ad8fd 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -78,7 +78,6 @@ import net.minecraft.util.Mth;
@@ -814,9 +814,9 @@ index 3267978df4039d7b5096eee486d56345d619606d..2de2c2c09a57f46a7c7ff9603f57c104
if (!this.isDebug() && flag) {
j = this.getGameTime();
- gameprofilerfiller.push("blockTicks");
this.blockTicks.tick(j, 65536, this::tickBlock);
this.blockTicks.tick(j, paperConfig().environment.maxBlockTicks, this::tickBlock); // Paper - configurable max block ticks
- gameprofilerfiller.popPush("fluidTicks");
this.fluidTicks.tick(j, 65536, this::tickFluid);
this.fluidTicks.tick(j, paperConfig().environment.maxFluidTicks, this::tickFluid); // Paper - configurable max fluid ticks
- gameprofilerfiller.pop();
}
this.timings.scheduledBlocks.stopTiming(); // Paper
@@ -841,7 +841,7 @@ index 3267978df4039d7b5096eee486d56345d619606d..2de2c2c09a57f46a7c7ff9603f57c104
this.handlingTick = false;
- gameprofilerfiller.pop();
boolean flag1 = true || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players
boolean flag1 = !paperConfig().unsupportedSettings.disableWorldTickingWhenEmpty || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players // Paper - restore this
if (flag1) {
@@ -881,12 +870,9 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1096,10 +1096,10 @@ index 7ab57748b2f2aea1003d9b7e70e76c372aa1e432..47e75ec4a01f8a456ec6ebc13031c1f0
}
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c4301371ec1f82 100644
index 51097f1d04d981db2823e8647b546658b8fd27c1..7b1a9b21b7f72964f9157bf02e8dbcd57785cbfb 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -820,7 +820,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -833,7 +833,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// CraftBukkit end
public void baseTick() {
@@ -1107,7 +1107,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Prevent entity loading causing async lookups
this.feetBlockState = null;
if (this.isPassenger() && this.getVehicle().isRemoved()) {
@@ -881,7 +880,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -894,7 +893,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
this.firstTick = false;
@@ -1115,7 +1115,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
}
public void setSharedFlagOnFire(boolean onFire) {
@@ -1100,7 +1098,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1113,7 +1111,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
}
@@ -1123,7 +1123,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
if (this.stuckSpeedMultiplier.lengthSqr() > 1.0E-7D) {
movement = movement.multiply(this.stuckSpeedMultiplier);
this.stuckSpeedMultiplier = Vec3.ZERO;
@@ -1109,7 +1106,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1122,7 +1119,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// Paper start - ignore movement changes while inactive.
if (isTemporarilyActive && !(this instanceof ItemEntity || this instanceof net.minecraft.world.entity.vehicle.AbstractMinecart) && movement == getDeltaMovement() && movementType == MoverType.SELF) {
setDeltaMovement(Vec3.ZERO);
@@ -1131,7 +1131,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
return;
}
// Paper end
@@ -1130,8 +1126,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1143,8 +1139,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.setPos(this.getX() + vec3d1.x, this.getY() + vec3d1.y, this.getZ() + vec3d1.z);
}
@@ -1140,7 +1140,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
boolean flag = !Mth.equal(movement.x, vec3d1.x);
boolean flag1 = !Mth.equal(movement.z, vec3d1.z);
@@ -1149,9 +1143,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1162,9 +1156,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
BlockState iblockdata = this.level().getBlockState(blockposition);
this.checkFallDamage(vec3d1.y, this.onGround(), iblockdata, blockposition);
@@ -1151,7 +1151,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
if (this.horizontalCollision) {
Vec3 vec3d2 = this.getDeltaMovement();
@@ -1287,8 +1279,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1300,8 +1292,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (this.isOnFire() && (this.isInPowderSnow || this.isInWaterRainOrBubble())) {
this.setRemainingFireTicks(-this.getFireImmuneTicks());
}
@@ -1160,7 +1160,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
}
}
// Paper start - detailed watchdog information
@@ -3143,7 +3133,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3159,7 +3149,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
ServerLevel worldserver1 = minecraftserver.getLevel(resourcekey);
if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit
@@ -1168,7 +1168,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
this.portalTime = i;
// Paper start - Add EntityPortalReadyEvent
io.papermc.paper.event.entity.EntityPortalReadyEvent event = new io.papermc.paper.event.entity.EntityPortalReadyEvent(this.getBukkitEntity(), worldserver1 == null ? null : worldserver1.getWorld(), org.bukkit.PortalType.NETHER);
@@ -3161,7 +3150,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3177,7 +3166,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
} // Paper - Add EntityPortalReadyEvent
// CraftBukkit end
@@ -1176,7 +1176,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
}
this.isInsidePortal = false;
@@ -3635,14 +3623,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3651,14 +3639,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
// Paper end - Fix item duplication and teleport issues
if (this.level() instanceof ServerLevel && !this.isRemoved()) {
@@ -1191,7 +1191,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
PortalInfo shapedetectorshape = (location == null) ? this.findDimensionEntryPoint(worldserver) : new PortalInfo(new Vec3(location.x(), location.y(), location.z()), Vec3.ZERO, this.yRot, this.xRot, worldserver, null); // CraftBukkit
if (shapedetectorshape == null) {
@@ -3681,7 +3667,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3697,7 +3683,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.unRide();
// CraftBukkit end
@@ -1199,7 +1199,7 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
// Paper start - Fix item duplication and teleport issues
if (this instanceof Mob) {
((Mob) this).dropLeash(true, true); // Paper drop lead
@@ -3708,10 +3693,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3724,10 +3709,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
this.removeAfterChangingDimensions();
@@ -1211,10 +1211,10 @@ index 906eded9a2ab61737a30cfe89292a71237ce4eb7..b4ba0ff5a32fea0afcd987a530c43013
}
} else {
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc84689c753c90 100644
index 23570a0b1227a840b9c1e6ae326827ea655bb5f7..8e375654bf60e1b4f82718e23968c3ab1f799c34 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -404,7 +404,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -405,7 +405,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
}
super.baseTick();
@@ -1222,7 +1222,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
if (this.fireImmune() || this.level().isClientSide) {
this.clearFire();
}
@@ -506,7 +505,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -507,7 +506,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
this.yHeadRotO = this.yHeadRot;
this.yRotO = this.getYRot();
this.xRotO = this.getXRot();
@@ -1230,7 +1230,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
}
public boolean canSpawnSoulSpeedParticle() {
@@ -3089,10 +3087,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3097,10 +3095,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
}
this.run += (f3 - this.run) * 0.3F;
@@ -1241,7 +1241,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
// Paper start - stop large pitch and yaw changes from crashing the server
this.yRotO += Math.round((this.getYRot() - this.yRotO) / 360.0F) * 360.0F;
@@ -3104,7 +3099,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3112,7 +3107,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
this.yHeadRotO += Math.round((this.yHeadRot - this.yHeadRotO) / 360.0F) * 360.0F;
// Paper end
@@ -1249,7 +1249,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
this.animStep += f2;
if (this.isFallFlying()) {
++this.fallFlyTicks;
@@ -3399,19 +3393,14 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3407,19 +3401,14 @@ public abstract class LivingEntity extends Entity implements Attackable {
}
this.setDeltaMovement(d0, d1, d2);
@@ -1269,7 +1269,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
if (this.jumping && this.isAffectedByFluids()) {
double d3;
@@ -3438,8 +3427,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3446,8 +3435,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
this.noJumpDelay = 0;
}
@@ -1278,7 +1278,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
this.xxa *= 0.98F;
this.zza *= 0.98F;
this.updateFallFlying();
@@ -3466,8 +3453,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3474,8 +3461,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
this.travel(vec3d1);
}
@@ -1287,7 +1287,7 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
if (!this.level().isClientSide && !this.isDeadOrDying() && !this.freezeLocked) { // Paper - Freeze Tick Lock API
int i = this.getTicksFrozen();
@@ -3484,15 +3469,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3492,15 +3477,12 @@ public abstract class LivingEntity extends Entity implements Attackable {
this.hurt(this.damageSources().freeze(), 1.0F);
}
@@ -1304,10 +1304,10 @@ index aceee33eebd4d5f89e62a42910ec51843f33843b..a0da290019b10f424771309c0ccc8468
if (((ServerLevel) this.level()).hasEntityMoveEvent && !(this instanceof net.minecraft.world.entity.player.Player)) {
if (this.xo != this.getX() || this.yo != this.getY() || this.zo != this.getZ() || this.yRotO != this.getYRot() || this.xRotO != this.getXRot()) {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index fa0b78139fecc0245e168ebeb4172ea2531a3fec..2dfdeec25ef0d9a004601fd9b5050c881156de26 100644
index 2439f8d48daca7329049436414f06a36b4b79029..dee9ee5e5917f48b8e1c078710c6d67de6de78d5 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -146,8 +146,10 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -147,8 +147,10 @@ public abstract class Mob extends LivingEntity implements Targeting {
this.pathfindingMalus = Maps.newEnumMap(BlockPathTypes.class);
this.restrictCenter = BlockPos.ZERO;
this.restrictRadius = -1.0F;
@@ -1320,7 +1320,7 @@ index fa0b78139fecc0245e168ebeb4172ea2531a3fec..2dfdeec25ef0d9a004601fd9b5050c88
this.lookControl = new LookControl(this);
this.moveControl = new MoveControl(this);
this.jumpControl = new JumpControl(this);
@@ -362,13 +364,10 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -363,13 +365,10 @@ public abstract class Mob extends LivingEntity implements Targeting {
@Override
public void baseTick() {
super.baseTick();
@@ -1334,7 +1334,7 @@ index fa0b78139fecc0245e168ebeb4172ea2531a3fec..2dfdeec25ef0d9a004601fd9b5050c88
}
@Override
@@ -673,7 +672,6 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -674,7 +673,6 @@ public abstract class Mob extends LivingEntity implements Targeting {
@Override
public void aiStep() {
super.aiStep();
@@ -1342,7 +1342,7 @@ index fa0b78139fecc0245e168ebeb4172ea2531a3fec..2dfdeec25ef0d9a004601fd9b5050c88
if (!this.level().isClientSide && this.canPickUpLoot() && this.isAlive() && !this.dead && this.level().getGameRules().getBoolean(GameRules.RULE_MOBGRIEFING)) {
Vec3i baseblockposition = this.getPickupReach();
List<ItemEntity> list = this.level().getEntitiesOfClass(ItemEntity.class, this.getBoundingBox().inflate((double) baseblockposition.getX(), (double) baseblockposition.getY(), (double) baseblockposition.getZ()));
@@ -692,8 +690,6 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -693,8 +691,6 @@ public abstract class Mob extends LivingEntity implements Targeting {
}
}
}
@@ -1351,7 +1351,7 @@ index fa0b78139fecc0245e168ebeb4172ea2531a3fec..2dfdeec25ef0d9a004601fd9b5050c88
}
protected Vec3i getPickupReach() {
@@ -905,42 +901,22 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -906,42 +902,22 @@ public abstract class Mob extends LivingEntity implements Targeting {
return;
}
// Paper end - Allow nerfed mobs to jump and float
@@ -1568,10 +1568,10 @@ index 295769d039f2a1e4f48912a60f9dbe267d8992c1..81e69ea2858228942177e54c92b50b2b
}
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
index 4aeab90e778629c355189dfe79c39c4b21f5f5ac..0f3a11203dd0353d74626a273e9003131356f5e1 100644
index 958816ce2166248b542c96c10c398a52d769b4db..1ee12f16e7013521a288a3160dcc424c4e385204 100644
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
@@ -79,12 +79,8 @@ public class Tadpole extends AbstractFish {
@@ -82,12 +82,8 @@ public class Tadpole extends AbstractFish {
@Override
protected void customServerAiStep() {
@@ -1703,10 +1703,10 @@ index 937f81a859953498abe73bea560c86e6560e1c33..b73bccfcb1b94936f500926a06a28a6a
if ((this.tickCount + this.getId()) % 120 == 0) {
Warden.applyDarknessAround(worldserver, this.position(), this, 20);
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 1aae466e3e334d7f4bbb3ea9365a255afcc3dd3a..1edc23e457432b571d00bce5a4c32c6d790368c2 100644
index 24044795d8e0f1fb15a4f2f5401f44897092f2a3..5fb3a32991b32132b0db56933671d2f999df667d 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -253,9 +253,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -254,9 +254,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
}
protected void customServerAiStep(final boolean inactive) {
// Paper end
@@ -1737,7 +1737,7 @@ index b678da2cbb93cea7971bc3c4d324cfca18b0bc97..bb8d73d4022b1e13bb3e2bcf74b511f6
if (this.fire) {
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c4d072c31 100644
index 2161664f96bf130d6ca690be47dc7f3ff3a84cd0..21a350cab63e8bb3062ec38686fdc1b630f01857 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -130,7 +130,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1748,7 +1748,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
public final boolean isClientSide;
private final WorldBorder worldBorder;
private final BiomeManager biomeManager;
@@ -208,7 +207,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -217,7 +216,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public abstract ResourceKey<LevelStem> getTypeKey();
@@ -1757,7 +1757,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config
this.galeConfig = galeWorldConfigCreator.apply(this.spigotConfig); // Gale - Gale configuration
@@ -223,7 +222,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -232,7 +231,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
// CraftBukkit end
@@ -1765,7 +1765,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
this.levelData = worlddatamutable;
this.dimensionTypeRegistration = holder;
this.dimensionTypeId = (ResourceKey) holder.unwrapKey().orElseThrow(() -> {
@@ -1259,9 +1257,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1268,9 +1266,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
protected void tickBlockEntities() {
@@ -1775,7 +1775,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
this.timings.tileEntityPending.startTiming(); // Spigot
this.tickingBlockEntities = true;
if (!this.pendingBlockEntityTickers.isEmpty()) {
@@ -1302,7 +1297,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1311,7 +1306,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
this.timings.tileEntityTick.stopTiming(); // Spigot
this.tickingBlockEntities = false;
co.aikar.timings.TimingHistory.tileEntityTicks += this.blockEntityTickers.size(); // Paper
@@ -1783,7 +1783,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
this.spigotConfig.currentPrimedTnt = 0; // Spigot
}
@@ -1512,7 +1506,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1521,7 +1515,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@Override
public List<Entity> getEntities(@Nullable Entity except, AABB box, Predicate<? super Entity> predicate) {
@@ -1791,7 +1791,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
List<Entity> list = Lists.newArrayList();
((ServerLevel)this).getEntityLookup().getEntities(except, box, list, predicate); // Paper - optimise this call
return list;
@@ -1531,7 +1524,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1540,7 +1533,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
public <T extends Entity> void getEntities(EntityTypeTest<Entity, T> filter, AABB box, Predicate<? super T> predicate, List<? super T> result, int limit) {
@@ -1799,7 +1799,7 @@ index c7abd433e70a6479fc81e5bce94144c9479eb372..680cfc6e2e3acd0d5ce364c774772e3c
// Paper start - optimise this call
//TODO use limit
if (filter instanceof net.minecraft.world.entity.EntityType entityTypeTest) {
@@ -1790,11 +1782,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1799,11 +1791,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
public ProfilerFiller getProfiler() {

View File

@@ -99,10 +99,10 @@ public class Main {
```
diff --git a/src/main/java/io/papermc/paper/util/MCUtil.java b/src/main/java/io/papermc/paper/util/MCUtil.java
index 200ed770b57e1a9240abf0473968d4b85cbefe3c..adfb793ba2ca4552e0b800d37f166ea55562a57a 100644
index e028353e0261310afc42ca0454b723d9f1ffc131..4ca8f36bb88fbd45720ea12fe524d671b5aeb791 100644
--- a/src/main/java/io/papermc/paper/util/MCUtil.java
+++ b/src/main/java/io/papermc/paper/util/MCUtil.java
@@ -165,13 +165,11 @@ public final class MCUtil {
@@ -168,13 +168,11 @@ public final class MCUtil {
}
public static int fastFloor(double x) {
@@ -118,7 +118,7 @@ index 200ed770b57e1a9240abf0473968d4b85cbefe3c..adfb793ba2ca4552e0b800d37f166ea5
}
public static float normalizeYaw(float f) {
@@ -232,11 +230,11 @@ public final class MCUtil {
@@ -235,11 +233,11 @@ public final class MCUtil {
}
public static int getChunkCoordinate(final double coordinate) {

View File

@@ -31,10 +31,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 68b23175b5ea1c10cad0c865b8445c0d461f41e4..c51016042d89fb34e211ea0ba985804158cf32c6 100644
index 8e375654bf60e1b4f82718e23968c3ab1f799c34..b62041ee8d550bdeb654f9fac386135d8258182d 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@@ -143,7 +143,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
import org.bukkit.event.player.PlayerItemConsumeEvent;
// CraftBukkit end
@@ -42,7 +42,7 @@ index 68b23175b5ea1c10cad0c865b8445c0d461f41e4..c51016042d89fb34e211ea0ba9858041
public abstract class LivingEntity extends Entity implements Attackable {
@@ -2014,6 +2013,20 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -2022,6 +2021,20 @@ public abstract class LivingEntity extends Entity implements Attackable {
return this.lastClimbablePos;
}

View File

@@ -265,10 +265,10 @@ index d6cbe98e67fdbf8db46338a88ab1356dd63b50a3..adbc0a9caf5daad2655658f06e42d752
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 6d23c39e4eadf23616080d6d08672e13b5d3c37d..7bd2d00337024e2d9e274c00241e9827ea5383d6 100644
index 756d0434472921992c9d84597d7c9c824e93614c..9a804cdfe86475a0dcef394d13f40fa27ceec269 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;
@@ -28,7 +28,10 @@ import org.bukkit.inventory.InventoryHolder;
public abstract class AbstractMinecartContainer extends AbstractMinecart implements ContainerEntity {
@@ -279,7 +279,7 @@ index 6d23c39e4eadf23616080d6d08672e13b5d3c37d..7bd2d00337024e2d9e274c00241e9827
@Nullable
public ResourceLocation lootTable;
public long lootTableSeed;
@@ -89,12 +92,18 @@ public abstract class AbstractMinecartContainer extends AbstractMinecart impleme
@@ -90,12 +93,18 @@ public abstract class AbstractMinecartContainer extends AbstractMinecart impleme
protected AbstractMinecartContainer(EntityType<?> type, Level world) {
super(type, world);
@@ -300,7 +300,7 @@ index 6d23c39e4eadf23616080d6d08672e13b5d3c37d..7bd2d00337024e2d9e274c00241e9827
}
@Override
@@ -156,6 +165,10 @@ public abstract class AbstractMinecartContainer extends AbstractMinecart impleme
@@ -164,6 +173,10 @@ public abstract class AbstractMinecartContainer extends AbstractMinecart impleme
protected void readAdditionalSaveData(CompoundTag nbt) {
super.readAdditionalSaveData(nbt);
this.lootableData.loadNbt(nbt); // Paper
@@ -312,7 +312,7 @@ index 6d23c39e4eadf23616080d6d08672e13b5d3c37d..7bd2d00337024e2d9e274c00241e9827
}
diff --git a/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
index a71414397bd45ee7bcacfeef0041d80dfa25f114..7743f185672e977520218c3ce6b8ddc948dfc08e 100644
index 9b1243d96e0694c62fc9e82e9be540bce0d2b3ad..0d7a80824bf0ce921070dea02220ca650002f94c 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
@@ -31,7 +31,10 @@ import org.bukkit.entity.HumanEntity;
@@ -390,10 +390,10 @@ index a71414397bd45ee7bcacfeef0041d80dfa25f114..7743f185672e977520218c3ce6b8ddc9
@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 a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4c7b9003b 100644
index 757edf74751dc7183454656fda9cecc4eb601e4c..fc3fd4ac0f833b606757e9334b41311fe6eb8d92 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
@@ -47,7 +47,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -48,7 +48,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
public static final int MOVE_ITEM_SPEED = 8;
public static final int HOPPER_CONTAINER_SIZE = 5;
@@ -404,7 +404,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
private int cooldownTime;
private long tickedGameTime;
@@ -83,14 +86,37 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -84,14 +87,37 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
public HopperBlockEntity(BlockPos pos, BlockState state) {
super(BlockEntityType.HOPPER, pos, state);
@@ -444,7 +444,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
if (!this.tryLoadLootTable(nbt)) {
ContainerHelper.loadAllItems(nbt, this.items);
}
@@ -201,7 +227,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -202,7 +228,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
flag = HopperBlockEntity.ejectItems(world, pos, state, (Container) blockEntity, blockEntity); // CraftBukkit
}
@@ -453,7 +453,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
flag |= booleansupplier.getAsBoolean();
}
@@ -241,7 +267,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -242,7 +268,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
skipPushModeEventFire = skipHopperEvents;
boolean foundItem = false;
for (int i = 0; i < hopper.getContainerSize(); ++i) {
@@ -462,7 +462,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
if (!item.isEmpty()) {
foundItem = true;
ItemStack origItemStack = item;
@@ -513,7 +539,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -514,7 +540,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
}
private static boolean isEmptyContainer(Container inv, Direction facing) {
@@ -471,7 +471,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
}
public static boolean suckInItems(Level world, Hopper hopper) {
@@ -713,7 +739,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -714,7 +740,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
if (HopperBlockEntity.canPlaceItemInContainer(to, stack, slot, side)) {
boolean flag = false;
@@ -480,7 +480,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
if (itemstack1.isEmpty()) {
// Spigot start - SPIGOT-6693, InventorySubcontainer#setItem
@@ -908,7 +934,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -909,7 +935,10 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@Override
protected void setItems(NonNullList<ItemStack> list) {
@@ -493,7 +493,7 @@ index a61d7cd2b078fe511ff00344197b6ea11feebfb2..5a199935865979adf2f81ff6459299c4
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 a94300a457b25f0e33a8eeabba6dd5720ca9ab1e..f1ea82072cb13e255fa6ca90b0753ed232697275 100644
index f52ccd4f3e062af3c7cc6eaea5b074a3bbd21690..fd9b9cb82a1e5ac030bbe6a4ac14c21dd074470d 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
@@ -94,12 +94,7 @@ public abstract class RandomizableContainerBlockEntity extends BaseContainerBloc

View File

@@ -31,10 +31,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/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 69404b218565db0d73eccb13e56cf27fad443b73..a57038b0c0cd5d7fd2e96101cf07d7350f17a2f5 100644
index 0948e253b95312998d498be7cd7a123bbe06376b..84021917524447938cb7f0877647565698f7d4e1 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -209,6 +209,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -218,6 +218,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public abstract ResourceKey<LevelStem> getTypeKey();
@@ -50,7 +50,7 @@ index 69404b218565db0d73eccb13e56cf27fad443b73..a57038b0c0cd5d7fd2e96101cf07d735
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, 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.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config; Async-Anti-Xray: Pass executor // Gale - Gale configuration // Gale - Purpur - remove vanilla profiler
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config
@@ -231,6 +240,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -240,6 +249,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
});
final DimensionType dimensionmanager = (DimensionType) holder.value();

View File

@@ -31,10 +31,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/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index df915549b366d25727ac9c6ff4e9521927ad50c8..71d9ed6d3067c64165c41b35f2ea41791dd597b9 100644
index 7b1a9b21b7f72964f9157bf02e8dbcd57785cbfb..fbb453420aa6f4688aa6b2bd07b099aa5e8b912e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -501,6 +501,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -502,6 +502,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return chunkMap.playerEntityTrackerTrackMaps[type.ordinal()].getObjectsInRange(MCUtil.getCoordinateKey(this));
}
// Paper end - optimise entity tracking

View File

@@ -31,7 +31,7 @@ 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/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 83c001e809c76a5ec0b314967839713e63d67f0d..3fa891050ef7e62668ecdcf939d702db92514b23 100644
index 55b59745b7d3cc245c4768b5d2e6bf277a34d1b4..86a2f955dc981dd95091b70d6600ff94ce4dc714 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -894,7 +894,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -57,10 +57,10 @@ index 83c001e809c76a5ec0b314967839713e63d67f0d..3fa891050ef7e62668ecdcf939d702db
}
}
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index a57038b0c0cd5d7fd2e96101cf07d7350f17a2f5..6ed2a91b01233850b399e33f507353b52f06fd91 100644
index 84021917524447938cb7f0877647565698f7d4e1..9440dd58325df07521ef52373089e6989105ba4b 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -1322,13 +1322,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1331,13 +1331,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
try {
tickConsumer.accept(entity);
MinecraftServer.getServer().executeMidTickTasks(); // Paper - execute chunk tasks mid tick
@@ -71,8 +71,8 @@ index a57038b0c0cd5d7fd2e96101cf07d7350f17a2f5..6ed2a91b01233850b399e33f507353b5
final String msg = String.format("Entity threw exception at %s:%s,%s,%s", entity.level().getWorld().getName(), entity.getX(), entity.getY(), entity.getZ());
MinecraftServer.LOGGER.error(msg, throwable);
getCraftServer().getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerInternalException(msg, throwable))); // Paper - ServerExceptionEvent
- entity.discard();
+ entity.discard(); // Gale - Airplane - remove lambda from ticking guard - diff on change ServerLevel#tick
- entity.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.DISCARD);
+ entity.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.DISCARD); // Gale - Airplane - remove lambda from ticking guard - diff on change ServerLevel#tick
// Paper end - Prevent block entity and entity crashes
}
}

View File

@@ -31,10 +31,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/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4dbe548a00fb2d46af3c62a0c626323944781a02..a350fa21ed81ff1f413f85fc962104f04de67fb4 100644
index fbb453420aa6f4688aa6b2bd07b099aa5e8b912e..dc38b98d4ec1eec60725fcb00c09ac7a3ca427a9 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4389,16 +4389,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4405,16 +4405,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
@@ -60,7 +60,7 @@ index 4dbe548a00fb2d46af3c62a0c626323944781a02..a350fa21ed81ff1f413f85fc962104f0
double d1 = 0.0D;
boolean flag = this.isPushedByFluid();
boolean flag1 = false;
@@ -4406,14 +4408,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4422,14 +4424,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
int k1 = 0;
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
@@ -128,7 +128,7 @@ index 4dbe548a00fb2d46af3c62a0c626323944781a02..a350fa21ed81ff1f413f85fc962104f0
if (d2 >= axisalignedbb.minY) {
flag1 = true;
@@ -4435,9 +4484,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4451,9 +4500,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// CraftBukkit end
}
}

View File

@@ -13,10 +13,10 @@ As part of: Pufferfish (https://github.com/pufferfish-gg/Pufferfish)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/build.gradle.kts b/build.gradle.kts
index dee43c516c6c09c4d3e2ef7595d8e5f1e4866e55..362bbf070aabf5a8ac0233ce64f321c5dc1849fe 100644
index b0dc9ee8808e0eb84969d0f59f83f3d2ab49d083..c9784da0a87d61e80a41fb0358614053682e942b 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -71,6 +71,7 @@ tasks.withType<JavaCompile> {
@@ -72,6 +72,7 @@ tasks.withType<JavaCompile> {
compilerArgs.add("-Xlint:-module")
compilerArgs.add("-Xlint:-removal")
compilerArgs.add("-Xlint:-dep-ann")
@@ -24,7 +24,7 @@ index dee43c516c6c09c4d3e2ef7595d8e5f1e4866e55..362bbf070aabf5a8ac0233ce64f321c5
}
// Gale end - hide irrelevant compilation warnings
@@ -195,6 +196,7 @@ fun TaskContainer.registerRunTask(
@@ -196,6 +197,7 @@ fun TaskContainer.registerRunTask(
minHeapSize = "${memoryGb}G"
maxHeapSize = "${memoryGb}G"
jvmArgs("--enable-preview") // Gale - enable preview features for development runs

View File

@@ -22,10 +22,10 @@ data is already available in the blockPosition struct, so we use that
instead of re-doing the casting.
diff --git a/src/main/java/io/papermc/paper/util/MCUtil.java b/src/main/java/io/papermc/paper/util/MCUtil.java
index 7ec5be740f34508d59bd7a41e4388e0d705aa278..f6afb663d9687ab8bf2bd14986f0952d35e3ef8b 100644
index 4ca8f36bb88fbd45720ea12fe524d671b5aeb791..898d29e138d1bee811510d3568597c49f9c2cf00 100644
--- a/src/main/java/io/papermc/paper/util/MCUtil.java
+++ b/src/main/java/io/papermc/paper/util/MCUtil.java
@@ -210,7 +210,7 @@ public final class MCUtil {
@@ -213,7 +213,7 @@ public final class MCUtil {
}
public static long getCoordinateKey(final Entity entity) {
@@ -35,10 +35,10 @@ index 7ec5be740f34508d59bd7a41e4388e0d705aa278..f6afb663d9687ab8bf2bd14986f0952d
public static long getCoordinateKey(final ChunkPos pair) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 683ec06badc4943d80e51ee3f9bd58f4be5e2b16..a1cbb62b518d14a605bda2e9c5b0bd0289d84a60 100644
index dc38b98d4ec1eec60725fcb00c09ac7a3ca427a9..f369a104d147205520f3e89dccd6180db0773121 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -308,7 +308,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -309,7 +309,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public double yo;
public double zo;
private Vec3 position;

View File

@@ -28,10 +28,10 @@ but is so much cheaper than the suffocation check that it's worth
keeping it.
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index c51016042d89fb34e211ea0ba985804158cf32c6..6179e9d59d94e1412b750ebcf77f5e8c6eacf805 100644
index b62041ee8d550bdeb654f9fac386135d8258182d..1798862ef457dddfa907ec5d903bd5461a044858 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -411,7 +411,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -412,7 +412,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
boolean flag = this instanceof net.minecraft.world.entity.player.Player;
if (!this.level().isClientSide) {
@@ -43,7 +43,7 @@ index c51016042d89fb34e211ea0ba985804158cf32c6..6179e9d59d94e1412b750ebcf77f5e8c
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();
@@ -1407,6 +1410,15 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -1415,6 +1418,15 @@ public abstract class LivingEntity extends Entity implements Attackable {
return this.getHealth() <= 0.0F;
}

View File

@@ -20,10 +20,10 @@ launcher can very easily fill a chunk.
Prevent saving Fireworks so that chunk unloads will wipe a chunks fireworks in this case.
diff --git a/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java b/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java
index 7005b3a26e9b5d79064981a4a41bee21b65a9fc3..2d65942fd6f0975cc2e3d4545d616a8e320e8bc5 100644
index 5b3b59057b962438c6f4fc8a1507342865b3bc11..1f39b1af8ba1264d58ddf342ed9472bda01b5ad2 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java
@@ -352,4 +352,12 @@ public class FireworkRocketEntity extends Projectile implements ItemSupplier {
@@ -355,4 +355,12 @@ public class FireworkRocketEntity extends Projectile implements ItemSupplier {
public boolean isAttackable() {
return false;
}

View File

@@ -17,7 +17,7 @@ Licensed under: MIT (https://opensource.org/licenses/MIT)
Only do an item "suck in" action once per second
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 491a521f0e5e272fbad7870fa3adefdea22e179f..3ff5c1b932bb28203aa5b48393ff41724c93618a 100644
index c7f06c3cfb737bd17a706798bf9cf0e1af5f0cc0..3b803ac2041b9f6bb6f016e58d95c0bf58fd9a8d 100644
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
@@ -14,11 +14,13 @@ import net.minecraft.world.entity.Entity;
@@ -34,10 +34,10 @@ index 491a521f0e5e272fbad7870fa3adefdea22e179f..3ff5c1b932bb28203aa5b48393ff4172
import net.minecraft.world.phys.Vec3;
import net.minecraft.core.BlockPos;
import net.minecraft.nbt.CompoundTag;
@@ -227,11 +229,31 @@ public class ItemEntity extends Entity implements TraceableEntity {
@@ -228,11 +230,31 @@ public class ItemEntity extends Entity implements TraceableEntity {
}
// CraftBukkit end
this.discard();
this.discard(EntityRemoveEvent.Cause.DESPAWN); // CraftBukkit - add Bukkit remove cause
+ return; // Gale - EMC - reduce hopper item checks
}
+ this.markNearbyHopperCartsAsImmune(); // Gale - EMC - reduce hopper item checks
@@ -66,10 +66,10 @@ index 491a521f0e5e272fbad7870fa3adefdea22e179f..3ff5c1b932bb28203aa5b48393ff4172
// Spigot start - copied from above
@Override
public void inactiveTick() {
@@ -251,7 +273,13 @@ public class ItemEntity extends Entity implements TraceableEntity {
@@ -252,7 +274,13 @@ public class ItemEntity extends Entity implements TraceableEntity {
}
// CraftBukkit end
this.discard();
this.discard(EntityRemoveEvent.Cause.DESPAWN); // CraftBukkit - add Bukkit remove cause
+ return; // Gale - EMC - reduce hopper item checks
+ }
+ // Gale start - EMC - reduce hopper item checks
@@ -119,7 +119,7 @@ index a05acf709735b40ca86f978508c63a86065fd405..3752b4ba7fb0d680d4b4a61bf44d54d5
double getLevelY();
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 5a199935865979adf2f81ff6459299c4c7b9003b..5a5347ee033db890872193f22a7b63c1af0e79b7 100644
index fc3fd4ac0f833b606757e9334b41311fe6eb8d92..e336f33946c6362629c8a20e20763cfc79a67d37 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
@@ -11,6 +11,7 @@ import net.minecraft.core.Direction;
@@ -138,7 +138,7 @@ index 5a199935865979adf2f81ff6459299c4c7b9003b..5a5347ee033db890872193f22a7b63c1
import net.minecraft.world.inventory.AbstractContainerMenu;
import net.minecraft.world.inventory.HopperMenu;
import net.minecraft.world.item.ItemStack;
@@ -575,7 +577,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -576,7 +578,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
return false;
}
// Paper end - Perf: Optimize Hoppers
@@ -147,7 +147,7 @@ index 5a199935865979adf2f81ff6459299c4c7b9003b..5a5347ee033db890872193f22a7b63c1
Iterator iterator = HopperBlockEntity.getItemsAtAndAbove(world, hopper).iterator();
ItemEntity entityitem;
@@ -590,6 +592,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -591,6 +593,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
return true;
}
@@ -155,7 +155,7 @@ index 5a199935865979adf2f81ff6459299c4c7b9003b..5a5347ee033db890872193f22a7b63c1
}
@io.papermc.paper.annotation.DoNotUse // Paper - method unused as logic is inlined above
@@ -900,6 +903,31 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
@@ -901,6 +904,31 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
return first.getCount() < first.getMaxStackSize() && first.is(second.getItem()) && first.getDamageValue() == second.getDamageValue() && ((first.isEmpty() && second.isEmpty()) || java.util.Objects.equals(first.getTag(), second.getTag())); // Paper - Perf: Optimize Hoppers; used to return true for full itemstacks?!
}

View File

@@ -25,7 +25,7 @@ index deb9a8931bbc6d8687d629fac9787361fc96aae6..06b9fdd33fe888d298dfd24a67702a61
public boolean isRealPlayer; // Paper
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index f6b847f9cf1a97f186ba9a9d1d540ef56c41ebc4..6082637bfd19f7ea6eb1b76c615f56a6454643e6 100644
index e2c9a1007dce1fd05382622dd186ff5dca1b9512..481e0139a973a7b24a5ff6158e795a265550f087 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2274,6 +2274,10 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -40,10 +40,10 @@ index f6b847f9cf1a97f186ba9a9d1d540ef56c41ebc4..6082637bfd19f7ea6eb1b76c615f56a6
this.player.resetLastActionTime();
return optional;
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 91feb12732564c90656da487664dbc12e55397fc..c34fa92849a917e6269390b94360de9f047fb316 100644
index 1e5f709115007ff19901c0a6c3cf884d9e4d3a6c..152ecf384ac91c39700c6e16b0cd342b8b827bf9 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -347,6 +347,8 @@ public abstract class PlayerList {
@@ -348,6 +348,8 @@ public abstract class PlayerList {
return;
}

View File

@@ -28,7 +28,7 @@ index e4fd372a1d585887287253a02531cd192929377b..397f985756c5bc6c11a32c844d536000
}
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index a9acf052c61b0592da9cf3ade8c4c8f7ba068dad..25ddf54a4c07c7be1f9ecafe411ff83f3522063d 100644
index 152ecf384ac91c39700c6e16b0cd342b8b827bf9..40fba831975d21eb4ba9aacbf25cdaca082de6aa 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -100,6 +100,7 @@ import net.minecraft.world.phys.Vec3;
@@ -39,7 +39,7 @@ index a9acf052c61b0592da9cf3ade8c4c8f7ba068dad..25ddf54a4c07c7be1f9ecafe411ff83f
import org.slf4j.Logger;
// CraftBukkit start
@@ -1432,7 +1433,7 @@ public abstract class PlayerList {
@@ -1433,7 +1434,7 @@ public abstract class PlayerList {
// Paper end
boolean flag = this.verifyChatTrusted(message);

View File

@@ -1,78 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Martijn Muijsers <martijnmuijsers@live.nl>
Date: Tue, 29 Nov 2022 16:06:11 +0100
Subject: [PATCH] Make sand duping fix configurable
License: MIT (https://opensource.org/licenses/MIT)
Gale - https://galemc.org
This patch is based on the following patch:
"Add toggle for sand duping fix"
By: William Blake Galbreath <blake.galbreath@gmail.com>
As part of: Purpur (https://github.com/PurpurMC/Purpur)
Licensed under: MIT (https://opensource.org/licenses/MIT)
* Purpur copyright *
MIT License
Copyright (c) 2019-2022 PurpurMC
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
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 9daf8aa557d9f4fdbcc138a47892ea5a061dd877..af1baf10490f5792481f072ca34fba9494dcd1e2 100644
--- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java
@@ -133,7 +133,7 @@ public class FallingBlockEntity extends Entity {
@Override
public void tick() {
// Paper start - fix sand duping
- if (this.isRemoved()) {
+ if (this.level().galeConfig().gameplayMechanics.fixes.sandDuping && this.isRemoved()) { // Gale - Purpur - make sand duping fix configurable
return;
}
// Paper end - fix sand duping
@@ -149,7 +149,7 @@ public class FallingBlockEntity extends Entity {
this.move(MoverType.SELF, this.getDeltaMovement());
// Paper start - fix sand duping
- if (this.isRemoved()) {
+ if (this.level().galeConfig().gameplayMechanics.fixes.sandDuping && this.isRemoved()) { // Gale - Purpur - make sand duping fix configurable
return;
}
// Paper end - fix sand duping
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index f8a561d91686d6df89a7374ca223972e435978c9..bd47caa947f10cb90cef5f060a9106143782d940 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -96,6 +96,13 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public GameplayMechanics gameplayMechanics;
public class GameplayMechanics extends ConfigurationPart {
+ public Fixes fixes;
+ public class Fixes extends ConfigurationPart {
+
+ public boolean sandDuping = true; // Gale - Purpur - make sand duping fix configurable
+
+ }
+
public double entityWakeUpDurationRatioStandardDeviation = 0.2; // Gale - variable entity wake-up duration
public boolean tryRespawnEnderDragonAfterEndCrystalPlace = true; // Gale - Pufferfish - make ender dragon respawn attempt after placing end crystals configurable

View File

@@ -20,14 +20,19 @@ index 3cb1db27dba902678a5848a1fb5e2c6ec6241e60..c615d528610168c4ad52730079f3525a
}
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index bd47caa947f10cb90cef5f060a9106143782d940..49b820a62483f9612b1a0beb7e5dc416f6e60585 100644
index f8a561d91686d6df89a7374ca223972e435978c9..867849daa3a3eacaa90caad079234f8aa38d8dcf 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -100,6 +100,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public class Fixes extends ConfigurationPart {
@@ -96,6 +96,12 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public GameplayMechanics gameplayMechanics;
public class GameplayMechanics extends ConfigurationPart {
public boolean sandDuping = true; // Gale - Purpur - make sand duping fix configurable
+ public Fixes fixes;
+ public class Fixes extends ConfigurationPart {
+ public boolean tripwireDuping = true; // Gale - Leaf - make tripwire duping fix configurable
}
+
+ }
+
public double entityWakeUpDurationRatioStandardDeviation = 0.2; // Gale - variable entity wake-up duration
public boolean tryRespawnEnderDragonAfterEndCrystalPlace = true; // Gale - Pufferfish - make ender dragon respawn attempt after placing end crystals configurable

View File

@@ -49,11 +49,11 @@ index 9b897cf53f4bb5d366e6ac88dbed93c59d8fe541..53e3a40246da0a4d30ad8a7286d1a43d
}
}
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 49b820a62483f9612b1a0beb7e5dc416f6e60585..c6f87ddbb9a14e76a6fd8faebfb0390de9f7a81a 100644
index 867849daa3a3eacaa90caad079234f8aa38d8dcf..1f99a324527d5329a21e795d3b6d95b535f415ef 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -102,6 +102,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean sandDuping = true; // Gale - Purpur - make sand duping fix configurable
@@ -100,6 +100,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public class Fixes extends ConfigurationPart {
public boolean tripwireDuping = true; // Gale - Leaf - make tripwire duping fix configurable
+ // Gale start - Purpur - fix MC-238526

View File

@@ -37,10 +37,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
index a7e8b544d7b05efe95182a03cabaf1993da9d839..36cae2cddf9f4acec436338e81576b122d209d89 100644
index 161c128d27f50f145f88142191f1a5c93649ea65..6659abb4ab8a13a48c154d2e3f273eb13b202e7f 100644
--- a/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
+++ b/src/main/java/net/minecraft/world/entity/animal/MushroomCow.java
@@ -199,12 +199,21 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder<Mushroo
@@ -200,12 +200,21 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder<Mushroo
// this.discard(); // CraftBukkit - moved down
entitycow.moveTo(this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
entitycow.setHealth(this.getHealth());
@@ -64,12 +64,12 @@ index a7e8b544d7b05efe95182a03cabaf1993da9d839..36cae2cddf9f4acec436338e81576b12
entitycow.setPersistenceRequired();
}
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index c6f87ddbb9a14e76a6fd8faebfb0390de9f7a81a..39504daeead241c03c9fd657456a309e44643302 100644
index 1f99a324527d5329a21e795d3b6d95b535f415ef..34d9b53148d377d683d526ebc664aad3f0ee9c9a 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -101,6 +101,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean sandDuping = true; // Gale - Purpur - make sand duping fix configurable
@@ -99,6 +99,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public Fixes fixes;
public class Fixes extends ConfigurationPart {
public boolean tripwireDuping = true; // Gale - Leaf - make tripwire duping fix configurable
+ public boolean keepMooshroomRotationAfterShearing = true; // Gale - Purpur - fix cow rotation when shearing mooshroom

View File

@@ -65,10 +65,10 @@ index 87fb10096fc9dade33c663234b1cecc34d3d77bb..cb2c6dcdd2be476d0434e7f771bbb251
}
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 39504daeead241c03c9fd657456a309e44643302..38f4a4ee657e481fa55d0f6543c31355b64a7f8d 100644
index 34d9b53148d377d683d526ebc664aad3f0ee9c9a..08c9d6ac15163679b07aef611e7d31ddb8cf9489 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -108,6 +108,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -106,6 +106,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean mc238526 = false;
// Gale end - Purpur - fix MC-238526

View File

@@ -35,10 +35,10 @@ index 80ef4b6649da3049f21624926fa38595d76c5da5..7ce47abc44e0dfe8ff90afeb25b14d8d
}
}
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 38f4a4ee657e481fa55d0f6543c31355b64a7f8d..a64f7cce19ee8c6f28882a860b1af5b9ef0179fe 100644
index 08c9d6ac15163679b07aef611e7d31ddb8cf9489..39703c8ffbd5b41a1b010f197908237d1078c015 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -113,6 +113,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -111,6 +111,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean mc121706 = false;
// Gale end - Purpur - fix MC-121706

View File

@@ -19,10 +19,10 @@ the displayed hunger bar never goes down. Hunger (or any related value, includin
should not go down on peaceful. See https://bugs.mojang.com/browse/MC-31819.
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
index 5ca1f834f311a87323ced2578535e66efa14e47f..9286d41a9e61c03e56195669a8da17c30c7157e7 100644
index 567704f61034363e48ef2a5b5566ebdc91682297..e1b2b6a55d0a837d2a447dcc636a9f29aa4597e7 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -1867,6 +1867,11 @@ public abstract class Player extends LivingEntity {
@@ -1875,6 +1875,11 @@ public abstract class Player extends LivingEntity {
}
public void causeFoodExhaustion(float f, EntityExhaustionEvent.ExhaustionReason reason) {
@@ -35,10 +35,10 @@ index 5ca1f834f311a87323ced2578535e66efa14e47f..9286d41a9e61c03e56195669a8da17c3
if (!this.abilities.invulnerable) {
if (!this.level().isClientSide) {
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index a64f7cce19ee8c6f28882a860b1af5b9ef0179fe..773cb09de02eac19ddb5eea62fd2284a183366cd 100644
index 39703c8ffbd5b41a1b010f197908237d1078c015..9abfdc9e1725b37987b661cd89b32cc43595396f 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -118,6 +118,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -116,6 +116,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean mc110386 = true;
// Gale end - Mirai - fix MC-110386

View File

@@ -13,7 +13,7 @@ As part of: Mirai (https://github.com/etil2jz/Mirai)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java
index c57efcb9a79337ec791e4e8f6671612f0a82b441..efb3570aa66d13438133b43b9e58d308edb5a478 100644
index 9bb542ce3a8c52e1688bb1f66fc916dd23a5fd10..79878ae4907091b2009032a2ad1a2d05bcda26eb 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java
@@ -6,6 +6,7 @@ import javax.annotation.Nullable;

View File

@@ -37,10 +37,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
index 7491e075baebc7d412d35593bb844b200e304447..9a14425e7de3eeca8f489bce03f5c9127811a6aa 100644
index 54f7bdd0e003ed170d739593199a2bb8ff0bbd68..bcf1cce649c388596ad60244ffa947b48669c640 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
@@ -177,6 +177,7 @@ public class TheEndGatewayBlockEntity extends TheEndPortalBlockEntity {
@@ -178,6 +178,7 @@ public class TheEndGatewayBlockEntity extends TheEndPortalBlockEntity {
public static void teleportEntity(Level world, BlockPos pos, BlockState state, Entity entity, TheEndGatewayBlockEntity blockEntity) {
if (world instanceof ServerLevel && !blockEntity.isCoolingDown()) {
@@ -49,11 +49,11 @@ index 7491e075baebc7d412d35593bb844b200e304447..9a14425e7de3eeca8f489bce03f5c912
blockEntity.teleportCooldown = 100;
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 773cb09de02eac19ddb5eea62fd2284a183366cd..a091dc6407580c9818424ae9428e0a15489f5c24 100644
index 9abfdc9e1725b37987b661cd89b32cc43595396f..01cc8c68e73392db88bd79e7fabd54a4262164b1 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -102,6 +102,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean sandDuping = true; // Gale - Purpur - make sand duping fix configurable
@@ -100,6 +100,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public class Fixes extends ConfigurationPart {
public boolean tripwireDuping = true; // Gale - Leaf - make tripwire duping fix configurable
public boolean keepMooshroomRotationAfterShearing = true; // Gale - Purpur - fix cow rotation when shearing mooshroom
+ public boolean checkCanChangeDimensionsBeforeUseEndGateway = false; // Gale - Purpur - end gateway should check if entity can use portal

View File

@@ -42,10 +42,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
index 42ebd91196ae420eee57f4380abc558555457163..267284a45e710a230c1f1a68db398a39bcd9a644 100644
index e8faca6e443239968f0111519f9e5cd018ed3297..488a98e20b4f405d1ce4a224d2d2b5151dec369b 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
@@ -319,7 +319,7 @@ public abstract class AbstractArrow extends Projectile {
@@ -320,7 +320,7 @@ public abstract class AbstractArrow extends Projectile {
Vec3 vec3d = this.getDeltaMovement();
this.setDeltaMovement(vec3d.multiply((double) (this.random.nextFloat() * 0.2F), (double) (this.random.nextFloat() * 0.2F), (double) (this.random.nextFloat() * 0.2F)));
@@ -55,10 +55,10 @@ index 42ebd91196ae420eee57f4380abc558555457163..267284a45e710a230c1f1a68db398a39
@Override
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index a091dc6407580c9818424ae9428e0a15489f5c24..de850d184d57452529c5b6e2bfe2adf48360be3b 100644
index 01cc8c68e73392db88bd79e7fabd54a4262164b1..9660c8f7b3c87001caa7c1ddf5dbac9e7dc5feff 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -126,6 +126,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -124,6 +124,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
}

View File

@@ -13,10 +13,10 @@ As part of: JettPack (https://gitlab.com/Titaniumtown/JettPack)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 25ddf54a4c07c7be1f9ecafe411ff83f3522063d..3c0d21f964cd0ed4ead16ebd9d662059137ff8b3 100644
index 40fba831975d21eb4ba9aacbf25cdaca082de6aa..8730ebf74eca319b3d70db5504c134e9d492c366 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -489,7 +489,13 @@ public abstract class PlayerList {
@@ -490,7 +490,13 @@ public abstract class PlayerList {
scoreboard.addPlayerToTeam(player.getScoreboardName(), collideRuleTeam);
}
// Paper end - Configurable player collision

View File

@@ -81,7 +81,7 @@ index ae60bd96b5284d54676d8e7e4dd5d170b526ec1e..b269b9b55c10542b16af301be3f43798
return true;
}
diff --git a/src/main/java/io/papermc/paper/world/ChunkEntitySlices.java b/src/main/java/io/papermc/paper/world/ChunkEntitySlices.java
index 7e8dc9e8f381abfdcce2746edc93122d623622d1..66721a27cc9a373a12dffb72c4a403473377eff6 100644
index c78cbec447032de9fe69748591bef6be300160ed..d8b22d51d28692182cd75affd6cb552971fed42f 100644
--- a/src/main/java/io/papermc/paper/world/ChunkEntitySlices.java
+++ b/src/main/java/io/papermc/paper/world/ChunkEntitySlices.java
@@ -2,9 +2,9 @@ package io.papermc.paper.world;
@@ -95,7 +95,7 @@ index 7e8dc9e8f381abfdcce2746edc93122d623622d1..66721a27cc9a373a12dffb72c4a40347
import net.minecraft.nbt.CompoundTag;
import net.minecraft.server.level.ChunkHolder;
import net.minecraft.server.level.FullChunkStatus;
@@ -82,7 +82,7 @@ public final class ChunkEntitySlices {
@@ -83,7 +83,7 @@ public final class ChunkEntitySlices {
}
}
@@ -104,7 +104,7 @@ index 7e8dc9e8f381abfdcce2746edc93122d623622d1..66721a27cc9a373a12dffb72c4a40347
}
public CompoundTag save() {
@@ -303,7 +303,7 @@ public final class ChunkEntitySlices {
@@ -304,7 +304,7 @@ public final class ChunkEntitySlices {
protected static final class BasicEntityList<E extends Entity> {
@@ -113,7 +113,7 @@ index 7e8dc9e8f381abfdcce2746edc93122d623622d1..66721a27cc9a373a12dffb72c4a40347
protected static final int DEFAULT_CAPACITY = 4;
protected E[] storage;
@@ -314,7 +314,7 @@ public final class ChunkEntitySlices {
@@ -315,7 +315,7 @@ public final class ChunkEntitySlices {
}
public BasicEntityList(final int cap) {
@@ -122,7 +122,7 @@ index 7e8dc9e8f381abfdcce2746edc93122d623622d1..66721a27cc9a373a12dffb72c4a40347
}
public boolean isEmpty() {
@@ -326,7 +326,7 @@ public final class ChunkEntitySlices {
@@ -327,7 +327,7 @@ public final class ChunkEntitySlices {
}
private void resize() {
@@ -355,7 +355,7 @@ index 4716f8bd8a64d4f20f0d5957c1e7fabf63020f43..9e37578ac79a63bb72cc04aae7ba4f6f
if (enumprotocoldirection != this.receiving) {
diff --git a/src/main/java/net/minecraft/network/chat/contents/TranslatableContents.java b/src/main/java/net/minecraft/network/chat/contents/TranslatableContents.java
index d45e39bc009281c298f3dfae113dc87f2b3b1fbd..25f25c3e2882e11a80142d3282a020d28828edef 100644
index 084ffde43447f6ff5e45e9fe3fc6a86bde65fd5a..4eafe7ee45f9dc071a8d0a7a4fa9b0800334d995 100644
--- a/src/main/java/net/minecraft/network/chat/contents/TranslatableContents.java
+++ b/src/main/java/net/minecraft/network/chat/contents/TranslatableContents.java
@@ -15,6 +15,8 @@ import java.util.function.Consumer;
@@ -403,7 +403,7 @@ index 733ff850468c8a6474a15a455e89bf1195dd7e65..04249a147f2c0a41499d1149a1f97496
for (int j = 0; j < i; ++j) {
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3fa891050ef7e62668ecdcf939d702db92514b23..e18764104c306de17ced824b96e163b2466b8dba 100644
index 86a2f955dc981dd95091b70d6600ff94ce4dc714..8f5b90dc2af62336116fae24ed3248bfcf975883 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -38,6 +38,8 @@ import java.util.stream.Collectors;
@@ -434,7 +434,7 @@ index 3fa891050ef7e62668ecdcf939d702db92514b23..e18764104c306de17ced824b96e163b2
return ret;
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 5bb93e13a8c7e5baf98e17c65e65e245c5d94d82..9f5c600680c3540250cfb7c0372cd1d0fa66d34d 100644
index 572bfe0be19d549e11d9b551794d615c5e194217..e66becca5d422eaf2242c8fcfb87a1ac0a5ae063 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -28,6 +28,8 @@ import java.util.function.UnaryOperator;
@@ -511,7 +511,7 @@ index 0818657745d48cd3367263e2d7650361ca7a4c02..a87be49d91e0bd95d5d5aa9f140f3f29
ServerConfigurationPacketListenerImpl serverconfigurationpacketlistenerimpl = new ServerConfigurationPacketListenerImpl(this.server, this.connection, commonlistenercookie, this.player); // CraftBukkit
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 259807423a6191ec38802a9e663cbc0371edce26..c17ce75c599874d0db003b787e41b4f2dca8f138 100644
index 8730ebf74eca319b3d70db5504c134e9d492c366..c28ad37a7b69992ef80aeffefb04028a084deb5c 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -25,6 +25,8 @@ import java.util.UUID;
@@ -524,18 +524,17 @@ index 259807423a6191ec38802a9e663cbc0371edce26..c17ce75c599874d0db003b787e41b4f2
import net.minecraft.FileUtil;
import net.minecraft.commands.CommandSourceStack;
diff --git a/src/main/java/net/minecraft/server/players/StoredUserList.java b/src/main/java/net/minecraft/server/players/StoredUserList.java
index 35f973cc2c0989256fa21abaf0327c2f36dbe4c9..219e0059418e6d64f5b859ba253c3cf3e91713cf 100644
index 7e133752ccb1ea7c0b4fa781feb1a88e2cfdcf6d..c524ca1eab9db011f8203835c43e244ff4101e87 100644
--- a/src/main/java/net/minecraft/server/players/StoredUserList.java
+++ b/src/main/java/net/minecraft/server/players/StoredUserList.java
@@ -1,7 +1,6 @@
// mc-dev import
@@ -1,6 +1,5 @@
package net.minecraft.server.players;
-import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.io.Files;
import com.google.gson.Gson;
@@ -22,6 +21,8 @@ import java.util.Map;
@@ -21,6 +20,8 @@ import java.util.Map;
import java.util.Objects;
import java.util.stream.Stream;
import javax.annotation.Nullable;
@@ -544,7 +543,7 @@ index 35f973cc2c0989256fa21abaf0327c2f36dbe4c9..219e0059418e6d64f5b859ba253c3cf3
import net.minecraft.Util;
import net.minecraft.util.GsonHelper;
import org.slf4j.Logger;
@@ -77,7 +78,7 @@ public abstract class StoredUserList<K, V extends StoredUserEntry<K>> {
@@ -76,7 +77,7 @@ public abstract class StoredUserList<K, V extends StoredUserEntry<K>> {
}
public String[] getUserList() {
@@ -604,10 +603,10 @@ index 2e324276ea4cd9e528c6a3f9a9ba394b378fe075..8e91714e3167ab0ad16df681bc080772
private EquipmentSlot(EquipmentSlot.Type type, int entityId, int armorStandId, String name) {
this.type = type;
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 6179e9d59d94e1412b750ebcf77f5e8c6eacf805..c8d83e1af99a0aa6c23d3c80ebcf449c21a1c016 100644
index 1798862ef457dddfa907ec5d903bd5461a044858..da8cbae05465cd36b87598507f2cd16ca1d82a38 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -3153,7 +3153,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -3161,7 +3161,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@Nullable
private Map<EquipmentSlot, ItemStack> collectEquipmentChanges() {
Map<EquipmentSlot, ItemStack> map = null;
@@ -617,10 +616,10 @@ index 6179e9d59d94e1412b750ebcf77f5e8c6eacf805..c8d83e1af99a0aa6c23d3c80ebcf449c
for (int j = 0; j < i; ++j) {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 2dfdeec25ef0d9a004601fd9b5050c881156de26..18ef2f62b2a6cb0d9a3ce7135f8ea8228665b830 100644
index dee9ee5e5917f48b8e1c078710c6d67de6de78d5..32f2132ead256e18531fa1abdd5e764f35573cd6 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -1062,7 +1062,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1063,7 +1063,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@Override
protected void dropCustomDeathLoot(DamageSource source, int lootingMultiplier, boolean allowDrops) {
super.dropCustomDeathLoot(source, lootingMultiplier, allowDrops);
@@ -629,7 +628,7 @@ index 2dfdeec25ef0d9a004601fd9b5050c881156de26..18ef2f62b2a6cb0d9a3ce7135f8ea822
int j = aenumitemslot.length;
for (int k = 0; k < j; ++k) {
@@ -1125,7 +1125,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1126,7 +1126,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
}
boolean flag = true;
@@ -638,7 +637,7 @@ index 2dfdeec25ef0d9a004601fd9b5050c881156de26..18ef2f62b2a6cb0d9a3ce7135f8ea822
int j = aenumitemslot.length;
for (int k = 0; k < j; ++k) {
@@ -1212,7 +1212,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1213,7 +1213,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
float f = localDifficulty.getSpecialMultiplier();
this.enchantSpawnedWeapon(random, f);
@@ -647,7 +646,7 @@ index 2dfdeec25ef0d9a004601fd9b5050c881156de26..18ef2f62b2a6cb0d9a3ce7135f8ea822
int i = aenumitemslot.length;
for (int j = 0; j < i; ++j) {
@@ -1431,7 +1431,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1432,7 +1432,7 @@ public abstract class Mob extends LivingEntity implements Targeting {
t0.setInvulnerable(this.isInvulnerable());
if (flag) {
t0.setCanPickUpLoot(this.canPickUpLoot());
@@ -722,7 +721,7 @@ index 6c2e8049c2197ddc912c1a0fc99c87beae81e25b..a13822a22ab524a0fb9fd998c4ada06b
private static Enchantment register(String name, Enchantment enchantment) {
return Registry.register(BuiltInRegistries.ENCHANTMENT, name, enchantment);
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 6ed2a91b01233850b399e33f507353b52f06fd91..c5ee421f127ccd089c085f5fe7d314a8376d9882 100644
index 9440dd58325df07521ef52373089e6989105ba4b..33cbba9f92cfbb6508dd8e2c5e35c63a49cdd85c 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -10,6 +10,8 @@ import java.util.function.Consumer;
@@ -734,7 +733,7 @@ index 6ed2a91b01233850b399e33f507353b52f06fd91..c5ee421f127ccd089c085f5fe7d314a8
import net.minecraft.CrashReport;
import net.minecraft.CrashReportCategory;
import net.minecraft.core.BlockPos;
@@ -1864,7 +1866,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -1873,7 +1875,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public org.bukkit.entity.Entity[] getChunkEntities(int chunkX, int chunkZ) {
io.papermc.paper.world.ChunkEntitySlices slices = ((ServerLevel)this).getEntityLookup().getChunk(chunkX, chunkZ);
if (slices == null) {
@@ -784,7 +783,7 @@ index f9084e2605d7403721fe6b714bfad051f932aaef..689ba0cc4d3571efc2664e45fde00af7
@Override
diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
index d04fc84eef11adb5ea64077f48794b6ed7fb3ada..a1ee7133d182dcbacf474172a9f1b5c0219102c6 100644
index 89d06253b00604114e543ebbe12a9993ae95dc41..a6d2de3b8231168c7c38b4a83e99b2836c00af7c 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
@@ -9,6 +9,8 @@ import java.util.Iterator;

View File

@@ -13,10 +13,10 @@ As part of: JettPack (https://gitlab.com/Titaniumtown/JettPack)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index c8750970aceb5beb87f1dc46c7a755c8dac4ca03..14df1b1844417809fe35f7e18e5958806e8a6bd8 100644
index f369a104d147205520f3e89dccd6180db0773121..36045fcebdf2f8d0a918fc831fb49c094cc3b527 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -307,7 +307,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -308,7 +308,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public double xo;
public double yo;
public double zo;
@@ -25,7 +25,7 @@ index c8750970aceb5beb87f1dc46c7a755c8dac4ca03..14df1b1844417809fe35f7e18e595880
public BlockPos blockPosition; // Gale - Pufferfish - optimize entity coordinate key - private -> public
private ChunkPos chunkPosition;
private Vec3 deltaMovement;
@@ -2005,9 +2005,17 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2018,9 +2018,17 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
/** @deprecated */
@Deprecated
public float getLightLevelDependentMagicValue() {
@@ -45,10 +45,10 @@ index c8750970aceb5beb87f1dc46c7a755c8dac4ca03..14df1b1844417809fe35f7e18e595880
this.absMoveTo(x, y, z);
this.setYRot(yaw % 360.0F);
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 18ef2f62b2a6cb0d9a3ce7135f8ea8228665b830..8f91e97240c50a6bbef6b7c71b5e3002a4ef79a8 100644
index 32f2132ead256e18531fa1abdd5e764f35573cd6..a676228a7f4d8d4b7e54a641c1df1f1b0d262f10 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -1697,13 +1697,29 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -1698,13 +1698,29 @@ public abstract class Mob extends LivingEntity implements Targeting {
}

View File

@@ -13,7 +13,7 @@ As part of: Lithium (https://github.com/CaffeineMC/lithium-fabric)
Licensed under: LGPL-3.0 (https://www.gnu.org/licenses/lgpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
index ce2804271bb67803c60c9121aec6c8dc0e99a1d9..86fc528551c2c90c78783d4d46a4a2c52e4efe41 100644
index fda42ae6579819aa140766829d852633415e8d76..5e7b978a3019bc31ef94c1c666a3abdf380ced5c 100644
--- a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
+++ b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
@@ -11,6 +11,8 @@ import java.util.Set;

View File

@@ -13,7 +13,7 @@ As part of: Lithium (https://github.com/CaffeineMC/lithium-fabric)
Licensed under: LGPL-3.0 (https://www.gnu.org/licenses/lgpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
index 526494aab4212311c3a8cdb9288629a39cc0eeb9..c5cdeb3a86453106c092c6f108da23ef54cb8123 100644
index 58b82ac5b861ccb489f5586452ae020050be5ec8..0c804e597b08eb1fce53a1161aad3405b63c8058 100644
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
@@ -1,8 +1,6 @@

View File

@@ -33,7 +33,7 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRA
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java
index 6a3be2fe851e14f2c9f8b38ad8d27fe36b5240d3..94827fd9a779ccd50b8a4d46f7aae6ca8111fb4a 100644
index a53dd1ea02bd19826cd9fd337459b08e9533bce8..dec666713a1d3b5e3f2aa4bcbe8094ade8be1b05 100644
--- a/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java
@@ -1,5 +1,7 @@

View File

@@ -13,10 +13,10 @@ As part of: Lithium (https://github.com/CaffeineMC/lithium-fabric)
Licensed under: LGPL-3.0 (https://www.gnu.org/licenses/lgpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index c8d83e1af99a0aa6c23d3c80ebcf449c21a1c016..03943255e02ef9173f6857fa3639dfa53c2b9d16 100644
index da8cbae05465cd36b87598507f2cd16ca1d82a38..6560fda6525dceddc91b95c8dd82b10debd6b62f 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -582,11 +582,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -583,11 +583,10 @@ public abstract class LivingEntity extends Entity implements Attackable {
}
protected void tryAddFrost() {
@@ -29,7 +29,7 @@ index c8d83e1af99a0aa6c23d3c80ebcf449c21a1c016..03943255e02ef9173f6857fa3639dfa5
if (attributemodifiable == null) {
return;
@@ -596,7 +595,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -597,7 +596,6 @@ public abstract class LivingEntity extends Entity implements Attackable {
attributemodifiable.addTransientModifier(new AttributeModifier(LivingEntity.SPEED_MODIFIER_POWDER_SNOW_UUID, "Powder snow slow", (double) f, AttributeModifier.Operation.ADDITION));
}

View File

@@ -233,7 +233,7 @@ index 8bafd5fd7499ba4a04bf706cfd1e156073716e21..b7df9eac4ee23fa489368af82ec9c07d
+ <T> void compact(Palette<T> srcPalette, Palette<T> dstPalette, short[] out); // Gale - Lithium - faster chunk serialization
}
diff --git a/src/main/java/net/minecraft/util/SimpleBitStorage.java b/src/main/java/net/minecraft/util/SimpleBitStorage.java
index e4d0d7e8fc58b8f9f614d74a141e452166e0364c..7a1e8033e561b14ca8f04d8888634e91eee32b06 100644
index 453c1d7e01970fd817d27f59c3b00ffc70e8ca0c..0bb4312f559a2e76dd8dab478085f114c9c5ca3f 100644
--- a/src/main/java/net/minecraft/util/SimpleBitStorage.java
+++ b/src/main/java/net/minecraft/util/SimpleBitStorage.java
@@ -2,6 +2,7 @@ package net.minecraft.util;
@@ -291,7 +291,7 @@ index e4d0d7e8fc58b8f9f614d74a141e452166e0364c..7a1e8033e561b14ca8f04d8888634e91
+
}
diff --git a/src/main/java/net/minecraft/util/ZeroBitStorage.java b/src/main/java/net/minecraft/util/ZeroBitStorage.java
index 79b223ef3c86f3bc035e9abd84aa080b5d722f61..81ed765bfe50e3e469abbcdb8633bdacd2adf8ba 100644
index d06b49a47c2dcb4b235e5353f347640ee34f1da3..4f4d086a0c10526d115853ad7c9792a552f46d5a 100644
--- a/src/main/java/net/minecraft/util/ZeroBitStorage.java
+++ b/src/main/java/net/minecraft/util/ZeroBitStorage.java
@@ -2,6 +2,7 @@ package net.minecraft.util;
@@ -321,7 +321,7 @@ index acae3eb30e0689048937f479dc3070f0688abdad..4b79f0474a9013dd4fdb68c6363ca194
int onResize(int newBits, T object);
}
diff --git a/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java b/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java
index 16fbc633de3a1d9e5e8c65ae107397a6f0e50811..8aa1f1fab8db57b971e202aef7c9d37bc352bc60 100644
index 983799520ce052d98c9231f4f7925492d4f7d5c9..a8cbb6fbeb169637c36a658ec5d086c911b175ba 100644
--- a/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java
+++ b/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java
@@ -23,8 +23,25 @@ import net.minecraft.util.Mth;

View File

@@ -54,10 +54,10 @@ index 5a0a6de4c6f0d554b9efbb8b3dcf4e0c5bee7baf..ea0df00966cf9900a8a0153099bbb04e
public Raider getLeader(int wave) {
return (Raider) this.groupToLeaderMap.get(wave);
diff --git a/src/main/java/net/minecraft/world/entity/raid/Raider.java b/src/main/java/net/minecraft/world/entity/raid/Raider.java
index 226fb5c88dd43c8008c5237299ef80db9e847af7..a71e6206c6a89708c5d312a73b1144c38f1271c8 100644
index 93bbf7556f9599e9dd90761085a57d78bd521867..031355802d86f51489a58561b8806d7d672e4a3b 100644
--- a/src/main/java/net/minecraft/world/entity/raid/Raider.java
+++ b/src/main/java/net/minecraft/world/entity/raid/Raider.java
@@ -47,7 +47,7 @@ public abstract class Raider extends PatrollingMonster {
@@ -50,7 +50,7 @@ public abstract class Raider extends PatrollingMonster {
protected static final EntityDataAccessor<Boolean> IS_CELEBRATING = SynchedEntityData.defineId(Raider.class, EntityDataSerializers.BOOLEAN);
static final Predicate<ItemEntity> ALLOWED_ITEMS = (entityitem) -> {
@@ -66,7 +66,7 @@ index 226fb5c88dd43c8008c5237299ef80db9e847af7..a71e6206c6a89708c5d312a73b1144c3
};
@Nullable
protected Raid raid;
@@ -149,7 +149,7 @@ public abstract class Raider extends PatrollingMonster {
@@ -152,7 +152,7 @@ public abstract class Raider extends PatrollingMonster {
}
}
@@ -75,7 +75,7 @@ index 226fb5c88dd43c8008c5237299ef80db9e847af7..a71e6206c6a89708c5d312a73b1144c3
MobEffectInstance mobeffect = entityhuman.getEffect(MobEffects.BAD_OMEN);
byte b0 = 1;
int i;
@@ -244,7 +244,7 @@ public abstract class Raider extends PatrollingMonster {
@@ -247,7 +247,7 @@ public abstract class Raider extends PatrollingMonster {
ItemStack itemstack = item.getItem();
boolean flag = this.hasActiveRaid() && this.getCurrentRaid().getLeader(this.getWave()) != null;
@@ -84,7 +84,7 @@ index 226fb5c88dd43c8008c5237299ef80db9e847af7..a71e6206c6a89708c5d312a73b1144c3
// Paper start - EntityPickupItemEvent fixes
if (org.bukkit.craftbukkit.event.CraftEventFactory.callEntityPickupItemEvent(this, item, 0, false).isCancelled()) {
return;
@@ -322,7 +322,7 @@ public abstract class Raider extends PatrollingMonster {
@@ -325,7 +325,7 @@ public abstract class Raider extends PatrollingMonster {
if (!this.mob.level().getGameRules().getBoolean(GameRules.RULE_MOBGRIEFING) || !this.mob.canPickUpLoot()) return false; // Paper - respect game and entity rules for picking up items
Raid raid = this.mob.getCurrentRaid();

View File

@@ -115,7 +115,7 @@ index 0000000000000000000000000000000000000000..f2f10b651e4fbecdd1ea1bc28ebf40d6
+
+}
diff --git a/src/main/java/net/minecraft/server/level/WorldGenRegion.java b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
index 96e811380c891009f2e39ea23c822dc5254a1f73..0b900426ff70af206df96a08c56afedfba1f91ad 100644
index 12898276aae034673484cd60cb598a520a47ce21..21b72322232c5e0c90f579f1816bea9b372767a9 100644
--- a/src/main/java/net/minecraft/server/level/WorldGenRegion.java
+++ b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
@@ -8,6 +8,7 @@ import java.util.concurrent.atomic.AtomicLong;

View File

@@ -13,7 +13,7 @@ As part of: Lithium (https://github.com/CaffeineMC/lithium-fabric)
Licensed under: LGPL-3.0 (https://www.gnu.org/licenses/lgpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator.java b/src/main/java/net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator.java
index 58609a0911c4e32b6f80f050cd3d23f70ad75b1b..fc6f18f7606f6ede8264e0cf2d1ca60b03a7a364 100644
index 98c7f695093acbcf9382a5f07a7a89e373709763..b6059fdc93bcbede66679081c9d1ff564838ac7a 100644
--- a/src/main/java/net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator.java
+++ b/src/main/java/net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator.java
@@ -62,12 +62,17 @@ public final class NoiseBasedChunkGenerator extends ChunkGenerator {

View File

@@ -212,7 +212,7 @@ index 75dc06a3041bfdfb08c914eb50cfa282ae9eb2fe..53b0519bbc5d52490040eaf0fe449648
} else {
brain.eraseMemory(MemoryModuleType.SECONDARY_JOB_SITE);
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 e02560e9d4c3a1503862e357fe501b05103052b9..53da46274f3cb2767b20e6959e2a0d01c1899750 100644
index 5fb3a32991b32132b0db56933671d2f999df667d..d88cebe9a348ec99bff05c650d101c80cc38c747 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -90,6 +90,7 @@ import net.minecraft.world.item.trading.MerchantOffers;
@@ -223,7 +223,7 @@ index e02560e9d4c3a1503862e357fe501b05103052b9..53da46274f3cb2767b20e6959e2a0d01
import org.slf4j.Logger;
// CraftBukkit start
@@ -105,8 +106,9 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -106,8 +107,9 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
private static final EntityDataAccessor<VillagerData> DATA_VILLAGER_DATA = SynchedEntityData.defineId(Villager.class, EntityDataSerializers.VILLAGER_DATA);
public static final int BREEDING_FOOD_THRESHOLD = 12;
public static final Map<Item, Integer> FOOD_POINTS = ImmutableMap.of(Items.BREAD, 4, Items.POTATO, 1, Items.CARROT, 1, Items.BEETROOT, 1);
@@ -234,7 +234,7 @@ index e02560e9d4c3a1503862e357fe501b05103052b9..53da46274f3cb2767b20e6959e2a0d01
private static final int MAX_GOSSIP_TOPICS = 10;
private static final int GOSSIP_COOLDOWN = 1200;
private static final int GOSSIP_DECAY_INTERVAL = 24000;
@@ -915,7 +917,28 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -916,7 +918,28 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
public boolean wantsToPickUp(ItemStack stack) {
Item item = stack.getItem();

View File

@@ -13,10 +13,10 @@ As part of: VMP (https://github.com/RelativityMC/VMP-fabric)
Licensed under: MIT (https://opensource.org/licenses/MIT)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 14df1b1844417809fe35f7e18e5958806e8a6bd8..d568cac12b2a34b8f8317d5fe1906dd4994fe0b4 100644
index 36045fcebdf2f8d0a918fc831fb49c094cc3b527..4fce39620c09189645d1c92311bba06c10b853f1 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -316,6 +316,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -317,6 +317,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public float yRotO;
public float xRotO;
private AABB bb;
@@ -24,7 +24,7 @@ index 14df1b1844417809fe35f7e18e5958806e8a6bd8..d568cac12b2a34b8f8317d5fe1906dd4
public boolean onGround;
public boolean horizontalCollision;
public boolean verticalCollision;
@@ -1075,6 +1076,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1088,6 +1089,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// Paper end - detailed watchdog information
public void move(MoverType movementType, Vec3 movement) {
@@ -36,7 +36,7 @@ index 14df1b1844417809fe35f7e18e5958806e8a6bd8..d568cac12b2a34b8f8317d5fe1906dd4
final Vec3 originalMovement = movement; // Paper - Expose pre-collision velocity
// Paper start - detailed watchdog information
io.papermc.paper.util.TickThread.ensureTickThread("Cannot move an entity off-main");
@@ -4073,6 +4079,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4089,6 +4095,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public final void setBoundingBox(AABB boundingBox) {

View File

@@ -13,7 +13,7 @@ As part of: VMP (https://github.com/RelativityMC/VMP-fabric)
Licensed under: MIT (https://opensource.org/licenses/MIT)
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 7054f91b66a1bac9cd2ea9fd14c7ff94190cadcd..322fca6749d6f7fe432e3510c22ab369ad2db93f 100644
index 0d7bc05bd4a0195ca3136d0e876907eac2da79b9..1a5f1c825598dbc05f446273632ed8c4a45ef43a 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -14,6 +14,7 @@ import com.mojang.datafixers.util.Either;

View File

@@ -110,7 +110,7 @@ index 1d80678f7e8f658e43616f0baf723f096a99122a..865f244de1605303f22d8944174b0fe0
DyeColor enumcolor1 = ((Sheep) secondParent).getColor();
CraftingContainer inventorycrafting = Sheep.makeContainer(enumcolor, enumcolor1);
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index de850d184d57452529c5b6e2bfe2adf48360be3b..0f8edacfeafb77f722af246a8d9413f82a045cb3 100644
index 9660c8f7b3c87001caa7c1ddf5dbac9e7dc5feff..046957e51aa09f38f44e2ad0e48f7e2e254ec78e 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -34,6 +34,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {

View File

@@ -13,10 +13,10 @@ As part of: Slice (https://github.com/Cryptite/Slice)
Licensed under: MIT (https://opensource.org/licenses/MIT)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 54a95ea88f79f58d1214a0e6a3d8fe6492a53f3c..ab0ebade8eeb125007884acabdd5d1acb3ecf9b4 100644
index 4fce39620c09189645d1c92311bba06c10b853f1..8d2820243903352ead1a584cfb4079a22b44be8b 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -878,7 +878,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -891,7 +891,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.checkBelowWorld();
if (!this.level().isClientSide) {
@@ -31,10 +31,10 @@ index 54a95ea88f79f58d1214a0e6a3d8fe6492a53f3c..ab0ebade8eeb125007884acabdd5d1ac
this.firstTick = false;
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 0f8edacfeafb77f722af246a8d9413f82a045cb3..492a279f080432b2340007be159d9bcba02f174b 100644
index 046957e51aa09f38f44e2ad0e48f7e2e254ec78e..d6d2a8b922fe06fc00090acb2ea06cb8d70eb88e 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -129,6 +129,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -127,6 +127,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean arrowMovementResetsDespawnCounter = true; // Gale - Purpur - make arrow movement resetting despawn counter configurable
public double entityWakeUpDurationRatioStandardDeviation = 0.2; // Gale - variable entity wake-up duration

View File

@@ -13,7 +13,7 @@ As part of: SportPaper (https://github.com/Electroid/SportPaper)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index e18764104c306de17ced824b96e163b2466b8dba..1591e201ebca4354d5912d3f803f59759af1ba6e 100644
index 8f5b90dc2af62336116fae24ed3248bfcf975883..8d517617e38edf7b6cd49f32f404f2f80c014f66 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1737,7 +1737,17 @@ public class ServerLevel extends Level implements WorldGenLevel {

View File

@@ -37,7 +37,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8afd8a1db0 100644
index c28ad37a7b69992ef80aeffefb04028a084deb5c..2cbac277c6f404458d2277c37287acb382e733ad 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -13,6 +13,8 @@ import java.net.SocketAddress;
@@ -49,7 +49,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
import java.util.Collection;
import java.util.EnumSet;
import java.util.Iterator;
@@ -133,10 +135,11 @@ public abstract class PlayerList {
@@ -134,10 +136,11 @@ public abstract class PlayerList {
public static final Component CHAT_FILTERED_FULL = Component.translatable("chat.filtered_full");
public static final Component DUPLICATE_LOGIN_DISCONNECT_MESSAGE = Component.translatable("multiplayer.disconnect.duplicate_login");
private static final Logger LOGGER = LogUtils.getLogger();
@@ -62,7 +62,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
private final Map<UUID, ServerPlayer> playersByUUID = Maps.newHashMap();
private final UserBanList bans;
private final IpBanList ipBans;
@@ -327,6 +330,7 @@ public abstract class PlayerList {
@@ -328,6 +331,7 @@ public abstract class PlayerList {
// entityplayer.connection.send(ClientboundPlayerInfoUpdatePacket.createPlayerInitializing(this.players)); // CraftBukkit - replaced with loop below
this.players.add(player);
@@ -70,7 +70,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
this.playersByName.put(player.getScoreboardName().toLowerCase(java.util.Locale.ROOT), player); // Spigot
this.playersByUUID.put(player.getUUID(), player);
// this.broadcastAll(ClientboundPlayerInfoUpdatePacket.createPlayerInitializing(List.of(entityplayer))); // CraftBukkit - replaced with loop below
@@ -670,6 +674,7 @@ public abstract class PlayerList {
@@ -671,6 +675,7 @@ public abstract class PlayerList {
entityplayer.retireScheduler(); // Paper - Folia schedulers
entityplayer.getAdvancements().stopListening();
this.players.remove(entityplayer);
@@ -78,7 +78,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
this.server.getCustomBossEvents().onPlayerDisconnect(entityplayer);
UUID uuid = entityplayer.getUUID();
@@ -831,6 +836,7 @@ public abstract class PlayerList {
@@ -832,6 +837,7 @@ public abstract class PlayerList {
// Paper end - Expand PlayerRespawnEvent
entityplayer.stopRiding(); // CraftBukkit
this.players.remove(entityplayer);
@@ -86,7 +86,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
entityplayer.serverLevel().removePlayerImmediately(entityplayer, Entity.RemovalReason.DISCARDED);
BlockPos blockposition = entityplayer.getRespawnPosition();
@@ -967,6 +973,7 @@ public abstract class PlayerList {
@@ -968,6 +974,7 @@ public abstract class PlayerList {
if (!entityplayer.connection.isDisconnected()) {
worldserver1.addRespawnedPlayer(entityplayer1);
this.players.add(entityplayer1);
@@ -94,7 +94,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
this.playersByName.put(entityplayer1.getScoreboardName().toLowerCase(java.util.Locale.ROOT), entityplayer1); // Spigot
this.playersByUUID.put(entityplayer1.getUUID(), entityplayer1);
}
@@ -1025,20 +1032,55 @@ public abstract class PlayerList {
@@ -1026,20 +1033,55 @@ public abstract class PlayerList {
this.sendPlayerPermissionLevel(player, i, recalculatePermissions); // Paper - avoid recalculating permissions if possible
}
@@ -157,7 +157,7 @@ index c17ce75c599874d0db003b787e41b4f2dca8f138..a15ce3fa047a3130288ef7006163ff8a
}
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
index 9286d41a9e61c03e56195669a8da17c30c7157e7..45dccd72ffb674ef58d8bcf379001be008ef9b99 100644
index e1b2b6a55d0a837d2a447dcc636a9f29aa4597e7..d330bc19eff2d2147eec2ad52bdeb1d12f2a5a1f 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -39,6 +39,7 @@ import net.minecraft.network.syncher.SynchedEntityData;
@@ -168,7 +168,7 @@ index 9286d41a9e61c03e56195669a8da17c30c7157e7..45dccd72ffb674ef58d8bcf379001be0
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.sounds.SoundSource;
@@ -193,12 +194,15 @@ public abstract class Player extends LivingEntity {
@@ -194,12 +195,15 @@ public abstract class Player extends LivingEntity {
}
// CraftBukkit end

View File

@@ -37,10 +37,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 18f8e64b17d482066f74a4790494552036b12454..8c07bb29d28c7eacebfedb4ef90a8a441353883e 100644
index 2cbac277c6f404458d2277c37287acb382e733ad..7809a28bb9029d4ab5a995471bb1b9133305598c 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1068,14 +1068,18 @@ public abstract class PlayerList {
@@ -1069,14 +1069,18 @@ public abstract class PlayerList {
// Gale start - Purpur - spread out sending all player info
ServerPlayer[] sendAllPlayerInfoBucket = this.sendAllPlayerInfoBuckets[this.sendAllPlayerInfoIn];
if (sendAllPlayerInfoBucket != null) {

View File

@@ -129,7 +129,7 @@ index e7583996cc6d750cbd72f749de39ecded56d7f7c..d791c2f2facfc46d8664225c8b28f95f
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 4d3caaf289689a640fa471f170d75964617230f1..9037a4a01128bf26b45aebd9dd2d91d23bd8e26d 100644
index e66becca5d422eaf2242c8fcfb87a1ac0a5ae063..3b2075b36093e5b9f507b2e9b0f04f62a6cabf03 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -8,6 +8,8 @@ import com.mojang.brigadier.StringReader;
@@ -141,7 +141,7 @@ index 4d3caaf289689a640fa471f170d75964617230f1..9037a4a01128bf26b45aebd9dd2d91d2
import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap;
import it.unimi.dsi.fastutil.objects.ObjectIterator;
import java.net.SocketAddress;
@@ -3396,6 +3398,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -3400,6 +3402,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
}
@Override

View File

@@ -7,7 +7,7 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index a7ab766fe5259a033d61979d24d78862805b00ea..c4a681cdcd4d9e94fa7ef68562b9e41c2390852d 100644
index a87be49d91e0bd95d5d5aa9f140f3f29f1c8b565..e072edfb1f51f3e219e6deb10b19b4b2502ea87f 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -94,7 +94,10 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,

View File

@@ -20,7 +20,7 @@ index a7b217ddbcbf92513bd38101fdfca2075505e267..840dc3c57dd60d5f16155fc0c6f8c9fe
this.debugLogging(pos, false, sequence, "too far");
} else if (pos.getY() >= worldHeight) {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 9037a4a01128bf26b45aebd9dd2d91d23bd8e26d..d8f012cb6b75384a042405f1903d9cd4858d6e94 100644
index 3b2075b36093e5b9f507b2e9b0f04f62a6cabf03..e71dfe3db4a2cf616d91c987a38da1509f379c88 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -250,7 +250,7 @@ import org.bukkit.inventory.SmithingInventory;
@@ -55,7 +55,7 @@ index 9037a4a01128bf26b45aebd9dd2d91d23bd8e26d..d8f012cb6b75384a042405f1903d9cd4
Vec3 vec3d2 = vec3d.subtract(vec3d1);
double d0 = 1.0000001D;
@@ -2716,7 +2723,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -2720,7 +2727,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
AABB axisalignedbb = entity.getBoundingBox();
@@ -86,7 +86,7 @@ index f46c16dd6ff9cd09ea579eecf99ce78c7eb39d49..430b8a2bb1639eeb7338e0f7b1030248
private void spawnDustParticles(Level world, BlockHitResult hitResult, BlockState state, Vec3 userRotation, HumanoidArm arm) {
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 492a279f080432b2340007be159d9bcba02f174b..68373c02373d9452613710915beb0d5951c2b531 100644
index d6d2a8b922fe06fc00090acb2ea06cb8d70eb88e..fe008b7e8033fcf5793d4ab8f6929a3c2dfe2a94 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -9,6 +9,7 @@ import io.papermc.paper.configuration.PaperConfigurations;
@@ -97,7 +97,7 @@ index 492a279f080432b2340007be159d9bcba02f174b..68373c02373d9452613710915beb0d59
import org.spongepowered.configurate.objectmapping.meta.Setting;
@SuppressWarnings({"FieldCanBeLocal", "FieldMayBeFinal", "NotNullFieldNotInitialized", "InnerClassMayBeStatic"})
@@ -132,6 +133,16 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -130,6 +131,16 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean hideFlamesOnEntitiesWithFireResistance = false; // Gale - Slice - hide flames on entities with fire resistance
public boolean tryRespawnEnderDragonAfterEndCrystalPlace = true; // Gale - Pufferfish - make ender dragon respawn attempt after placing end crystals configurable

View File

@@ -13,10 +13,10 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 7f4d86d470d87cb6e8da05a803617f15f37553cb..87290dd96c568386d28d0453a5bdad8d9b1edcbe 100644
index 8d2820243903352ead1a584cfb4079a22b44be8b..fa3084c310903824f8e266879251c5aaefc0c1e7 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3696,6 +3696,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -3712,6 +3712,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
Entity entity = this.getType().create(worldserver);
if (entity != null) {
@@ -31,10 +31,10 @@ index 7f4d86d470d87cb6e8da05a803617f15f37553cb..87290dd96c568386d28d0453a5bdad8d
entity.moveTo(position.x, position.y, position.z, yaw, pitch); // Paper - EntityPortalExitEvent
entity.setDeltaMovement(velocity); // Paper - EntityPortalExitEvent
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 68373c02373d9452613710915beb0d5951c2b531..04e7ba1e2a80dffacc4063872ce4458577876f9f 100644
index fe008b7e8033fcf5793d4ab8f6929a3c2dfe2a94..7f1be08866a4369855573f5fa3bf5397d5923f45 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -128,6 +128,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -126,6 +126,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {
}

View File

@@ -13,7 +13,7 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java b/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
index 7d7d37334321c844958ce09e77547dd61dcba6c8..0b899372d5e7ebbb490684514e8f764efb46f3d0 100644
index ed80960777b18faca2d6a99783e53daf5fa19e09..3380125f68b865977ac627579615820405bc98df 100644
--- a/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
+++ b/src/main/java/net/minecraft/world/level/levelgen/PhantomSpawner.java
@@ -71,7 +71,15 @@ public class PhantomSpawner implements CustomSpawner {
@@ -34,7 +34,7 @@ index 7d7d37334321c844958ce09e77547dd61dcba6c8..0b899372d5e7ebbb490684514e8f764e
if (NaturalSpawner.isValidEmptySpawnBlock(world, blockposition1, iblockdata, fluid, EntityType.PHANTOM)) {
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 04e7ba1e2a80dffacc4063872ce4458577876f9f..7c9ae73edd465e7cfc365ca45c298b6a384faba3 100644
index 7f1be08866a4369855573f5fa3bf5397d5923f45..2919c7727d331dde6fc4dfd94e57fe2abaf9dc78 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -93,6 +93,11 @@ public class GaleWorldConfiguration extends ConfigurationPart {

View File

@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 87290dd96c568386d28d0453a5bdad8d9b1edcbe..4c5c7d45a78e232b0ec7e8c140b70cfc4f1b2e4f 100644
index fa3084c310903824f8e266879251c5aaefc0c1e7..5ef482feccab75880e908b7ba511f3e324fd32a9 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4608,6 +4608,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4624,6 +4624,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return this.feetBlockState;
}
@@ -28,10 +28,10 @@ index 87290dd96c568386d28d0453a5bdad8d9b1edcbe..4c5c7d45a78e232b0ec7e8c140b70cfc
return this.chunkPosition;
}
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 03943255e02ef9173f6857fa3639dfa53c2b9d16..288f326b1b10d737184a0dd9bf45b6240cd96181 100644
index 6560fda6525dceddc91b95c8dd82b10debd6b62f..9b33b8b6aa769aceeb8080814b0682cbcb035ffb 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2030,19 +2030,43 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -2038,19 +2038,43 @@ public abstract class LivingEntity extends Entity implements Attackable {
public boolean onClimbableCached() {
if (!this.blockPosition().equals(this.lastClimbingPosition)) {
@@ -79,7 +79,7 @@ index 03943255e02ef9173f6857fa3639dfa53c2b9d16..288f326b1b10d737184a0dd9bf45b624
if (iblockdata.is(BlockTags.CLIMBABLE)) {
this.lastClimbablePos = Optional.of(blockposition);
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index 7c9ae73edd465e7cfc365ca45c298b6a384faba3..ef86f9e4b7f91b79f657b04cf3f745f3828719a9 100644
index 2919c7727d331dde6fc4dfd94e57fe2abaf9dc78..fdb02c7d0f0d5d9e954b564581293688edd99f36 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -96,6 +96,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {

View File

@@ -13,7 +13,7 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 198c49244eb4245cd284ae9397a90c185cb479fc..ec7276916e568f820baf9831f29b14fc9f42c1c0 100644
index 06b9fdd33fe888d298dfd24a67702a610233f10d..8d7cda352d1be1bd7638561d4727df9c51799803 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -2018,12 +2018,18 @@ public class ServerPlayer extends Player {
@@ -38,12 +38,12 @@ index 198c49244eb4245cd284ae9397a90c185cb479fc..ec7276916e568f820baf9831f29b14fc
@Override
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index ef86f9e4b7f91b79f657b04cf3f745f3828719a9..bb98290de37db5b4addc85ee2e3a5b5932dd58ee 100644
index fdb02c7d0f0d5d9e954b564581293688edd99f36..fb8ea1f6eaa26c4b72ba7952d189edb42bf8ae2f 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -109,6 +109,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public boolean sandDuping = true; // Gale - Purpur - make sand duping fix configurable
@@ -107,6 +107,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
public Fixes fixes;
public class Fixes extends ConfigurationPart {
public boolean tripwireDuping = true; // Gale - Leaf - make tripwire duping fix configurable
+ public boolean broadcastCritAnimationsAsTheEntityBeingCritted = false; // Gale - MultiPaper - broadcast crit animations as the entity being critted
public boolean keepMooshroomRotationAfterShearing = true; // Gale - Purpur - fix cow rotation when shearing mooshroom

View File

@@ -36,10 +36,10 @@ index 676e1580849e8942eb41c7a3a80f464138b22764..9e4d0493aa814a392742c9ddc1815211
} else {
this.wantedX = vec3.x;
diff --git a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
index bb98290de37db5b4addc85ee2e3a5b5932dd58ee..5fe6f626b63274e33f7c8b46441d17cf4ff9d533 100644
index fb8ea1f6eaa26c4b72ba7952d189edb42bf8ae2f..633bc62a41b2bc34496a507da9fe0e2eec10468d 100644
--- a/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
+++ b/src/main/java/org/galemc/gale/configuration/GaleWorldConfiguration.java
@@ -141,6 +141,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
@@ -139,6 +139,7 @@ public class GaleWorldConfiguration extends ConfigurationPart {
}
public boolean arrowMovementResetsDespawnCounter = true; // Gale - Purpur - make arrow movement resetting despawn counter configurable

View File

@@ -14,10 +14,10 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 4ffccef1c0c2646923e8016ddefc78a604b25f63..5720af3b629fbd10ac4a8c399623be4d4b2d8022 100644
index 7809a28bb9029d4ab5a995471bb1b9133305598c..893e034895d7f49662720c4f76b2c37f70199e76 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -276,6 +276,13 @@ public abstract class PlayerList {
@@ -277,6 +277,13 @@ public abstract class PlayerList {
org.spigotmc.event.player.PlayerSpawnLocationEvent ev = new com.destroystokyo.paper.event.player.PlayerInitialSpawnEvent(spawnPlayer, spawnPlayer.getLocation()); // Paper use our duplicate event
this.cserver.getPluginManager().callEvent(ev);

View File

@@ -13,7 +13,7 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index d422047e55c40062203e67d3fd5d3f2b9d5ce0f9..bd8002fa333a1e4afd690168ed6e89320ed3b9f8 100644
index 42be424249dc507849325a50a02f156a8b49a811..ffa626556fc2c07be37aa30ad70b0f847afdde0a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -43,6 +43,9 @@ import java.util.logging.Logger;

View File

@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index bd8002fa333a1e4afd690168ed6e89320ed3b9f8..50f19840cc88dac370058dc921cc24db2f1387bb 100644
index ffa626556fc2c07be37aa30ad70b0f847afdde0a..b346699cf90b2599e99bf7569f1e9e0a9c262054 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3065,6 +3065,24 @@ public final class CraftServer implements Server {
@@ -3080,6 +3080,24 @@ public final class CraftServer implements Server {
};
}

View File

@@ -79,10 +79,10 @@ index 6f3d488fda697299f604e813b8eaa06ed9de828f..c8f751ab99e7c9995f1d45193c9e9ddf
tps5.add(currentTps, diff);
tps15.add(currentTps, diff);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 50f19840cc88dac370058dc921cc24db2f1387bb..13815738d3c417a0d0a080666c38add06ebec5e2 100644
index b346699cf90b2599e99bf7569f1e9e0a9c262054..ea6ac89af65243dd9f5b6bae412b4eca9fce83cf 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3065,8 +3065,27 @@ public final class CraftServer implements Server {
@@ -3080,8 +3080,27 @@ public final class CraftServer implements Server {
};
}

View File

@@ -23,7 +23,7 @@ The above copyright notice and this permission notice shall be included in all c
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3f7be2c6c95f23e7ea1b03d4083e93c920ccdcf7..11433c92a7c9d5537710b220b93c83b939a00ab5 100644
index c8f751ab99e7c9995f1d45193c9e9ddf52b944c1..97f310630403427faa6c3e9b954f09367c596b7a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1105,6 +1105,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa

View File

@@ -23,10 +23,10 @@ The above copyright notice and this permission notice shall be included in all c
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 13815738d3c417a0d0a080666c38add06ebec5e2..3eda41407dbd193ccad8f3d47700754f24bb358a 100644
index ea6ac89af65243dd9f5b6bae412b4eca9fce83cf..859d009003637ba701cd13031edf491b4420249a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -3298,4 +3298,22 @@ public final class CraftServer implements Server {
@@ -3313,4 +3313,22 @@ public final class CraftServer implements Server {
}
// Paper end

View File

@@ -45,7 +45,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
index 45dccd72ffb674ef58d8bcf379001be008ef9b99..89b999b587e81a4a8a6ef0d7ea39af8894e92ba9 100644
index d330bc19eff2d2147eec2ad52bdeb1d12f2a5a1f..c300b272c820786c8c4b9d83e184c5969468e1e0 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -112,6 +112,7 @@ import net.minecraft.world.phys.AABB;
@@ -56,7 +56,7 @@ index 45dccd72ffb674ef58d8bcf379001be008ef9b99..89b999b587e81a4a8a6ef0d7ea39af88
import org.slf4j.Logger;
import org.bukkit.craftbukkit.entity.CraftHumanEntity;
import org.bukkit.craftbukkit.event.CraftEventFactory;
@@ -148,6 +149,7 @@ public abstract class Player extends LivingEntity {
@@ -149,6 +150,7 @@ public abstract class Player extends LivingEntity {
protected static final EntityDataAccessor<Byte> DATA_PLAYER_MAIN_HAND = SynchedEntityData.defineId(Player.class, EntityDataSerializers.BYTE);
protected static final EntityDataAccessor<CompoundTag> DATA_SHOULDER_LEFT = SynchedEntityData.defineId(Player.class, EntityDataSerializers.COMPOUND_TAG);
protected static final EntityDataAccessor<CompoundTag> DATA_SHOULDER_RIGHT = SynchedEntityData.defineId(Player.class, EntityDataSerializers.COMPOUND_TAG);
@@ -64,7 +64,7 @@ index 45dccd72ffb674ef58d8bcf379001be008ef9b99..89b999b587e81a4a8a6ef0d7ea39af88
private long timeEntitySatOnShoulder;
private final Inventory inventory = new Inventory(this);
protected PlayerEnderChestContainer enderChestInventory = new PlayerEnderChestContainer(this); // CraftBukkit - add "this" to constructor
@@ -283,19 +285,23 @@ public abstract class Player extends LivingEntity {
@@ -284,19 +286,23 @@ public abstract class Player extends LivingEntity {
this.moveCloak();
if (!this.level().isClientSide) {
this.foodData.tick(this);

View File

@@ -16,10 +16,10 @@ As part of: Akarin (https://github.com/Akarin-project/Akarin)
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4c5c7d45a78e232b0ec7e8c140b70cfc4f1b2e4f..053bcd67214a4ad9cb0407f568b475c51b83ac80 100644
index 5ef482feccab75880e908b7ba511f3e324fd32a9..8019a20da6c0eab22ff155db25427cf8b28a0be4 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2122,8 +2122,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2135,8 +2135,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public void playerTouch(Player player) {}
public void push(Entity entity) {

View File

@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 053bcd67214a4ad9cb0407f568b475c51b83ac80..68fe93725a37cb0f52401038c1bda141ba0a4068 100644
index 8019a20da6c0eab22ff155db25427cf8b28a0be4..4027ea7cb55dcb70c96cc2ada3b0da09c1dda8ad 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1239,9 +1239,19 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1252,9 +1252,19 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
this.tryCheckInsideBlocks();

View File

@@ -26,7 +26,7 @@ index b47a8a082170bcb630c4354be7c77a4cac71d105..b49e3f2cdc1fa5ff3723fae452404664
double d1 = (double) (center.y - maxRange);
double d2 = (double) (center.x + maxRange);
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 09e13d3bf936e8a4b1352a4733b7525c1886d8fa..0a0106d9192e6913f7579a4fdd77a9c0fc8366ba 100644
index 8d7cda352d1be1bd7638561d4727df9c51799803..f80b2d4e9a46d84fdaa0f674c562736a1e5c1635 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -453,7 +453,7 @@ public class ServerPlayer extends Player {
@@ -61,10 +61,10 @@ index 1ef089dbf83de35d875c00efdf468c397be56978..b9f5dc95f859acb8f8fd4739537485af
}
diff --git a/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java b/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java
index 5706c9b744b660d6f7639b8152dce82799c4b466..460aba465eac5cb8d25456c0d4d04a132cee43c7 100644
index 91497f5e6c07fcf1b05eca6846c51e1a15ed3bc0..32ba46c80b083cb3ef47bc0d4d393809a660cdc6 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java
@@ -86,7 +86,7 @@ public class FishingHook extends Projectile {
@@ -87,7 +87,7 @@ public class FishingHook extends Projectile {
private FishingHook(EntityType<? extends FishingHook> type, Level world, int luckOfTheSeaLevel, int lureLevel) {
super(type, world);
@@ -96,7 +96,7 @@ index ea0df00966cf9900a8a0153099bbb04e5b47116d..1168465f6b9414b08680660413c62967
this.level = world;
this.id = nbt.getInt("Id");
diff --git a/src/main/java/net/minecraft/world/level/Explosion.java b/src/main/java/net/minecraft/world/level/Explosion.java
index ce8e39d4bf4c7474e1e8694312e1985327a88e62..525e41f3c38c9a79e237f32ac49ba02ab3438c30 100644
index bb8d73d4022b1e13bb3e2bcf74b511f64fe476d2..aa784c1794b80b57fd9c1d738a744e0a8ab39d03 100644
--- a/src/main/java/net/minecraft/world/level/Explosion.java
+++ b/src/main/java/net/minecraft/world/level/Explosion.java
@@ -92,7 +92,7 @@ public class Explosion {
@@ -109,10 +109,10 @@ index ce8e39d4bf4c7474e1e8694312e1985327a88e62..525e41f3c38c9a79e237f32ac49ba02a
this.hitPlayers = Maps.newHashMap();
this.level = world;
diff --git a/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
index 850fc0906f23f1073e6d799222ed442b88af1bff..ff92b93dbffa6f3463c62d55cec535a3871ed7d8 100644
index bcf1cce649c388596ad60244ffa947b48669c640..0d3242be8fe0201e9179a78bd122a2669c42fbc5 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity.java
@@ -360,7 +360,7 @@ public class TheEndGatewayBlockEntity extends TheEndPortalBlockEntity {
@@ -361,7 +361,7 @@ public class TheEndGatewayBlockEntity extends TheEndPortalBlockEntity {
}
private static void spawnGatewayPortal(ServerLevel world, BlockPos pos, EndGatewayConfiguration config) {
@@ -122,7 +122,7 @@ index 850fc0906f23f1073e6d799222ed442b88af1bff..ff92b93dbffa6f3463c62d55cec535a3
@Override
diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
index 8d57a03793934c8c0b259974bd4d9f9c2cab884d..2bff5f04e67b47bb3fbd6c9b1d235be1bb829b03 100644
index d4f903c402765c6e8e1db99e148613748f530726..2f306fe10b06823d67f21e0a405a85fe360dbf56 100644
--- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
+++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
@@ -472,7 +472,7 @@ public class EndDragonFight {

View File

@@ -18,10 +18,10 @@ this patch is focused around the sensors used for ai
delete the line of sight cache less often and use a faster nearby comparison
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 288f326b1b10d737184a0dd9bf45b6240cd96181..2cbfec6b103503c5c6e742d3d68a722e6999d709 100644
index 9b33b8b6aa769aceeb8080814b0682cbcb035ffb..9e49ccc50ddd23c974dd0b82da538f8113820c84 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -1024,10 +1024,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -1032,10 +1032,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
}
if (entity != null) {

View File

@@ -7,7 +7,7 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
Gale - https://galemc.org
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 11433c92a7c9d5537710b220b93c83b939a00ab5..ff9cd1e0337400ccbab5eb3ec708bdad3d67d0f3 100644
index 97f310630403427faa6c3e9b954f09367c596b7a..fbdc65a01b04abae4c3770666c6a77e0e85be502 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -182,6 +182,8 @@ import co.aikar.timings.MinecraftTimings; // Paper

Some files were not shown because too many files have changed in this diff Show More