Update to 1.19.1

This commit is contained in:
BillyGalbreath
2022-07-27 23:53:11 -05:00
parent 85f63e5df0
commit f1c4bad9ce
263 changed files with 522 additions and 563 deletions

View File

@@ -1,7 +1,7 @@
group = org.purpurmc.purpur group = org.purpurmc.purpur
version = 1.19-R0.1-SNAPSHOT version = 1.19-R0.1-SNAPSHOT
paperCommit = 86f87ba40030d719e5fb8840ab18c513588de772 paperCommit = 4a4ee79cd6a70811e9d62c58abc5f3b6a8627f5c
org.gradle.caching = true org.gradle.caching = true
org.gradle.parallel = true org.gradle.parallel = true

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Purpur client support
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index b39afbcd1fa88a7f00cd5f4482d52f2d089497dc..d9b0c214ab906e458b042a6762f5c84a8b98e55d 100644 index 3fcfe8651a9c422fa9c8ff77556477f1461424cf..5af23f20d2374ed47d32d74ca86b8919a43cfb2d 100644
--- a/src/main/java/org/bukkit/entity/Player.java --- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2770,4 +2770,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -2777,4 +2777,13 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@Override @Override
Spigot spigot(); Spigot spigot();
// Spigot end // Spigot end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] AFK API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index d9b0c214ab906e458b042a6762f5c84a8b98e55d..4aa9b09749763298bbdc93c87fb353c7fe40dd8a 100644 index 5af23f20d2374ed47d32d74ca86b8919a43cfb2d..d2bc1d346a276cd6aea6024898074f6b0fec3595 100644
--- a/src/main/java/org/bukkit/entity/Player.java --- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2778,5 +2778,24 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -2785,5 +2785,24 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @return True if Player uses Purpur Client * @return True if Player uses Purpur Client
*/ */
public boolean usesPurpurClient(); public boolean usesPurpurClient();

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Player invulnerabilities
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 4aa9b09749763298bbdc93c87fb353c7fe40dd8a..395b4e7218e5f252f81d098264a2a917c63c12b0 100644 index d2bc1d346a276cd6aea6024898074f6b0fec3595..057b5e62919f47d698a7650aedac23316ec51094 100644
--- a/src/main/java/org/bukkit/entity/Player.java --- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2797,5 +2797,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -2804,5 +2804,26 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* Reset the idle timer back to 0 * Reset the idle timer back to 0
*/ */
void resetIdleTimer(); void resetIdleTimer();

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Flying Fall Damage API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 395b4e7218e5f252f81d098264a2a917c63c12b0..8bf04a0ad920fa580568713b243c20c448435908 100644 index 057b5e62919f47d698a7650aedac23316ec51094..4766ebb24bdf02a045e2e8aba18b8ae314a0e201 100644
--- a/src/main/java/org/bukkit/entity/Player.java --- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2818,5 +2818,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -2825,5 +2825,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* @param invulnerableTicks Invulnerable ticks remaining * @param invulnerableTicks Invulnerable ticks remaining
*/ */
void setSpawnInvulnerableTicks(int invulnerableTicks); void setSpawnInvulnerableTicks(int invulnerableTicks);

View File

@@ -2789,10 +2789,10 @@ index 7034af8ad42940c5af6b9032b9873ce36c55a2a7..c0fdc5a79107f8694a514a12d5526bd4
public static long getCoordinateKey(final ChunkPos pair) { public static long getCoordinateKey(final ChunkPos pair) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 35a5cc8ed861401d3dd28b08ebc5d40aad82b0df..67c4cd2fb3c64432b0390c9d497ef7067577c64a 100644 index 46fcecbfb3f866ba89036a11113c8ad0989b04bc..d66c60918313b0ede41ed96aa82e11fb2230f95b 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -296,6 +296,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -298,6 +298,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public volatile Thread shutdownThread; // Paper public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper public volatile boolean abnormalExit = false; // Paper
public boolean isIteratingOverLevels = false; // Paper public boolean isIteratingOverLevels = false; // Paper
@@ -2819,7 +2819,7 @@ index 35a5cc8ed861401d3dd28b08ebc5d40aad82b0df..67c4cd2fb3c64432b0390c9d497ef706
} }
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index b42327dcf0cc9feaf4fdb67de949dd36cf71bbaa..ad166788225841927bedc5243dbe94863c270425 100644 index bdd6560fe85950b0a857a949cb38c044da44ca6b..519883c5549744e047a8a96afee142746fcb49cd 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -226,6 +226,8 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -226,6 +226,8 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -2840,10 +2840,10 @@ index b42327dcf0cc9feaf4fdb67de949dd36cf71bbaa..ad166788225841927bedc5243dbe9486
} }
} }
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed78943ab96ba1 100644 index 77c89376495d90d0e7cbf6cd02c9a1c8d9a4340b..87518f6ff223ca211727c3002d107bc9bcaa36f9 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java --- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -474,7 +474,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -471,7 +471,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
this.dataRegionManager = new io.papermc.paper.chunk.SingleThreadChunkRegionManager(this.level, 2, (1.0 / 3.0), 1, 6, "Data", DataRegionData::new, DataRegionSectionData::new); this.dataRegionManager = new io.papermc.paper.chunk.SingleThreadChunkRegionManager(this.level, 2, (1.0 / 3.0), 1, 6, "Data", DataRegionData::new, DataRegionSectionData::new);
this.regionManagers.add(this.dataRegionManager); this.regionManagers.add(this.dataRegionManager);
// Paper end // Paper end
@@ -2852,7 +2852,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
// Paper start - use distance map to optimise entity tracker // Paper start - use distance map to optimise entity tracker
this.playerEntityTrackerTrackMaps = new com.destroystokyo.paper.util.misc.PlayerAreaMap[TRACKING_RANGE_TYPES.length]; this.playerEntityTrackerTrackMaps = new com.destroystokyo.paper.util.misc.PlayerAreaMap[TRACKING_RANGE_TYPES.length];
this.entityTrackerTrackRanges = new int[TRACKING_RANGE_TYPES.length]; this.entityTrackerTrackRanges = new int[TRACKING_RANGE_TYPES.length];
@@ -2082,8 +2082,36 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2079,8 +2079,36 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
entity.tracker = null; // Paper - We're no longer tracked entity.tracker = null; // Paper - We're no longer tracked
} }
@@ -2889,7 +2889,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
this.level.timings.tracker1.startTiming(); this.level.timings.tracker1.startTiming();
try { try {
for (TrackedEntity tracker : this.entityMap.values()) { for (TrackedEntity tracker : this.entityMap.values()) {
@@ -2275,11 +2303,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2272,11 +2300,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
public class TrackedEntity { public class TrackedEntity {
@@ -2904,7 +2904,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
public TrackedEntity(Entity entity, int i, int j, boolean flag) { public TrackedEntity(Entity entity, int i, int j, boolean flag) {
this.serverEntity = new ServerEntity(ChunkMap.this.level, entity, j, flag, this::broadcast, this.seenBy); // CraftBukkit this.serverEntity = new ServerEntity(ChunkMap.this.level, entity, j, flag, this::broadcast, this.seenBy); // CraftBukkit
@@ -2291,7 +2319,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2288,7 +2316,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
// Paper start - use distance map to optimise tracker // Paper start - use distance map to optimise tracker
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> lastTrackerCandidates; com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> lastTrackerCandidates;
@@ -2913,7 +2913,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> oldTrackerCandidates = this.lastTrackerCandidates; com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> oldTrackerCandidates = this.lastTrackerCandidates;
this.lastTrackerCandidates = newTrackerCandidates; this.lastTrackerCandidates = newTrackerCandidates;
@@ -2363,7 +2391,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2360,7 +2388,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
} }
public void removePlayer(ServerPlayer player) { public void removePlayer(ServerPlayer player) {
@@ -2922,7 +2922,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
if (this.seenBy.remove(player.connection)) { if (this.seenBy.remove(player.connection)) {
this.serverEntity.removePairing(player); this.serverEntity.removePairing(player);
} }
@@ -2371,7 +2399,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2368,7 +2396,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
} }
public void updatePlayer(ServerPlayer player) { public void updatePlayer(ServerPlayer player) {
@@ -2931,7 +2931,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
if (player != this.entity) { if (player != this.entity) {
// Paper start - remove allocation of Vec3D here // Paper start - remove allocation of Vec3D here
// Vec3 vec3d = player.position().subtract(this.entity.position()); // Vec3 vec3d = player.position().subtract(this.entity.position());
@@ -2403,8 +2431,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2400,8 +2428,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance); return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance);
} }
@@ -2960,7 +2960,7 @@ index 638d438824918bf410d66286f3b738c1c1e3311b..b7f56d1909272bb02591b6e08aed7894
Iterator iterator = this.entity.getIndirectPassengers().iterator(); Iterator iterator = this.entity.getIndirectPassengers().iterator();
while (iterator.hasNext()) { while (iterator.hasNext()) {
@@ -2416,6 +2464,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -2413,6 +2461,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
i = j; i = j;
} }
} }
@@ -3121,10 +3121,10 @@ index 3b144c820531122eb37d41be06c182b5f5dc0724..871bce7f5acc1b9a058496f41d962ec2
} }
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 1a918eabbaaed26d9bdf5c01e0488b5a117ba516..32a39a150a3d2bbae95a726901f3f46363e34ecf 100644 index 083349794d5ceb50322c5a645dd33fbfcc1c8155..f58873ef4362bfcc618ead099be94ba2dd4d86ed 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -689,7 +689,20 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -690,7 +690,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
} }
gameprofilerfiller.push("tick"); gameprofilerfiller.push("tick");
@@ -3146,7 +3146,7 @@ index 1a918eabbaaed26d9bdf5c01e0488b5a117ba516..32a39a150a3d2bbae95a726901f3f463
gameprofilerfiller.pop(); gameprofilerfiller.pop();
} }
} }
@@ -756,9 +769,11 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -757,9 +770,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
} }
// Paper start - optimise random block ticking // Paper start - optimise random block ticking
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos(); private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();
@@ -3159,7 +3159,7 @@ index 1a918eabbaaed26d9bdf5c01e0488b5a117ba516..32a39a150a3d2bbae95a726901f3f463
public void tickChunk(LevelChunk chunk, int randomTickSpeed) { public void tickChunk(LevelChunk chunk, int randomTickSpeed) {
ChunkPos chunkcoordintpair = chunk.getPos(); ChunkPos chunkcoordintpair = chunk.getPos();
boolean flag = this.isRaining(); boolean flag = this.isRaining();
@@ -769,7 +784,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -770,7 +785,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
gameprofilerfiller.push("thunder"); gameprofilerfiller.push("thunder");
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change
@@ -3168,7 +3168,7 @@ index 1a918eabbaaed26d9bdf5c01e0488b5a117ba516..32a39a150a3d2bbae95a726901f3f463
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
if (this.isRainingAt(blockposition)) { if (this.isRainingAt(blockposition)) {
DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition); DifficultyInstance difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
@@ -793,7 +808,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -794,7 +809,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
} }
gameprofilerfiller.popPush("iceandsnow"); gameprofilerfiller.popPush("iceandsnow");
@@ -3178,10 +3178,10 @@ index 1a918eabbaaed26d9bdf5c01e0488b5a117ba516..32a39a150a3d2bbae95a726901f3f463
this.getRandomBlockPosition(j, 0, k, 15, blockposition); this.getRandomBlockPosition(j, 0, k, 15, blockposition);
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1; int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 935c482be4bf3767e197a576d0e38eac51115dd4..1581215f7e8348e40d248c8e3d5ef43143e69579 100644 index a14710afaabf2b3b43f18ebe52eec8befff2b4ed..ae30be81679f24c20e1d102c91f58576cd32c09c 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1149,6 +1149,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1213,6 +1213,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@Override @Override
public void handleEditBook(ServerboundEditBookPacket packet) { public void handleEditBook(ServerboundEditBookPacket packet) {
@@ -3302,7 +3302,7 @@ index 540bc9500c35c0db719b00aa26f6fb3a1b08ed9f..806cb760822a99316b08ad95ff8922df
int LARGE_MAX_STACK_SIZE = 64; int LARGE_MAX_STACK_SIZE = 64;
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 76b9beb0d8ebeee0f603d2740ba71beabbf19e25..1ea1b51ceb0f90d30ca92a1b790bb7674ccef4b4 100644 index f925a8d550ecbf2044a37bfe58b30d6578c5f6af..9630d95ad2d47bb4a043dcb143bb58cd183c00c1 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -292,7 +292,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -292,7 +292,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -3387,7 +3387,7 @@ index 76b9beb0d8ebeee0f603d2740ba71beabbf19e25..1ea1b51ceb0f90d30ca92a1b790bb767
this.level.getProfiler().push("entityBaseTick"); this.level.getProfiler().push("entityBaseTick");
if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking
this.feetBlockState = null; this.feetBlockState = null;
@@ -3994,16 +4027,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -3991,16 +4024,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
} }
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) { public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
@@ -3413,7 +3413,7 @@ index 76b9beb0d8ebeee0f603d2740ba71beabbf19e25..1ea1b51ceb0f90d30ca92a1b790bb767
double d1 = 0.0D; double d1 = 0.0D;
boolean flag = this.isPushedByFluid(); boolean flag = this.isPushedByFluid();
boolean flag1 = false; boolean flag1 = false;
@@ -4011,14 +4046,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -4008,14 +4043,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
int k1 = 0; int k1 = 0;
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
@@ -3481,7 +3481,7 @@ index 76b9beb0d8ebeee0f603d2740ba71beabbf19e25..1ea1b51ceb0f90d30ca92a1b790bb767
if (d2 >= axisalignedbb.minY) { if (d2 >= axisalignedbb.minY) {
flag1 = true; flag1 = true;
@@ -4040,9 +4122,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -4037,9 +4119,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
// CraftBukkit end // CraftBukkit end
} }
} }
@@ -3508,7 +3508,7 @@ index ac0f0a4da4282c13f6e1f37710cb615d66b8ef2c..ec0319dd4b115e18b368027cc5dbe4d4
public final String id; public final String id;
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 279051442ac6cf288a03a16a35ddbf66d1cd1e90..8a9b6cacfb87d4ba825f3386894c25631ecbb1f7 100644 index cff7993bdafd2f69e46c9985c7601a69ae47f452..8a0e566aa0124480481b17b5b31691849c3ee7cd 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/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; @@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@@ -3566,7 +3566,7 @@ index 279051442ac6cf288a03a16a35ddbf66d1cd1e90..8a9b6cacfb87d4ba825f3386894c2563
public boolean onClimbable() { public boolean onClimbable() {
if (this.isSpectator()) { if (this.isSpectator()) {
return false; return false;
@@ -3580,7 +3601,10 @@ public abstract class LivingEntity extends Entity { @@ -3583,7 +3604,10 @@ public abstract class LivingEntity extends Entity {
Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ()); Vec3 vec3d1 = new Vec3(entity.getX(), entity.getEyeY(), entity.getZ());
// Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists // Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists
@@ -4334,10 +4334,10 @@ index 31be36e6b7b6bd0c0d7fda4e1b03ecd38947f3a5..362f952888f63a453a4352a9f1dc7df7
this.level.getProfiler().pop(); this.level.getProfiler().pop();
this.level.getProfiler().push("goatActivityUpdate"); this.level.getProfiler().push("goatActivityUpdate");
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java 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 c58c296bbb0fbd1930dba38bcab7ec3103917ba5..68c88e91ceb1fb19d2b3c168e56d7a4314232d64 100644 index fcc5444a1268931a0fd2df1e6bbbc17cfd5a61e0..16a55f94bda9f959548772c8916b4dc3eb045d47 100644
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java --- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
@@ -254,10 +254,16 @@ public class ItemEntity extends Entity { @@ -252,10 +252,16 @@ public class ItemEntity extends Entity {
if (entityitem.isMergable()) { if (entityitem.isMergable()) {
// Paper Start - Fix items merging through walls // Paper Start - Fix items merging through walls
if (this.level.paperConfig().fixes.fixItemsMergingThroughWalls) { if (this.level.paperConfig().fixes.fixItemsMergingThroughWalls) {
@@ -5475,7 +5475,7 @@ index d23481453717f715124156b5d83f6448f720d049..e6593d081b9349d68d45b645455d28f6
protected float distance(Node a, Node b) { protected float distance(Node a, Node b) {
return a.distanceTo(b); return a.distanceTo(b);
diff --git a/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java b/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java diff --git a/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java b/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java
index 842fa4c360146d7a9e27cb7b2cef68c683f4ada6..fc7aae06bbcba84cc8072b2e8df4612ec87ec3ea 100644 index 35f9b11a3a61976c952a2c1c64bb2a932538f54f..9e9ac64764cf0a84e25e75d8d6f516cde6047284 100644
--- a/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java --- a/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java
+++ b/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java +++ b/src/main/java/net/minecraft/world/level/storage/loot/LootContext.java
@@ -41,8 +41,10 @@ public class LootContext { @@ -41,8 +41,10 @@ public class LootContext {
@@ -5652,7 +5652,7 @@ index 909b2c98e7a9117d2f737245e4661792ffafb744..0d9e2b3728f9ab500bd5e44702718535
@Override @Override
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 7c1e510a0ad4b69c1fedc3367a8216046efb228e..2d9c98931df5d1c54adcfba78a9136841764f853 100644 index 8961da579b114cbafb329c00aadf1cf75e70cf97..a912b96a4e099c7e90cbba37218972f830188d24 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues { @@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix pufferfish issues
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 32a39a150a3d2bbae95a726901f3f46363e34ecf..4094d08d478a98cb4ff13ff3274ad0d88cd46e85 100644 index f58873ef4362bfcc618ead099be94ba2dd4d86ed..e4a341351a5f4e1f3ffed1708eb3a1fd81b94f0f 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -769,7 +769,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -770,7 +770,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
} }
// Paper start - optimise random block ticking // Paper start - optimise random block ticking
private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos(); private final BlockPos.MutableBlockPos chunkTickMutablePosition = new BlockPos.MutableBlockPos();

View File

@@ -153,10 +153,10 @@ index b0390eedb507d27426d1e1d73bd4ab63aec89ebe..005fdd2e2ebc0b6f7cb06b2efdb705b9
.completer(new ConsoleCommandCompleter(this.server)) .completer(new ConsoleCommandCompleter(this.server))
.option(LineReader.Option.COMPLETE_IN_WORD, true); .option(LineReader.Option.COMPLETE_IN_WORD, true);
diff --git a/src/main/java/net/minecraft/CrashReport.java b/src/main/java/net/minecraft/CrashReport.java diff --git a/src/main/java/net/minecraft/CrashReport.java b/src/main/java/net/minecraft/CrashReport.java
index 1a859fef0848cf23a672012e9764965ae1c07ec5..14ed740609b14242c2a8d377a78b2f719cd8a422 100644 index abe37c7c3c6f5ab73afd738ec78f06d7e4d2ed96..b5b6657e52e4f7a630229bd3ba433438af293e22 100644
--- a/src/main/java/net/minecraft/CrashReport.java --- a/src/main/java/net/minecraft/CrashReport.java
+++ b/src/main/java/net/minecraft/CrashReport.java +++ b/src/main/java/net/minecraft/CrashReport.java
@@ -121,6 +121,10 @@ public class CrashReport { @@ -123,6 +123,10 @@ public class CrashReport {
StringBuilder stringbuilder = new StringBuilder(); StringBuilder stringbuilder = new StringBuilder();
stringbuilder.append("---- Minecraft Crash Report ----\n"); stringbuilder.append("---- Minecraft Crash Report ----\n");
@@ -168,10 +168,10 @@ index 1a859fef0848cf23a672012e9764965ae1c07ec5..14ed740609b14242c2a8d377a78b2f71
stringbuilder.append(CrashReport.getErrorComment()); stringbuilder.append(CrashReport.getErrorComment());
stringbuilder.append("\n\n"); stringbuilder.append("\n\n");
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 67c4cd2fb3c64432b0390c9d497ef7067577c64a..2c9d1fa405ce51aa1e60a0e3af8ed11707abee1e 100644 index d66c60918313b0ede41ed96aa82e11fb2230f95b..9f551e09f6aea3df16af577f7754ff774731377f 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -296,7 +296,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -298,7 +298,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public volatile Thread shutdownThread; // Paper public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper public volatile boolean abnormalExit = false; // Paper
public boolean isIteratingOverLevels = false; // Paper public boolean isIteratingOverLevels = false; // Paper
@@ -180,7 +180,7 @@ index 67c4cd2fb3c64432b0390c9d497ef7067577c64a..2c9d1fa405ce51aa1e60a0e3af8ed117
public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning", () -> true); // Pufferfish - optimize mob spawning public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning", () -> true); // Pufferfish - optimize mob spawning
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) { public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
@@ -911,7 +911,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -913,7 +913,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
shutdownThread = Thread.currentThread(); shutdownThread = Thread.currentThread();
org.spigotmc.WatchdogThread.doStop(); // Paper org.spigotmc.WatchdogThread.doStop(); // Paper
if (!isSameThread()) { if (!isSameThread()) {
@@ -199,7 +199,7 @@ index 67c4cd2fb3c64432b0390c9d497ef7067577c64a..2c9d1fa405ce51aa1e60a0e3af8ed117
public SystemReport fillSystemReport(SystemReport details) { 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 diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index ad166788225841927bedc5243dbe94863c270425..1b1e97f8158df3cb060ea4e16f78249329bc765c 100644 index 519883c5549744e047a8a96afee142746fcb49cd..7c09182f465b66979e1981222d20fa4f574680d5 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -285,11 +285,12 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -285,11 +285,12 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -297,7 +297,7 @@ index cdefb2025eedea7e204d70d568adaf1c1ec4c03c..d1526ed7197b883e1d1f07baf285bf5e
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code) // (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 2d9c98931df5d1c54adcfba78a9136841764f853..f736cc6b3dc5242a30eefd344af65f6958ece3a4 100644 index a912b96a4e099c7e90cbba37218972f830188d24..4f37159aad0063645d0213286ca31975531b7ba2 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues { @@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@@ -29,11 +29,11 @@ index 061716934ba0a1f01e4d85d664034f72b3c7a765..acd95cf1dc7f009b63e44e4404e17362
metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> { metrics.addCustomChart(new Metrics.DrilldownPie("java_version", () -> {
Map<String, Map<String, Integer>> map = new HashMap<>(); Map<String, Map<String, Integer>> map = new HashMap<>();
diff --git a/src/main/java/net/minecraft/commands/CommandSourceStack.java b/src/main/java/net/minecraft/commands/CommandSourceStack.java diff --git a/src/main/java/net/minecraft/commands/CommandSourceStack.java b/src/main/java/net/minecraft/commands/CommandSourceStack.java
index 8762a5d88e80bb68872652a4490e76a669e17c22..a01d283ffcef2d4a608c42e230fa557563fe8179 100644 index e0dd0fc1638377f4d4226d4b2976b901d635dff0..3673697ac563263ef2dce013e136bc4c141f8783 100644
--- a/src/main/java/net/minecraft/commands/CommandSourceStack.java --- a/src/main/java/net/minecraft/commands/CommandSourceStack.java
+++ b/src/main/java/net/minecraft/commands/CommandSourceStack.java +++ b/src/main/java/net/minecraft/commands/CommandSourceStack.java
@@ -273,6 +273,30 @@ public class CommandSourceStack implements SharedSuggestionProvider, com.destroy @@ -318,6 +318,30 @@ public class CommandSourceStack implements SharedSuggestionProvider, com.destroy
return this.signingContext; }
} }
+ // Purpur start + // Purpur start
@@ -64,7 +64,7 @@ index 8762a5d88e80bb68872652a4490e76a669e17c22..a01d283ffcef2d4a608c42e230fa5575
if (this.source.acceptsSuccess() && !this.silent) { if (this.source.acceptsSuccess() && !this.silent) {
this.source.sendSystemMessage(message); this.source.sendSystemMessage(message);
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 1b1e97f8158df3cb060ea4e16f78249329bc765c..13361a344130e32b8145762028caa289cab96f00 100644 index 7c09182f465b66979e1981222d20fa4f574680d5..629024e5c3f480bd50ae2df9dadb72f06a62c3bf 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -223,6 +223,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -223,6 +223,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -105,7 +105,7 @@ index 817c501bdf31d8247d0d8d0743c67578184dd0fd..a1d9994c39e19a942b0bc605bed14134
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env); 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 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 42fe8f12b6c7c11a46fe9627a2a5a87ebea821c3..17ad3fb575444c36884202daffb685d03f0a5cb8 100644 index 98f766bcc078bd14387af0ecdcee2938f4ff1321..6fca71fa3cb8c8ff53fe85966f251efecf9b4f6b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -959,6 +959,7 @@ public final class CraftServer implements Server { @@ -959,6 +959,7 @@ public final class CraftServer implements Server {

View File

@@ -5,10 +5,10 @@ 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 diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 5f0d934399991ae94795ad0a94da689c242ffeba..cf6388c6d339cf011ce0a254b0aacb51fd06347b 100644 index 94944ba458178f9e5b772224da329bb5d85f4394..94d87f6bd2c27b0d6cc4547e8bc6e87b95f1ad32 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -261,6 +261,7 @@ public class ServerPlayer extends Player { @@ -262,6 +262,7 @@ public class ServerPlayer extends Player {
public Integer clientViewDistance; public Integer clientViewDistance;
// CraftBukkit end // CraftBukkit end
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
@@ -17,10 +17,10 @@ index 5f0d934399991ae94795ad0a94da689c242ffeba..cf6388c6d339cf011ce0a254b0aacb51
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // 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 diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 1581215f7e8348e40d248c8e3d5ef43143e69579..19cbccc56a526d597bd9124d38c84a85f6ad237d 100644 index ae30be81679f24c20e1d102c91f58576cd32c09c..d12ebf81c437d104de2c2087209ff9311121ba43 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3381,6 +3381,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -3592,6 +3592,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister"); private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister");
private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support
@@ -28,7 +28,7 @@ index 1581215f7e8348e40d248c8e3d5ef43143e69579..19cbccc56a526d597bd9124d38c84a85
@Override @Override
public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { public void handleCustomPayload(ServerboundCustomPayloadPacket packet) {
@@ -3405,6 +3406,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -3616,6 +3617,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex); 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 this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
} }
@@ -43,10 +43,10 @@ index 1581215f7e8348e40d248c8e3d5ef43143e69579..19cbccc56a526d597bd9124d38c84a85
try { try {
byte[] data = new byte[packet.data.readableBytes()]; 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 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index d7ba155d9485128f4c7ad8ab4a2b7302a86aeb67..123295c56e638d4b97196b62dfe79822c9002242 100644 index d2249145046d728240cf1ae0b71c9ec16184bc18..a3522f87a1f3c1efef6f65d2ba37ba0eccbc5fce 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2875,4 +2875,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -2881,4 +2881,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.spigot; return this.spigot;
} }
// Spigot end // Spigot end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix decompile errors
diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
index b6fc1b495e9173e625a7b2c856e79146734c4a9e..765dee56dd3a77e4bce137b84c4139202a5cef84 100644 index 2bc8917b7c4512f0607f34b1f18627a391fda07d..b5172f14606981a1e787d662a1cbed9d710071aa 100644
--- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java --- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
+++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java +++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
@@ -92,7 +92,7 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationL @@ -118,7 +118,7 @@ public class Allay extends PathfinderMob implements InventoryCarrier {
@Override @Override
public Brain<Allay> getBrain() { public Brain<Allay> getBrain() {
@@ -17,7 +17,7 @@ index b6fc1b495e9173e625a7b2c856e79146734c4a9e..765dee56dd3a77e4bce137b84c413920
} }
public static AttributeSupplier.Builder createAttributes() { public static AttributeSupplier.Builder createAttributes() {
@@ -141,8 +141,7 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationL @@ -174,8 +174,7 @@ public class Allay extends PathfinderMob implements InventoryCarrier {
@Override @Override
public boolean hurt(DamageSource source, float amount) { public boolean hurt(DamageSource source, float amount) {

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 diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index cf6388c6d339cf011ce0a254b0aacb51fd06347b..bcd496de1e4d38dd527705057f6c3152f0bd8e0d 100644 index 94d87f6bd2c27b0d6cc4547e8bc6e87b95f1ad32..db23ce6f9253697592d80e44c192e9a97d06b83b 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1706,6 +1706,26 @@ public class ServerPlayer extends Player { @@ -1704,6 +1704,26 @@ public class ServerPlayer extends Player {
this.lastSentExp = -1; // CraftBukkit - Added to reset this.lastSentExp = -1; // CraftBukkit - Added to reset
} }
@@ -33,26 +33,26 @@ index cf6388c6d339cf011ce0a254b0aacb51fd06347b..bcd496de1e4d38dd527705057f6c3152
+ // Purpur end + // Purpur end
+ +
@Override @Override
public void displayClientMessage(Component message, boolean actionBar) { public void displayClientMessage(Component message, boolean overlay) {
this.sendSystemMessage(message, actionBar ? ChatType.GAME_INFO : ChatType.SYSTEM); this.sendSystemMessage(message, overlay);
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 20cdfdb3b9351f74e89bc45b3ab972384165659a..13de18b40c2f80ccd9c0ce512e759dbc2804ff83 100644 index 37d8a797bb590c30bf42ab04128489a9390684d3..3ef2c88ddec0f7088d1d88d1d98286bed382e1c1 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java --- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1067,6 +1067,20 @@ public abstract class PlayerList { @@ -1068,6 +1068,20 @@ public abstract class PlayerList {
} }
// CraftBukkit end // CraftBukkit end
+ // Purpur Start + // Purpur Start
+ public void broadcastMiniMessage(@Nullable String message, ResourceKey<ChatType> type) { + public void broadcastMiniMessage(@Nullable String message, boolean overlay) {
+ if (message != null && !message.isEmpty()) { + if (message != null && !message.isEmpty()) {
+ this.broadcastMessage(net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(message), type); + this.broadcastMessage(net.kyori.adventure.text.minimessage.MiniMessage.miniMessage().deserialize(message), overlay);
+ } + }
+ } + }
+ +
+ public void broadcastMessage(@Nullable net.kyori.adventure.text.Component message, ResourceKey<ChatType> type) { + public void broadcastMessage(@Nullable net.kyori.adventure.text.Component message, boolean overlay) {
+ if (message != null) { + if (message != null) {
+ this.broadcastSystemMessage(io.papermc.paper.adventure.PaperAdventure.asVanilla(message), type); + this.broadcastSystemMessage(io.papermc.paper.adventure.PaperAdventure.asVanilla(message), overlay);
+ } + }
+ } + }
+ // Purpur end + // Purpur end
@@ -81,10 +81,10 @@ index 67bce77093dcc126098731047447da2031e3388d..c4088446d30c3b25cf196f51fd394cd0
return this.isFireSource; return this.isFireSource;
} }
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 3cb33e63a06a7baa013dbb0038debd7f683a6f4a..0a4f939c14ce6cc84b0833e417591ee2cb9a50fd 100644 index 9630d95ad2d47bb4a043dcb143bb58cd183c00c1..d189f7141a7e93ceb62a2ee22dd529e477ca055e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3786,6 +3786,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -3783,6 +3783,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
return SlotAccess.NULL; return SlotAccess.NULL;
} }

View File

@@ -22,7 +22,7 @@ index 153451ecd5b3c8e8ecb2d5ec91ccd582d4300899..56536c39bccfe097f8227c74a0d16799
super(x, y, z); super(x, y, z);
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 2c9d1fa405ce51aa1e60a0e3af8ed11707abee1e..ef66e1134099b5d328858bb7e25488529e12690d 100644 index 9f551e09f6aea3df16af577f7754ff774731377f..44c478beb3234a35588af21ee43f3be199992e40 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1534,6 +1534,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1534,6 +1534,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -34,10 +34,10 @@ index 2c9d1fa405ce51aa1e60a0e3af8ed11707abee1e..ef66e1134099b5d328858bb7e2548852
this.profiler.push(() -> { 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 diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 4094d08d478a98cb4ff13ff3274ad0d88cd46e85..be388b21b256ba68e42b8f998722ef5dcc1edac3 100644 index e4a341351a5f4e1f3ffed1708eb3a1fd81b94f0f..a12238ee1dc58232f04586f60fb7f662eac22a10 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -218,6 +218,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -219,6 +219,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
public boolean hasPhysicsEvent = true; // Paper public boolean hasPhysicsEvent = true; // Paper
public boolean hasEntityMoveEvent = false; // Paper public boolean hasEntityMoveEvent = false; // Paper
private final alternate.current.wire.WireHandler wireHandler = new alternate.current.wire.WireHandler(this); // Paper - optimize redstone (Alternate Current) private final alternate.current.wire.WireHandler wireHandler = new alternate.current.wire.WireHandler(this); // Paper - optimize redstone (Alternate Current)
@@ -46,10 +46,10 @@ index 4094d08d478a98cb4ff13ff3274ad0d88cd46e85..be388b21b256ba68e42b8f998722ef5d
return new Throwable(entity + " Added to world at " + new java.util.Date()); 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 diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index bcd496de1e4d38dd527705057f6c3152f0bd8e0d..8c7032fa2a29d67ddf832a6051c0b58821a64b11 100644 index db23ce6f9253697592d80e44c192e9a97d06b83b..8c18c203854628c0dd8d660b197127b019fec971 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -669,6 +669,15 @@ public class ServerPlayer extends Player { @@ -670,6 +670,15 @@ public class ServerPlayer extends Player {
this.trackStartFallingPosition(); this.trackStartFallingPosition();
this.trackEnteredOrExitedLavaOnVehicle(); this.trackEnteredOrExitedLavaOnVehicle();
this.advancements.flushDirty(this); this.advancements.flushDirty(this);
@@ -66,10 +66,10 @@ index bcd496de1e4d38dd527705057f6c3152f0bd8e0d..8c7032fa2a29d67ddf832a6051c0b588
public void doTick() { public void doTick() {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 19cbccc56a526d597bd9124d38c84a85f6ad237d..472a5dac726c77caa34b2f1343495cae4a9e2e98 100644 index d12ebf81c437d104de2c2087209ff9311121ba43..b273c189f699467be57a908d1c46f1b0a80d3d6b 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2668,6 +2668,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -2865,6 +2865,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event); ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event);
@@ -79,7 +79,7 @@ index 19cbccc56a526d597bd9124d38c84a85f6ad237d..472a5dac726c77caa34b2f1343495cae
if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { if ((entity instanceof Bucketable && entity instanceof LivingEntity && 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 ClientboundAddEntityPacket(entity)); ServerGamePacketListenerImpl.this.send(new ClientboundAddEntityPacket(entity));
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 0a4f939c14ce6cc84b0833e417591ee2cb9a50fd..e91e54d37bc6417d3abab000b6f15eb0a14a6a0c 100644 index d189f7141a7e93ceb62a2ee22dd529e477ca055e..3545d6ede83ebf000e05f873c62deed27403845e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -362,7 +362,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -362,7 +362,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -91,7 +91,7 @@ index 0a4f939c14ce6cc84b0833e417591ee2cb9a50fd..e91e54d37bc6417d3abab000b6f15eb0
private float eyeHeight; private float eyeHeight;
public boolean isInPowderSnow; public boolean isInPowderSnow;
public boolean wasInPowderSnow; public boolean wasInPowderSnow;
@@ -2770,6 +2770,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -2767,6 +2767,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
this.passengers = ImmutableList.copyOf(list); this.passengers = ImmutableList.copyOf(list);
} }
@@ -104,7 +104,7 @@ index 0a4f939c14ce6cc84b0833e417591ee2cb9a50fd..e91e54d37bc6417d3abab000b6f15eb0
} }
return true; // CraftBukkit return true; // CraftBukkit
} }
@@ -2810,6 +2816,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -2807,6 +2813,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
return false; return false;
} }
// Spigot end // Spigot end
@@ -119,7 +119,7 @@ index 0a4f939c14ce6cc84b0833e417591ee2cb9a50fd..e91e54d37bc6417d3abab000b6f15eb0
if (this.passengers.size() == 1 && this.passengers.get(0) == entity) { if (this.passengers.size() == 1 && this.passengers.get(0) == entity) {
this.passengers = ImmutableList.of(); this.passengers = ImmutableList.of();
} else { } else {
@@ -4533,4 +4547,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -4530,4 +4544,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
return ((ServerChunkCache) level.getChunkSource()).isPositionTicking(this); return ((ServerChunkCache) level.getChunkSource()).isPositionTicking(this);
} }
// Paper end // Paper end
@@ -194,7 +194,7 @@ index c1e9b40a4a0f9cdc650caa88b5ea132e06ee2496..882ab40c8cdea8c214cb8344b3ccecdd
protected ParticleOptions getInkParticle() { protected ParticleOptions getInkParticle() {
return ParticleTypes.GLOW_SQUID_INK; 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 diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 8a9b6cacfb87d4ba825f3386894c25631ecbb1f7..70846a6b4674bcb9bd95e933e32812c19e4a5a54 100644 index 8a0e566aa0124480481b17b5b31691849c3ee7cd..69de163971a9877d8b020184c296f7f98ee877ed 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -220,9 +220,9 @@ public abstract class LivingEntity extends Entity { @@ -220,9 +220,9 @@ public abstract class LivingEntity extends Entity {
@@ -236,7 +236,7 @@ index 8a9b6cacfb87d4ba825f3386894c25631ecbb1f7..70846a6b4674bcb9bd95e933e32812c1
double d0 = (double) this.getJumpPower() + this.getJumpBoostPower(); double d0 = (double) this.getJumpPower() + this.getJumpBoostPower();
Vec3 vec3d = this.getDeltaMovement(); Vec3 vec3d = this.getDeltaMovement();
// Paper start // Paper start
@@ -3398,8 +3399,10 @@ public abstract class LivingEntity extends Entity { @@ -3401,8 +3402,10 @@ public abstract class LivingEntity extends Entity {
this.pushEntities(); this.pushEntities();
this.level.getProfiler().pop(); this.level.getProfiler().pop();
// Paper start // Paper start
@@ -249,7 +249,7 @@ index 8a9b6cacfb87d4ba825f3386894c25631ecbb1f7..70846a6b4674bcb9bd95e933e32812c1
Location from = new Location(this.level.getWorld(), this.xo, this.yo, this.zo, this.yRotO, this.xRotO); 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()); 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()); io.papermc.paper.event.entity.EntityMoveEvent event = new io.papermc.paper.event.entity.EntityMoveEvent(this.getBukkitLivingEntity(), from, to.clone());
@@ -3409,6 +3412,21 @@ public abstract class LivingEntity extends Entity { @@ -3412,6 +3415,21 @@ public abstract class LivingEntity extends Entity {
absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch()); absMoveTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
} }
} }
@@ -2194,13 +2194,13 @@ index 45c3cec839a7c23903dedf6e3e004305da2adceb..248531727dcafb71d7d2d2767205e09a
this.targetSelector.addGoal(2, new OwnerHurtTargetGoal(this)); this.targetSelector.addGoal(2, new OwnerHurtTargetGoal(this));
this.targetSelector.addGoal(3, (new HurtByTargetGoal(this, new Class[0])).setAlertOthers()); this.targetSelector.addGoal(3, (new HurtByTargetGoal(this, new Class[0])).setAlertOthers());
diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
index 765dee56dd3a77e4bce137b84c4139202a5cef84..1fbdf53691670414564171521583b00d719040e4 100644 index b5172f14606981a1e787d662a1cbed9d710071aa..a4b390af92e5923ca54e37c0feb263bafe2e19de 100644
--- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java --- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
+++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java +++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
@@ -72,14 +72,49 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationL @@ -95,10 +95,23 @@ public class Allay extends PathfinderMob implements InventoryCarrier {
private final SimpleContainer inventory = new SimpleContainer(1); private float dancingAnimationTicks;
private float holdingItemAnimationTicks; private float spinningAnimationTicks;
private float holdingItemAnimationTicks0; private float spinningAnimationTicks0;
+ private org.purpurmc.purpur.controller.FlyingMoveControllerWASD purpurController; // Purpur + private org.purpurmc.purpur.controller.FlyingMoveControllerWASD purpurController; // Purpur
public Allay(EntityType<? extends Allay> type, Level world) { public Allay(EntityType<? extends Allay> type, Level world) {
@@ -2220,7 +2220,10 @@ index 765dee56dd3a77e4bce137b84c4139202a5cef84..1fbdf53691670414564171521583b00d
+ }; + };
+ // Purpur end + // Purpur end
this.setCanPickUpLoot(this.canPickUpLoot()); this.setCanPickUpLoot(this.canPickUpLoot());
this.dynamicGameEventListener = new DynamicGameEventListener<>(new VibrationListener(new EntityPositionSource(this, this.getEyeHeight()), 16, this, (VibrationListener.ReceivingEvent)null, 0.0F, 0)); PositionSource positionSource = new EntityPositionSource(this, this.getEyeHeight());
this.vibrationListenerConfig = new Allay.AllayVibrationListenerConfig();
@@ -106,6 +119,28 @@ public class Allay extends PathfinderMob implements InventoryCarrier {
this.dynamicJukeboxListener = new DynamicGameEventListener<>(new Allay.JukeboxListener(positionSource, GameEvent.JUKEBOX_PLAY.getNotificationRadius()));
} }
+ // Purpur start + // Purpur start
@@ -4775,7 +4778,7 @@ index 97b3082dc020043fa38d9e5e4591102f97519ed3..be664e96a63bf6042375654e8297e4d6
} }
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
index cff0ed9ae6e79f84870343e43574f384dd73ea88..0838dc70da3a56730820ed0685d250f10296e377 100644 index fb0a77b4cf1ba47c73c00993bd9b7454240fe5d6..9e5542220eeada8b4f539a5bbbeead670eef4057 100644
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java --- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java +++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
@@ -78,6 +78,23 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder { @@ -78,6 +78,23 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
@@ -5102,10 +5105,10 @@ index 86e1ba898d6b92735258419fa74352e5116226dc..2ae9a5da91ad20f1b566a686dcc8d4f1
this.setTradingPlayer(player); this.setTradingPlayer(player);
this.openTradingScreen(player, this.getDisplayName(), 1); 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 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 cd9cbfa5ef94994b3f7f2ecdde843620e7e6c071..02cf1fdc58c33431a070a970add325eb7a278974 100644 index 9b131f0a827413e9f5d6d0f7491c5481576cb8b1..307733914109c4eb1a10ffccf169e70c3baa2bc9 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java --- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -197,6 +197,19 @@ public abstract class Player extends LivingEntity { @@ -198,6 +198,19 @@ public abstract class Player extends LivingEntity {
} }
// CraftBukkit end // CraftBukkit end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Barrels and enderchests 6 rows
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 3a52624a0e0f5f6667f4bd78c4a42f5568a25ce3..1e4be9af14b305aed38a7a3cf38a4659ba3aeb18 100644 index 3ef2c88ddec0f7088d1d88d1d98286bed382e1c1..3c9d72dd1a1bade79e4c8b5e6c7b136f906ba77d 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java --- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1192,6 +1192,27 @@ public abstract class PlayerList { @@ -1193,6 +1193,27 @@ public abstract class PlayerList {
player.getBukkitEntity().recalculatePermissions(); // CraftBukkit player.getBukkitEntity().recalculatePermissions(); // CraftBukkit
this.server.getCommands().sendCommands(player); this.server.getCommands().sendCommands(player);
} // Paper } // Paper
@@ -37,10 +37,10 @@ index 3a52624a0e0f5f6667f4bd78c4a42f5568a25ce3..1e4be9af14b305aed38a7a3cf38a4659
public boolean isWhiteListed(GameProfile profile) { public boolean isWhiteListed(GameProfile profile) {
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java 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 02cf1fdc58c33431a070a970add325eb7a278974..f86fd6a5712d1a3b6e0a306421eaf833f6377e65 100644 index 307733914109c4eb1a10ffccf169e70c3baa2bc9..f11ba32019abb5d5fef13c8f1beab18f34181a75 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java --- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -186,6 +186,7 @@ public abstract class Player extends LivingEntity { @@ -187,6 +187,7 @@ public abstract class Player extends LivingEntity {
// Paper start // Paper start
public boolean affectsSpawning = true; public boolean affectsSpawning = true;
// Paper end // Paper end
@@ -236,7 +236,7 @@ index 30ac442049088200e9ab77a561c59cbc58aaa28f..fb3c3c32b89e6a99b50bd04163d29892
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index e8150d1bec60f7e32d5475c8402fd7b53df359e7..1717eb5f8fdaf8432113a297602f2eaa10559583 100644 index 5aee512c0a5a0b5f5fac4214f682b398a1e85862..8a7144a65594236a1ec7187348285174594d7a97 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -172,4 +172,39 @@ public class PurpurConfig { @@ -172,4 +172,39 @@ public class PurpurConfig {

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 diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 8c7032fa2a29d67ddf832a6051c0b58821a64b11..14b778756bc7e0a6ad1996c23d142ccb3431ef04 100644 index 8c18c203854628c0dd8d660b197127b019fec971..f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -2007,8 +2007,58 @@ public class ServerPlayer extends Player { @@ -1996,8 +1996,58 @@ public class ServerPlayer extends Player {
public void resetLastActionTime() { public void resetLastActionTime() {
this.lastActionTime = Util.getMillis(); this.lastActionTime = Util.getMillis();
@@ -39,7 +39,7 @@ index 8c7032fa2a29d67ddf832a6051c0b58821a64b11..14b778756bc7e0a6ad1996c23d142ccb
+ +
+ msg = event.getBroadcastMsg(); + msg = event.getBroadcastMsg();
+ if (msg != null && !msg.isEmpty()) { + if (msg != null && !msg.isEmpty()) {
+ server.getPlayerList().broadcastMiniMessage(String.format(msg, this.getGameProfile().getName()), ChatType.SYSTEM); + server.getPlayerList().broadcastMiniMessage(String.format(msg, this.getGameProfile().getName()), false);
+ } + }
+ +
+ if (level.purpurConfig.idleTimeoutUpdateTabList) { + if (level.purpurConfig.idleTimeoutUpdateTabList) {
@@ -68,10 +68,10 @@ index 8c7032fa2a29d67ddf832a6051c0b58821a64b11..14b778756bc7e0a6ad1996c23d142ccb
return this.stats; 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 diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 472a5dac726c77caa34b2f1343495cae4a9e2e98..bd7769c9511685bbf96e5bb80108a99508cb82d4 100644 index b273c189f699467be57a908d1c46f1b0a80d3d6b..85d18e94ee93f1348871eca697c723eb5482db6b 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -313,6 +313,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -340,6 +340,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
private boolean justTeleported = false; private boolean justTeleported = false;
private boolean hasMoved; // Spigot private boolean hasMoved; // Spigot
@@ -92,7 +92,7 @@ index 472a5dac726c77caa34b2f1343495cae4a9e2e98..bd7769c9511685bbf96e5bb80108a995
public CraftPlayer getCraftPlayer() { public CraftPlayer getCraftPlayer() {
return (this.player == null) ? null : (CraftPlayer) this.player.getBukkitEntity(); return (this.player == null) ? null : (CraftPlayer) this.player.getBukkitEntity();
} }
@@ -414,6 +428,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -442,6 +456,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
} }
if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) (this.server.getPlayerIdleTimeout() * 1000 * 60) && !this.player.wonGame) { // Paper - Prevent AFK kick while watching end credits. if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) (this.server.getPlayerIdleTimeout() * 1000 * 60) && !this.player.wonGame) { // Paper - Prevent AFK kick while watching end credits.
@@ -105,7 +105,7 @@ index 472a5dac726c77caa34b2f1343495cae4a9e2e98..bd7769c9511685bbf96e5bb80108a995
this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854 this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854
this.disconnect(Component.translatable("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause this.disconnect(Component.translatable("multiplayer.disconnect.idling"), org.bukkit.event.player.PlayerKickEvent.Cause.IDLING); // Paper - kick event cause
} }
@@ -703,6 +723,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -745,6 +765,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
this.lastYaw = to.getYaw(); this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch(); this.lastPitch = to.getPitch();
@@ -114,7 +114,7 @@ index 472a5dac726c77caa34b2f1343495cae4a9e2e98..bd7769c9511685bbf96e5bb80108a995
// Skip the first time we do this // Skip the first time we do this
if (true) { // Spigot - don't skip any move events if (true) { // Spigot - don't skip any move events
Location oldTo = to.clone(); Location oldTo = to.clone();
@@ -1479,7 +1501,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1545,7 +1567,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
if (!this.player.isChangingDimension() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot if (!this.player.isChangingDimension() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot
flag2 = true; // Paper - diff on change, this should be moved wrongly flag2 = true; // Paper - diff on change, this should be moved wrongly
@@ -123,7 +123,7 @@ index 472a5dac726c77caa34b2f1343495cae4a9e2e98..bd7769c9511685bbf96e5bb80108a995
} }
this.player.absMoveTo(d0, d1, d2, f, f1); this.player.absMoveTo(d0, d1, d2, f, f1);
@@ -1529,6 +1551,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1595,6 +1617,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
this.lastYaw = to.getYaw(); this.lastYaw = to.getYaw();
this.lastPitch = to.getPitch(); this.lastPitch = to.getPitch();
@@ -182,10 +182,10 @@ index e752c83df50fb9b670ecea2abc95426c2a009b6f..baa4f9026d31de92210300ecb8ee8c1b
if (baseEntity == null) { if (baseEntity == null) {
if (this.isCombat && (!targetEntity.canBeSeenAsEnemy() || targetEntity.level.getDifficulty() == Difficulty.PEACEFUL)) { 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 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 f86fd6a5712d1a3b6e0a306421eaf833f6377e65..74f14215280005a4d6fb35a77e2f1c4858250f2f 100644 index f11ba32019abb5d5fef13c8f1beab18f34181a75..74ef0579739cdc6961718dd2d2b34752f172ed73 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java --- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -201,6 +201,13 @@ public abstract class Player extends LivingEntity { @@ -202,6 +202,13 @@ public abstract class Player extends LivingEntity {
// Purpur start // Purpur start
public abstract void resetLastActionTime(); public abstract void resetLastActionTime();
@@ -213,7 +213,7 @@ index 3f458ddd4dc04ed28510a212be76bb19e7f6a61e..a36469186f72eccf8c4428d920d0583b
if (range < 0.0D || d < range * range) { if (range < 0.0D || d < range * range) {
return true; return true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 123295c56e638d4b97196b62dfe79822c9002242..271387c0f5e011846507a0dd8dbf2445ca2ff7ed 100644 index a3522f87a1f3c1efef6f65d2ba37ba0eccbc5fce..69084657049dccad5ba26d22668e8930ff086be8 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -442,10 +442,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -442,10 +442,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -233,7 +233,7 @@ index 123295c56e638d4b97196b62dfe79822c9002242..271387c0f5e011846507a0dd8dbf2445
for (ServerPlayer player : (List<ServerPlayer>) server.getHandle().players) { for (ServerPlayer player : (List<ServerPlayer>) server.getHandle().players) {
if (player.getBukkitEntity().canSee(this)) { if (player.getBukkitEntity().canSee(this)) {
player.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); player.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_DISPLAY_NAME, this.getHandle()));
@@ -2881,5 +2886,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -2887,5 +2892,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public boolean usesPurpurClient() { public boolean usesPurpurClient() {
return getHandle().purpurClient; return getHandle().purpurClient;
} }

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Lagging threshold
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index bf68f5632c374fe725f00de119f09fb703cf61fb..a37e28ebef82d4964899f1331b9a1b6d992b167f 100644 index c4cad668a87f1438fcc4fe1f514bd4dc9c605ed6..f4d332008924aff0e9c17e57d7d5876994af4b4b 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -292,6 +292,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -294,6 +294,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
// Spigot end // Spigot end
public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations; public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations;
public static long currentTickLong = 0L; // Paper public static long currentTickLong = 0L; // Paper
@@ -16,7 +16,7 @@ index bf68f5632c374fe725f00de119f09fb703cf61fb..a37e28ebef82d4964899f1331b9a1b6d
public volatile Thread shutdownThread; // Paper public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper public volatile boolean abnormalExit = false; // Paper
@@ -1173,6 +1174,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1176,6 +1177,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.recentTps[1] = tps5.getAverage(); this.recentTps[1] = tps5.getAverage();
this.recentTps[2] = tps15.getAverage(); this.recentTps[2] = tps15.getAverage();
// Paper end // Paper end

View File

@@ -5,10 +5,10 @@ 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 diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115fb3beb296 100644 index f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb..e7399e71db7ca5671a4570f4e605497b2b2fa0cb 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -262,6 +262,7 @@ public class ServerPlayer extends Player { @@ -263,6 +263,7 @@ public class ServerPlayer extends Player {
// CraftBukkit end // CraftBukkit end
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
public boolean purpurClient = false; // Purpur public boolean purpurClient = false; // Purpur
@@ -16,7 +16,7 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
@@ -338,6 +339,7 @@ public class ServerPlayer extends Player { @@ -339,6 +340,7 @@ public class ServerPlayer extends Player {
this.bukkitPickUpLoot = true; this.bukkitPickUpLoot = true;
this.maxHealthCache = this.getMaxHealth(); this.maxHealthCache = this.getMaxHealth();
this.cachedSingleMobDistanceMap = new com.destroystokyo.paper.util.PooledHashSets.PooledObjectLinkedOpenHashSet<>(this); // Paper this.cachedSingleMobDistanceMap = new com.destroystokyo.paper.util.PooledHashSets.PooledObjectLinkedOpenHashSet<>(this); // Paper
@@ -24,7 +24,7 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
} }
// Paper start - Chunk priority // Paper start - Chunk priority
public BlockPos getPointInFront(double inFront) { public BlockPos getPointInFront(double inFront) {
@@ -1020,6 +1022,12 @@ public class ServerPlayer extends Player { @@ -1018,6 +1020,12 @@ public class ServerPlayer extends Player {
} }
@@ -37,7 +37,7 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
@Override @Override
public boolean hurt(DamageSource source, float amount) { public boolean hurt(DamageSource source, float amount) {
if (this.isInvulnerableTo(source)) { if (this.isInvulnerableTo(source)) {
@@ -1027,7 +1035,7 @@ public class ServerPlayer extends Player { @@ -1025,7 +1033,7 @@ public class ServerPlayer extends Player {
} else { } else {
boolean flag = this.server.isDedicatedServer() && this.isPvpAllowed() && "fall".equals(source.msgId); boolean flag = this.server.isDedicatedServer() && this.isPvpAllowed() && "fall".equals(source.msgId);
@@ -46,7 +46,7 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
return false; return false;
} else { } else {
if (source instanceof EntityDamageSource) { if (source instanceof EntityDamageSource) {
@@ -1200,6 +1208,7 @@ public class ServerPlayer extends Player { @@ -1198,6 +1206,7 @@ public class ServerPlayer extends Player {
} }
// Paper end // Paper end
@@ -54,7 +54,7 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
return this; return this;
} }
} }
@@ -1993,6 +2002,7 @@ public class ServerPlayer extends Player { @@ -1982,6 +1991,7 @@ public class ServerPlayer extends Player {
} }
public void sendTexturePack(String url, String hash, boolean required, @Nullable Component resourcePackPrompt) { public void sendTexturePack(String url, String hash, boolean required, @Nullable Component resourcePackPrompt) {
@@ -62,7 +62,7 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
this.connection.send(new ClientboundResourcePackPacket(url, hash, required, resourcePackPrompt)); this.connection.send(new ClientboundResourcePackPacket(url, hash, required, resourcePackPrompt));
} }
@@ -2518,9 +2528,17 @@ public class ServerPlayer extends Player { @@ -2507,9 +2517,17 @@ public class ServerPlayer extends Player {
@Override @Override
public boolean isImmobile() { public boolean isImmobile() {
@@ -82,10 +82,10 @@ index 14b778756bc7e0a6ad1996c23d142ccb3431ef04..92e627494e0c0c49c252f546563f115f
public Scoreboard getScoreboard() { public Scoreboard getScoreboard() {
return this.getBukkitEntity().getScoreboard().getHandle(); 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 diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index bd7769c9511685bbf96e5bb80108a99508cb82d4..b51608b2eaaaa4bf4b89fbd379aa649c3a219c38 100644 index 85d18e94ee93f1348871eca697c723eb5482db6b..9bdaaa3f7845e300ad172d5167daa4187aa6fb0c 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2009,12 +2009,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -2075,12 +2075,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@Override @Override
public void handleResourcePackResponse(ServerboundResourcePackPacket packet) { public void handleResourcePackResponse(ServerboundResourcePackPacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
@@ -108,10 +108,10 @@ index bd7769c9511685bbf96e5bb80108a99508cb82d4..b51608b2eaaaa4bf4b89fbd379aa649c
this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packStatus)); // CraftBukkit this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packStatus)); // CraftBukkit
// Paper end // Paper end
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 5f5ec3269a5856aa9e00df475901f5d13da3c6f6..f8699be5fed37f86445f9ee513e737ba6bcec161 100644 index 3c9d72dd1a1bade79e4c8b5e6c7b136f906ba77d..02707189e0cafcb8db31413566f2078495866434 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java --- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1007,6 +1007,8 @@ public abstract class PlayerList { @@ -1008,6 +1008,8 @@ public abstract class PlayerList {
} }
// Paper end // Paper end
@@ -121,10 +121,10 @@ index 5f5ec3269a5856aa9e00df475901f5d13da3c6f6..f8699be5fed37f86445f9ee513e737ba
return entityplayer1; return entityplayer1;
} }
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 271387c0f5e011846507a0dd8dbf2445ca2ff7ed..c5cb4060bbe39f6ae73170369e807789bfb2ae54 100644 index 69084657049dccad5ba26d22668e8930ff086be8..f01633819138fabe782bb2897ae2488b0d376278 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2901,5 +2901,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -2907,5 +2907,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void resetIdleTimer() { public void resetIdleTimer() {
getHandle().resetLastActionTime(); getHandle().resetLastActionTime();
} }

View File

@@ -5,10 +5,10 @@ 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 diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index b51608b2eaaaa4bf4b89fbd379aa649c3a219c38..da310a616bf5edd2dd9a0b4cbadd5ffec0f22315 100644 index 9bdaaa3f7845e300ad172d5167daa4187aa6fb0c..f8233800fad7d62da8b4c5d6baa19afd3c5bb45a 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -245,6 +245,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -258,6 +258,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
private long keepAliveTime = Util.getMillis(); private long keepAliveTime = Util.getMillis();
private boolean keepAlivePending; private boolean keepAlivePending;
private long keepAliveChallenge; private long keepAliveChallenge;
@@ -16,7 +16,7 @@ index b51608b2eaaaa4bf4b89fbd379aa649c3a219c38..da310a616bf5edd2dd9a0b4cbadd5ffe
// CraftBukkit start - multithreaded fields // CraftBukkit start - multithreaded fields
private final AtomicInteger chatSpamTickCount = new AtomicInteger(); private final AtomicInteger chatSpamTickCount = new AtomicInteger();
private final java.util.concurrent.atomic.AtomicInteger tabSpamLimiter = new java.util.concurrent.atomic.AtomicInteger(); // Paper - configurable tab spam limits private final java.util.concurrent.atomic.AtomicInteger tabSpamLimiter = new java.util.concurrent.atomic.AtomicInteger(); // Paper - configurable tab spam limits
@@ -396,6 +397,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -424,6 +425,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
long currentTime = Util.getMillis(); long currentTime = Util.getMillis();
long elapsedTime = currentTime - this.keepAliveTime; long elapsedTime = currentTime - this.keepAliveTime;
@@ -38,7 +38,7 @@ index b51608b2eaaaa4bf4b89fbd379aa649c3a219c38..da310a616bf5edd2dd9a0b4cbadd5ffe
if (this.keepAlivePending) { if (this.keepAlivePending) {
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected 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 ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info
@@ -3366,6 +3382,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -3577,6 +3593,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@Override @Override
public void handleKeepAlive(ServerboundKeepAlivePacket packet) { public void handleKeepAlive(ServerboundKeepAlivePacket packet) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Logger settings (suppressing pointless logs)
diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java
index de0513b38e5fa0138f1cee6bb633561be12449fc..161a2b122843318a1bc411ea09ef83bc56bff0d1 100644 index a0c19503aabab5378d672a30163d35a5ba05b6c1..897e761be8c1f79562f54101173fbba7656a37ec 100644
--- a/src/main/java/net/minecraft/server/PlayerAdvancements.java --- a/src/main/java/net/minecraft/server/PlayerAdvancements.java
+++ b/src/main/java/net/minecraft/server/PlayerAdvancements.java +++ b/src/main/java/net/minecraft/server/PlayerAdvancements.java
@@ -185,6 +185,7 @@ public class PlayerAdvancements { @@ -183,6 +183,7 @@ public class PlayerAdvancements {
if (advancement == null) { if (advancement == null) {
// CraftBukkit start // CraftBukkit start
if (entry.getKey().getNamespace().equals("minecraft")) { if (entry.getKey().getNamespace().equals("minecraft")) {
@@ -17,10 +17,10 @@ index de0513b38e5fa0138f1cee6bb633561be12449fc..161a2b122843318a1bc411ea09ef83bc
} }
// CraftBukkit end // CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/level/WorldGenRegion.java b/src/main/java/net/minecraft/server/level/WorldGenRegion.java diff --git a/src/main/java/net/minecraft/server/level/WorldGenRegion.java b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
index f000c822ed4563b5b840936852bc7d8e030763e3..0c48e877a0dba9fba3295d1740527fa418b5e26c 100644 index 80c1e0e47818486a68e0114b063395290365346b..c677a55db62b4d197eeb1bf5d929e24019fed5ec 100644
--- a/src/main/java/net/minecraft/server/level/WorldGenRegion.java --- a/src/main/java/net/minecraft/server/level/WorldGenRegion.java
+++ b/src/main/java/net/minecraft/server/level/WorldGenRegion.java +++ b/src/main/java/net/minecraft/server/level/WorldGenRegion.java
@@ -294,6 +294,7 @@ public class WorldGenRegion implements WorldGenLevel { @@ -295,6 +295,7 @@ public class WorldGenRegion implements WorldGenLevel {
return true; return true;
} else { } else {
// Paper start // Paper start
@@ -53,7 +53,7 @@ index b2a15c986c7500a0ce227a54cb61ec3f5378f6f3..14600a7bc01bf61e8ffb736816d23df6
if (MinecraftServer.getServer() != null && MinecraftServer.getServer().isDebugging()) { if (MinecraftServer.getServer() != null && MinecraftServer.getServer().isDebugging()) {
new Exception().printStackTrace(); new Exception().printStackTrace();
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 8124b27f043beb763d70881593a883e06ea59f6e..dab104575c5a12857faffb8efc5620a123580a9e 100644 index 20b86de8b204df1636b76073c434f5e436f77379..918eee23167fb9b39bd19ba1a6d8776f83d56ea2 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -230,4 +230,15 @@ public class PurpurConfig { @@ -230,4 +230,15 @@ public class PurpurConfig {

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 diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 3d94e1c0abd49d59847c9aa17c6161b3da3fb649..1952608dc00f3d47aa6fe3dfd54957ca064a9374 100644 index a12238ee1dc58232f04586f60fb7f662eac22a10..6720ee545d93aa773c470ab8cbb0df0e9fd46010 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -792,9 +792,15 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -793,9 +793,15 @@ public class ServerLevel extends Level implements WorldGenLevel {
boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01D) && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper boolean flag1 = this.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.getEffectiveDifficulty() * this.paperConfig().entities.spawning.skeletonHorseThunderSpawnChance.or(0.01D) && !this.getBlockState(blockposition.below()).is(Blocks.LIGHTNING_ROD); // Paper
if (flag1) { if (flag1) {

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 diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 92e627494e0c0c49c252f546563f115fb3beb296..73222027287462326312cce02faef2b272850c09 100644 index e7399e71db7ca5671a4570f4e605497b2b2fa0cb..c8e81949a0f00e7feb0bd99bca5a0073b5f4add8 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1033,6 +1033,7 @@ public class ServerPlayer extends Player { @@ -1031,6 +1031,7 @@ public class ServerPlayer extends Player {
if (this.isInvulnerableTo(source)) { if (this.isInvulnerableTo(source)) {
return false; return false;
} else { } else {
@@ -136,10 +136,10 @@ index 127a799f7848b32664b77bf67847ca6b8ac9a90d..178cd88a7de291136e0486617e8347b7
} }
} }
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
index 771c6cf992664b65ffbf4ae0192bc7b09f77c2e6..480f00ef2026e84b133655c5e18b1dc36b5a02ca 100644 index fd74cc9c0dab84b176f7da3fbbbdbc8fd3a7e26d..fdda70f216b3805cc6d8105c3d85814a2ae6b6ad 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
@@ -72,7 +72,7 @@ import net.minecraft.world.phys.shapes.VoxelShape; @@ -73,7 +73,7 @@ import net.minecraft.world.phys.shapes.VoxelShape;
public abstract class BlockBehaviour { public abstract class BlockBehaviour {
protected static final Direction[] UPDATE_SHAPE_ORDER = new Direction[]{Direction.WEST, Direction.EAST, Direction.NORTH, Direction.SOUTH, Direction.DOWN, Direction.UP}; protected static final Direction[] UPDATE_SHAPE_ORDER = new Direction[]{Direction.WEST, Direction.EAST, Direction.NORTH, Direction.SOUTH, Direction.DOWN, Direction.UP};

View File

@@ -1,31 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 6 Mar 2020 13:37:26 -0600
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 1a6786565e5da5418423e9cb937a966a0755a0f9..592ca6d3a49f08721f38f84b580bc46a0fb92dd5 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1871,6 +1871,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
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 28b85ca8ad4ace31819099f9422779d86987425e..773f2a44c26c4c5c00fab0b502eb08652f23b56e 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2974,7 +2974,7 @@ public abstract class LivingEntity extends Entity {
}
}
- this.aiStep();
+ if (!this.isRemoved()) this.aiStep(); // Purpur
double d0 = this.getX() - this.xo;
double d1 = this.getZ() - this.zo;
float f = (float) (d0 * d0 + d1 * d1);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Skip events if there's no listeners
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index ea5f0600d47b0f7c08b96eed91e5de255114637b..02add91d477dfef1bafa39c28b23dfc09418c939 100644 index a0f5aa8c3cfce63af9cb286278a7fdebd7aa3642..91bb48f66aad86c76b2e7d2e70e84ca0e1a50212 100644
--- a/src/main/java/net/minecraft/commands/Commands.java --- a/src/main/java/net/minecraft/commands/Commands.java
+++ b/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java
@@ -393,6 +393,7 @@ public class Commands { @@ -404,6 +404,7 @@ public class Commands {
} }
private void runSync(ServerPlayer player, Collection<String> bukkit, RootCommandNode<SharedSuggestionProvider> rootcommandnode) { private void runSync(ServerPlayer player, Collection<String> bukkit, RootCommandNode<SharedSuggestionProvider> rootcommandnode) {
@@ -16,7 +16,7 @@ index ea5f0600d47b0f7c08b96eed91e5de255114637b..02add91d477dfef1bafa39c28b23dfc0
// Paper end - Async command map building // Paper end - Async command map building
new com.destroystokyo.paper.event.brigadier.AsyncPlayerSendCommandsEvent<CommandSourceStack>(player.getBukkitEntity(), (RootCommandNode) rootcommandnode, false).callEvent(); // Paper new com.destroystokyo.paper.event.brigadier.AsyncPlayerSendCommandsEvent<CommandSourceStack>(player.getBukkitEntity(), (RootCommandNode) rootcommandnode, false).callEvent(); // Paper
PlayerCommandSendEvent event = new PlayerCommandSendEvent(player.getBukkitEntity(), new LinkedHashSet<>(bukkit)); PlayerCommandSendEvent event = new PlayerCommandSendEvent(player.getBukkitEntity(), new LinkedHashSet<>(bukkit));
@@ -405,6 +406,7 @@ public class Commands { @@ -416,6 +417,7 @@ public class Commands {
} }
} }
// CraftBukkit end // CraftBukkit end

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 diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 407bcae5459cbc6c670f7f44dd8bb593935ffffa..db23e2afd1b9a7a8e1b29e48a31441b0a64beb5d 100644 index 02707189e0cafcb8db31413566f2078495866434..51c3c2b943aa0b1503c7c0b8df658728d8cbe152 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java --- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1186,6 +1186,7 @@ public abstract class PlayerList { @@ -1187,6 +1187,7 @@ public abstract class PlayerList {
} else { } else {
b0 = (byte) (24 + permissionLevel); b0 = (byte) (24 + permissionLevel);
} }

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable TPS Catchup
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index a37e28ebef82d4964899f1331b9a1b6d992b167f..3eef0ceb4c9c1506581c0e4f197f137045329166 100644 index f4d332008924aff0e9c17e57d7d5876994af4b4b..96206433344397df133c18683f29d67e971b04ad 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1192,7 +1192,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1195,7 +1195,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.tickServer(this::haveTime); this.tickServer(this::haveTime);
this.profiler.popPush("nextTickWait"); this.profiler.popPush("nextTickWait");
this.mayHaveDelayedTasks = true; this.mayHaveDelayedTasks = true;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add player death exp control options
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java 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 74f14215280005a4d6fb35a77e2f1c4858250f2f..e0ea8b1b3ccde9616a721d677a8217b25aadfefe 100644 index 74ef0579739cdc6961718dd2d2b34752f172ed73..df34e5332a6d9c36cad89bac72b5f27892c6192a 100644
--- a/src/main/java/net/minecraft/world/entity/player/Player.java --- a/src/main/java/net/minecraft/world/entity/player/Player.java
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java
@@ -1978,9 +1978,18 @@ public abstract class Player extends LivingEntity { @@ -1988,9 +1988,18 @@ public abstract class Player extends LivingEntity {
@Override @Override
public int getExperienceReward() { public int getExperienceReward() {
if (!this.level.getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && !this.isSpectator()) { if (!this.level.getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && !this.isSpectator()) {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable void damage height and damage
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 592ca6d3a49f08721f38f84b580bc46a0fb92dd5..28fa14e0cc2a0a93782bd0a8063553ff2d55a2e7 100644 index 6db529112934aa1414aee77bd0f3d2660a8ee105..6d3eace7ae27f4d8d8c6d0eba93ebaacfa19c5f8 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -890,7 +890,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -890,7 +890,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -18,7 +18,7 @@ index 592ca6d3a49f08721f38f84b580bc46a0fb92dd5..28fa14e0cc2a0a93782bd0a8063553ff
&& this.getY() >= this.level.paperConfig().environment.netherCeilingVoidDamageHeight)) { && this.getY() >= this.level.paperConfig().environment.netherCeilingVoidDamageHeight)) {
// Paper end // Paper end
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 773f2a44c26c4c5c00fab0b502eb08652f23b56e..723fa3c2a305a160cb05fb5478c96d2c6aadba83 100644 index cb90fec7558923f547bab2d37ceffd67c07501ce..b20bea5bba517bbbc5f338f1d580588177969450 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2466,7 +2466,7 @@ public abstract class LivingEntity extends Entity { @@ -2466,7 +2466,7 @@ public abstract class LivingEntity extends Entity {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add canSaveToDisk to Entity
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index c1e8dd926e9d2612f54c6afdaaa1c295da61f13d..f5ec7124e31b2cd8e810033521d2b59329f19bda 100644 index 6d3eace7ae27f4d8d8c6d0eba93ebaacfa19c5f8..54b44601c85171bb3ba76ac406cc81dc1d94723c 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4588,5 +4588,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -4584,5 +4584,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
public boolean processClick(InteractionHand hand) { public boolean processClick(InteractionHand hand) {
return false; return false;
} }

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add option for boats to eject players on land
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java diff --git a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
index eb753323f67badb1bed28405c07b03078e322b44..c9ce0f1f798ee73e985798e7e7271aa51e405d05 100644 index 29da8a42406feccf7932097b07b1d32a38fa96b7..539c9d60cecb63fb2b0858951ff58cc0ea26c446 100644
--- a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java --- a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
+++ b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
@@ -523,6 +523,7 @@ public class Boat extends Entity { @@ -523,6 +523,7 @@ public class Boat extends Entity {

View File

@@ -18,7 +18,7 @@ index d6527396939d9a1dd2f1cfb6cb66dc64fa0e5332..cbeea12009ec89fb3223e6a9545485a9
if (entry != null) { if (entry != null) {
ItemStack itemstack = (ItemStack) entry.getValue(); ItemStack itemstack = (ItemStack) entry.getValue();
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index 6b3cfc19c4fd1382ddf534265a1114995a4f6b55..c948bee744d64b2678d2efb3403ac4e183bff965 100644 index c18a0bc94d0210396046f4475e49a739088593f3..3d1ba3d3b12fe649e451b6c8a3726c6991cfe083 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java --- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -535,6 +535,16 @@ public final class ItemStack { @@ -535,6 +535,16 @@ public final class ItemStack {

View File

@@ -27,10 +27,10 @@ index fa56cd09102a89692b42f1d14257990508c5c720..f9251183df72ddc56662fd3f02acf216
setListData(vector); setListData(vector);
} }
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3eef0ceb4c9c1506581c0e4f197f137045329166..8462891be6239c8929574cdd9eecdb19fed84093 100644 index 96206433344397df133c18683f29d67e971b04ad..01dd92847b211b53356d457e0cf7e1170b0cb8dd 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -288,7 +288,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -290,7 +290,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public static final int TPS = 20; public static final int TPS = 20;
public static final int TICK_TIME = 1000000000 / MinecraftServer.TPS; public static final int TICK_TIME = 1000000000 / MinecraftServer.TPS;
private static final int SAMPLE_INTERVAL = 20; // Paper private static final int SAMPLE_INTERVAL = 20; // Paper
@@ -39,7 +39,7 @@ index 3eef0ceb4c9c1506581c0e4f197f137045329166..8462891be6239c8929574cdd9eecdb19
// Spigot end // Spigot end
public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations; public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations;
public static long currentTickLong = 0L; // Paper public static long currentTickLong = 0L; // Paper
@@ -1072,6 +1072,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1074,6 +1074,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
private static final long MAX_CATCHUP_BUFFER = TICK_TIME * TPS * 60L; private static final long MAX_CATCHUP_BUFFER = TICK_TIME * TPS * 60L;
private long lastTick = 0; private long lastTick = 0;
private long catchupTime = 0; private long catchupTime = 0;
@@ -47,7 +47,7 @@ index 3eef0ceb4c9c1506581c0e4f197f137045329166..8462891be6239c8929574cdd9eecdb19
public final RollingAverage tps1 = new RollingAverage(60); public final RollingAverage tps1 = new RollingAverage(60);
public final RollingAverage tps5 = new RollingAverage(60 * 5); public final RollingAverage tps5 = new RollingAverage(60 * 5);
public final RollingAverage tps15 = new RollingAverage(60 * 15); public final RollingAverage tps15 = new RollingAverage(60 * 15);
@@ -1166,13 +1167,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1169,13 +1170,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
{ {
final long diff = curTime - tickSection; final long diff = curTime - tickSection;
java.math.BigDecimal currentTps = TPS_BASE.divide(new java.math.BigDecimal(diff), 30, java.math.RoundingMode.HALF_UP); java.math.BigDecimal currentTps = TPS_BASE.divide(new java.math.BigDecimal(diff), 30, java.math.RoundingMode.HALF_UP);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 40c716bd22d54f7f669d570d1bebcb1848ae66aa..dc6177e8d5c6f6615ccbfa55a2e0a8c891fc6b52 100644 index b20bea5bba517bbbc5f338f1d580588177969450..ae8b34336a2e9e58c79eb1435ed7520dd180f302 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -3459,7 +3459,16 @@ public abstract class LivingEntity extends Entity { @@ -3462,7 +3462,16 @@ public abstract class LivingEntity extends Entity {
int j = i / 10; int j = i / 10;
if (j % 2 == 0) { if (j % 2 == 0) {
@@ -54,7 +54,7 @@ index 88306f54c0f8ee83020d94f20b62762910c9e9b2..736259c76dfc15784d678d2ed8074b71
itemStack.shrink(1); itemStack.shrink(1);
} else ((net.minecraft.server.level.ServerPlayer) user).getBukkitEntity().updateInventory(); } else ((net.minecraft.server.level.ServerPlayer) user).getBukkitEntity().updateInventory();
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index c948bee744d64b2678d2efb3403ac4e183bff965..5b79adf2e036b4e9c2abd7cea53f1ef064252d7a 100644 index 3d1ba3d3b12fe649e451b6c8a3726c6991cfe083..2b2115d218a279245f8be5e0c93a2b6200f81241 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java --- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -564,7 +564,7 @@ public final class ItemStack { @@ -564,7 +564,7 @@ public final class ItemStack {

View File

@@ -18,7 +18,7 @@ index 871bce7f5acc1b9a058496f41d962ec2e724f620..9bfd1cb300fe7f76e9a36167390ab1c2
public ServerEntity(ServerLevel worldserver, Entity entity, int i, boolean flag, Consumer<Packet<?>> consumer, Set<ServerPlayerConnection> trackedPlayers) { public ServerEntity(ServerLevel worldserver, Entity entity, int i, boolean flag, Consumer<Packet<?>> consumer, Set<ServerPlayerConnection> trackedPlayers) {
this.trackedPlayers = trackedPlayers; this.trackedPlayers = trackedPlayers;
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java 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 68c88e91ceb1fb19d2b3c168e56d7a4314232d64..8d38eac6316dedc94dc257e6dabfd704c0311caa 100644 index 16a55f94bda9f959548772c8916b4dc3eb045d47..aa1c929d948cea8f6212330f922eb5f1d9b9bb97 100644
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java --- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
@@ -55,6 +55,12 @@ public class ItemEntity extends Entity { @@ -55,6 +55,12 @@ public class ItemEntity extends Entity {
@@ -34,7 +34,7 @@ index 68c88e91ceb1fb19d2b3c168e56d7a4314232d64..8d38eac6316dedc94dc257e6dabfd704
public ItemEntity(EntityType<? extends ItemEntity> type, Level world) { public ItemEntity(EntityType<? extends ItemEntity> type, Level world) {
super(type, world); super(type, world);
@@ -339,6 +345,15 @@ public class ItemEntity extends Entity { @@ -337,6 +343,15 @@ public class ItemEntity extends Entity {
return false; return false;
} else if (!this.getItem().getItem().canBeHurtBy(source)) { } else if (!this.getItem().getItem().canBeHurtBy(source)) {
return false; return false;
@@ -50,7 +50,7 @@ index 68c88e91ceb1fb19d2b3c168e56d7a4314232d64..8d38eac6316dedc94dc257e6dabfd704
} else if (this.level.isClientSide) { } else if (this.level.isClientSide) {
return true; return true;
} else { } else {
@@ -524,6 +539,12 @@ public class ItemEntity extends Entity { @@ -522,6 +537,12 @@ public class ItemEntity extends Entity {
this.getEntityData().set(ItemEntity.DATA_ITEM, stack); this.getEntityData().set(ItemEntity.DATA_ITEM, stack);
this.getEntityData().markDirty(ItemEntity.DATA_ITEM); // CraftBukkit - SPIGOT-4591, must mark dirty this.getEntityData().markDirty(ItemEntity.DATA_ITEM); // CraftBukkit - SPIGOT-4591, must mark dirty
this.despawnRate = level.paperConfig().entities.spawning.altItemDespawnRate.enabled ? level.paperConfig().entities.spawning.altItemDespawnRate.items.getOrDefault(stack.getItem(), level.spigotConfig.itemDespawnRate) : level.spigotConfig.itemDespawnRate; // Paper this.despawnRate = level.paperConfig().entities.spawning.altItemDespawnRate.enabled ? level.paperConfig().entities.spawning.altItemDespawnRate.items.getOrDefault(stack.getItem(), level.spigotConfig.itemDespawnRate) : level.spigotConfig.itemDespawnRate; // Paper

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add ping command
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index 02add91d477dfef1bafa39c28b23dfc09418c939..e36445045701e0176cca07ba2686e7bd50b37dad 100644 index 91bb48f66aad86c76b2e7d2e70e84ca0e1a50212..43a79d4c1a26f91ceac33e6feb53b7d958f8cc4d 100644
--- a/src/main/java/net/minecraft/commands/Commands.java --- a/src/main/java/net/minecraft/commands/Commands.java
+++ b/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java
@@ -205,6 +205,7 @@ public class Commands { @@ -208,6 +208,7 @@ public class Commands {
SetPlayerIdleTimeoutCommand.register(this.dispatcher); SetPlayerIdleTimeoutCommand.register(this.dispatcher);
StopCommand.register(this.dispatcher); StopCommand.register(this.dispatcher);
WhitelistCommand.register(this.dispatcher); WhitelistCommand.register(this.dispatcher);
@@ -17,7 +17,7 @@ index 02add91d477dfef1bafa39c28b23dfc09418c939..e36445045701e0176cca07ba2686e7bd
if (environment.includeIntegrated) { if (environment.includeIntegrated) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index b41d73318d6795c0fa7b9c60431ef141026fa9d6..6d40bfc2e7ea6090589fd12057ed8d54966fe2d2 100644 index 75570f6de691fb5dc95dd31d2255f3913a7100dd..c9d303aeb32fe79bf84919a46981aaaa6eb77147 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -173,12 +173,14 @@ public class PurpurConfig { @@ -173,12 +173,14 @@ public class PurpurConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add demo command
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index e36445045701e0176cca07ba2686e7bd50b37dad..362b1b2f48f29354cbc7776a262131dd10eb48c1 100644 index 43a79d4c1a26f91ceac33e6feb53b7d958f8cc4d..66dd8aedabcf7d994a4438c4bdaa659dcb47f811 100644
--- a/src/main/java/net/minecraft/commands/Commands.java --- a/src/main/java/net/minecraft/commands/Commands.java
+++ b/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java
@@ -205,6 +205,7 @@ public class Commands { @@ -208,6 +208,7 @@ public class Commands {
SetPlayerIdleTimeoutCommand.register(this.dispatcher); SetPlayerIdleTimeoutCommand.register(this.dispatcher);
StopCommand.register(this.dispatcher); StopCommand.register(this.dispatcher);
WhitelistCommand.register(this.dispatcher); WhitelistCommand.register(this.dispatcher);
@@ -17,7 +17,7 @@ index e36445045701e0176cca07ba2686e7bd50b37dad..362b1b2f48f29354cbc7776a262131dd
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 6d40bfc2e7ea6090589fd12057ed8d54966fe2d2..2b161a4e098b7b17f52209ddd71d64ac7e6da5ed 100644 index c9d303aeb32fe79bf84919a46981aaaa6eb77147..d4a30745e6cde5012355744cb5e6f4a2bd021d13 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -173,6 +173,7 @@ public class PurpurConfig { @@ -173,6 +173,7 @@ public class PurpurConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add credits command
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index 362b1b2f48f29354cbc7776a262131dd10eb48c1..a26672fce303a2ad468014d88033c55789a95e87 100644 index 66dd8aedabcf7d994a4438c4bdaa659dcb47f811..2fa8babafb53cb33272c25f5e0dc31ff2f954c42 100644
--- a/src/main/java/net/minecraft/commands/Commands.java --- a/src/main/java/net/minecraft/commands/Commands.java
+++ b/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java
@@ -205,6 +205,7 @@ public class Commands { @@ -208,6 +208,7 @@ public class Commands {
SetPlayerIdleTimeoutCommand.register(this.dispatcher); SetPlayerIdleTimeoutCommand.register(this.dispatcher);
StopCommand.register(this.dispatcher); StopCommand.register(this.dispatcher);
WhitelistCommand.register(this.dispatcher); WhitelistCommand.register(this.dispatcher);
@@ -17,7 +17,7 @@ index 362b1b2f48f29354cbc7776a262131dd10eb48c1..a26672fce303a2ad468014d88033c557
org.purpurmc.purpur.command.PingCommand.register(this.dispatcher); // Purpur org.purpurmc.purpur.command.PingCommand.register(this.dispatcher); // Purpur
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 2b161a4e098b7b17f52209ddd71d64ac7e6da5ed..e49c2c16f6130eb1343d49d5a3972f505155aba2 100644 index d4a30745e6cde5012355744cb5e6f4a2bd021d13..8514b53b94893c576fa814af58c756e16cf5c730 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -173,6 +173,7 @@ public class PurpurConfig { @@ -173,6 +173,7 @@ public class PurpurConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable jockey options
diff --git a/src/main/java/net/minecraft/world/entity/monster/Drowned.java b/src/main/java/net/minecraft/world/entity/monster/Drowned.java diff --git a/src/main/java/net/minecraft/world/entity/monster/Drowned.java b/src/main/java/net/minecraft/world/entity/monster/Drowned.java
index 4b58ca48deda0410edf9ad3c9079858d5a31a762..968392e9dd124f997d5d5996893363ac7ef2c740 100644 index 9e7ea6be928fb536c9898a85bb0a9ad40af25bd5..c11c51d2054042f8e12fafff4c4d13bc17b9d176 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Drowned.java --- a/src/main/java/net/minecraft/world/entity/monster/Drowned.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Drowned.java +++ b/src/main/java/net/minecraft/world/entity/monster/Drowned.java
@@ -93,6 +93,21 @@ public class Drowned extends Zombie implements RangedAttackMob { @@ -93,6 +93,21 @@ public class Drowned extends Zombie implements RangedAttackMob {
@@ -115,7 +115,7 @@ index 60d2abecb21c767fe290ffc9b7dd3446c99d8609..7be6cb6ad9a8b5f695b1a13564a37917
} }
} }
diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
index e2e530aeba1311a0d89f1193ee0f6899e78ddfc0..d666b552023ebd5c3155a094a96a362e239100d1 100644 index 51ea3307a9264e665cbf8106e4562afe0c2065c5..9ad16a0fc968b89863ad5ef442a2e178f3d9a52d 100644
--- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java --- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java +++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
@@ -103,6 +103,21 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder { @@ -103,6 +103,21 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Allow color codes in books
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index e2f57af54380c7afa5c6ac00c8aba74e838465c4..c84cb931a78390fd485b95e8c9b9904de920f254 100644 index f8233800fad7d62da8b4c5d6baa19afd3c5bb45a..5663a990cf849b84db35a6b1a70589e2363a7878 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1273,13 +1273,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1339,13 +1339,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
itemstack1.setTag(nbttagcompound.copy()); itemstack1.setTag(nbttagcompound.copy());
} }
@@ -16,49 +16,49 @@ index e2f57af54380c7afa5c6ac00c8aba74e838465c4..c84cb931a78390fd485b95e8c9b9904d
+ boolean hasPerm = getCraftPlayer().hasPermission("purpur.book.color.edit") || getCraftPlayer().hasPermission("purpur.book.color.sign"); + boolean hasPerm = getCraftPlayer().hasPermission("purpur.book.color.edit") || getCraftPlayer().hasPermission("purpur.book.color.sign");
itemstack1.addTagElement("author", StringTag.valueOf(this.player.getName().getString())); itemstack1.addTagElement("author", StringTag.valueOf(this.player.getName().getString()));
if (this.player.isTextFilteringEnabled()) { if (this.player.isTextFilteringEnabled()) {
- itemstack1.addTagElement("title", StringTag.valueOf((String) title.filteredOrElse(""))); - itemstack1.addTagElement("title", StringTag.valueOf(title.filteredOrEmpty()));
+ itemstack1.addTagElement("title", StringTag.valueOf(color(title.filteredOrElse(""), hasPerm))); + itemstack1.addTagElement("title", StringTag.valueOf(color(title.filteredOrEmpty(), hasPerm)));
} else { } else {
- itemstack1.addTagElement("filtered_title", StringTag.valueOf((String) title.filteredOrElse(""))); - itemstack1.addTagElement("filtered_title", StringTag.valueOf(title.filteredOrEmpty()));
- itemstack1.addTagElement("title", StringTag.valueOf((String) title.raw())); - itemstack1.addTagElement("title", StringTag.valueOf(title.raw()));
+ itemstack1.addTagElement("filtered_title", StringTag.valueOf(color(title.filteredOrElse(""), hasPerm))); + itemstack1.addTagElement("filtered_title", StringTag.valueOf(color(title.filteredOrEmpty(), hasPerm)));
+ itemstack1.addTagElement("title", StringTag.valueOf(color(title.raw(), hasPerm))); + itemstack1.addTagElement("title", StringTag.valueOf(color(title.raw(), hasPerm)));
} }
+ // Purpur end + // Purpur end
this.updateBookPages(pages, (s) -> { this.updateBookPages(pages, (s) -> {
return Component.Serializer.toJson(Component.literal(s)); return Component.Serializer.toJson(Component.literal(s));
@@ -1291,10 +1294,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1357,10 +1360,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
public void updateBookPages(List<FilteredText<String>> list, UnaryOperator<String> unaryoperator, ItemStack itemstack, int slot, ItemStack handItem) { // CraftBukkit public void updateBookPages(List<FilteredText> list, UnaryOperator<String> unaryoperator, ItemStack itemstack, int slot, ItemStack handItem) { // CraftBukkit
ListTag nbttaglist = new ListTag(); ListTag nbttaglist = new ListTag();
+ // Purpur start + // Purpur start
+ boolean hasPerm = getCraftPlayer().hasPermission("purpur.book.color.edit"); + boolean hasPerm = getCraftPlayer().hasPermission("purpur.book.color.edit");
if (this.player.isTextFilteringEnabled()) { if (this.player.isTextFilteringEnabled()) {
- Stream<StringTag> stream = list.stream().map((filteredtext) -> { // CraftBukkit - decompile error - Stream<StringTag> stream = list.stream().map((filteredtext) -> { // CraftBukkit - decompile error
- return StringTag.valueOf((String) unaryoperator.apply((String) filteredtext.filteredOrElse(""))); - return StringTag.valueOf((String) unaryoperator.apply(filteredtext.filteredOrEmpty()));
+ Stream<StringTag> stream = list.stream().map(s -> color(s.filteredOrElse(""), hasPerm, false)).map((s) -> { // CraftBukkit - decompile error + Stream<StringTag> stream = list.stream().map(s -> color(s.filteredOrEmpty(), hasPerm, false)).map((s) -> { // CraftBukkit - decompile error
+ return StringTag.valueOf((String) unaryoperator.apply(s)); + return StringTag.valueOf((String) unaryoperator.apply(s));
}); });
+ // Purpur end + // Purpur end
Objects.requireNonNull(nbttaglist); Objects.requireNonNull(nbttaglist);
stream.forEach(nbttaglist::add); stream.forEach(nbttaglist::add);
@@ -1304,11 +1310,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1370,11 +1376,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
for (int j = list.size(); i < j; ++i) { for (int j = list.size(); i < j; ++i) {
FilteredText<String> filteredtext = (FilteredText) list.get(i); FilteredText filteredtext = (FilteredText) list.get(i);
- String s = (String) filteredtext.raw(); - String s = filteredtext.raw();
+ String s = color(filteredtext.raw(), hasPerm, false); // Purpur + String s = color(filteredtext.raw(), hasPerm, false); // Purpur
nbttaglist.add(StringTag.valueOf((String) unaryoperator.apply(s))); nbttaglist.add(StringTag.valueOf((String) unaryoperator.apply(s)));
if (filteredtext.isFiltered()) { if (filteredtext.isFiltered()) {
- nbttagcompound.putString(String.valueOf(i), (String) unaryoperator.apply((String) filteredtext.filteredOrElse(""))); - nbttagcompound.putString(String.valueOf(i), (String) unaryoperator.apply(filteredtext.filteredOrEmpty()));
+ nbttagcompound.putString(String.valueOf(i), (String) unaryoperator.apply((String) color(filteredtext.filteredOrElse(""), hasPerm, false))); // Purpur + nbttagcompound.putString(String.valueOf(i), (String) unaryoperator.apply((String) color(filteredtext.filteredOrEmpty(), hasPerm, false))); // Purpur
} }
} }
@@ -1321,6 +1327,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1387,6 +1393,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
this.player.getInventory().setItem(slot, CraftEventFactory.handleEditBookEvent(player, slot, handItem, itemstack)); // CraftBukkit // Paper - Don't ignore result (see other callsite for handleEditBookEvent) this.player.getInventory().setItem(slot, CraftEventFactory.handleEditBookEvent(player, slot, handItem, itemstack)); // CraftBukkit // Paper - Don't ignore result (see other callsite for handleEditBookEvent)
} }

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Entity lifespan
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 4ec4528df23aa2576dc1806213a50317afa820a8..aa10ec38cec63dfbb8b01da2c898f35eda7219bf 100644 index 5663a990cf849b84db35a6b1a70589e2363a7878..1763216452b7956ab21cba7f0f3e264beabde101 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2723,6 +2723,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -2920,6 +2920,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
} }
if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) { if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 73222027287462326312cce02faef2b272850c09..c8495f6944ae4837ede2c3680f02ecf112106ea6 100644 index c8e81949a0f00e7feb0bd99bca5a0073b5f4add8..2f9a02d0eecd09a15bb71ed85de28ef2cd36127d 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -2589,4 +2589,26 @@ public class ServerPlayer extends Player { @@ -2578,4 +2578,26 @@ public class ServerPlayer extends Player {
// CraftBukkit end // CraftBukkit end
public final int getViewDistance() { throw new UnsupportedOperationException("Use PlayerChunkLoader"); } // Paper - placeholder public final int getViewDistance() { throw new UnsupportedOperationException("Use PlayerChunkLoader"); } // Paper - placeholder
@@ -36,7 +36,7 @@ index 73222027287462326312cce02faef2b272850c09..c8495f6944ae4837ede2c3680f02ecf1
+ // Purpur end + // Purpur end
} }
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index ee692849dc76ef0448df647e4035cf3a53ff5dde..b1f8e3906729fdd7e392f10d3f04ec4bc4ad7a98 100644 index ae8b34336a2e9e58c79eb1435ed7520dd180f302..c9dd775e01da040ac6c97c0ee0147828f1cc7fdd 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -44,6 +44,7 @@ import net.minecraft.network.syncher.EntityDataAccessor; @@ -44,6 +44,7 @@ import net.minecraft.network.syncher.EntityDataAccessor;

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Totems work in inventory
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index d75a3d62eeb151c2451b20feb7fd088c513a2571..2b7d14e3de4520188c1701ac00044a64d8228aed 100644 index c9dd775e01da040ac6c97c0ee0147828f1cc7fdd..6a72ce966db535d9f9996bebe23aeae889cde41e 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -1544,6 +1544,19 @@ public abstract class LivingEntity extends Entity { @@ -1544,6 +1544,19 @@ public abstract class LivingEntity extends Entity {

View File

@@ -125,7 +125,7 @@ index c14eb4f7decdbcd6176d3bff95d595a947d4ec95..58e8905a4b98e2e1ee372b99bdc3de98
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index e63ae0cd672f162566c8edad0b2376cab907898a..190e738ad33ca98aebda0d7b43dfdef8d7bea0cc 100644 index e3ad7c379e62c3b77c4e43f59ff8747044438b78..d75cce86458b50230caaf0c37c9a45f20f325500 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -242,6 +242,15 @@ public class PurpurConfig { @@ -242,6 +242,15 @@ public class PurpurConfig {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add option to disable dolphin treasure searching
diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java diff --git a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
index b3e53f922a424a407adb0111c29c8be6f89f8115..b52245d881186f91174819326abb0cf98acb0997 100644 index 1ca3ffe212da2c3914c290172e729ba8017f631c..a8ca2d120a545d423fc00aef5299b66b1636b6d3 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java --- a/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java +++ b/src/main/java/net/minecraft/world/entity/animal/Dolphin.java
@@ -486,6 +486,7 @@ public class Dolphin extends WaterAnimal { @@ -486,6 +486,7 @@ public class Dolphin extends WaterAnimal {

View File

@@ -31,7 +31,7 @@ index ad47267eb6797e1591841cb7a576fb65f6e81382..9458cab33d4ff468d3d009cc1c3b3736
Entity entity = source.getDirectEntity(); Entity entity = source.getDirectEntity();
boolean flag; boolean flag;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 190e738ad33ca98aebda0d7b43dfdef8d7bea0cc..9dcc7247cf6a8b1bab66db0c80384f99d13aa669 100644 index d75cce86458b50230caaf0c37c9a45f20f325500..7e592e4598370f606c5402d74112b5ba144822a4 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -237,6 +237,12 @@ public class PurpurConfig { @@ -237,6 +237,12 @@ public class PurpurConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Stop squids floating on top of water
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index f5ec7124e31b2cd8e810033521d2b59329f19bda..897466a7cef632ed569c351e5f4b5a0cfc80b2a3 100644 index 54b44601c85171bb3ba76ac406cc81dc1d94723c..c001738074f1d42db37a034d6956905e5804c79e 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4055,6 +4055,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -4051,6 +4051,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
this.yRotO = this.getYRot(); this.yRotO = this.getYRot();
} }

View File

@@ -18,7 +18,7 @@ index 3414f3190e1a760c602613e82e551e797c3aa575..5368376c126f3b629c0448f937c140ab
private final LevelAccessor level; private final LevelAccessor level;
private final Direction.Axis axis; private final Direction.Axis axis;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 9dcc7247cf6a8b1bab66db0c80384f99d13aa669..1cd8358c3d9f96073224846143516097aeb8fd23 100644 index 7e592e4598370f606c5402d74112b5ba144822a4..3b6a3908067a7d357b4414030dee07de2379bee2 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -205,6 +205,7 @@ public class PurpurConfig { @@ -205,6 +205,7 @@ public class PurpurConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Entities can use portals configuration
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 897466a7cef632ed569c351e5f4b5a0cfc80b2a3..e9285f173cb87538af52fc2a3860a2fbc0e6cf65 100644 index c001738074f1d42db37a034d6956905e5804c79e..b11adb55f88e990b2d62bd3477b8e572a3f9525f 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2882,7 +2882,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -2878,7 +2878,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
public void handleInsidePortal(BlockPos pos) { public void handleInsidePortal(BlockPos pos) {
if (this.isOnPortalCooldown()) { if (this.isOnPortalCooldown()) {
this.setPortalCooldown(); this.setPortalCooldown();
@@ -17,7 +17,7 @@ index 897466a7cef632ed569c351e5f4b5a0cfc80b2a3..e9285f173cb87538af52fc2a3860a2fb
if (!this.level.isClientSide && !pos.equals(this.portalEntrancePos)) { if (!this.level.isClientSide && !pos.equals(this.portalEntrancePos)) {
this.portalEntrancePos = pos.immutable(); this.portalEntrancePos = pos.immutable();
} }
@@ -3554,7 +3554,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -3550,7 +3550,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
} }
public boolean canChangeDimensions() { public boolean canChangeDimensions() {

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Allow toggling special MobSpawners per world
In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this. In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this.
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 1952608dc00f3d47aa6fe3dfd54957ca064a9374..fe4909978c6b81f87a4585c8b42c1b71bf638830 100644 index 6720ee545d93aa773c470ab8cbb0df0e9fd46010..28fd992a8ddc2089f7a7e87e14ef271d453ac4bb 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -505,7 +505,24 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -506,7 +506,24 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.dragonParts = new Int2ObjectOpenHashMap(); this.dragonParts = new Int2ObjectOpenHashMap();
this.tickTime = flag1; this.tickTime = flag1;
this.server = minecraftserver; this.server = minecraftserver;

View File

@@ -7,7 +7,7 @@ This patch's implementation has been removed in favor of Pufferfish's entity-tim
The config remains for migration purposes. The config remains for migration purposes.
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
index a125abc75ed2bbd905c8fdec442416a45264f531..09f826a9d46b6474ef0ab26611e9a305fe19ed9b 100644 index 09827eaa9f6adf49385a33aa60b3a6bf4005a982..95995c7f7e035bac7a4f429d84bb44fec41e01f9 100644
--- a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java --- a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java +++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
@@ -121,6 +121,22 @@ public class PufferfishConfig { @@ -121,6 +121,22 @@ public class PufferfishConfig {

View File

@@ -21,7 +21,7 @@ index c9901f8c7f3af57cb2e0bec315caa97adcb6f5ea..407377e8791400f73e2e2305cbd38f17
ignored.add("goal_selector_1"); ignored.add("goal_selector_1");
ignored.add("goal_selector_2"); ignored.add("goal_selector_2");
diff --git a/src/main/java/net/minecraft/world/entity/monster/Drowned.java b/src/main/java/net/minecraft/world/entity/monster/Drowned.java diff --git a/src/main/java/net/minecraft/world/entity/monster/Drowned.java b/src/main/java/net/minecraft/world/entity/monster/Drowned.java
index 968392e9dd124f997d5d5996893363ac7ef2c740..1d57ee963416e784a759f2ecee7b7c380f0597eb 100644 index c11c51d2054042f8e12fafff4c4d13bc17b9d176..dbf1c0704788136f4f8a893460f57ba6d3f42780 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Drowned.java --- a/src/main/java/net/minecraft/world/entity/monster/Drowned.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Drowned.java +++ b/src/main/java/net/minecraft/world/entity/monster/Drowned.java
@@ -120,7 +120,19 @@ public class Drowned extends Zombie implements RangedAttackMob { @@ -120,7 +120,19 @@ public class Drowned extends Zombie implements RangedAttackMob {
@@ -71,7 +71,7 @@ index 7be6cb6ad9a8b5f695b1a13564a37917a914b983..efe74738b5a90f822901488aa99f9810
this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR)); this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR));
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index ed58cb6d17e1f79a8d0cf05be1921a51795c0762..751709e96178bf4e945ed757e3fe33a5fbe5ffd2 100644 index 79afd91b958d111468901d49fe85565277839891..cbe9e554d43b962da37d0fea20f483b142417855 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1832,6 +1832,7 @@ public class PurpurWorldConfig { @@ -1832,6 +1832,7 @@ public class PurpurWorldConfig {

View File

@@ -58,7 +58,7 @@ index 709aaa9dc834d91219ce1087d8f89ef5bf3d915c..4850960c7c4f38c7d81b8945f8c87504
float f1 = Mth.cos(f) * 0.2F; float f1 = Mth.cos(f) * 0.2F;
float f2 = -0.1F + this.squid.getRandom().nextFloat() * 0.2F; float f2 = -0.1F + this.squid.getRandom().nextFloat() * 0.2F;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 751709e96178bf4e945ed757e3fe33a5fbe5ffd2..f24cab0386524bb8203249aff2f5120dbd895403 100644 index cbe9e554d43b962da37d0fea20f483b142417855..2324c6e2e9fafcbb42e437bb28e699070206b5c0 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -879,10 +879,12 @@ public class PurpurWorldConfig { @@ -879,10 +879,12 @@ public class PurpurWorldConfig {

View File

@@ -27,7 +27,7 @@ index 08d597db1a5345a343777a01427655e6bf2c926b..33df0ca406dc8321b76b393f317bbd1c
} else { } else {
user.startUsingItem(hand); user.startUsingItem(hand);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index f24cab0386524bb8203249aff2f5120dbd895403..c1ac7c44868445bf5cc250ec108fd84c957434c6 100644 index 2324c6e2e9fafcbb42e437bb28e699070206b5c0..3413c9cbc06c02c1bf52f03905072c804b4c5df1 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -142,6 +142,17 @@ public class PurpurWorldConfig { @@ -142,6 +142,17 @@ public class PurpurWorldConfig {

View File

@@ -18,7 +18,7 @@ index 689ad22925b2561f7c8db961743eb1f821dbb25f..fa3c960992cc240161817e54659d83fe
public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) { public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) {
this.gameTime = time % 192000; // Paper - fix guardian beam this.gameTime = time % 192000; // Paper - fix guardian beam
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8462891be6239c8929574cdd9eecdb19fed84093..70aa4aa9230b74bae45ef9e3c1f58e4358d2b22b 100644 index 01dd92847b211b53356d457e0cf7e1170b0cb8dd..cde48cbdce50e38e07eaaf81cc922bf39e1fa87f 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1529,7 +1529,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1529,7 +1529,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -31,10 +31,10 @@ index 8462891be6239c8929574cdd9eecdb19fed84093..70aa4aa9230b74bae45ef9e3c1f58e43
} }
ServerPlayer entityplayer = (ServerPlayer) entityhuman; ServerPlayer entityplayer = (ServerPlayer) entityhuman;
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 7aa85e01023a831f9771516629840780ddcf15e6..b29452da6a55f0ccb83e734a9a77ef028a87fbe5 100644 index 28fd992a8ddc2089f7a7e87e14ef271d453ac4bb..38fe99c7b8db25933081d741553ded03722c177f 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java --- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -210,6 +210,8 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -211,6 +211,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
private final StructureManager structureManager; private final StructureManager structureManager;
private final StructureCheck structureCheck; private final StructureCheck structureCheck;
private final boolean tickTime; private final boolean tickTime;
@@ -43,7 +43,7 @@ index 7aa85e01023a831f9771516629840780ddcf15e6..b29452da6a55f0ccb83e734a9a77ef02
public long lastMidTickExecuteFailure; // Paper - execute chunk tasks mid tick public long lastMidTickExecuteFailure; // Paper - execute chunk tasks mid tick
// CraftBukkit start // CraftBukkit start
@@ -584,6 +586,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -585,6 +587,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.getCraftServer().addWorld(this.getWorld()); // CraftBukkit this.getCraftServer().addWorld(this.getWorld()); // CraftBukkit
this.asyncChunkTaskManager = new com.destroystokyo.paper.io.chunk.ChunkTaskManager(this); // Paper this.asyncChunkTaskManager = new com.destroystokyo.paper.io.chunk.ChunkTaskManager(this); // Paper
@@ -51,7 +51,7 @@ index 7aa85e01023a831f9771516629840780ddcf15e6..b29452da6a55f0ccb83e734a9a77ef02
} }
public void setWeatherParameters(int clearDuration, int rainDuration, boolean raining, boolean thundering) { public void setWeatherParameters(int clearDuration, int rainDuration, boolean raining, boolean thundering) {
@@ -754,6 +757,13 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -755,6 +758,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
this.serverLevelData.setGameTime(i); this.serverLevelData.setGameTime(i);
this.serverLevelData.getScheduledEvents().tick(this.server, i); this.serverLevelData.getScheduledEvents().tick(this.server, i);
if (this.levelData.getGameRules().getBoolean(GameRules.RULE_DAYLIGHT)) { if (this.levelData.getGameRules().getBoolean(GameRules.RULE_DAYLIGHT)) {
@@ -65,7 +65,7 @@ index 7aa85e01023a831f9771516629840780ddcf15e6..b29452da6a55f0ccb83e734a9a77ef02
this.setDayTime(this.levelData.getDayTime() + 1L); this.setDayTime(this.levelData.getDayTime() + 1L);
} }
@@ -762,7 +772,21 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -763,7 +773,21 @@ public class ServerLevel extends Level implements WorldGenLevel {
public void setDayTime(long timeOfDay) { public void setDayTime(long timeOfDay) {
this.serverLevelData.setDayTime(timeOfDay); this.serverLevelData.setDayTime(timeOfDay);

View File

@@ -17,7 +17,7 @@ index 3aece8245060dd1ba269c08d226c84247a6f0a83..5cebd7c16b82eea9dbf39c51c671bacb
} }
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 1cd8358c3d9f96073224846143516097aeb8fd23..e80a13cd7178e056e5fdf770de7f5c03342dc52d 100644 index 3b6a3908067a7d357b4414030dee07de2379bee2..867b1ff54e003277939f5fb55e322b52302ccc5b 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -239,6 +239,16 @@ public class PurpurConfig { @@ -239,6 +239,16 @@ public class PurpurConfig {

View File

@@ -47,7 +47,7 @@ index 4977f3fad3bfc12fd4c5f9fbe8beea2895247c57..c617a8aacbbefb37d53d0e005e822469
private static boolean canBurn(@Nullable Recipe<?> recipe, NonNullList<ItemStack> slots, int count) { private static boolean canBurn(@Nullable Recipe<?> recipe, NonNullList<ItemStack> slots, int count) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 47386b053f056d0dc4cd60b2ba07ecaed3b2188b..4f466edede5d344baeda141fa0dc5f68669c67a5 100644 index 5afef591d5c61539dfc6b6faf64e392041727d39..fb7a51aa77a90b2a2dc57c4795d0ccfb160837e4 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -408,6 +408,17 @@ public class PurpurWorldConfig { @@ -408,6 +408,17 @@ public class PurpurWorldConfig {

View File

@@ -47,7 +47,7 @@ index 34e82b97c5b294f0a6423581220403a10264da8b..a0c3a27a90e0788b573f0776c25cfc6e
other.resetLove(); other.resetLove();
world.addFreshEntityWithPassengers(entityageable, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.BREEDING); // CraftBukkit - added SpawnReason world.addFreshEntityWithPassengers(entityageable, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.BREEDING); // CraftBukkit - added SpawnReason
diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java
index fe3426dba86537bc7ce5434ea26c570b56e63670..eaff4f966b4d82749df9e96246c078301fd4801b 100644 index feab2c5553e62016f2e82977257ecf2a22fd713d..590315ebc1d71850e439efed6551a7773852ef07 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Bee.java --- a/src/main/java/net/minecraft/world/entity/animal/Bee.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java +++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java
@@ -219,6 +219,11 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { @@ -219,6 +219,11 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
@@ -316,7 +316,7 @@ index a80a7d460051a39fe805ae669b4586fb42e46943..6d444248b9e283e31d5777d450a52643
@Override @Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
index 976bdba9da2a744dc887a70c396b4042ec1548fa..8210aa958b8bc7d36f2959d261a750c444017fec 100644 index 952d8da2d5bc35aba52b9b63c3cf0e7b2c81f157..04262d31dc0767500f2b22cfe5768a8e24de7af9 100644
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java --- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
@@ -140,6 +140,10 @@ public class Frog extends Animal { @@ -140,6 +140,10 @@ public class Frog extends Animal {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Add boat fall damage config
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index c8495f6944ae4837ede2c3680f02ecf112106ea6..73a764c56a77e376bbca7ec098092d133cd2c2e0 100644 index 2f9a02d0eecd09a15bb71ed85de28ef2cd36127d..ee85918725ef2176c79b33bd12e3ed38d89f69e0 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1033,7 +1033,16 @@ public class ServerPlayer extends Player { @@ -1031,7 +1031,16 @@ public class ServerPlayer extends Player {
if (this.isInvulnerableTo(source)) { if (this.isInvulnerableTo(source)) {
return false; return false;
} else { } else {

View File

@@ -20,7 +20,7 @@ index 06e3a868e922f1b7a586d0ca28f64a67ae463b68..32beb045f990d4da6112da4fea295333
itemstack.setCount(1); itemstack.setCount(1);
entityitem = entityplayer.drop(itemstack, false, false, false); // SPIGOT-2942: Add boolean to call event entityitem = entityplayer.drop(itemstack, false, false, false); // SPIGOT-2942: Add boolean to call event
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index e80a13cd7178e056e5fdf770de7f5c03342dc52d..c55504d376f331b01d53aad6a9492ce2f8a4bbd3 100644 index 867b1ff54e003277939f5fb55e322b52302ccc5b..b2e456e83137f70ca21358d0da2f777a98a4e2be 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -202,6 +202,11 @@ public class PurpurConfig { @@ -202,6 +202,11 @@ public class PurpurConfig {

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Spread out and optimise player list ticksSpread out and
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 43306f8dca74f40797d27b8c8842dd9a06aa1ce6..9b4fa8bac4d8316848c82401ce5c36a6b4b10671 100644 index 51c3c2b943aa0b1503c7c0b8df658728d8cbe152..7b617767451d5fa7e6d5b6777deb39d9d126695e 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java --- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1021,22 +1021,22 @@ public abstract class PlayerList { @@ -1022,22 +1022,22 @@ public abstract class PlayerList {
} }
public void tick() { public void tick() {
@@ -20,7 +20,7 @@ index 43306f8dca74f40797d27b8c8842dd9a06aa1ce6..9b4fa8bac4d8316848c82401ce5c36a6
- -
- target.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_LATENCY, this.players.stream().filter(new Predicate<ServerPlayer>() { - target.connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.UPDATE_LATENCY, this.players.stream().filter(new Predicate<ServerPlayer>() {
- @Override - @Override
- public boolean apply(ServerPlayer input) { - public boolean test(ServerPlayer input) {
- return target.getBukkitEntity().canSee(input.getBukkitEntity()); - return target.getBukkitEntity().canSee(input.getBukkitEntity());
- } - }
- }).collect(Collectors.toList()))); - }).collect(Collectors.toList())));
@@ -46,10 +46,10 @@ index 43306f8dca74f40797d27b8c8842dd9a06aa1ce6..9b4fa8bac4d8316848c82401ce5c36a6
public void broadcastAll(Packet<?> packet) { public void broadcastAll(Packet<?> packet) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c5cb4060bbe39f6ae73170369e807789bfb2ae54..c852d5374bb7af1fd97b8d16a7fbea0a677fbad6 100644 index f01633819138fabe782bb2897ae2488b0d376278..14e7f7a76d04eef143585a8b09fd61bc91899cf2 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1820,7 +1820,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -1832,7 +1832,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override @Override
public boolean canSee(org.bukkit.entity.Entity entity) { public boolean canSee(org.bukkit.entity.Entity entity) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Implement TPSBar
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index a26672fce303a2ad468014d88033c55789a95e87..c6a97b3fa04c683a92a8d838f98e73b59bb7558a 100644 index 2fa8babafb53cb33272c25f5e0dc31ff2f954c42..2b3c7f0bf0841a52a540f042156f55e978364d24 100644
--- a/src/main/java/net/minecraft/commands/Commands.java --- a/src/main/java/net/minecraft/commands/Commands.java
+++ b/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java
@@ -208,6 +208,7 @@ public class Commands { @@ -211,6 +211,7 @@ public class Commands {
org.purpurmc.purpur.command.CreditsCommand.register(this.dispatcher); // Purpur org.purpurmc.purpur.command.CreditsCommand.register(this.dispatcher); // Purpur
org.purpurmc.purpur.command.DemoCommand.register(this.dispatcher); // Purpur org.purpurmc.purpur.command.DemoCommand.register(this.dispatcher); // Purpur
org.purpurmc.purpur.command.PingCommand.register(this.dispatcher); // Purpur org.purpurmc.purpur.command.PingCommand.register(this.dispatcher); // Purpur
@@ -17,10 +17,10 @@ index a26672fce303a2ad468014d88033c55789a95e87..c6a97b3fa04c683a92a8d838f98e73b5
if (environment.includeIntegrated) { if (environment.includeIntegrated) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 70aa4aa9230b74bae45ef9e3c1f58e4358d2b22b..5b5d3bf526505cb035d968b9e89b40ada5077788 100644 index cde48cbdce50e38e07eaaf81cc922bf39e1fa87f..9cfeb50509aac1a509b1d26c3a71ebfa5aa7ca01 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java --- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1046,6 +1046,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1048,6 +1048,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.safeShutdown(flag, false); this.safeShutdown(flag, false);
} }
public void safeShutdown(boolean flag, boolean isRestarting) { public void safeShutdown(boolean flag, boolean isRestarting) {
@@ -29,7 +29,7 @@ index 70aa4aa9230b74bae45ef9e3c1f58e4358d2b22b..5b5d3bf526505cb035d968b9e89b40ad
this.hasLoggedStop = true; // Paper this.hasLoggedStop = true; // Paper
if (isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper if (isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 13361a344130e32b8145762028caa289cab96f00..b21e0abbc511644274eb2987ea1ff9c8461321b2 100644 index 629024e5c3f480bd50ae2df9dadb72f06a62c3bf..19bf680e222d7f91a0e7f67b29e3a5e38a35c1e7 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -351,6 +351,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -351,6 +351,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -41,10 +41,10 @@ index 13361a344130e32b8145762028caa289cab96f00..b21e0abbc511644274eb2987ea1ff9c8
} }
} }
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 73a764c56a77e376bbca7ec098092d133cd2c2e0..e1d9680a2d4ced9a51f47e20496868a0f052178d 100644 index ee85918725ef2176c79b33bd12e3ed38d89f69e0..a57e0a37a3cacbfea82a3dcc4646dd2fd0977e33 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -263,6 +263,7 @@ public class ServerPlayer extends Player { @@ -264,6 +264,7 @@ public class ServerPlayer extends Player {
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
public boolean purpurClient = false; // Purpur public boolean purpurClient = false; // Purpur
public boolean acceptingResourcePack = false; // Purpur public boolean acceptingResourcePack = false; // Purpur
@@ -52,7 +52,7 @@ index 73a764c56a77e376bbca7ec098092d133cd2c2e0..e1d9680a2d4ced9a51f47e20496868a0
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
@@ -484,6 +485,7 @@ public class ServerPlayer extends Player { @@ -485,6 +486,7 @@ public class ServerPlayer extends Player {
} }
} }
@@ -60,7 +60,7 @@ index 73a764c56a77e376bbca7ec098092d133cd2c2e0..e1d9680a2d4ced9a51f47e20496868a0
} }
@Override @Override
@@ -544,6 +546,7 @@ public class ServerPlayer extends Player { @@ -545,6 +547,7 @@ public class ServerPlayer extends Player {
} }
this.getBukkitEntity().setExtraData(nbt); // CraftBukkit this.getBukkitEntity().setExtraData(nbt); // CraftBukkit
@@ -68,7 +68,7 @@ index 73a764c56a77e376bbca7ec098092d133cd2c2e0..e1d9680a2d4ced9a51f47e20496868a0
} }
// CraftBukkit start - World fallback code, either respawn location or global spawn // CraftBukkit start - World fallback code, either respawn location or global spawn
@@ -2619,5 +2622,13 @@ public class ServerPlayer extends Player { @@ -2608,5 +2611,13 @@ public class ServerPlayer extends Player {
this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck); this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck);
} }
} }
@@ -83,10 +83,10 @@ index 73a764c56a77e376bbca7ec098092d133cd2c2e0..e1d9680a2d4ced9a51f47e20496868a0
// Purpur end // Purpur end
} }
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 9b4fa8bac4d8316848c82401ce5c36a6b4b10671..fefc6482191b7d3df37d35dfa6d0ebce4d202906 100644 index 7b617767451d5fa7e6d5b6777deb39d9d126695e..d1495cb8ce938906d3ca0583700b853957efca0d 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java --- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -496,6 +496,7 @@ public abstract class PlayerList { @@ -497,6 +497,7 @@ public abstract class PlayerList {
scoreboard.addPlayerToTeam(player.getScoreboardName(), collideRuleTeam); scoreboard.addPlayerToTeam(player.getScoreboardName(), collideRuleTeam);
} }
// Paper end // Paper end
@@ -94,7 +94,7 @@ index 9b4fa8bac4d8316848c82401ce5c36a6b4b10671..fefc6482191b7d3df37d35dfa6d0ebce
// CraftBukkit - Moved from above, added world // CraftBukkit - Moved from above, added world
PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", player.getName().getString(), s1, player.getId(), worldserver1.serverLevelData.getLevelName(), player.getX(), player.getY(), player.getZ()); PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", player.getName().getString(), s1, player.getId(), worldserver1.serverLevelData.getLevelName(), player.getX(), player.getY(), player.getZ());
} }
@@ -606,6 +607,8 @@ public abstract class PlayerList { @@ -607,6 +608,8 @@ public abstract class PlayerList {
} }
public net.kyori.adventure.text.Component remove(ServerPlayer entityplayer, net.kyori.adventure.text.Component leaveMessage) { public net.kyori.adventure.text.Component remove(ServerPlayer entityplayer, net.kyori.adventure.text.Component leaveMessage) {
// Paper end // Paper end

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] PlayerBookTooLargeEvent
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 3dc6c7158e1030fc2b3cbc84adb06eab2f921a7b..617ecdf362da4e3f5a30645ac3e1e21e76184179 100644 index 1763216452b7956ab21cba7f0f3e264beabde101..b8568d66290c1afab519f0a222288ffa81fa810f 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1195,10 +1195,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1259,10 +1259,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
int maxBookPageSize = io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.pageMax; int maxBookPageSize = io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.pageMax;
double multiplier = Math.max(0.3D, Math.min(1D, io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.totalMultiplier)); double multiplier = Math.max(0.3D, Math.min(1D, io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.totalMultiplier));
long byteAllowed = maxBookPageSize; long byteAllowed = maxBookPageSize;
@@ -21,7 +21,7 @@ index 3dc6c7158e1030fc2b3cbc84adb06eab2f921a7b..617ecdf362da4e3f5a30645ac3e1e21e
server.scheduleOnMain(() -> this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause server.scheduleOnMain(() -> this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause
return; return;
} }
@@ -1222,6 +1224,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -1286,6 +1288,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
if (byteTotal > byteAllowed) { if (byteTotal > byteAllowed) {
ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send too large of a book. Book Size: " + byteTotal + " - Allowed: "+ byteAllowed + " - Pages: " + pageList.size()); ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send too large of a book. Book Size: " + byteTotal + " - Allowed: "+ byteAllowed + " - Pages: " + pageList.size());

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