rebase on latest paper

This commit is contained in:
Ben Kerllenevich
2021-11-25 06:58:21 -05:00
parent 108644cca2
commit 8503ea0b19
24 changed files with 140 additions and 140 deletions

View File

@@ -173,12 +173,12 @@ index 0000000000000000000000000000000000000000..c0ec5a130985e8da4cc9e596a6b70503
+ }
+}
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index 18795003815d5bb6e04a15256430f69a31b2ace5..0de88cfff94a17ff41d28b569b8d283ad8bf0b49 100644
index bafad5764cc3933fcd9602d37bd2e68424cbd575..f1740d0d50e251fa029f22eeaacf2a68b3cd2e96 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -768,4 +768,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
@@ -795,4 +795,35 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
*/
@NotNull Set<Player> getTrackedPlayers();
public boolean spawnAt(@NotNull Location location, @NotNull org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason reason);
// Paper end
+
+ // Purpur start

View File

@@ -503,7 +503,7 @@ index 1910f88c155c6d19d02494e4fea2b86509235e5a..7e138e0b7d9c0ced83911035c1d8a956
@NotNull
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
index c8c2e5bc2ec1d8d7ea445a1203c9d5a904dfc666..61f682f068749de11320e7b02244fbe6aeb38888 100644
index 014c9984018ad5e51a26228a137e1ba4eb3e80c8..a39c0da1663f53b828bb35e662dd81df63b9d045 100644
--- a/src/main/java/org/bukkit/UnsafeValues.java
+++ b/src/main/java/org/bukkit/UnsafeValues.java
@@ -87,6 +87,8 @@ public interface UnsafeValues {
@@ -515,7 +515,7 @@ index c8c2e5bc2ec1d8d7ea445a1203c9d5a904dfc666..61f682f068749de11320e7b02244fbe6
*/
default com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
return new com.destroystokyo.paper.util.VersionFetcher.DummyVersionFetcher();
@@ -105,6 +107,8 @@ public interface UnsafeValues {
@@ -113,6 +115,8 @@ public interface UnsafeValues {
/**
* Return the translation key for the Material, so the client can translate it into the active
* locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.
@@ -524,7 +524,7 @@ index c8c2e5bc2ec1d8d7ea445a1203c9d5a904dfc666..61f682f068749de11320e7b02244fbe6
* @return the translation key
*/
String getTranslationKey(Material mat);
@@ -112,6 +116,8 @@ public interface UnsafeValues {
@@ -120,6 +124,8 @@ public interface UnsafeValues {
/**
* Return the translation key for the Block, so the client can translate it into the active
* locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.
@@ -533,7 +533,7 @@ index c8c2e5bc2ec1d8d7ea445a1203c9d5a904dfc666..61f682f068749de11320e7b02244fbe6
* @return the translation key
*/
String getTranslationKey(org.bukkit.block.Block block);
@@ -120,6 +126,8 @@ public interface UnsafeValues {
@@ -128,6 +134,8 @@ public interface UnsafeValues {
* Return the translation key for the EntityType, so the client can translate it into the active
* locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.<br>
* This is <code>null</code>, when the EntityType isn't known to NMS (custom entities)
@@ -542,7 +542,7 @@ index c8c2e5bc2ec1d8d7ea445a1203c9d5a904dfc666..61f682f068749de11320e7b02244fbe6
* @return the translation key
*/
String getTranslationKey(org.bukkit.entity.EntityType type);
@@ -135,6 +143,8 @@ public interface UnsafeValues {
@@ -143,6 +151,8 @@ public interface UnsafeValues {
* Creates and returns the next EntityId available.
* <p>
* Use this when sending custom packets, so that there are no collisions on the client or server.
@@ -787,7 +787,7 @@ index 9e7f42caab1204036f4203354c115fd40c6def92..f76ddd80f9fc926f73b1cc50f0a2767a
/**
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index 0de88cfff94a17ff41d28b569b8d283ad8bf0b49..55a40189d92b2bdf60023c1cc6096cc37dbb1630 100644
index f1740d0d50e251fa029f22eeaacf2a68b3cd2e96..6fdb484f7eda40155898849cb5ae963f75fafa40 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -668,6 +668,9 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] API for any mob to burn daylight
Co-authored by: Encode42 <me@encode42.dev>
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index 55a40189d92b2bdf60023c1cc6096cc37dbb1630..037b6923f6e548619e5d196b6fa93bfb0dcab8a1 100644
index 6fdb484f7eda40155898849cb5ae963f75fafa40..52b3ba61bd58bdee339ecabeb047564aeaa46bdc 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -815,5 +815,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
@@ -842,5 +842,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
* @return True if ridable in water
*/
boolean isRidableInWater();

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
diff --git a/build.gradle.kts b/build.gradle.kts
index 7d69f9e39361644796895254dfa518ef83d9e578..79bfdabe48fbc4caae7745a1b7d6678cc00fa169 100644
index e572f524046d4799adec7f08b1609d82a64ab94f..19a16f6689c68854fa91978da71debea3472b87a 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -19,8 +19,8 @@ repositories {
@@ -19,16 +19,16 @@ index 7d69f9e39361644796895254dfa518ef83d9e578..79bfdabe48fbc4caae7745a1b7d6678c
// Paper start
implementation("org.jline:jline-terminal-jansi:3.21.0")
implementation("net.minecrell:terminalconsoleappender:1.3.0")
@@ -49,6 +49,8 @@ dependencies {
runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.0")
@@ -50,6 +50,8 @@ dependencies {
implementation("net.fabricmc:mapping-io:0.3.0") // Paper - needed to read mappings for stacktrace deobfuscation
implementation("com.velocitypowered:velocity-native:1.1.0-SNAPSHOT") // Paper
+ implementation("cat.inspiracio:rhino-js-engine:1.7.7.1") // Purpur
+ implementation("dev.omega24:upnp4j:1.0") // Purpur
testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
testImplementation("junit:junit:4.13.1")
@@ -67,7 +69,7 @@ tasks.jar {
@@ -68,7 +70,7 @@ tasks.jar {
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
@@ -37,7 +37,7 @@ index 7d69f9e39361644796895254dfa518ef83d9e578..79bfdabe48fbc4caae7745a1b7d6678c
"Implementation-Vendor" to date, // Paper
"Specification-Title" to "Bukkit",
"Specification-Version" to project.version,
@@ -159,7 +161,7 @@ fun TaskContainer.registerRunTask(
@@ -160,7 +162,7 @@ fun TaskContainer.registerRunTask(
name: String,
block: JavaExec.() -> Unit
): TaskProvider<JavaExec> = register<JavaExec>(name) {
@@ -113,10 +113,10 @@ index e0b1f0671d16ddddcb6725acd25a1d1d69e42701..8c3c68465197fafc14849dc38a572e30
.completer(new ConsoleCommandCompleter(this.server))
.option(LineReader.Option.COMPLETE_IN_WORD, true);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 983bc6b8600489696899b5aaa09e7f7b674d2e42..3a17733fc6d6cf7e9a792a65e8d9565209640b87 100644
index 309e960ba7678e09d7eb7af11f57e5c3ff4f3d9e..0a98fddbccd2733bb4fbf6d429d934579566257e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1615,7 +1615,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1703,7 +1703,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@DontObfuscate
public String getServerModName() {
@@ -126,10 +126,10 @@ index 983bc6b8600489696899b5aaa09e7f7b674d2e42..3a17733fc6d6cf7e9a792a65e8d95652
public SystemReport fillSystemReport(SystemReport details) {
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 82cee660a029547eda8abdf4188b9d1fb4ba0d53..be616e5d2ebe05f6075b701b6ac5d041bb3e575f 100644
index 38a0fb9a7c4ade9cacfd30dffabfea7e6b773981..fd3d3e22613511a42f7fc343079b081c72ff3f61 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -280,11 +280,12 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -290,11 +290,12 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
DedicatedServer.LOGGER.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!");
DedicatedServer.LOGGER.warn("The server will make no attempt to authenticate usernames. Beware.");
// Spigot start

View File

@@ -65,10 +65,10 @@ index cb0045fc4ddd738c45dee89d57b213a633b9a136..6e8111ef16439d2b3025ebe2a0418b24
if (this.source.acceptsSuccess() && !this.silent) {
this.source.sendMessage(message, Util.NIL_UUID);
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index be616e5d2ebe05f6075b701b6ac5d041bb3e575f..38e8c382834f542e0f6649537bb6f5bf844159d8 100644
index fd3d3e22613511a42f7fc343079b081c72ff3f61..fe029ec70afad56bb7a7361f347e9b9aef5e00ba 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -218,6 +218,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -228,6 +228,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
}
thread.start(); // Paper - start console thread after MinecraftServer.console & PaperConfig are initialized
com.destroystokyo.paper.PaperConfig.registerCommands();
@@ -85,7 +85,7 @@ index be616e5d2ebe05f6075b701b6ac5d041bb3e575f..38e8c382834f542e0f6649537bb6f5bf
io.papermc.paper.util.ObfHelper.INSTANCE.getClass(); // load mappings for stacktrace deobf and etc.
io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index e5cb991543c695bc90256ef250a1d695ac5bc17d..2d4137c3cd5df289363579ebd462d42b096c245c 100644
index 929f48675a10fdd64cb351305389d680a16963fb..73ebe9d8da0dbfb9d4d8f041d8b911d4931f3d04 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -168,6 +168,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -97,7 +97,7 @@ index e5cb991543c695bc90256ef250a1d695ac5bc17d..2d4137c3cd5df289363579ebd462d42b
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
public static BlockPos lastPhysicsProblem; // Spigot
private org.spigotmc.TickLimiter entityLimiter;
@@ -205,6 +207,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -310,6 +312,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, final DimensionType dimensionmanager, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env) {
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
this.paperConfig = new com.destroystokyo.paper.PaperWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName(), this.spigotConfig); // Paper

View File

@@ -5,22 +5,22 @@ Subject: [PATCH] Purpur client support
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index a6ec320bdca4a1c6e23461cd10a6f7bed681f243..87a15e63671f9e22283745b04af5e23e8296984f 100644
index b6f9c99d580d985f2b84efaa655d9ae40073e72b..c856b38b49969f6eb0b2a82bff6d80967857643d 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -252,6 +252,7 @@ public class ServerPlayer extends Player {
@@ -254,6 +254,7 @@ public class ServerPlayer extends Player {
public Integer clientViewDistance;
// CraftBukkit end
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
+ public boolean purpurClient = false; // Purpur
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 7b6cf326dfab9bd0b13dfc330d143d2efeea9aa1..0d4315c4a2a9703f63bbebacd10209a904833749 100644
index 3eba6962040f33b7b31b16c9de22d90f225710b4..23074f0b00cde60e3a42335c7aa3eb4f6162d44d 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3053,6 +3053,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3058,6 +3058,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister");
private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support
@@ -28,7 +28,7 @@ index 7b6cf326dfab9bd0b13dfc330d143d2efeea9aa1..0d4315c4a2a9703f63bbebacd10209a9
@Override
public void handleCustomPayload(ServerboundCustomPayloadPacket packet) {
@@ -3077,6 +3078,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3082,6 +3083,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex);
this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
}
@@ -43,10 +43,10 @@ index 7b6cf326dfab9bd0b13dfc330d143d2efeea9aa1..0d4315c4a2a9703f63bbebacd10209a9
try {
byte[] data = new byte[packet.data.readableBytes()];
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9b136a877ff07262b1694c6cad43da756602384e..3efa7e395d05386e095ff2fd04d9012285599473 100644
index bc529afc8aff97b620209332aa2a4c8111075d62..653f038a76ac6a0674fbfbe193d38a15105224a2 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2520,4 +2520,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2530,4 +2530,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.spigot;
}
// Spigot end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Component related conveniences
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 87a15e63671f9e22283745b04af5e23e8296984f..ba31b14bf27fe43eeacf067755ecf45dd50d3ff5 100644
index c856b38b49969f6eb0b2a82bff6d80967857643d..ed8b90e90dc4878bce9eecbbf944f5264630f6bb 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1663,6 +1663,26 @@ public class ServerPlayer extends Player {
@@ -1693,6 +1693,26 @@ public class ServerPlayer extends Player {
}
// CraftBukkit end
@@ -36,10 +36,10 @@ index 87a15e63671f9e22283745b04af5e23e8296984f..ba31b14bf27fe43eeacf067755ecf45d
public void displayClientMessage(Component message, boolean actionBar) {
this.sendMessage(message, actionBar ? ChatType.GAME_INFO : ChatType.CHAT, Util.NIL_UUID);
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index dca3b995c02507e5df299abe60f518480ce56d21..50bdaf7edc14f6de7ed5562df9d6ed424a022f80 100644
index f90eea21300746ef510e6dccc1eda9cca6ac5a64..0e647bb7b4efefe8a56d8b9c01f747feea700e96 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1359,6 +1359,62 @@ public abstract class PlayerList {
@@ -1372,6 +1372,62 @@ public abstract class PlayerList {
}
// CraftBukkit end
@@ -103,10 +103,10 @@ index dca3b995c02507e5df299abe60f518480ce56d21..50bdaf7edc14f6de7ed5562df9d6ed42
this.server.sendMessage(message, sender);
Iterator iterator = this.players.iterator();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index dcfc726ab96dccc05848219e824ad7612dbfbdab..30f11e94e18222bb69c4c69f688923ef62877a8e 100644
index 3febcc7e88b74d4bdb45e633fdaa9d3313a6ae0b..23c17a1ebb63290168b2b67f2dbeb7741c368e7b 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3378,6 +3378,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
@@ -3514,6 +3514,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
return SlotAccess.NULL;
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Ridables
diff --git a/src/main/java/net/minecraft/core/BlockPos.java b/src/main/java/net/minecraft/core/BlockPos.java
index 0dcf75c5c792650d7a5b9354222df16bcd1cfbd2..d3d8fa34f89534c057f4e5c7f93da956c349a369 100644
index 14610e6144ec144ebbec6fb0945c67bb0ea86795..6833eb5dc7aa64bef1b3b38de5e282bdf1e10ec7 100644
--- a/src/main/java/net/minecraft/core/BlockPos.java
+++ b/src/main/java/net/minecraft/core/BlockPos.java
@@ -41,6 +41,12 @@ public class BlockPos extends Vec3i {
@@ -22,10 +22,10 @@ index 0dcf75c5c792650d7a5b9354222df16bcd1cfbd2..d3d8fa34f89534c057f4e5c7f93da956
super(x, y, z);
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3a17733fc6d6cf7e9a792a65e8d9565209640b87..3ab79c0a12d0e6e91578e8649c7157122086bf25 100644
index 0a98fddbccd2733bb4fbf6d429d934579566257e..da7a83973afe93bfeab947b412a2839a3146b0af 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1493,6 +1493,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1581,6 +1581,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
ServerLevel worldserver = (ServerLevel) iterator.next();
worldserver.hasPhysicsEvent = org.bukkit.event.block.BlockPhysicsEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
@@ -34,10 +34,10 @@ index 3a17733fc6d6cf7e9a792a65e8d9565209640b87..3ab79c0a12d0e6e91578e8649c715712
this.profiler.push(() -> {
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index b8e7f70f4ee1b28635537e04f7bd0d0cd6afb4b3..e0d8702b0e758367955813b92b6a72572f23ea86 100644
index 1cf809480d9ad7dd24c697d79621106544d32146..338fa80f3fde1918b8ccf23c017d386719d7ead8 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -206,6 +206,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -208,6 +208,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
public final UUID uuid;
public boolean hasPhysicsEvent = true; // Paper
public boolean hasEntityMoveEvent = false; // Paper
@@ -46,10 +46,10 @@ index b8e7f70f4ee1b28635537e04f7bd0d0cd6afb4b3..e0d8702b0e758367955813b92b6a7257
return new Throwable(entity + " Added to world at " + new java.util.Date());
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index ba31b14bf27fe43eeacf067755ecf45dd50d3ff5..bd0363b1c2d0604841c7d8161733281d7898110a 100644
index ed8b90e90dc4878bce9eecbbf944f5264630f6bb..e38a9ff1024669a5ea9c45a7f33c606167f15f9a 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -644,6 +644,15 @@ public class ServerPlayer extends Player {
@@ -662,6 +662,15 @@ public class ServerPlayer extends Player {
this.trackStartFallingPosition();
this.trackEnteredOrExitedLavaOnVehicle();
this.advancements.flushDirty(this);
@@ -65,7 +65,7 @@ index ba31b14bf27fe43eeacf067755ecf45dd50d3ff5..bd0363b1c2d0604841c7d8161733281d
}
public void doTick() {
@@ -2428,4 +2437,6 @@ public class ServerPlayer extends Player {
@@ -2458,4 +2467,6 @@ public class ServerPlayer extends Player {
return (CraftPlayer) super.getBukkitEntity();
}
// CraftBukkit end
@@ -73,10 +73,10 @@ index ba31b14bf27fe43eeacf067755ecf45dd50d3ff5..bd0363b1c2d0604841c7d8161733281d
+
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 0d4315c4a2a9703f63bbebacd10209a904833749..9f1bba2736648ea323390fd0442826fc3e561b68 100644
index 23074f0b00cde60e3a42335c7aa3eb4f6162d44d..56015828fe1f0bf66eefa41164e58cc4ebe59f20 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2364,6 +2364,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -2369,6 +2369,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event);
@@ -86,10 +86,10 @@ index 0d4315c4a2a9703f63bbebacd10209a904833749..9f1bba2736648ea323390fd0442826fc
if ((entity instanceof AbstractFish && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) {
ServerGamePacketListenerImpl.this.send(new ClientboundAddMobPacket((AbstractFish) entity));
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 30f11e94e18222bb69c4c69f688923ef62877a8e..e1a0efe5437aa3709a8fb93cf1f97b262a2ad3ee 100644
index 23c17a1ebb63290168b2b67f2dbeb7741c368e7b..20930c864ee1cb39367b5515dc8579f31d40ad21 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -229,7 +229,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
@@ -230,7 +230,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
public float yRotO;
public float xRotO;
private AABB bb;
@@ -98,7 +98,7 @@ index 30f11e94e18222bb69c4c69f688923ef62877a8e..e1a0efe5437aa3709a8fb93cf1f97b26
public boolean horizontalCollision;
public boolean verticalCollision;
public boolean minorHorizontalCollision;
@@ -291,7 +291,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
@@ -292,7 +292,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
private final Set<String> tags;
private final double[] pistonDeltas;
private long pistonDeltasGameTime;
@@ -107,7 +107,7 @@ index 30f11e94e18222bb69c4c69f688923ef62877a8e..e1a0efe5437aa3709a8fb93cf1f97b26
private float eyeHeight;
public boolean isInPowderSnow;
public boolean wasInPowderSnow;
@@ -2393,6 +2393,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
@@ -2529,6 +2529,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
this.passengers = ImmutableList.copyOf(list);
}
@@ -120,7 +120,7 @@ index 30f11e94e18222bb69c4c69f688923ef62877a8e..e1a0efe5437aa3709a8fb93cf1f97b26
}
return true; // CraftBukkit
}
@@ -2433,6 +2439,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
@@ -2569,6 +2575,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
return false;
}
// Spigot end
@@ -135,7 +135,7 @@ index 30f11e94e18222bb69c4c69f688923ef62877a8e..e1a0efe5437aa3709a8fb93cf1f97b26
if (this.passengers.size() == 1 && this.passengers.get(0) == entity) {
this.passengers = ImmutableList.of();
} else {
@@ -4049,4 +4063,41 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
@@ -4189,4 +4203,41 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
return ((ServerChunkCache) level.getChunkSource()).isPositionTicking(this);
}
// Paper end
@@ -201,7 +201,7 @@ index 645c1dc9bd09b135a641759c76ce8d957b9bd488..03adc3b746e05bb4b0514ba4a66c101b
protected ParticleOptions getInkParticle() {
return ParticleTypes.GLOW_SQUID_INK;
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index beebd31d7a82a4edae0e2e7c5890cd13fbb6c4df..0ec390a471441c094ce543c4590d3d7fa8b989a1 100644
index 62daf918d4ab00963041ca869ae718f14f2e3337..0dfd5a179fe3e409c159e2a79be58ad942be06a8 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -217,9 +217,9 @@ public abstract class LivingEntity extends Entity {
@@ -220,13 +220,13 @@ index beebd31d7a82a4edae0e2e7c5890cd13fbb6c4df..0ec390a471441c094ce543c4590d3d7f
@@ -2571,7 +2571,7 @@ public abstract class LivingEntity extends Entity {
}
protected long lastJumpTime = 0L; // Paper - add critical damage API
protected long lastJumpTime = 0L; // Paper
- protected void jumpFromGround() {
+ public void jumpFromGround() { // Purpur - protected -> public
double d0 = (double) this.getJumpPower() + this.getJumpBoostPower();
Vec3 vec3d = this.getDeltaMovement();
// Paper start - add critical damage API
@@ -3236,8 +3236,10 @@ public abstract class LivingEntity extends Entity {
// Paper start
@@ -3237,8 +3237,10 @@ public abstract class LivingEntity extends Entity {
this.pushEntities();
this.level.getProfiler().pop();
// Paper start
@@ -239,7 +239,7 @@ index beebd31d7a82a4edae0e2e7c5890cd13fbb6c4df..0ec390a471441c094ce543c4590d3d7f
Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO);
Location to = new Location (this.level.getWorld(), this.getX(), this.getY(), this.getZ(), this.getYRot(), this.getXRot());
io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
@@ -3247,6 +3249,21 @@ public abstract class LivingEntity extends Entity {
@@ -3248,6 +3250,21 @@ public abstract class LivingEntity extends Entity {
absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
}
}
@@ -262,7 +262,7 @@ index beebd31d7a82a4edae0e2e7c5890cd13fbb6c4df..0ec390a471441c094ce543c4590d3d7f
// Paper end
if (!this.level.isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) {
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 697c2663c4deeb8f2ad603c979ab0884ac027930..eef0785745914d5ba4787c17b6f0c2c4415dc970 100644
index 0b46066d35d9bb38d98a9d6e5ca8dbdc0ba1dc5a..79719f259090da6f41a75ac4910e925ce66d067b 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -143,6 +143,8 @@ public abstract class Mob extends LivingEntity {
@@ -274,7 +274,7 @@ index 697c2663c4deeb8f2ad603c979ab0884ac027930..eef0785745914d5ba4787c17b6f0c2c4
this.jumpControl = new JumpControl(this);
this.bodyRotationControl = this.createBodyControl();
this.navigation = this.createNavigation(world);
@@ -1293,7 +1295,7 @@ public abstract class Mob extends LivingEntity {
@@ -1298,7 +1300,7 @@ public abstract class Mob extends LivingEntity {
protected void onOffspringSpawnedFromEgg(Player player, Mob child) {}
protected InteractionResult mobInteract(Player player, InteractionHand hand) {
@@ -283,7 +283,7 @@ index 697c2663c4deeb8f2ad603c979ab0884ac027930..eef0785745914d5ba4787c17b6f0c2c4
}
public boolean isWithinRestriction() {
@@ -1654,4 +1656,52 @@ public abstract class Mob extends LivingEntity {
@@ -1659,4 +1661,52 @@ public abstract class Mob extends LivingEntity {
return itemmonsteregg == null ? null : new ItemStack(itemmonsteregg);
}
@@ -573,7 +573,7 @@ index 29dfbcecfbb2560e6ecde997abd5224a16c08c94..4a534357889892b57cff818f4dbd0007
BlockPos blockposition = this.blockPosition();
BlockPos blockposition1 = blockposition.above();
diff --git a/src/main/java/net/minecraft/world/entity/animal/AbstractFish.java b/src/main/java/net/minecraft/world/entity/animal/AbstractFish.java
index 58428eebf24e328b3faf32ca473be8f19d4f6cca..f54bca7ad5b6e70f0080a6db061b88b5eaee6f53 100644
index 3484defdfd5a487b11917310d7b1d1543291eee1..ffdb9d3bf5bb3f88b0d8c89be5d19cc0225b5544 100644
--- a/src/main/java/net/minecraft/world/entity/animal/AbstractFish.java
+++ b/src/main/java/net/minecraft/world/entity/animal/AbstractFish.java
@@ -99,12 +99,9 @@ public abstract class AbstractFish extends WaterAnimal implements Bucketable {
@@ -1895,7 +1895,7 @@ index 4745086ccacfb9863df1979c2d098cb5d81f1535..d78947aa30e4eebca67b94614ec0e2ac
return "entity.minecraft.tropical_fish.predefined." + variant;
}
diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
index 60e1111f3c2c43398f21c541248f38524f41f4fb..a318f1080a5406ec159fb2d1105b2e51ee3a8be5 100644
index 56e9c0d15249562ebea8eb451d4bcc9ff5e7d594..320f02f310fc1da2e5f41d0febd1ccfb48e0c4ea 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
@@ -86,6 +86,18 @@ public class Turtle extends Animal {
@@ -1915,7 +1915,7 @@ index 60e1111f3c2c43398f21c541248f38524f41f4fb..a318f1080a5406ec159fb2d1105b2e51
+ // Purpur end
+
public void setHomePos(BlockPos pos) {
this.entityData.set(Turtle.HOME_POS, pos);
this.entityData.set(Turtle.HOME_POS, pos.immutable()); // Paper - called with mutablepos...
}
@@ -188,6 +200,7 @@ public class Turtle extends Animal {
@@ -2012,7 +2012,7 @@ index 4797c34872f8fa2fba00172357c4f45e45cfe27f..3240a1b0759e4d1f189ff769519b4496
this.targetSelector.addGoal(2, new OwnerHurtTargetGoal(this));
this.targetSelector.addGoal(3, (new HurtByTargetGoal(this, new Class[0])).setAlertOthers());
diff --git a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
index 67bb476693fa16aa391c120f8acae7c7279efc20..fc731dc27a1f3ae61e3fb0b6d76845465eaf8ea9 100644
index 86acf89ce875e215da8469947b382f70e42314b0..0667003613d3205eab3e729a297ba14d37ba3d22 100644
--- a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
+++ b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
@@ -91,6 +91,23 @@ public class Axolotl extends Animal implements LerpingModel, Bucketable {
@@ -4460,7 +4460,7 @@ index 642279bb7e15db9f662094ffd6ded2e3c7af3fd6..ab648e7dafd78f414646cef96b422e87
this.setTradingPlayer(player);
this.openTradingScreen(player, this.getDisplayName(), 1);
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 b6f8e94df86c174569ccbc69cfd031cc08271dd3..4b574df4bfe3e1f1bfa58439baa01a369365b05c 100644
index 4e6364bea8f464bef690b8cc8f25a80ee699ed5a..24b9343a2dedbbe6aad4048e5a05ae6e610ad5ba 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -191,6 +191,19 @@ public abstract class Player extends LivingEntity {
@@ -5706,11 +5706,11 @@ index 0000000000000000000000000000000000000000..8eefb7b7eb33aecf48ac206d3f0139e0
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index ee50ea695585639d0ff184b675f3fb3b205b9f86..426b5b0dc16e86bcbc113bb3123fde9e841de5d8 100644
index 5aae88e20bc04560d6ad52cfcaa872d28bfcee8f..1ba59900ddf403453aeb4f82b097feaab3dae3ff 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -1277,4 +1277,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
return set;
@@ -1287,4 +1287,27 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
return !entity.valid && entity.level.addFreshEntity(entity, reason);
}
// Paper end
+

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable entity base attributes
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index e1a0efe5437aa3709a8fb93cf1f97b262a2ad3ee..c61cc35d3f12aaf1aa7b37f5ee1d0fc7dcd6bb01 100644
index 20930c864ee1cb39367b5515dc8579f31d40ad21..1582bba7fa315c539cf8b57ae8b760d74091b6ed 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -148,7 +148,7 @@ import org.bukkit.plugin.PluginManager;
@@ -149,7 +149,7 @@ import org.bukkit.plugin.PluginManager;
// CraftBukkit end
public abstract class Entity implements Nameable, EntityAccess, CommandSource, io.papermc.paper.util.KeyedObject { // Paper
@@ -34,7 +34,7 @@ index 03adc3b746e05bb4b0514ba4a66c101b9742ceed..ec261673ac444fd5de9c8556cde5d788
@Override
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 0ec390a471441c094ce543c4590d3d7fa8b989a1..8780eed3ee4ba8ffb72e411d47dbd6fb3337d8d2 100644
index 0dfd5a179fe3e409c159e2a79be58ad942be06a8..d181752a909305d4fc18c399f831276e8e646ea3 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -285,6 +285,7 @@ public abstract class LivingEntity extends Entity {
@@ -427,7 +427,7 @@ index d78947aa30e4eebca67b94614ec0e2ac9afca36d..2de2dc96b7f5960d4cef3184c14409e0
public static String getPredefinedName(int variant) {
diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
index a318f1080a5406ec159fb2d1105b2e51ee3a8be5..a1cb8792af3bd10cc0decf230e96e87ee808fcfd 100644
index 320f02f310fc1da2e5f41d0febd1ccfb48e0c4ea..730f0fdf968554e9e306ad984d6bd01861402705 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java
@@ -96,6 +96,11 @@ public class Turtle extends Animal {
@@ -459,7 +459,7 @@ index 3240a1b0759e4d1f189ff769519b4496af0657be..da7b3b5d683a3d48bb1726981a639997
@Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
index fc731dc27a1f3ae61e3fb0b6d76845465eaf8ea9..3b9a9a8e591191d6f6e2fdb02634deca7331fe77 100644
index 0667003613d3205eab3e729a297ba14d37ba3d22..f88f979cc66bf85ad3f1458581a82b0ed91c3f16 100644
--- a/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
+++ b/src/main/java/net/minecraft/world/entity/animal/axolotl/Axolotl.java
@@ -106,6 +106,11 @@ public class Axolotl extends Animal implements LerpingModel, Bucketable {

View File

@@ -46,10 +46,10 @@ index ee53453440177537fc653ea156785d7591498614..b4ccd80663feed1b1e9d02806dcffd0b
JSONObject object = new JSONObject();
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index ce2cc249439d525d2089302f3febde758aa96929..3672c289c108cf82fb198bdaf81b878a7581b32f 100644
index cdf0f5cafd39a874ea09fdb35b237e3c59c226d9..8087c4d63f1d5768dd786a152eca5d00231fe529 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -228,7 +228,7 @@ public class PaperConfig {
@@ -233,7 +233,7 @@ public class PaperConfig {
private static void timings() {
boolean timings = getBoolean("timings.enabled", true);
boolean verboseTimings = getBoolean("timings.verbose", true);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] AFK API
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index bd0363b1c2d0604841c7d8161733281d7898110a..86f012e54a8c2778c535b2b13584705419037b8c 100644
index e38a9ff1024669a5ea9c45a7f33c606167f15f9a..e29c9e10e98f2333ad38fd7d957d8a36304f3cba 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1939,8 +1939,58 @@ public class ServerPlayer extends Player {
@@ -1969,8 +1969,58 @@ public class ServerPlayer extends Player {
public void resetLastActionTime() {
this.lastActionTime = Util.getMillis();
@@ -68,7 +68,7 @@ index bd0363b1c2d0604841c7d8161733281d7898110a..86f012e54a8c2778c535b2b135847054
return this.stats;
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 9f1bba2736648ea323390fd0442826fc3e561b68..49a769dc5d38cfc29fe824c7f94917f5597cdbca 100644
index 56015828fe1f0bf66eefa41164e58cc4ebe59f20..c1bbe2786b98649ae7882a05070f2bdad813d7b4 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -293,6 +293,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -114,7 +114,7 @@ index 9f1bba2736648ea323390fd0442826fc3e561b68..49a769dc5d38cfc29fe824c7f94917f5
// Skip the first time we do this
if (true) { // Spigot - don't skip any move events
Location oldTo = to.clone();
@@ -1385,7 +1407,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1390,7 +1412,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
if (!this.player.isChangingDimension() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot
flag1 = true;
@@ -123,7 +123,7 @@ index 9f1bba2736648ea323390fd0442826fc3e561b68..49a769dc5d38cfc29fe824c7f94917f5
}
this.player.absMoveTo(d0, d1, d2, f, f1);
@@ -1424,6 +1446,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1429,6 +1451,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch();
@@ -182,7 +182,7 @@ index a7575b5ef56af6f53448d391abb4956e130148ca..0a9e4dc5d6d567605c587df9bcbb57d3
if (baseEntity == null) {
if (this.isCombat && (!targetEntity.canBeSeenAsEnemy() || targetEntity.level.getDifficulty() == Difficulty.PEACEFUL)) {
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 4b574df4bfe3e1f1bfa58439baa01a369365b05c..cf0e43f835073deb58945e24c9d5f0bc66aaaaf1 100644
index 24b9343a2dedbbe6aad4048e5a05ae6e610ad5ba..adc094f20ed8bb4c531b06eb2e78bebd3faff578 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -194,6 +194,13 @@ public abstract class Player extends LivingEntity {
@@ -200,10 +200,10 @@ index 4b574df4bfe3e1f1bfa58439baa01a369365b05c..cf0e43f835073deb58945e24c9d5f0bc
public boolean processClick(InteractionHand hand) {
Entity vehicle = getRootVehicle();
diff --git a/src/main/java/net/minecraft/world/level/EntityGetter.java b/src/main/java/net/minecraft/world/level/EntityGetter.java
index bc3bfe8d3c2f87e2e9f167b9ff34d9ca8a696391..5232aa033e37c7b707c348431a4520c56f25f6f9 100644
index 30276959c0119813c27ee3f98e237c93236e5b39..385cccecdddde4abd5c6525aa6404eb2078c3432 100644
--- a/src/main/java/net/minecraft/world/level/EntityGetter.java
+++ b/src/main/java/net/minecraft/world/level/EntityGetter.java
@@ -145,7 +145,7 @@ public interface EntityGetter {
@@ -157,7 +157,7 @@ public interface EntityGetter {
default boolean hasNearbyAlivePlayer(double x, double y, double z, double range) {
for(Player player : this.players()) {
@@ -263,7 +263,7 @@ index 20215510857b8e49ea0c93d35eddfbad7cd355b0..996171e7271e62e72c0b2b213c21caf5
public boolean untamedTamablesAreRidable = true;
public boolean useNightVisionWhenRiding = false;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 3efa7e395d05386e095ff2fd04d9012285599473..5262508601274de1106300f8a90518205814b273 100644
index 653f038a76ac6a0674fbfbe193d38a15105224a2..281cb1b19a2e05d18352f612a74097e4454ab2f6 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -427,10 +427,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -283,7 +283,7 @@ index 3efa7e395d05386e095ff2fd04d9012285599473..5262508601274de1106300f8a9051820
for (ServerPlayer player : (List<ServerPlayer>) server.getHandle().players) {
if (player.getBukkitEntity().canSee(this)) {
player.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_DISPLAY_NAME, this.getHandle()));
@@ -2526,5 +2531,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2536,5 +2541,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public boolean usesPurpurClient() {
return getHandle().purpurClient;
}
@@ -305,7 +305,7 @@ index 3efa7e395d05386e095ff2fd04d9012285599473..5262508601274de1106300f8a9051820
// Purpur end
}
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index e0302f82356e8cba848aa8cec1e821e02abbd6f6..3c05a09820491ebdfaad0e922b73ed0403ce04c2 100644
index 72400204fbeea41e4af8d3a0d5eef6f2e75e7518..7e1bc869299cd2f382f05bb814946e6841cc845e 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -194,6 +194,7 @@ public class ActivationRange

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable server mod name
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3ab79c0a12d0e6e91578e8649c7157122086bf25..6c7efdf64af09a9ec87338b313a10904a9afdda7 100644
index da7a83973afe93bfeab947b412a2839a3146b0af..2ffc5d9c145cdf53baa8db260f03660a76db78c5 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1616,7 +1616,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1704,7 +1704,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@DontObfuscate
public String getServerModName() {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Lagging threshold
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 6c7efdf64af09a9ec87338b313a10904a9afdda7..86f056cd797881a88593a1933a411200fb5ae154 100644
index 2ffc5d9c145cdf53baa8db260f03660a76db78c5..e6c6fe80e2fddceec4cd16b08cf7aab888c7fd9d 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -303,6 +303,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -16,7 +16,7 @@ index 6c7efdf64af09a9ec87338b313a10904a9afdda7..86f056cd797881a88593a1933a411200
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
// Spigot end
public static long currentTickLong = 0L; // Paper
@@ -1169,6 +1170,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1250,6 +1251,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.recentTps[1] = tps5.getAverage();
this.recentTps[2] = tps15.getAverage();
// Paper end

View File

@@ -5,26 +5,26 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 86f012e54a8c2778c535b2b13584705419037b8c..076456d3dcd38333978eec06077c7231b7d74db7 100644
index e29c9e10e98f2333ad38fd7d957d8a36304f3cba..52fd2d08783bbba4c262bb297a31b373b3bcfacc 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -253,6 +253,7 @@ public class ServerPlayer extends Player {
@@ -255,6 +255,7 @@ public class ServerPlayer extends Player {
// CraftBukkit end
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
public boolean purpurClient = false; // Purpur
+ public boolean acceptingResourcePack = false; // Purpur
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - there are a lot of changes to do if we change all methods leading to the event
@@ -328,6 +329,7 @@ public class ServerPlayer extends Player {
@@ -331,6 +332,7 @@ public class ServerPlayer extends Player {
this.bukkitPickUpLoot = true;
this.maxHealthCache = this.getMaxHealth();
this.cachedSingleMobDistanceMap = new com.destroystokyo.paper.util.PooledHashSets.PooledObjectLinkedOpenHashSet<>(this); // Paper
+ this.spawnInvulnerableTime = world.purpurConfig.playerSpawnInvulnerableTicks; // Purpur
}
// Yes, this doesn't match Vanilla, but it's the best we can do for now.
@@ -987,6 +989,12 @@ public class ServerPlayer extends Player {
// Paper start - Chunk priority
public BlockPos getPointInFront(double inFront) {
@@ -1005,6 +1007,12 @@ public class ServerPlayer extends Player {
}
@@ -37,7 +37,7 @@ index 86f012e54a8c2778c535b2b13584705419037b8c..076456d3dcd38333978eec06077c7231
@Override
public boolean hurt(DamageSource source, float amount) {
if (this.isInvulnerableTo(source)) {
@@ -994,7 +1002,7 @@ public class ServerPlayer extends Player {
@@ -1012,7 +1020,7 @@ public class ServerPlayer extends Player {
} else {
boolean flag = this.server.isDedicatedServer() && this.isPvpAllowed() && "fall".equals(source.msgId);
@@ -46,7 +46,7 @@ index 86f012e54a8c2778c535b2b13584705419037b8c..076456d3dcd38333978eec06077c7231
return false;
} else {
if (source instanceof EntityDamageSource) {
@@ -1167,6 +1175,7 @@ public class ServerPlayer extends Player {
@@ -1185,6 +1193,7 @@ public class ServerPlayer extends Player {
}
// Paper end
@@ -54,7 +54,7 @@ index 86f012e54a8c2778c535b2b13584705419037b8c..076456d3dcd38333978eec06077c7231
return this;
}
}
@@ -1929,6 +1938,7 @@ public class ServerPlayer extends Player {
@@ -1959,6 +1968,7 @@ public class ServerPlayer extends Player {
}
public void sendTexturePack(String url, String hash, boolean required, @Nullable Component resourcePackPrompt) {
@@ -62,7 +62,7 @@ index 86f012e54a8c2778c535b2b13584705419037b8c..076456d3dcd38333978eec06077c7231
this.connection.send(new ClientboundResourcePackPacket(url, hash, required, resourcePackPrompt));
}
@@ -2438,9 +2448,17 @@ public class ServerPlayer extends Player {
@@ -2468,9 +2478,17 @@ public class ServerPlayer extends Player {
@Override
public boolean isImmobile() {
@@ -82,10 +82,10 @@ index 86f012e54a8c2778c535b2b13584705419037b8c..076456d3dcd38333978eec06077c7231
public Scoreboard getScoreboard() {
return this.getBukkitEntity().getScoreboard().getHandle();
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 49a769dc5d38cfc29fe824c7f94917f5597cdbca..479acafb1f8759f3097ee425e26f645c0027ea14 100644
index c1bbe2786b98649ae7882a05070f2bdad813d7b4..621f0f75096c89bd050f7e0ede8abcb15536ce70 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1874,12 +1874,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -1879,12 +1879,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@Override
public void handleResourcePackResponse(ServerboundResourcePackPacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
@@ -108,10 +108,10 @@ index 49a769dc5d38cfc29fe824c7f94917f5597cdbca..479acafb1f8759f3097ee425e26f645c
this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packStatus)); // CraftBukkit
// Paper end
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 50bdaf7edc14f6de7ed5562df9d6ed424a022f80..c597f76d04eca83264b992c670d0142dbd39c3aa 100644
index 0e647bb7b4efefe8a56d8b9c01f747feea700e96..b9e13e523e5a43b256c49970ad1b3dca286fc03c 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -991,6 +991,8 @@ public abstract class PlayerList {
@@ -993,6 +993,8 @@ public abstract class PlayerList {
}
// Paper end
@@ -143,10 +143,10 @@ index 996171e7271e62e72c0b2b213c21caf53c815e97..8e9ba3a8582c8e5d1e14bf3bfa8ecfce
public boolean babiesAreRidable = true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 5262508601274de1106300f8a90518205814b273..55d101ee664babbcaf02f8801e5522c1156c3cdb 100644
index 281cb1b19a2e05d18352f612a74097e4454ab2f6..b927f741695c783b5c3a782ea669c7d76333c2bd 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2546,5 +2546,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2556,5 +2556,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void resetIdleTimer() {
getHandle().resetLastActionTime();
}

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Anvil API
diff --git a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
index b40377e882d9cc3571f527e706862e27c59b1fd0..d380267df31de55430db11c5f9bc6ff426cff8eb 100644
index 073cec4838b88bf4e7444321a74ab73fff732486..3751ce065a38cb55b0800f000e33b2b32c7e0f5d 100644
--- a/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/AnvilMenu.java
@@ -2,7 +2,11 @@ package net.minecraft.world.inventory;
@@ -33,8 +33,8 @@ index b40377e882d9cc3571f527e706862e27c59b1fd0..d380267df31de55430db11c5f9bc6ff4
@Override
protected boolean mayPickup(Player player, boolean present) {
- return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && this.cost.get() > 0;
+ return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && (bypassCost || this.cost.get() > 0); // Purpur
- return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && this.cost.get() >= 0; // Paper - fix anvil prepare event not working with 0 xp
+ return (player.getAbilities().instabuild || player.experienceLevel >= this.cost.get()) && (bypassCost || this.cost.get() >= 0); // Paper - fix anvil prepare event not working with 0 xp // Purpur
}
@Override

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Alternative Keepalive Handling
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 479acafb1f8759f3097ee425e26f645c0027ea14..1ada1e8532302c3ab1c4454b3a36cee272deb378 100644
index 621f0f75096c89bd050f7e0ede8abcb15536ce70..bb0f8dbc0746283ff7670dee24dd932254aeec0d 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -227,6 +227,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -38,7 +38,7 @@ index 479acafb1f8759f3097ee425e26f645c0027ea14..1ada1e8532302c3ab1c4454b3a36cee2
if (this.keepAlivePending) {
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected
ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info
@@ -3045,6 +3061,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3050,6 +3066,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@Override
public void handleKeepAlive(ServerboundKeepAlivePacket packet) {

View File

@@ -17,10 +17,10 @@ index f64aa22ed6fcb4af67317b99f459ee5296392548..36c91793e0aa4895193623cf8cba7820
public void removeCommand(String name) {
this.children.remove(name);
diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
index e9d1fb479855194da5a05e86861848158736cbb4..b06f070a8030e5a6d965a2705749874895db58b6 100644
index 4aa1dc543950b5de64345b3403a6d0bc41c521df..1c19a64da230268ceb9124bb7e1a141d78ac3393 100644
--- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
+++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
@@ -87,6 +87,7 @@ public final class VanillaCommandWrapper extends BukkitCommand {
@@ -89,6 +89,7 @@ public final class VanillaCommandWrapper extends BukkitCommand {
}
public static String getPermission(CommandNode<CommandSourceStack> vanillaCommand) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Zombie horse naturally spawn
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index e0d8702b0e758367955813b92b6a72572f23ea86..5f8ca9b494e6d16d095b960ffcb671d33f7a9739 100644
index 338fa80f3fde1918b8ccf23c017d386719d7ead8..963c249f2bcf2a264c9e4cd0961f11bb08f54d12 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -656,9 +656,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -747,9 +747,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * paperConfig.skeleHorseSpawnChance && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper
if (flag1) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Signs allow color codes
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 076456d3dcd38333978eec06077c7231b7d74db7..671015417ca3b67cb8f26b8f9f26483082a7198b 100644
index 52fd2d08783bbba4c262bb297a31b373b3bcfacc..45084be6e8ebced2029dbca57f288b0e01b07311 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1460,6 +1460,7 @@ public class ServerPlayer extends Player {
@@ -1478,6 +1478,7 @@ public class ServerPlayer extends Player {
@Override
public void openTextEdit(SignBlockEntity sign) {
@@ -17,10 +17,10 @@ index 076456d3dcd38333978eec06077c7231b7d74db7..671015417ca3b67cb8f26b8f9f264830
this.connection.send(new ClientboundBlockUpdatePacket(this.level, sign.getBlockPos()));
this.connection.send(new ClientboundOpenSignEditorPacket(sign.getBlockPos()));
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 1ada1e8532302c3ab1c4454b3a36cee272deb378..ae92a5e1cebff528c99f3c554d8490f7ba9c6b57 100644
index bb0f8dbc0746283ff7670dee24dd932254aeec0d..7047a77b6f6b9b15145dd8c54e978d81b1f4e998 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3035,11 +3035,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
@@ -3040,11 +3040,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
}
// Paper end

View File

@@ -5,18 +5,18 @@ Subject: [PATCH] Allow soil to moisten from water directly under it
diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java
index afd4dc6f69389f43c1a95069840e01a33ac86b63..285297f427afc71b824f2b1fa712802104be2571 100644
index 5d95f3cce8f5190bc2172a1fe0e83166062f0f3d..603e621b16deb63b0d6d7e59e05a8de1831e067f 100644
--- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java
@@ -145,7 +145,7 @@ public class FarmBlock extends Block {
do {
if (!iterator.hasNext()) {
- return false;
+ return ((ServerLevel) world).purpurConfig.farmlandGetsMoistFromBelow && world.getFluidState(pos.relative(Direction.DOWN)).is(FluidTags.WATER); // Purpur;
@@ -159,7 +159,7 @@ public class FarmBlock extends Block {
}
}
- return false;
+ return ((ServerLevel) world).purpurConfig.farmlandGetsMoistFromBelow && world.getFluidState(pos.relative(Direction.DOWN)).is(FluidTags.WATER); // Purpur;
// Paper end - remove abstract block iteration
}
blockposition1 = (BlockPos) iterator.next();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index ea387b513f86249a6ceaa67cb6358dc56ed4b16d..35fbc48c6396f23add351063a9df12f15643a3a8 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Minecart settings and WASD controls
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 671015417ca3b67cb8f26b8f9f26483082a7198b..36c36b8b2c9b1a0ac617b0a747ad537621223fdf 100644
index 45084be6e8ebced2029dbca57f288b0e01b07311..11ebb94eb26836231cdd81514a5639e756876e09 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1000,6 +1000,7 @@ public class ServerPlayer extends Player {
@@ -1018,6 +1018,7 @@ public class ServerPlayer extends Player {
if (this.isInvulnerableTo(source)) {
return false;
} else {

View File

@@ -5,22 +5,22 @@ Subject: [PATCH] Fix the dead lagging the server
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index c61cc35d3f12aaf1aa7b37f5ee1d0fc7dcd6bb01..f6260ade093417c87776d421af21088930126408 100644
index 1582bba7fa315c539cf8b57ae8b760d74091b6ed..646972f9b7205f79b4577984d0407be4eb5f5d4a 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1524,6 +1524,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
this.setXRot(Mth.clamp(pitch, -90.0F, 90.0F) % 360.0F);
@@ -1650,6 +1650,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
this.yRotO = this.getYRot();
this.xRotO = this.getXRot();
this.setYHeadRot(yaw); // Paper - Update head rotation
+ if (valid && !this.isRemoved()) level.getChunk((int) Math.floor(this.getX()) >> 4, (int) Math.floor(this.getZ()) >> 4); // CraftBukkit // Paper // Purpur
}
public void absMoveTo(double x, double y, double z) {
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 8a141a02a8fc3615ec1b52f062e17ed881d671cf..ee0d7d1aac8847402476d5861824d50f4fd0598e 100644
index 5ae294293cd9d813e22d251e567d1fc0929edc49..dfbb53ddf9255351b44259d0016b362a3a4625b3 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2895,7 +2895,7 @@ public abstract class LivingEntity extends Entity {
@@ -2896,7 +2896,7 @@ public abstract class LivingEntity extends Entity {
}
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add permission for F3+N debug
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index c597f76d04eca83264b992c670d0142dbd39c3aa..a7c095b3ee7893a3e43f507b4dad456b2c3c4eaa 100644
index b9e13e523e5a43b256c49970ad1b3dca286fc03c..811629721c4e3babb5437031910185daf10d5784 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1156,6 +1156,7 @@ public abstract class PlayerList {
@@ -1158,6 +1158,7 @@ public abstract class PlayerList {
} else {
b0 = (byte) (24 + permissionLevel);
}