More more more more more more patches

This commit is contained in:
Nassim Jahnke 2023-03-14 21:25:13 +01:00
parent 0f5c422d24
commit 9dccea73fb
No known key found for this signature in database
GPG Key ID: 6BE3B555EBC5982B
247 changed files with 685 additions and 722 deletions

View File

@ -60,15 +60,14 @@ index 06fc39b19385d36fd0c5bb9a7042a238eb6e8a57..bb1f0e9dbcb792d015d1cb65664a96fd
LootContext lootContext = EntityPredicate.createContext(player, player);
List<CriterionTrigger.Listener<T>> list = null;
diff --git a/src/main/java/net/minecraft/server/PlayerAdvancements.java b/src/main/java/net/minecraft/server/PlayerAdvancements.java
index 0c2f12e7930646a3da53a50f38be62e0cb1ed2b7..e7ec5e1144c1596b035f97fb1fb86d18e61be3c9 100644
index 6802e1def5e93c208d01a68f5cfc4c8809bb910f..3df2a3fdfe2aa70457581210adf1bfabc73291d0 100644
--- a/src/main/java/net/minecraft/server/PlayerAdvancements.java
+++ b/src/main/java/net/minecraft/server/PlayerAdvancements.java
@@ -68,6 +68,8 @@ public class PlayerAdvancements {
@@ -62,6 +62,7 @@ public class PlayerAdvancements {
@Nullable
private Advancement lastSelectedTab;
private boolean isFirstPacket = true;
+ public final Map<net.minecraft.advancements.critereon.SimpleCriterionTrigger, Set<CriterionTrigger.Listener>> criterionData = Maps.newIdentityHashMap(); // Paper - fix advancement data player leakage
+
public PlayerAdvancements(DataFixer dataFixer, PlayerList playerManager, ServerAdvancementManager advancementLoader, File advancementFile, ServerPlayer owner) {
public PlayerAdvancements(DataFixer dataFixer, PlayerList playerManager, ServerAdvancementManager advancementLoader, Path filePath, ServerPlayer owner) {
this.dataFixer = dataFixer;
this.playerList = playerManager;

View File

@ -9,7 +9,7 @@ the game, immediately stop the server to prevent data corruption.
You can override this functionality at your own peril.
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java
index f6d1eac46c619831e146c62a9c08d3305c63c7bc..f8edcc9697289c2cf43c9021d5518955d0d701e7 100644
index 4138ba8bdf6f359327dfc86d3402b787ae58c818..9981bbfd846a5380b99f0d894b121db554d03028 100644
--- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java
@@ -128,9 +128,22 @@ public class ChunkSerializer {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Brand support
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 75519699066f93c10b2d1affee651bd0bf7e482b..3553e36b45fe8c0cce2588bb88137bef269ede66 100644
index 1517c09ccd95448cb0fce0f9ffbb7bd2e704113b..221a695acf3cbeaeaf9eda818b6cf80987d7a994 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -298,6 +298,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -300,6 +300,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
private static final long KEEPALIVE_LIMIT = Long.getLong("paper.playerconnection.keepalive", 30) * 1000; // Paper - provide property to set keepalive limit
private static final int MAX_SIGN_LINE_LENGTH = Integer.getInteger("Paper.maxSignLength", 80); // Paper
@ -17,7 +17,7 @@ index 75519699066f93c10b2d1affee651bd0bf7e482b..3553e36b45fe8c0cce2588bb88137bef
public ServerGamePacketListenerImpl(MinecraftServer server, Connection connection, ServerPlayer player) {
this.lastChatTimeStamp = new AtomicReference(Instant.EPOCH);
this.lastSeenMessages = new LastSeenMessagesValidator(20);
@@ -3328,6 +3330,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -3337,6 +3339,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
private static final ResourceLocation CUSTOM_REGISTER = new ResourceLocation("register");
private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister");
@ -26,7 +26,7 @@ index 75519699066f93c10b2d1affee651bd0bf7e482b..3553e36b45fe8c0cce2588bb88137bef
@Override
public void handleCustomPayload(ServerboundCustomPayloadPacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
@@ -3355,6 +3359,15 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -3364,6 +3368,15 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
try {
byte[] data = new byte[packet.data.readableBytes()];
packet.data.readBytes(data);
@ -42,7 +42,7 @@ index 75519699066f93c10b2d1affee651bd0bf7e482b..3553e36b45fe8c0cce2588bb88137bef
this.cserver.getMessenger().dispatchIncomingMessage(this.player.getBukkitEntity(), packet.identifier.toString(), data);
} catch (Exception ex) {
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex);
@@ -3364,6 +3377,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -3373,6 +3386,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
}
@ -56,10 +56,10 @@ index 75519699066f93c10b2d1affee651bd0bf7e482b..3553e36b45fe8c0cce2588bb88137bef
return (!this.player.joining && !this.connection.isConnected()) || this.processedDisconnect; // Paper
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 7dfa2ce4028b7ab3b1ebe063f497b8adda397079..f0146fc5f294a54bbcc2df5eed1082c0809a88b3 100644
index 3ea01452f4b18ac1c6a13a79f8e5c486e4c6f85b..d127eba33abe5c0ae711221504b67cc2af3b0822 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2866,6 +2866,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2933,6 +2933,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
// Paper end
};

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add #setMaxPlayers API
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 02ac22774a5d3092309e88b89ba784f741482150..3a9171a6ce370b6cd029095b58b25af0d190fd6b 100644
index 391375642822d95f6d874a26d41b27ec4f4b8c08..b6cfea5de71d85c76a9ed6d10b9dd16d3d66f4d8 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -151,7 +151,7 @@ public abstract class PlayerList {
@@ -152,7 +152,7 @@ public abstract class PlayerList {
private boolean doWhiteList;
private final LayeredRegistryAccess<RegistryLayer> registries;
private final RegistryAccess.Frozen synchronizedRegistries;
@ -18,10 +18,10 @@ index 02ac22774a5d3092309e88b89ba784f741482150..3a9171a6ce370b6cd029095b58b25af0
private int simulationDistance;
private boolean allowCheatsForAllPlayers;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 3d6725e281a612a873b40b9d6a67c990f94246d5..8720fdec86fa8b400721c66d23d8748afd2ac120 100644
index 2f978b0c5721b0cf145d324e6c7551d8f0c1eccf..7971be6c5e9daa6d7f206aafac7479bd5cc0aad5 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -669,6 +669,13 @@ public final class CraftServer implements Server {
@@ -664,6 +664,13 @@ public final class CraftServer implements Server {
return this.playerList.getMaxPlayers();
}

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add playPickupItemAnimation to LivingEntity
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index b543619e50196f82e55dd7e648e5f8c580658dbe..ec57e0323f7b38828dd989244905025f973028f3 100644
index 658d4dbb45d17e7064f69b10af8fbfa473a8dffe..fb783efc63e8c782e34380ff98d92b644ea2665c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -901,5 +901,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Fix SpawnChangeEvent not firing for all use-cases
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 95c53189e32aec6aca254fa3b157df7bc68d4d1a..b046d08f2c9cc78935e5b75b5367aa45d540465c 100644
index 06d20e9fde26540d1575975345f3d69405f767d0..959a8a170363227bb8ca833d8399f0c4c3d00004 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1863,9 +1863,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1862,9 +1862,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
public void setDefaultSpawnPos(BlockPos pos, float angle) {
// Paper - configurable spawn radius
BlockPos prevSpawn = this.getSharedSpawnPos();
@ -21,7 +21,7 @@ index 95c53189e32aec6aca254fa3b157df7bc68d4d1a..b046d08f2c9cc78935e5b75b5367aa45
// if this keepSpawnInMemory is false a plugin has already removed our tickets, do not re-add
this.removeTicketsForSpawn(this.paperConfig().spawn.keepSpawnLoadedRange * 16, prevSpawn);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index a25dbc2bd3005cb3d1aee61fb48522b13e7c4922..cee8c89c5a4d3244f341205e255581086112b708 100644
index 977004b4b5a294c4eab2995777df6fb1faff4625..217725e90d3c820467fe9a3b6a7116aeac255105 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -261,12 +261,14 @@ public class CraftWorld extends CraftRegionAccessor implements World {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add moon phase API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
index 100d59c37cf699bd33bdf0c3fc085dfe0065b93a..3e4ac4020c9f51e634eadd43243d34267bea4b22 100644
index 2c0773fec42c7c6223e2c300086058939ec32a52..9db48bd6dcf0d24132123b86670341c1d8113840 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java
@@ -938,4 +938,11 @@ public abstract class CraftRegionAccessor implements RegionAccessor {
@@ -963,4 +963,11 @@ public abstract class CraftRegionAccessor implements RegionAccessor {
throw new IllegalArgumentException("Cannot spawn an entity for " + clazz.getName());
}

View File

@ -6,7 +6,7 @@ Subject: [PATCH] Prevent headless pistons from being created
Prevent headless pistons from being created by explosions or tree/mushroom growth.
diff --git a/src/main/java/net/minecraft/world/level/Explosion.java b/src/main/java/net/minecraft/world/level/Explosion.java
index 4eb2b90596d2a538c1ea380f11fcd23f2465d611..092ba9e1f5bf331d65b549d54689b337e67a6d58 100644
index a85ca27817981552680c58ad49866997a875018d..ff2ea0ae47fb6e083cf7dbb992d59416067b5c7d 100644
--- a/src/main/java/net/minecraft/world/level/Explosion.java
+++ b/src/main/java/net/minecraft/world/level/Explosion.java
@@ -183,6 +183,15 @@ public class Explosion {

View File

@ -8,10 +8,10 @@ the world per tick, this attempts to reduce the impact that join floods
has on the server
diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java
index d032f8d011b94f396c9d5606f42a8c331db62740..501d17ba798c5928279a93c45de3eb6e8a3f99d6 100644
index d3b5039adaa91fa254a582f030b33276c68fca0d..e4c471ad111efb40a820670328b67ac28c79bff0 100644
--- a/src/main/java/net/minecraft/network/Connection.java
+++ b/src/main/java/net/minecraft/network/Connection.java
@@ -433,14 +433,29 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
@@ -440,14 +440,29 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
}
// Paper end

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Fix hex colors not working in some kick messages
diff --git a/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java
index 34e4d00ede62be50808a2782e54da987cc62c9af..e12c67bdfa326b3f52f6a4973063cef44359b804 100644
index 50521cbd2af1c723d7caaf298fd052af905802b6..ebb964aa4d6c3e98cb6da54f68370a155658b169 100644
--- a/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerHandshakePacketListenerImpl.java
@@ -76,12 +76,12 @@ public class ServerHandshakePacketListenerImpl implements ServerHandshakePacketL
@@ -77,12 +77,12 @@ public class ServerHandshakePacketListenerImpl implements ServerHandshakePacketL
}
// CraftBukkit end
if (packet.getProtocolVersion() != SharedConstants.getCurrentVersion().getProtocolVersion()) {
@ -25,7 +25,7 @@ index 34e4d00ede62be50808a2782e54da987cc62c9af..e12c67bdfa326b3f52f6a4973063cef4
this.connection.send(new ClientboundLoginDisconnectPacket(ichatmutablecomponent));
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index b09069196fbcba32bdd6ea67718ea4c3086fb318..966f5bd5b922c9f64616e93c292c87997402c521 100644
index 9858f907e58fa606510f87efbdf8793c35ec711c..c9f8f61c43428c519c0dac1b7416bad775e3429f 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -102,7 +102,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,

View File

@ -5,10 +5,10 @@ Subject: [PATCH] PortalCreateEvent needs to know its entity
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index ae4c8eb5c06a877c24b22e3ce15b2751449102fd..d16fbd7817e71f50e35bc84eb889444e35eab415 100644
index e4e2d3676c354218e1d334a89a082c5f57a09673..9a4a05668fec49e488dbf644c083c5b67c4dde93 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -440,7 +440,7 @@ public final class ItemStack {
@@ -441,7 +441,7 @@ public final class ItemStack {
net.minecraft.world.level.block.state.BlockState block = world.getBlockState(newblockposition);
if (!(block.getBlock() instanceof BaseEntityBlock)) { // Containers get placed automatically
@ -18,10 +18,10 @@ index ae4c8eb5c06a877c24b22e3ce15b2751449102fd..d16fbd7817e71f50e35bc84eb889444e
world.notifyAndUpdatePhysics(newblockposition, null, oldBlock, block, world.getBlockState(newblockposition), updateFlag, 512); // send null chunk as chunk.k() returns false by this point
diff --git a/src/main/java/net/minecraft/world/level/block/BaseFireBlock.java b/src/main/java/net/minecraft/world/level/block/BaseFireBlock.java
index 378d4316a51d48cb84e2d8a553f7b28bae55630e..922b5b22a4ccfeead9d6d2b9a2a2b3cc8a1e6c55 100644
index 2bc31c28d0d5469476699b69efa6e07325f2a852..4066dd6a638cf2186c628905915f635326442b3e 100644
--- a/src/main/java/net/minecraft/world/level/block/BaseFireBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/BaseFireBlock.java
@@ -139,20 +139,23 @@ public abstract class BaseFireBlock extends Block {
@@ -138,20 +138,23 @@ public abstract class BaseFireBlock extends Block {
super.entityInside(state, world, pos, entity);
}
@ -52,18 +52,18 @@ index 378d4316a51d48cb84e2d8a553f7b28bae55630e..922b5b22a4ccfeead9d6d2b9a2a2b3cc
}
diff --git a/src/main/java/net/minecraft/world/level/block/FireBlock.java b/src/main/java/net/minecraft/world/level/block/FireBlock.java
index 68be050e5187d372a65290c01c69f3582053f7a1..cfddfcad9b09970b28dccd2dcd80be2c2dbed0e7 100644
index 9576f581bb61e6c71de427c52dcc3e56dc3ed81e..6ed2c13c8d22a936ae130cf8cf103451033a2cb7 100644
--- a/src/main/java/net/minecraft/world/level/block/FireBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/FireBlock.java
@@ -12,6 +12,7 @@ import net.minecraft.core.Direction;
import net.minecraft.server.level.ServerLevel;
@@ -13,6 +13,7 @@ import net.minecraft.server.level.ServerLevel;
import net.minecraft.tags.BiomeTags;
import net.minecraft.util.RandomSource;
import net.minecraft.world.item.context.BlockPlaceContext;
+import net.minecraft.world.item.context.UseOnContext;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.GameRules;
import net.minecraft.world.level.Level;
@@ -356,9 +357,11 @@ public class FireBlock extends BaseFireBlock {
@@ -357,9 +358,11 @@ public class FireBlock extends BaseFireBlock {
}
@Override
@ -79,10 +79,10 @@ index 68be050e5187d372a65290c01c69f3582053f7a1..cfddfcad9b09970b28dccd2dcd80be2c
private static int getFireTickDelay(RandomSource random) {
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 6a549229037c8b8c2093feb563780ef8565d709f..efbcd2b78d75481793e0f29a7431d3eb76489abc 100644
index b245b3912a4e2f4e83872c29c5a9602743b5eccb..61c814a8042d3d4be5ea86ce339c90100bdbe597 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
@@ -39,6 +39,7 @@ import net.minecraft.world.item.DyeColor;
@@ -40,6 +40,7 @@ import net.minecraft.world.item.DyeColor;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.context.BlockPlaceContext;
@ -90,7 +90,7 @@ index 6a549229037c8b8c2093feb563780ef8565d709f..efbcd2b78d75481793e0f29a7431d3eb
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.EmptyBlockGetter;
import net.minecraft.world.level.Level;
@@ -142,6 +143,12 @@ public abstract class BlockBehaviour implements FeatureElement {
@@ -143,6 +144,12 @@ public abstract class BlockBehaviour implements FeatureElement {
DebugPackets.sendNeighborsUpdatePacket(world, pos);
}

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Create HoverEvent from ItemStack Entity
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
index 42724d209b4fd5f246a2cedbc297ca2aa81fd5fe..e3bedba23bc57a51e8e702a9a6ab89db8700263c 100644
index 45f37c894a9d862fd9d73908d1dae2e8c62262ff..081a92415d8a19da4f342e8febee62c844458cb9 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
@@ -441,5 +441,40 @@ public final class CraftItemFactory implements ItemFactory {
@@ -448,5 +448,40 @@ public final class CraftItemFactory implements ItemFactory {
return nms != null ? net.minecraft.locale.Language.getInstance().getOrDefault(nms.getItem().getDescriptionId(nms)) : null;
}

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Cache block data strings
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8e101269ca2edf5f3cc9c1ccedd03afaf1392d19..8ce413404930cca3a470bb58d73b9bd0c9a9c2d2 100644
index dfc8b3441ca35aba19a7e1bf61a0d60c5722ce96..6d611d4de5a9f568a974facd8ef7a03b18502e0e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -2022,6 +2022,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2048,6 +2048,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.getPlayerList().reloadResources();
this.functionManager.replaceLibrary(this.resources.managers.getFunctionLibrary());
this.structureTemplateManager.onResourceManagerReload(this.resources.resourceManager);
@ -17,10 +17,10 @@ index 8e101269ca2edf5f3cc9c1ccedd03afaf1392d19..8ce413404930cca3a470bb58d73b9bd0
if (this.isSameThread()) {
diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
index 198a3f04ad6864460b9e7dd42444fab423a4ad8f..14b8d0754955747d5a755eaf628e861929f5f47f 100644
index ffdd7638d0b88f79ae981924d1c42d2fda2b284e..780cd4f5fb4bb2ed42b0a168d94f0adde8fd0fc3 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
@@ -512,9 +512,39 @@ public class CraftBlockData implements BlockData {
@@ -517,9 +517,39 @@ public class CraftBlockData implements BlockData {
Preconditions.checkState(CraftBlockData.MAP.put(nms, bukkit) == null, "Duplicate mapping %s->%s", nms, bukkit);
}

View File

@ -9,10 +9,10 @@ as this is how Vanilla teleports entities.
Cancel any pending motion when teleported.
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 3553e36b45fe8c0cce2588bb88137bef269ede66..2de25bb28f0cbbfb46054be36f65c930b6005921 100644
index 221a695acf3cbeaeaf9eda818b6cf80987d7a994..ed16292b121aeaee5ad439176af57841281e293d 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -748,7 +748,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -750,7 +750,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
return;
}
@ -21,17 +21,17 @@ index 3553e36b45fe8c0cce2588bb88137bef269ede66..2de25bb28f0cbbfb46054be36f65c930
this.lastGoodX = this.awaitingPositionFromClient.x;
this.lastGoodY = this.awaitingPositionFromClient.y;
this.lastGoodZ = this.awaitingPositionFromClient.z;
@@ -1665,7 +1665,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -1655,7 +1655,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
// CraftBukkit end
this.awaitingTeleportTime = this.tickCount;
- this.player.absMoveTo(d0, d1, d2, f, f1);
+ this.player.moveTo(d0, d1, d2, f, f1); // Paper - use proper moveTo for teleportation
this.player.connection.send(new ClientboundPlayerPositionPacket(d0 - d3, d1 - d4, d2 - d5, f - f2, f1 - f3, set, this.awaitingTeleport, flag));
this.player.connection.send(new ClientboundPlayerPositionPacket(d0 - d3, d1 - d4, d2 - d5, f - f2, f1 - f3, set, this.awaitingTeleport));
}
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 1a33ce4ff0e00ac2f6bba288cb43880ca5dae19a..873206bb65b2412d3066a0f7e35fe0684e29661a 100644
index 4d62f7f88dfaedfbde598515a1e77716d0ee4a1b..6db716a0b510e88551d532b382c8adb896edeae6 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -158,6 +158,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@ -42,7 +42,7 @@ index 1a33ce4ff0e00ac2f6bba288cb43880ca5dae19a..873206bb65b2412d3066a0f7e35fe068
static boolean isLevelAtLeast(CompoundTag tag, int level) {
return tag.contains("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level;
}
@@ -1731,6 +1732,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -1736,6 +1737,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
}
public void moveTo(double x, double y, double z, float yaw, float pitch) {
@ -57,7 +57,7 @@ index 1a33ce4ff0e00ac2f6bba288cb43880ca5dae19a..873206bb65b2412d3066a0f7e35fe068
this.setYRot(yaw);
this.setXRot(pitch);
diff --git a/src/main/java/net/minecraft/world/level/BaseSpawner.java b/src/main/java/net/minecraft/world/level/BaseSpawner.java
index c5a117308f051c20b81818ad91e0ca40177feb69..0e7c2e7640ff2a2cdc3088dcb56314026bfaf95f 100644
index 54a20433483d5b67a6668fcdbddc1654a246fee2..9bf1a37ea8436f3314b28914ae8b1516378eb465 100644
--- a/src/main/java/net/minecraft/world/level/BaseSpawner.java
+++ b/src/main/java/net/minecraft/world/level/BaseSpawner.java
@@ -167,6 +167,7 @@ public abstract class BaseSpawner {
@ -69,10 +69,10 @@ index c5a117308f051c20b81818ad91e0ca40177feb69..0e7c2e7640ff2a2cdc3088dcb5631402
if (entity instanceof Mob) {
Mob entityinsentient = (Mob) entity;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 6cc448268f786b06529f5488fa3153f6c8cc8fdf..7dc79a3875388c48dda40b7e28331c6d0a7b3fc5 100644
index b1697227b34858da01603abbf7a7476494ce59be..d1ff5c5d1286692504c39727d94bee341f7586fd 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -563,7 +563,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -574,7 +574,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
}
// entity.setLocation() throws no event, and so cannot be cancelled

View File

@ -30,10 +30,10 @@ This patch will significantly reduce CPU use on startup, reduce memory usage,
and improve server startup time.
diff --git a/src/main/java/com/mojang/datafixers/DataFixerBuilder.java b/src/main/java/com/mojang/datafixers/DataFixerBuilder.java
index d25f106ab64c90438f521a2c6fa944bdedc1969a..3d5e52d997a8e7d7f3b000e3737d30762aae2ca1 100644
index cd812f3fe362de5ddc414862dedab2e9727ca776..f6598fcf4ed1bd61e1c87cd7107869d49ffe4566 100644
--- a/src/main/java/com/mojang/datafixers/DataFixerBuilder.java
+++ b/src/main/java/com/mojang/datafixers/DataFixerBuilder.java
@@ -28,8 +28,10 @@ public class DataFixerBuilder {
@@ -30,8 +30,10 @@ public class DataFixerBuilder {
private final Int2ObjectSortedMap<Schema> schemas = new Int2ObjectAVLTreeMap<>();
private final List<DataFix> globalList = Lists.newArrayList();
private final IntSortedSet fixerVersions = new IntAVLTreeSet();
@ -44,11 +44,11 @@ index d25f106ab64c90438f521a2c6fa944bdedc1969a..3d5e52d997a8e7d7f3b000e3737d3076
this.dataVersion = dataVersion;
}
@@ -74,6 +76,7 @@ public class DataFixerBuilder {
@@ -78,6 +80,7 @@ public class DataFixerBuilder {
final IntBidirectionalIterator iterator = fixerUpper.fixerVersions().iterator();
while (iterator.hasNext()) {
final int versionKey = iterator.nextInt();
+ if (versionKey < minDataFixPrecacheVersion) continue; // Paper
final Schema schema = schemas.get(versionKey);
for (final String typeName : schema.types()) {
final CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {
if (!requiredTypeNames.contains(typeName)) {

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Extend block drop capture to capture all items added to the
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index b046d08f2c9cc78935e5b75b5367aa45d540465c..32c212861517fef926640dd19f596e6f0cbd8648 100644
index 959a8a170363227bb8ca833d8399f0c4c3d00004..c73bf7d8c6b009ed5e1f666600d3c470927f564d 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1367,6 +1367,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1366,6 +1366,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
// WorldServer.LOGGER.warn("Tried to add entity {} but it was marked as removed already", EntityTypes.getKey(entity.getType())); // CraftBukkit
return false;
} else {

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Expose the Entity Counter to allow plugins to use valid and
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 873206bb65b2412d3066a0f7e35fe0684e29661a..d170254265a789998be96ce1dcaf71c9900d75ab 100644
index 6db716a0b510e88551d532b382c8adb896edeae6..2e14c719eed5e4a76aba1dbdcac3f9e80d4c7927 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4221,4 +4221,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -4301,4 +4301,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
void accept(Entity entity, double x, double y, double z);
}
@ -21,7 +21,7 @@ index 873206bb65b2412d3066a0f7e35fe0684e29661a..d170254265a789998be96ce1dcaf71c9
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 69b126c8bbba26f517e0d314b3629b2445349770..75be35b61608a0266fe2b734290077a27f05122b 100644
index e50daf4bafa38d92304ffda05326bd335d070422..c4cc2833879d14451be507a59a31c67f13cc8b3d 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -506,6 +506,11 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Entity#isTicking
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d170254265a789998be96ce1dcaf71c9900d75ab..6ba3e91c2a937d288b67ec32c818bebf38b04d5c 100644
index 2e14c719eed5e4a76aba1dbdcac3f9e80d4c7927..f4cca3313b0a5ac69f5b47da727d9ea3e2b7ffc5 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4226,5 +4226,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -4306,5 +4306,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
public static int nextEntityId() {
return ENTITY_COUNTER.incrementAndGet();
}
@ -19,10 +19,10 @@ index d170254265a789998be96ce1dcaf71c9900d75ab..6ba3e91c2a937d288b67ec32c818bebf
// Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 7dc79a3875388c48dda40b7e28331c6d0a7b3fc5..e44792ecc68a948fae8394d97cd50e3da8d78c0d 100644
index d1ff5c5d1286692504c39727d94bee341f7586fd..e67fb2f213fc174dba36f283ca4441fcf4596140 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -1308,5 +1308,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -1343,5 +1343,10 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
public boolean isInLava() {
return getHandle().isInLava();
}

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Fix deop kicking non-whitelisted player when white list is
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8ce413404930cca3a470bb58d73b9bd0c9a9c2d2..f445f6d382c8fe3def980ed3f8517bbf3b75dfed 100644
index 6d611d4de5a9f568a974facd8ef7a03b18502e0e..1a5b27c24499e1fd7b277cbef52872cd320edfef 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -2105,13 +2105,14 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2131,13 +2131,14 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
if (this.isEnforceWhitelist()) {
PlayerList playerlist = source.getServer().getPlayerList();
UserWhiteList whitelist = playerlist.getWhiteList();

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Fix for large move vectors crashing server
Check movement distance also based on current position.
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 2de25bb28f0cbbfb46054be36f65c930b6005921..8de437fb49ddfa80bb0dc829958d9898d56853c9 100644
index ed16292b121aeaee5ad439176af57841281e293d..459403f9c8a784c3911d5ba163a2c90efef00e9f 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -563,9 +563,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -565,9 +565,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
if (entity != this.player && entity.getControllingPassenger() == this.player && entity == this.lastVehicle) {
ServerLevel worldserver = this.player.getLevel();
@ -22,7 +22,7 @@ index 2de25bb28f0cbbfb46054be36f65c930b6005921..8de437fb49ddfa80bb0dc829958d9898
double d3 = ServerGamePacketListenerImpl.clampHorizontal(packet.getX()); final double toX = d3; // Paper - OBFHELPER
double d4 = ServerGamePacketListenerImpl.clampVertical(packet.getY()); final double toY = d4; // Paper - OBFHELPER
double d5 = ServerGamePacketListenerImpl.clampHorizontal(packet.getZ()); final double toZ = d5; // Paper - OBFHELPER
@@ -575,8 +575,19 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -577,8 +577,19 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
double d7 = d4 - this.vehicleFirstGoodY;
double d8 = d5 - this.vehicleFirstGoodZ;
double d9 = entity.getDeltaMovement().lengthSqr();
@ -44,7 +44,7 @@ index 2de25bb28f0cbbfb46054be36f65c930b6005921..8de437fb49ddfa80bb0dc829958d9898
// CraftBukkit start - handle custom speeds and skipped ticks
this.allowedPlayerTicks += (System.currentTimeMillis() / 50) - this.lastTick;
@@ -622,9 +633,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -624,9 +635,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
boolean flag = worldserver.noCollision(entity, entity.getBoundingBox().deflate(0.0625D));
@ -57,7 +57,7 @@ index 2de25bb28f0cbbfb46054be36f65c930b6005921..8de437fb49ddfa80bb0dc829958d9898
boolean flag1 = entity.verticalCollisionBelow;
entity.move(MoverType.PLAYER, new Vec3(d6, d7, d8));
@@ -1344,7 +1355,18 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -1346,7 +1357,18 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
double d8 = d1 - this.firstGoodY;
double d9 = d2 - this.firstGoodZ;
double d10 = this.player.getDeltaMovement().lengthSqr();
@ -77,7 +77,7 @@ index 2de25bb28f0cbbfb46054be36f65c930b6005921..8de437fb49ddfa80bb0dc829958d9898
if (this.player.isSleeping()) {
if (d11 > 1.0D) {
@@ -1396,9 +1418,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -1398,9 +1420,9 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
AABB axisalignedbb = this.player.getBoundingBox();

View File

@ -67,7 +67,7 @@ index 0a755f38fae9dc84440f43113920c5b4c6d8218b..7b9e943b391c061782fccd2b8d705cee
public void setFlag(int flag) {
diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
index 14b8d0754955747d5a755eaf628e861929f5f47f..7acf213194f61d04cffabaaee6c1372bfa2e1933 100644
index 780cd4f5fb4bb2ed42b0a168d94f0adde8fd0fc3..6361f096eeb5da035a01fc3a2d79f48def33b38d 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
@@ -53,7 +53,7 @@ public class CraftBlockData implements BlockData {

View File

@ -10,10 +10,10 @@ In general, look at making this logic more robust (i.e properly handling
cases where a captured entry is overriden) - but for now this will do.
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 6ee6ecf5ae3d450a2da4db453f5b02dd71073ad0..f846132527aba0a034203100e3fdac3bd6ad21d9 100644
index 0ef98a3a3f8685c801f74431fcfab88541b6a170..1770c97a3190a89a9b1dbde126b94a42662efea0 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -154,7 +154,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -158,7 +158,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public boolean captureBlockStates = false;
public boolean captureTreeGeneration = false;
public Map<BlockPos, org.bukkit.craftbukkit.block.CraftBlockState> capturedBlockStates = new java.util.LinkedHashMap<>(); // Paper

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Reduce blockpos allocation from pathfinding
diff --git a/src/main/java/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java b/src/main/java/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java
index 04406fdb2961a85d8e6bffbb8e233e8c4dcf4390..894881018c659d874f28f5744f0b8247cfecb1c1 100644
index 67ac0b3cec3b1a9bd6de7be50244804ac1620ab3..94a0fde36dda9404e5eb62d323c71dac1929a46b 100644
--- a/src/main/java/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java
+++ b/src/main/java/net/minecraft/world/level/pathfinder/WalkNodeEvaluator.java
@@ -483,7 +483,7 @@ public class WalkNodeEvaluator extends NodeEvaluator {
@@ -471,7 +471,7 @@ public class WalkNodeEvaluator extends NodeEvaluator {
return BlockPathTypes.DANGER_FIRE;
}
@ -17,12 +17,12 @@ index 04406fdb2961a85d8e6bffbb8e233e8c4dcf4390..894881018c659d874f28f5744f0b8247
return BlockPathTypes.WATER_BORDER;
}
} // Paper
@@ -514,7 +514,7 @@ public class WalkNodeEvaluator extends NodeEvaluator {
} else if (blockState.is(Blocks.COCOA)) {
return BlockPathTypes.COCOA;
} else {
- FluidState fluidState = world.getFluidState(pos);
@@ -499,7 +499,7 @@ public class WalkNodeEvaluator extends NodeEvaluator {
} else if (blockState.is(Blocks.COCOA)) {
return BlockPathTypes.COCOA;
} else {
- FluidState fluidState = world.getFluidState(pos);
+ FluidState fluidState = blockState.getFluidState(); // Paper - remove another get type call
if (fluidState.is(FluidTags.LAVA)) {
return BlockPathTypes.LAVA;
} else if (isBurningBlock(blockState)) {
if (fluidState.is(FluidTags.LAVA)) {
return BlockPathTypes.LAVA;
} else if (isBurningBlock(blockState)) {

View File

@ -6,7 +6,7 @@ Subject: [PATCH] Fix item locations dropped from campfires
Fixes #4259 by not flooring the blockposition among other weirdness
diff --git a/src/main/java/net/minecraft/world/level/block/entity/CampfireBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/CampfireBlockEntity.java
index 683958d65e4b926231b68c68744af13ef18fba8a..b07b83f4c16e85304b5da7a245810dd2741398e7 100644
index ba4ce804d1d239ca842b06b3599605847effc35b..ca995270c9b8d7024504a9ba885b1c0214b33a8b 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/CampfireBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/CampfireBlockEntity.java
@@ -81,7 +81,11 @@ public class CampfireBlockEntity extends BlockEntity implements Clearable {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Player elytra boost API
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index f0146fc5f294a54bbcc2df5eed1082c0809a88b3..b6a7fc3602d7af1de9ecd8eff23a8e7b07d8667f 100644
index d127eba33abe5c0ae711221504b67cc2af3b0822..42f5a42b916e0d8ce9583d06c1ad3bc5ee6c4c9c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -639,6 +639,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -640,6 +640,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
throw new RuntimeException("Unknown settings type");
}

View File

@ -8,7 +8,7 @@ This can realistically only happen if there's custom loot active on fishing
which can return 0 items. This would disconnect the player who's fishing.
diff --git a/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java b/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java
index 75449d8575ac1b67aaa94d0f3fc08244728ec8a8..15fb5ee374b19366ebb23181896fb943e95819f0 100644
index 7d058efff8820727e2e8531bdd57f85059b5ca30..d77410588a1c10d8ac902f21a8bd7e35f74fecd2 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java
@@ -495,9 +495,15 @@ public class FishingHook extends Projectile {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add getOfflinePlayerIfCached(String)
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8720fdec86fa8b400721c66d23d8748afd2ac120..b68b19f32754c9c426e711892235b469a85fefb2 100644
index 7971be6c5e9daa6d7f206aafac7479bd5cc0aad5..a133e0a0a7a5b646ac3df9c2521d4deed6a1761d 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1813,6 +1813,28 @@ public final class CraftServer implements Server {
@@ -1812,6 +1812,28 @@ public final class CraftServer implements Server {
return result;
}

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add ignore discounts API
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index 214c7947705eda61454b70cbc4bf37bc54dd26e8..e3db573f10b7a3f8f605a11dc886859c68168467 100644
index ece23ee7812ca62ff8e763ffc29cda2711d2f2e1..279b247f579a46183bdb90064ee169d3f9b0b1e3 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -489,6 +489,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -501,6 +501,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
while (iterator.hasNext()) {
MerchantOffer merchantrecipe = (MerchantOffer) iterator.next();
@ -16,7 +16,7 @@ index 214c7947705eda61454b70cbc4bf37bc54dd26e8..e3db573f10b7a3f8f605a11dc886859c
merchantrecipe.addToSpecialPriceDiff(-Mth.floor((float) i * merchantrecipe.getPriceMultiplier()));
}
@@ -501,6 +502,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -513,6 +514,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
while (iterator1.hasNext()) {
MerchantOffer merchantrecipe1 = (MerchantOffer) iterator1.next();
@ -25,7 +25,7 @@ index 214c7947705eda61454b70cbc4bf37bc54dd26e8..e3db573f10b7a3f8f605a11dc886859c
int k = (int) Math.floor(d0 * (double) merchantrecipe1.getBaseCostA().getCount());
diff --git a/src/main/java/net/minecraft/world/item/trading/MerchantOffer.java b/src/main/java/net/minecraft/world/item/trading/MerchantOffer.java
index 8b46e494ecd0cce5ab0b2bf8e50cf50dc7e2a7e5..8a9a701baabdaf066cd9b28c05430f673fcafb4e 100644
index 8de9ea7928b272bbaf9c49940a8079f2499c8ee1..fd50d1c2435b82215bc5b3fdbe5044d426bc342e 100644
--- a/src/main/java/net/minecraft/world/item/trading/MerchantOffer.java
+++ b/src/main/java/net/minecraft/world/item/trading/MerchantOffer.java
@@ -19,6 +19,7 @@ public class MerchantOffer {

View File

@ -15,7 +15,7 @@ manually reload the advancement data for all players, which
normally takes place as a part of the datapack reloading.
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 75be35b61608a0266fe2b734290077a27f05122b..c05024b813264669d559cf18a15b1a60f427186a 100644
index c4cc2833879d14451be507a59a31c67f13cc8b3d..a933d12dabfee67f2c9bb2419f9ede69c354b3c2 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -345,7 +345,13 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Item no age & no player pickup
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
index 30c954efba587d69ff55df509339f03e7d5a476e..1d90219c3a0e86786a9497d4c078c2d4077ab6cd 100644
index 5f36b0fd12ccd0e7ec9a7f61c56f08307844935f..27e961653dc66fbe8d5421eef04260b91ca410f4 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
@@ -10,6 +10,12 @@ import org.bukkit.entity.Item;

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Beacon API - custom effect ranges
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BeaconBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BeaconBlockEntity.java
index 04c2872e2a492adef5aec98289a8cf2af6611757..ab4e5c08e51f5ed1cddf8295944cd54b19f401c0 100644
index 34ec79a4298bff5ef6d751dc06b6439d0fa2e077..b572643536c47f34362b086e46f581417fa1719e 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/BeaconBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/BeaconBlockEntity.java
@@ -78,6 +78,26 @@ public class BeaconBlockEntity extends BlockEntity implements MenuProvider, Name

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add API for quit reason
diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java
index 501d17ba798c5928279a93c45de3eb6e8a3f99d6..5fa1b0d609ffc43b03f66d710a2702c2597786fc 100644
index e4c471ad111efb40a820670328b67ac28c79bff0..6ef3a08ea5223ee28dd175d66c6405efe5517993 100644
--- a/src/main/java/net/minecraft/network/Connection.java
+++ b/src/main/java/net/minecraft/network/Connection.java
@@ -170,12 +170,15 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
@@ -173,12 +173,15 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
this.handlingFault = true;
if (this.channel.isOpen()) {
@ -25,10 +25,10 @@ index 501d17ba798c5928279a93c45de3eb6e8a3f99d6..5fa1b0d609ffc43b03f66d710a2702c2
Connection.LOGGER.debug("Failed to sent packet", throwable);
ConnectionProtocol enumprotocol = this.getCurrentProtocol();
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index f2185620a76b0b376adca38a5db950a327abc897..b91f55082d6828dab010cf409218f70186c6d9cc 100644
index 4e25b015c7b37b1249d2bca4a3d97d26bcefd61e..35a2638214e427f24c265fa11318311cd8315337 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -268,6 +268,7 @@ public class ServerPlayer extends Player {
@@ -273,6 +273,7 @@ public class ServerPlayer extends Player {
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
@ -37,10 +37,10 @@ index f2185620a76b0b376adca38a5db950a327abc897..b91f55082d6828dab010cf409218f701
public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile) {
super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile);
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 8de437fb49ddfa80bb0dc829958d9898d56853c9..7d7e7d10325eab5e107d43b0bc3e6a7b92653fad 100644
index 459403f9c8a784c3911d5ba163a2c90efef00e9f..7ffe3a9978d58831fe2f01c3b19dfd8bef29f556 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -503,6 +503,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -505,6 +505,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
final Component ichatbasecomponent = PaperAdventure.asVanilla(event.reason()); // Paper - Adventure
// CraftBukkit end
@ -49,10 +49,10 @@ index 8de437fb49ddfa80bb0dc829958d9898d56853c9..7d7e7d10325eab5e107d43b0bc3e6a7b
this.connection.disconnect(ichatbasecomponent);
}));
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 3a9171a6ce370b6cd029095b58b25af0d190fd6b..f41cff746561f60654130b5dd7bae021c913a753 100644
index b6cfea5de71d85c76a9ed6d10b9dd16d3d66f4d8..98e675b7aa4b59fe93bae1049ce09191d426ad9e 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -552,7 +552,7 @@ public abstract class PlayerList {
@@ -559,7 +559,7 @@ public abstract class PlayerList {
entityplayer.closeContainer(org.bukkit.event.inventory.InventoryCloseEvent.Reason.DISCONNECT); // Paper
}

View File

@ -11,10 +11,10 @@ in IWorldServerData are removed as they were only used in certain places, with h
values used in other places.
diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTraderSpawner.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTraderSpawner.java
index 0885565e4de0c2924f9e89abfd20dfa0ccf031f2..0ae8e9134a3671cdf2a480cd4dd6598653e261ab 100644
index 83d0db5a9f03ee3ead10d9f61e5f425330eae0e9..02562a036d99d0ddadea28ae807c8e9463a8e341 100644
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTraderSpawner.java
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTraderSpawner.java
@@ -40,43 +40,53 @@ public class WanderingTraderSpawner implements CustomSpawner {
@@ -40,32 +40,41 @@ public class WanderingTraderSpawner implements CustomSpawner {
public WanderingTraderSpawner(ServerLevelData properties) {
this.serverLevelData = properties;
@ -70,10 +70,10 @@ index 0885565e4de0c2924f9e89abfd20dfa0ccf031f2..0ae8e9134a3671cdf2a480cd4dd65986
if (!world.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING)) {
return 0;
} else {
int i = this.spawnChance;
@@ -73,10 +82,13 @@ public class WanderingTraderSpawner implements CustomSpawner {
- this.spawnChance = Mth.clamp(this.spawnChance + 25, (int) 25, (int) 75);
- this.serverLevelData.setWanderingTraderSpawnChance(this.spawnChance);
this.spawnChance = Mth.clamp(this.spawnChance + 25, 25, 75);
this.serverLevelData.setWanderingTraderSpawnChance(this.spawnChance);
+ this.spawnChance = Mth.clamp(i + world.paperConfig().entities.spawning.wanderingTrader.spawnChanceFailureIncrement, world.paperConfig().entities.spawning.wanderingTrader.spawnChanceMin, world.paperConfig().entities.spawning.wanderingTrader.spawnChanceMax);
+ //this.serverLevelData.setWanderingTraderSpawnChance(this.spawnChance); // Paper - We don't need to save this value to disk if it gets set back to a hardcoded value anyways
if (this.random.nextInt(100) > i) {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Expose world spawn angle
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index f41cff746561f60654130b5dd7bae021c913a753..1e1ed41895b5787c4691e55e58bd61a45399a580 100644
index 98e675b7aa4b59fe93bae1049ce09191d426ad9e..7548dec1f84837c52a29dbc65cfc5480cf04a0be 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -816,7 +816,7 @@ public abstract class PlayerList {
@@ -823,7 +823,7 @@ public abstract class PlayerList {
if (location == null) {
worldserver1 = this.server.getLevel(Level.OVERWORLD);
blockposition = entityplayer1.getSpawnPoint(worldserver1);

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Fix Player spawnParticle x/y/z precision loss
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index b6a7fc3602d7af1de9ecd8eff23a8e7b07d8667f..96c9cc8c86dbf022c6cbc5c3da130ad6f477d350 100644
index 42f5a42b916e0d8ce9583d06c1ad3bc5ee6c4c9c..08d006e190cf13c8d737654b8c8f2045610afd43 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2387,7 +2387,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2455,7 +2455,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
if (data != null && !particle.getDataType().isInstance(data)) {
throw new IllegalArgumentException("data should be " + particle.getDataType() + " got " + data.getClass());
}

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add LivingEntity#clearActiveItem
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index ec57e0323f7b38828dd989244905025f973028f3..8409087a5977a6ba0cd948c51f3f7ae59a041f5c 100644
index fb783efc63e8c782e34380ff98d92b644ea2665c..a95825e88ba31c255292451532d18a23c8d502cb 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -868,6 +868,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Climbing should not bypass cramming gamerule
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 6ba3e91c2a937d288b67ec32c818bebf38b04d5c..d8dfd84a8e97e0e852362e1424e50c2f00fe6458 100644
index f4cca3313b0a5ac69f5b47da727d9ea3e2b7ffc5..25e8dcca51dbefc027d985ba09b973fac17702f7 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1920,6 +1920,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -1929,6 +1929,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
}
public boolean isPushable() {
@ -45,10 +45,10 @@ index 302676ef78ed5b3b7fc1b04851447ca72eed10c0..a00c3d96f2fc7131d1f4afa7af4e41ac
} else if (entity.level.isClientSide && (!(entity1 instanceof Player) || !((Player) entity1).isLocalPlayer())) {
return false;
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index 408d5ccfe450a4f12d9cc37d15dbc6e817c49cca..128b4ce85bc8f79a1291d087fdb24e5a083f9464 100644
index 164c22a70f4b916615da36819cae09d94cd88d39..c7209675ad3eeca881da75bfc0c3212204da898e 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -3392,7 +3392,7 @@ public abstract class LivingEntity extends Entity {
@@ -3356,7 +3356,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
return;
}
// Paper end - don't run getEntities if we're not going to use its result
@ -57,7 +57,7 @@ index 408d5ccfe450a4f12d9cc37d15dbc6e817c49cca..128b4ce85bc8f79a1291d087fdb24e5a
if (!list.isEmpty()) {
// Paper - moved up
@@ -3556,9 +3556,16 @@ public abstract class LivingEntity extends Entity {
@@ -3516,9 +3516,16 @@ public abstract class LivingEntity extends Entity implements Attackable {
return !this.isRemoved() && this.collides; // CraftBukkit
}
@ -76,7 +76,7 @@ index 408d5ccfe450a4f12d9cc37d15dbc6e817c49cca..128b4ce85bc8f79a1291d087fdb24e5a
// CraftBukkit start - collidable API
diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
index 4d3a88277e8a68c2d92df6ca46214898eee2a878..320c558bbe80d4bbc641e895ec43cfa2b45e8d70 100644
index eb53029868ceebe08281ae1012e5ae95d555fc93..f5efdf59617d43de18a2267351fa784c0be3ae83 100644
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
@@ -85,7 +85,7 @@ public class Bat extends AmbientCreature {
@ -89,10 +89,10 @@ index 4d3a88277e8a68c2d92df6ca46214898eee2a878..320c558bbe80d4bbc641e895ec43cfa2
}
diff --git a/src/main/java/net/minecraft/world/entity/animal/Parrot.java b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
index a985241b9d80e1f99227adbaf4a2b221ff840a38..2d9aa961df034eab21ecfdb6e6d0ce7cf013505d 100644
index 047f8cc00eb361eecc2cb93980b56d61d09a014c..e6e40770acf71b9079e8f6ac07025319dd8e2e4e 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Parrot.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Parrot.java
@@ -386,8 +386,8 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
@@ -381,8 +381,8 @@ public class Parrot extends ShoulderRidingEntity implements VariantHolder<Parrot
}
@Override
@ -104,10 +104,10 @@ index a985241b9d80e1f99227adbaf4a2b221ff840a38..2d9aa961df034eab21ecfdb6e6d0ce7c
@Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
index eb777842e158e10e81cae505bebc6601f8dae7ef..3a06f48e9aed59d429ef4142785b393898b96f60 100644
index 0a1d441837a74184cdb4fd234981fc0547375dda..68788aa7a1db1468aecf0a2acb1ac03d92c9f5b9 100644
--- a/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
+++ b/src/main/java/net/minecraft/world/entity/animal/horse/AbstractHorse.java
@@ -259,7 +259,7 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
@@ -285,7 +285,7 @@ public abstract class AbstractHorse extends Animal implements ContainerListener,
}
@Override
@ -117,10 +117,10 @@ index eb777842e158e10e81cae505bebc6601f8dae7ef..3a06f48e9aed59d429ef4142785b3938
}
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
index d7bb93cd6467fe5d1cb1a9b95fa0bc3b31ba9cd2..713a47b38d6054e0b0c50dcdc23ecd3b0077f040 100644
index 3be5ea477cb3dd3ce75f3feced8daf7cce7075cd..3677dd991ae73428984e62e4d6fb757317987887 100644
--- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
+++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
@@ -342,7 +342,7 @@ public class ArmorStand extends LivingEntity {
@@ -343,7 +343,7 @@ public class ArmorStand extends LivingEntity {
}
@Override
@ -130,7 +130,7 @@ index d7bb93cd6467fe5d1cb1a9b95fa0bc3b31ba9cd2..713a47b38d6054e0b0c50dcdc23ecd3b
}
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
index 39a51f97001ef08f5d2d2eefb25908a3296eec96..8485a1a7d43a20d1326ff3a167fbb398f34efd87 100644
index 1e39bdb3146bcc577abc77021d7b9c9dcce51f4c..aa474c7bc8bb8f1ecfefc49da987011da298fa67 100644
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
@@ -146,7 +146,7 @@ public abstract class AbstractMinecart extends Entity {
@ -143,7 +143,7 @@ index 39a51f97001ef08f5d2d2eefb25908a3296eec96..8485a1a7d43a20d1326ff3a167fbb398
}
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 9e0c13c50beba36986f9df36933365b14546dcc2..e9d968013c1d8bd00a8014384ef7164b57548fbd 100644
index f2a3e239ec812f717d0bb209b7894a6b5b9b950a..e8c201d45497e212cfeba125a9261d75198cadf7 100644
--- a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
+++ b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
@@ -159,7 +159,7 @@ public class Boat extends Entity implements VariantHolder<Boat.Type> {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerShearBlockEvent
diff --git a/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java b/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java
index 8104085ca0265706911f60c9c15f9f31b3fdfd68..81048c54c45b77894ee1e2045870446dff7c71d4 100644
index f3cefffc5629b2fbd412ec3d554fbd5c237cb6bc..e3704080dc44ea429ecdc477e2ac57692d7833fc 100644
--- a/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java
@@ -113,7 +113,7 @@ public class BeehiveBlock extends BaseEntityBlock {

View File

@ -8,10 +8,10 @@ and curing a villager on repeat by simply resetting the relevant part of
the reputation when it is cured.
diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java
index e3db573f10b7a3f8f605a11dc886859c68168467..105f8fcbbc5c7c384b77ca8eb768f1147d6ce4b2 100644
index 279b247f579a46183bdb90064ee169d3f9b0b1e3..235e41ddd77e126648df81d9d187a1bd178e19fe 100644
--- a/src/main/java/net/minecraft/world/entity/npc/Villager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java
@@ -980,6 +980,15 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@@ -992,6 +992,15 @@ public class Villager extends AbstractVillager implements ReputationEventHandler
@Override
public void onReputationEventFrom(ReputationEventType interaction, Entity entity) {
if (interaction == ReputationEventType.ZOMBIE_VILLAGER_CURED) {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Limit recipe packets
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 7d7e7d10325eab5e107d43b0bc3e6a7b92653fad..36c791d4dff0d5bf4671e15922795ccd6be4bd01 100644
index 7ffe3a9978d58831fe2f01c3b19dfd8bef29f556..94e03cdbe9e5aa10c1a302bd23fefd6d2b844f35 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -262,6 +262,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -264,6 +264,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
// CraftBukkit start - multithreaded fields
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
@ -16,7 +16,7 @@ index 7d7e7d10325eab5e107d43b0bc3e6a7b92653fad..36c791d4dff0d5bf4671e15922795ccd
// CraftBukkit end
private int dropSpamTickCount;
private double firstGoodX;
@@ -414,6 +415,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -416,6 +417,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
// CraftBukkit start
for (int spam; (spam = this.chatSpamTickCount.get()) > 0 && !this.chatSpamTickCount.compareAndSet(spam, spam - 1); ) ;
if (tabSpamLimiter.get() > 0) tabSpamLimiter.getAndDecrement(); // Paper - split to seperate variable
@ -24,7 +24,7 @@ index 7d7e7d10325eab5e107d43b0bc3e6a7b92653fad..36c791d4dff0d5bf4671e15922795ccd
/* Use thread-safe field access instead
if (this.chatSpamTickCount > 0) {
--this.chatSpamTickCount;
@@ -3117,6 +3119,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -3126,6 +3128,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@Override
public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Player Chunk Load/Unload Events
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index b91f55082d6828dab010cf409218f70186c6d9cc..5746d80be4174921c0fb3fe1cb8b4e39a74206da 100644
index 35a2638214e427f24c265fa11318311cd8315337..d88332382c1280b15056c5a93873cadd0b8702b8 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -2164,11 +2164,21 @@ public class ServerPlayer extends Player {
@@ -2149,11 +2149,21 @@ public class ServerPlayer extends Player {
public void trackChunk(ChunkPos chunkPos, Packet<?> chunkDataPacket) {
this.connection.send(chunkDataPacket);

View File

@ -12,7 +12,7 @@ JSON representation of the NBT object.
Now we will just skip the value when 99.9999% of the time the text is never even printed.
diff --git a/src/main/java/com/mojang/serialization/Dynamic.java b/src/main/java/com/mojang/serialization/Dynamic.java
index a75d3db046dc985a03b4b870c91f41de1bd66bad..044facc9de9e8e582d7953d681c0c051578979c3 100644
index a24cc02a62585d7c04d36456739b11bddccf1a15..683f516b86f246792dcb3d6f9a738fc14155d2f6 100644
--- a/src/main/java/com/mojang/serialization/Dynamic.java
+++ b/src/main/java/com/mojang/serialization/Dynamic.java
@@ -17,6 +17,7 @@ import java.util.stream.Stream;
@ -27,8 +27,8 @@ index a75d3db046dc985a03b4b870c91f41de1bd66bad..044facc9de9e8e582d7953d681c0c051
return new OptionalDynamic<>(ops, ops.getMap(value).flatMap(m -> {
final T value = m.get(key);
if (value == null) {
- return DataResult.error("key missing: " + key + " in " + this.value);
+ return DataResult.error(DEBUG_MISSING_KEYS ? "key missing: " + key + " in " + this.value : "key missing: " + key); // Paper
- return DataResult.error(() -> "key missing: " + key + " in " + this.value);
+ return DataResult.error(() -> DEBUG_MISSING_KEYS ? "key missing: " + key + " in " + this.value : "key missing: " + key); // Paper
}
return DataResult.success(new Dynamic<>(ops, value));
}));

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Expose LivingEntity hurt direction
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 8409087a5977a6ba0cd948c51f3f7ae59a041f5c..dfc5317ab5c50c240a4f0806aba6cec7852092cf 100644
index a95825e88ba31c255292451532d18a23c8d502cb..bec679a287ac26b6413b9d0b90a6758b905ecde6 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -913,5 +913,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add OBSTRUCTED reason to BedEnterResult
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index be1b4a27ccb4c7519ba9213267ab461304090b87..060f0b54d6fbd53a98bfa3a0e752040cf4b1ef29 100644
index 2cbe470e30807f7c54d1726a824c3c265fd3265c..8b00741f2e17d9f1b2759ffba5d322b6e3439ab5 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -265,6 +265,10 @@ public class CraftEventFactory {
@@ -264,6 +264,10 @@ public class CraftEventFactory {
return BedEnterResult.TOO_FAR_AWAY;
case NOT_SAFE:
return BedEnterResult.NOT_SAFE;

View File

@ -37,7 +37,7 @@ index e7dda8959eb92c069af001126aafc759e7e7d2de..ca96b893e22de3ae7c11d5cded51edf7
CriteriaTriggers.TRADE.trigger((ServerPlayer) this.tradingPlayer, this, offer.getResult());
}
diff --git a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java
index f15415ff5fb099a048fe0f898e15bc4303a47ef5..428bdd3183e0085368956a5abc8e9f97fbf3e478 100644
index 5098147fc97c1f7bebc64bdd31ff03f779bb3935..75f809ee3d46971ce2ae9ec5bc89aeec1e85fdfb 100644
--- a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java
@@ -758,6 +758,14 @@ public abstract class AbstractContainerMenu {
@ -99,7 +99,7 @@ index f15415ff5fb099a048fe0f898e15bc4303a47ef5..428bdd3183e0085368956a5abc8e9f97
+ stack.shrink(slot.getMaxStackSize());
+ } else {
+ // Paper end
slot.set(stack.split(slot.getMaxStackSize()));
slot.setByPlayer(stack.split(slot.getMaxStackSize()));
+ } // Paper
} else {
+ // Paper start - dont set slot if only check
@ -107,7 +107,7 @@ index f15415ff5fb099a048fe0f898e15bc4303a47ef5..428bdd3183e0085368956a5abc8e9f97
+ stack.shrink(stack.getCount());
+ } else {
+ // Paper end
slot.set(stack.split(stack.getCount()));
slot.setByPlayer(stack.split(stack.getCount()));
+ } // Paper
}
@ -118,7 +118,7 @@ index f15415ff5fb099a048fe0f898e15bc4303a47ef5..428bdd3183e0085368956a5abc8e9f97
break;
}
diff --git a/src/main/java/net/minecraft/world/inventory/MerchantMenu.java b/src/main/java/net/minecraft/world/inventory/MerchantMenu.java
index 97e8fd420046871266966de31449da9424148572..3879373eeef324a6c782d3426faf22ac70353931 100644
index 373a32e750aaa77cec0cb57ce4058810eeaff8f4..9370056dfec5d5df7ff832e1d742b0ed1be85d8e 100644
--- a/src/main/java/net/minecraft/world/inventory/MerchantMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/MerchantMenu.java
@@ -134,12 +134,12 @@ public class MerchantMenu extends AbstractContainerMenu {
@ -143,7 +143,7 @@ index 97e8fd420046871266966de31449da9424148572..3879373eeef324a6c782d3426faf22ac
+ if (slot != 2) { // Paper - moved down for slot 2
if (itemstack1.isEmpty()) {
slot1.set(ItemStack.EMPTY);
slot1.setByPlayer(ItemStack.EMPTY);
} else {
@@ -163,6 +164,21 @@ public class MerchantMenu extends AbstractContainerMenu {
}

View File

@ -28,10 +28,10 @@ index 5ca3ad7b3d7606accd0a58b3c708fadb349608f7..4b6e0fe2fabcc55007fd8979e81f66df
public Vec3 decode(long x, long y, long z) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d8dfd84a8e97e0e852362e1424e50c2f00fe6458..9833207c4d29a082cd68d52e72490e7a314f420c 100644
index 25e8dcca51dbefc027d985ba09b973fac17702f7..a8a955a66336e908fa685bb78c1a67ebedd07f5c 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4029,6 +4029,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -4093,6 +4093,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
return;
}
// Paper end - rewrite chunk system

View File

@ -8,7 +8,7 @@ Before this patch, instant effects would be applied before the potion ItemStack
This patch makes it so that instant effects are applied after the potion ItemStack is removed, and the glass bottle is only put into the player's inventory if the player is not dead. Otherwise, the glass bottle is dropped on the ground.
diff --git a/src/main/java/net/minecraft/world/item/PotionItem.java b/src/main/java/net/minecraft/world/item/PotionItem.java
index cdd25fd41bd9c211eeff8581c920d3a5da4f2c8c..0b344e20ad4093b135c58905fb82ffff05898bb2 100644
index 84723e0e04cde81d695b95ea6a29bc875fb58ff1..93bb2cbd397fef4db9d903d2b41a35b6d67bf4a9 100644
--- a/src/main/java/net/minecraft/world/item/PotionItem.java
+++ b/src/main/java/net/minecraft/world/item/PotionItem.java
@@ -50,6 +50,7 @@ public class PotionItem extends Item {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Implement API to get Material from Boats and Minecarts
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java
index 7de68f61166885d13141ff32fe199b60f9f70916..e5b16e930e12557a9a9052866cf0f431e3a5310d 100644
index b2639e15d7b9f7068dcba3a3b80f5a6a897f0de9..dd7076938b04d4b36e3360a883bae81ced455fda 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java
@@ -80,6 +80,13 @@ public class CraftBoat extends CraftVehicle implements Boat {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Cache burn durations
diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
index 196c99a2802c0bcaf93be287c404fc4f0f23eadd..34e375ab81b539ece769c943768342dbb542d0bb 100644
index faa5beffb29e416f2a9af96ac66b5f88729e4705..5327d41fc5064e953856c348f40f2b396aa0c66b 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java
@@ -132,7 +132,13 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
@@ -133,7 +133,13 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
this.recipeType = recipeType; // Paper
}
@ -22,7 +22,7 @@ index 196c99a2802c0bcaf93be287c404fc4f0f23eadd..34e375ab81b539ece769c943768342db
Map<Item, Integer> map = Maps.newLinkedHashMap();
AbstractFurnaceBlockEntity.add(map, (ItemLike) Items.LAVA_BUCKET, 20000);
@@ -194,7 +200,10 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
@@ -195,7 +201,10 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit
AbstractFurnaceBlockEntity.add(map, (ItemLike) Blocks.AZALEA, 100);
AbstractFurnaceBlockEntity.add(map, (ItemLike) Blocks.FLOWERING_AZALEA, 100);
AbstractFurnaceBlockEntity.add(map, (ItemLike) Blocks.MANGROVE_ROOTS, 300);

View File

@ -12,7 +12,7 @@ requesting the world.
Track spigot issue to see when fixed: https://hub.spigotmc.org/jira/browse/SPIGOT-6181
diff --git a/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java b/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java
index 984da6264cdaf57a49a15861b9ce834a9efac1a7..df616dbe37b8a2068338f071300d6315a361a075 100644
index 2c5fb4eb5790f4dff0d03390ceae3afc32134006..fdf56fa2c26babf3496d326d2e7c7968f1844792 100644
--- a/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java
+++ b/src/main/java/net/minecraft/world/level/saveddata/maps/MapItemSavedData.java
@@ -15,6 +15,8 @@ import net.minecraft.core.BlockPos;

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Fix interact event not being called in adventure
Call PlayerInteractEvent when left-clicking on a block in adventure mode
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 36c791d4dff0d5bf4671e15922795ccd6be4bd01..afd575ff63ed00550de12b02e6b7e8ba140cb3c7 100644
index 94e03cdbe9e5aa10c1a302bd23fefd6d2b844f35..3fe0dd121d4eb2072bc996a65ea4ea44fa4bf646 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1843,7 +1843,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -1833,7 +1833,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
MutableComponent ichatmutablecomponent = Component.translatable("build.tooHigh", i - 1).withStyle(ChatFormatting.RED);
this.player.sendSystemMessage(ichatmutablecomponent, true);
@ -18,7 +18,7 @@ index 36c791d4dff0d5bf4671e15922795ccd6be4bd01..afd575ff63ed00550de12b02e6b7e8ba
this.player.swing(enumhand, true);
}
}
@@ -2469,7 +2469,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@@ -2463,7 +2463,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
// SPIGOT-5607: Only call interact event if no block or entity is being clicked. Use bukkit ray trace method, because it handles blocks and entities at the same time
org.bukkit.util.RayTraceResult result = this.player.level.getWorld().rayTrace(origin, origin.getDirection(), d3, org.bukkit.FluidCollisionMode.NEVER, false, 0.1, entity -> entity != this.player.getBukkitEntity() && this.player.getBukkitEntity().canSee(entity));

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Fix nerfed slime when splitting
diff --git a/src/main/java/net/minecraft/world/entity/monster/Slime.java b/src/main/java/net/minecraft/world/entity/monster/Slime.java
index 058ba40491f3e566c4c159978c677ceb87fa8383..7b05640465a47ea8680b4a0b6648a77ea7a1b404 100644
index 9196c51474741eb1015f7daac640b83e6c7b66e4..eea1124870b0914376ea00a7395b998058061cf8 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Slime.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Slime.java
@@ -241,6 +241,7 @@ public class Slime extends Mob implements Enemy {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityLoadCrossbowEvent
diff --git a/src/main/java/net/minecraft/world/item/CrossbowItem.java b/src/main/java/net/minecraft/world/item/CrossbowItem.java
index 48626d564c9fb4630b51858edd124b56af2d7ca0..caa5f5f5d58b8ddbca0910412b695cb810570623 100644
index e6249409d01aee2bdc84821d40ce4551c102d307..bc4f04c2512191da3c9e1c49f0716bb9128fc754 100644
--- a/src/main/java/net/minecraft/world/item/CrossbowItem.java
+++ b/src/main/java/net/minecraft/world/item/CrossbowItem.java
@@ -88,7 +88,14 @@ public class CrossbowItem extends ProjectileWeaponItem implements Vanishable {
@@ -89,7 +89,14 @@ public class CrossbowItem extends ProjectileWeaponItem implements Vanishable {
int j = this.getUseDuration(stack) - remainingUseTicks;
float f = CrossbowItem.getPowerForTime(j, stack);
@ -24,7 +24,7 @@ index 48626d564c9fb4630b51858edd124b56af2d7ca0..caa5f5f5d58b8ddbca0910412b695cb8
CrossbowItem.setCharged(stack, true);
SoundSource soundcategory = user instanceof Player ? SoundSource.PLAYERS : SoundSource.HOSTILE;
@@ -98,9 +105,14 @@ public class CrossbowItem extends ProjectileWeaponItem implements Vanishable {
@@ -99,9 +106,14 @@ public class CrossbowItem extends ProjectileWeaponItem implements Vanishable {
}
private static boolean tryLoadProjectiles(LivingEntity shooter, ItemStack projectile) {

View File

@ -18,10 +18,10 @@ index 1b66c33a55a9516269c80f5052fb103418b11367..745b8724b7536a5b2c2c94ae8fd703ea
return t0.getCommandResult();
}
diff --git a/src/main/java/net/minecraft/world/level/GameRules.java b/src/main/java/net/minecraft/world/level/GameRules.java
index 694a2f685cb46a5391da012f4d7e3bd3e6e88f4c..fa8cd4438c19a262272da47985a57f7e84654f1b 100644
index 4a0321f56ef80aa4991e61f586ddd3f6b45e499b..de713f1ca1d61a6b1fca2b66de9162556d102449 100644
--- a/src/main/java/net/minecraft/world/level/GameRules.java
+++ b/src/main/java/net/minecraft/world/level/GameRules.java
@@ -269,10 +269,10 @@ public class GameRules {
@@ -271,10 +271,10 @@ public class GameRules {
this.type = type;
}
@ -35,7 +35,7 @@ index 694a2f685cb46a5391da012f4d7e3bd3e6e88f4c..fa8cd4438c19a262272da47985a57f7e
this.onChanged(((CommandSourceStack) context.getSource()).getServer());
}
@@ -330,8 +330,11 @@ public class GameRules {
@@ -332,8 +332,11 @@ public class GameRules {
}
@Override
@ -49,7 +49,7 @@ index 694a2f685cb46a5391da012f4d7e3bd3e6e88f4c..fa8cd4438c19a262272da47985a57f7e
}
public boolean get() {
@@ -395,8 +398,11 @@ public class GameRules {
@@ -397,8 +400,11 @@ public class GameRules {
}
@Override
@ -64,7 +64,7 @@ index 694a2f685cb46a5391da012f4d7e3bd3e6e88f4c..fa8cd4438c19a262272da47985a57f7e
public int get() {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index cee8c89c5a4d3244f341205e255581086112b708..16c2b99fdc64c228f0e38a7999963093750895b9 100644
index 217725e90d3c820467fe9a3b6a7116aeac255105..d0a2e20d4d85056abb54e6916753305ef2f3dfab 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1808,8 +1808,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Added ServerResourcesReloadedEvent
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f445f6d382c8fe3def980ed3f8517bbf3b75dfed..04137173ca7034b9dff37a68518e8b6fb0330188 100644
index 1a5b27c24499e1fd7b277cbef52872cd320edfef..0f0a97c6571ef210e85670ab5ce40676146ad27b 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1982,7 +1982,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2008,7 +2008,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
return this.functionManager;
}
@ -22,7 +22,7 @@ index f445f6d382c8fe3def980ed3f8517bbf3b75dfed..04137173ca7034b9dff37a68518e8b6f
RegistryAccess.Frozen iregistrycustom_dimension = this.registries.getAccessForLoading(RegistryLayer.RELOADABLE);
CompletableFuture<Void> completablefuture = CompletableFuture.supplyAsync(() -> {
Stream<String> stream = dataPacks.stream(); // CraftBukkit - decompile error
@@ -2010,6 +2016,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2036,6 +2042,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.worldData.setDataConfiguration(worlddataconfiguration);
this.resources.managers.updateRegistryTags(this.registryAccess());

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Added world settings for mobs picking up loot
diff --git a/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java b/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java
index 60064770f08cbee19eeb43bf7c144b6eefbc4888..c2a26b91d9065fdb52a1ded6c3295093c244d7eb 100644
index 362bc2d78e024df5a1cdfad9da6e768e3a778095..98a3f6388712fab9012210241b84def3aca712e2 100644
--- a/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java
+++ b/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java
@@ -150,7 +150,7 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo
@@ -153,7 +153,7 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo
this.populateDefaultEquipmentSlots(randomsource, difficulty);
this.populateDefaultEquipmentEnchantments(randomsource, difficulty);
this.reassessWeaponGoal();

View File

@ -32,7 +32,7 @@ index 1415ad60163f6584619cc7caa61f1848d6ebaa93..801c4c120e98584bcf218a4ef9bd66d7
} else {
ItemStack itemstack = tileentitydispenser.getItem(i);
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 060f0b54d6fbd53a98bfa3a0e752040cf4b1ef29..73aa49396a1db7e3ee5264214c69a640eacab0e3 100644
index 8b00741f2e17d9f1b2759ffba5d322b6e3439ab5..5f14203089f989023c84ea6a8e1d491779498118 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -1876,4 +1876,12 @@ public class CraftEventFactory {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Added PlayerLoomPatternSelectEvent
diff --git a/src/main/java/net/minecraft/world/inventory/LoomMenu.java b/src/main/java/net/minecraft/world/inventory/LoomMenu.java
index b7f3dc81ecac0d814203028a9213f304bcc19574..8dc626e7e37161901f660116814ea4f6f2920510 100644
index 6e2784938e1e1a29ac133567ae6c2d29429478f0..0665a499060390ebbc70807e5256eb6355cac6cd 100644
--- a/src/main/java/net/minecraft/world/inventory/LoomMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/LoomMenu.java
@@ -173,8 +173,35 @@ public class LoomMenu extends AbstractContainerMenu {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Empty commands shall not be dispatched
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
index 2f256d0452617c8f2630f0dd8f16025c9b2e0cae..da7503dca8ab4f7234bf296dfacf39e466de700a 100644
index 7d47e15468f59ce7bc25f692e9963a29d00117cb..8001a084a8086ce55de856579d69b45138eb5c59 100644
--- a/src/main/java/net/minecraft/commands/Commands.java
+++ b/src/main/java/net/minecraft/commands/Commands.java
@@ -255,6 +255,7 @@ public class Commands {
@@ -261,6 +261,7 @@ public class Commands {
command = event.getCommand();
String[] args = command.split(" ");

View File

@ -18,10 +18,10 @@ index b0096fe5399397d4c5e170daa892aef017108c2f..645a226c2e3f6dcf1c25187d006d4250
this.interactResult = event.useItemInHand() == Event.Result.DENY;
this.interactPosition = blockposition.immutable();
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 73aa49396a1db7e3ee5264214c69a640eacab0e3..636f8ccfbcdead68948147213c03bfdf5e312416 100644
index 5f14203089f989023c84ea6a8e1d491779498118..d0acc47f615b02ce72081aede03fc27c8ab6c0f5 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -56,7 +56,9 @@ import net.minecraft.world.level.storage.loot.parameters.LootContextParams;
@@ -58,7 +58,9 @@ import net.minecraft.world.level.storage.loot.parameters.LootContextParams;
import net.minecraft.world.phys.BlockHitResult;
import net.minecraft.world.phys.EntityHitResult;
import net.minecraft.world.phys.HitResult;
@ -31,7 +31,7 @@ index 73aa49396a1db7e3ee5264214c69a640eacab0e3..636f8ccfbcdead68948147213c03bfdf
import org.bukkit.Material;
import org.bukkit.NamespacedKey;
import org.bukkit.Server;
@@ -474,7 +476,13 @@ public class CraftEventFactory {
@@ -473,7 +475,13 @@ public class CraftEventFactory {
return CraftEventFactory.callPlayerInteractEvent(who, action, position, direction, itemstack, false, hand);
}
@ -45,7 +45,7 @@ index 73aa49396a1db7e3ee5264214c69a640eacab0e3..636f8ccfbcdead68948147213c03bfdf
Player player = (who == null) ? null : (Player) who.getBukkitEntity();
CraftItemStack itemInHand = CraftItemStack.asCraftMirror(itemstack);
@@ -500,7 +508,10 @@ public class CraftEventFactory {
@@ -499,7 +507,10 @@ public class CraftEventFactory {
itemInHand = null;
}

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Remove stale POIs
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 32c212861517fef926640dd19f596e6f0cbd8648..e6f931b8443a539441d9f918909e8244c853e43e 100644
index c73bf7d8c6b009ed5e1f666600d3c470927f564d..2af673fe240fbb0ce7667e207a833d09afa7074b 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1932,6 +1932,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1931,6 +1931,11 @@ public class ServerLevel extends Level implements WorldGenLevel {
});
optional1.ifPresent((holder) -> {
this.getServer().execute(() -> {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Fix villager boat exploit
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 1e1ed41895b5787c4691e55e58bd61a45399a580..ddec145bdcc070a2c82b1bab261939c1ac37a800 100644
index 7548dec1f84837c52a29dbc65cfc5480cf04a0be..507cc4e55979767263bf1f73c1f1505c449b312b 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -577,6 +577,14 @@ public abstract class PlayerList {
@@ -584,6 +584,14 @@ public abstract class PlayerList {
PlayerList.LOGGER.debug("Removing player mount");
entityplayer.stopRiding();
entity.getPassengersAndSelf().forEach((entity1) -> {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add sendOpLevel API
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index ddec145bdcc070a2c82b1bab261939c1ac37a800..8256ca255eb88dd3f0101eaf76225908eaadb480 100644
index 507cc4e55979767263bf1f73c1f1505c449b312b..a697583cbfb50230771a58feed7d1e9d13320961 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1065,6 +1065,11 @@ public abstract class PlayerList {
@@ -1072,6 +1072,11 @@ public abstract class PlayerList {
}
private void sendPlayerPermissionLevel(ServerPlayer player, int permissionLevel) {
@ -20,7 +20,7 @@ index ddec145bdcc070a2c82b1bab261939c1ac37a800..8256ca255eb88dd3f0101eaf76225908
if (player.connection != null) {
byte b0;
@@ -1079,8 +1084,10 @@ public abstract class PlayerList {
@@ -1086,8 +1091,10 @@ public abstract class PlayerList {
player.connection.send(new ClientboundEntityEventPacket(player, b0));
}
@ -32,10 +32,10 @@ index ddec145bdcc070a2c82b1bab261939c1ac37a800..8256ca255eb88dd3f0101eaf76225908
public boolean isWhiteListed(GameProfile profile) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 96c9cc8c86dbf022c6cbc5c3da130ad6f477d350..1c7c52755a6d71b8fb25cde33573b38f616b8d14 100644
index 08d006e190cf13c8d737654b8c8f2045610afd43..d784cef362b1c13348d49ffb60f3403fc9471f0c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -653,6 +653,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -654,6 +654,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
? (org.bukkit.entity.Firework) entity.getBukkitEntity()
: null;
}

View File

@ -47,7 +47,7 @@ index 0000000000000000000000000000000000000000..09837f6e6c6ab8a1df2aacdb86646993
+ }
+}
diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
index b6df6077107759963ee8205dddb90501d5ccb4d6..aecdbbcc688aad308f81f48d50773a9866ded7b2 100644
index 56033c41c2be567d6787420d319d4603fc0a1d10..354d386940b5ee7c92708390b83db51c281660f4 100644
--- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
@@ -121,6 +121,24 @@ public abstract class ChunkGenerator {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Collision option for requiring a player participant
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 9833207c4d29a082cd68d52e72490e7a314f420c..ae89716b1dc6f54cb1a6356f52697a00bd8a4218 100644
index a8a955a66336e908fa685bb78c1a67ebedd07f5c..4e629c474b41e6342b8dffa6a601667ea12b319a 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1794,6 +1794,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
@@ -1799,6 +1799,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
public void push(Entity entity) {
if (!this.isPassengerOfSameVehicle(entity)) {
if (!entity.noPhysics && !this.noPhysics) {
@ -17,7 +17,7 @@ index 9833207c4d29a082cd68d52e72490e7a314f420c..ae89716b1dc6f54cb1a6356f52697a00
double d1 = entity.getZ() - this.getZ();
double d2 = Mth.absMax(d0, d1);
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
index 8485a1a7d43a20d1326ff3a167fbb398f34efd87..fc95865a52e0bffaf55ca9f19e7e6005dcd2ae2e 100644
index aa474c7bc8bb8f1ecfefc49da987011da298fa67..46c893fd33fdaf76d49af407112ff349e9579a12 100644
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
@@ -832,6 +832,7 @@ public abstract class AbstractMinecart extends Entity {
@ -29,7 +29,7 @@ index 8485a1a7d43a20d1326ff3a167fbb398f34efd87..fc95865a52e0bffaf55ca9f19e7e6005
// CraftBukkit start
VehicleEntityCollisionEvent collisionEvent = new VehicleEntityCollisionEvent((Vehicle) this.getBukkitEntity(), entity.getBukkitEntity());
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 e9d968013c1d8bd00a8014384ef7164b57548fbd..e102410bd4c657a8bf0f55a3cbd5e8ec7e6306b0 100644
index e8c201d45497e212cfeba125a9261d75198cadf7..765ba5b9b34f31d9b9dbdf2e2bf46554aaf612d9 100644
--- a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
+++ b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
@@ -245,6 +245,7 @@ public class Boat extends Entity implements VariantHolder<Boat.Type> {

View File

@ -6,7 +6,7 @@ Subject: [PATCH] Return chat component with empty text instead of throwing
diff --git a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java
index 428bdd3183e0085368956a5abc8e9f97fbf3e478..f7bce1cdad50aec0f8df9d996de7dbec38baec69 100644
index 75f809ee3d46971ce2ae9ec5bc89aeec1e85fdfb..ec1da07fdfc86c2905766886f6f922320c73fb6a 100644
--- a/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java
+++ b/src/main/java/net/minecraft/world/inventory/AbstractContainerMenu.java
@@ -89,7 +89,12 @@ public abstract class AbstractContainerMenu {

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