Fixup NamespacedKey parsing

This commit is contained in:
Nassim Jahnke 2024-01-06 15:07:59 +01:00
parent 570cfb44d6
commit e46276eb71
No known key found for this signature in database
GPG key ID: EF6771C01F6EF02F
378 changed files with 300 additions and 286 deletions

View file

@ -0,0 +1,40 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nassim Jahnke <nassim@njahnke.dev>
Date: Sat, 6 Jan 2024 14:18:58 +0100
Subject: [PATCH] Return null for empty String in NamespacedKey.fromString
diff --git a/src/main/java/org/bukkit/NamespacedKey.java b/src/main/java/org/bukkit/NamespacedKey.java
index 8ac72cb0b05e2c493d98310f2e87c3714d15c5e3..95bc1078e35a92624b6627e78ed80080832d1b57 100644
--- a/src/main/java/org/bukkit/NamespacedKey.java
+++ b/src/main/java/org/bukkit/NamespacedKey.java
@@ -89,8 +89,6 @@ public final class NamespacedKey implements net.kyori.adventure.key.Key, com.des
this.namespace = namespace;
this.key = key;
- String string = toString();
- Preconditions.checkArgument(string.length() < 256, "NamespacedKey must be less than 256 characters", string);
}
/**
@@ -116,8 +114,6 @@ public final class NamespacedKey implements net.kyori.adventure.key.Key, com.des
Preconditions.checkArgument(isValidNamespace(this.namespace), "Invalid namespace. Must be [a-z0-9._-]: %s", this.namespace);
Preconditions.checkArgument(isValidKey(this.key), "Invalid key. Must be [a-z0-9/._-]: %s", this.key);
- String string = toString();
- Preconditions.checkArgument(string.length() < 256, "NamespacedKey must be less than 256 characters (%s)", string);
}
@NotNull
@@ -206,7 +202,10 @@ public final class NamespacedKey implements net.kyori.adventure.key.Key, com.des
*/
@Nullable
public static NamespacedKey fromString(@NotNull String string, @Nullable Plugin defaultNamespace) {
- Preconditions.checkArgument(string != null && !string.isEmpty(), "Input string must not be empty or null");
+ // Paper - Return null for empty string
+ Preconditions.checkArgument(string != null, "Input string must not be null");
+ if (string.isEmpty()) return null;
+ // Paper end - Return null for empty string
String[] components = string.split(":", 3);
if (components.length > 2) {

View file

@ -1,45 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nassim Jahnke <nassim@njahnke.dev>
Date: Sun, 24 Oct 2021 15:49:35 +0200
Subject: [PATCH] Fix Bukkit NamespacedKey shenanigans
diff --git a/src/main/java/com/destroystokyo/paper/loottable/PaperContainerEntityLootableInventory.java b/src/main/java/com/destroystokyo/paper/loottable/PaperContainerEntityLootableInventory.java
index 9ca389ca789dc54bba3542cac0aac2e1dc66c870..15173e715fa36546820d930a46e0f0c493d07cfc 100644
--- a/src/main/java/com/destroystokyo/paper/loottable/PaperContainerEntityLootableInventory.java
+++ b/src/main/java/com/destroystokyo/paper/loottable/PaperContainerEntityLootableInventory.java
@@ -17,7 +17,7 @@ public class PaperContainerEntityLootableInventory implements PaperLootableEntit
@Override
public org.bukkit.loot.LootTable getLootTable() {
- return entity.getLootTable() != null ? Bukkit.getLootTable(CraftNamespacedKey.fromMinecraft(entity.getLootTable())) : null;
+ return entity.getLootTable() != null && !entity.getLootTable().getPath().isEmpty() ? Bukkit.getLootTable(CraftNamespacedKey.fromMinecraft(entity.getLootTable())) : null;
}
@Override
diff --git a/src/main/java/com/destroystokyo/paper/loottable/PaperTileEntityLootableInventory.java b/src/main/java/com/destroystokyo/paper/loottable/PaperTileEntityLootableInventory.java
index 9cfa5d36a6991067a3866e0d437749fafcc0158e..2ee4ee14ab3345486dad6b24fd9a4fcc6c746b99 100644
--- a/src/main/java/com/destroystokyo/paper/loottable/PaperTileEntityLootableInventory.java
+++ b/src/main/java/com/destroystokyo/paper/loottable/PaperTileEntityLootableInventory.java
@@ -15,7 +15,7 @@ public class PaperTileEntityLootableInventory implements PaperLootableBlockInven
@Override
public org.bukkit.loot.LootTable getLootTable() {
- return tileEntityLootable.lootTable != null ? Bukkit.getLootTable(CraftNamespacedKey.fromMinecraft(tileEntityLootable.lootTable)) : null;
+ return tileEntityLootable.lootTable != null && !tileEntityLootable.lootTable.getPath().isEmpty() ? Bukkit.getLootTable(CraftNamespacedKey.fromMinecraft(tileEntityLootable.lootTable)) : null;
}
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftNamespacedKey.java b/src/main/java/org/bukkit/craftbukkit/util/CraftNamespacedKey.java
index 5f40d240b879e3989897b6e45725a8e5a6a7f194..5014192edb9616ce725fc1592832034789527b6f 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftNamespacedKey.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftNamespacedKey.java
@@ -13,7 +13,7 @@ public final class CraftNamespacedKey {
return null;
}
ResourceLocation minecraft = ResourceLocation.tryParse(string);
- return (minecraft == null) ? null : CraftNamespacedKey.fromMinecraft(minecraft);
+ return (minecraft == null || minecraft.getPath().isEmpty()) ? null : CraftNamespacedKey.fromMinecraft(minecraft); // Paper - Bukkit's parser does not match Vanilla for empty paths
}
public static NamespacedKey fromString(String string) {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Don't respond to ServerboundCommandSuggestionPacket when
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 93cb76c8e96488051b10ed4a634c681305628fcc..7d059605d2682672fd0cb89ae46c539c3f8f6021 100644
index 8ad189164db55c8416b07511dc349ee7a94752a0..3fb7e355a86851731f5f11b6b8bb8e4515806a33 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -736,6 +736,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Ensure valid vehicle status
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index a85b4223ab9eb97662f327f6179af6fc9970ab3c..45f2a81cd59434956cc33e489af6032e6ef9947d 100644
index 87fdc78409fb16c961c04a5551980a8a231b70d0..60164d8ff63bf536ddf46605a9dc7931ebc5b82a 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -576,7 +576,7 @@ public class ServerPlayer extends Player {

View file

@ -8,7 +8,7 @@ This is because bukkit uses a separate head rotation field for yaw.
This issue only applies to players.
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 1aac748a6ac485ad66f4501ae22cd6a422a966b5..4be223f2aa5ecf259e7d6551c8ca8876fb343f59 100644
index bcc6d2cf3300d2e6eadadbcc03dc5aaaf2b5d7e3..61a25a5557309d8640795322d77bc61ca5a91f10 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1916,6 +1916,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -19,7 +19,7 @@ index 1080e1f67afe5574baca0df50cdb1d029a7a586a..a2f71a6d1a9e98133dff6cd0f625da94
}
final Object val = config.get(key);
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 c3bfc69e5b8465d40867d4dbe33dd82755099691..53cf0859988dc5f9ec02be7448da7b5152d2809b 100644
index 0a21632a3e02690a8edcc17ac25d2551a8964bbe..996a49e1ccf827edf28ca92e947014517b7dad6e 100644
--- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
@@ -431,7 +431,14 @@ public abstract class ChunkGenerator {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] don't attempt to teleport dead entities
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4be223f2aa5ecf259e7d6551c8ca8876fb343f59..09a49aa1f33796ab5947010538f504c49d2af226 100644
index 61a25a5557309d8640795322d77bc61ca5a91f10..d419ccff995a7d7bd83f31fd961e06899881b254 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -792,7 +792,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Allow delegation to vanilla chunk gen
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ca605b33c57159add46f6b84c975c25c678fdf17..aa7fa1211b88f14ac01a4562f4819151bc23db27 100644
index d20ff695dd77e3d8f775db917f0a6056a266d670..23124f8b302e3ac5751c03e3839d2c35e24e5b30 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2460,6 +2460,88 @@ public final class CraftServer implements Server {

View file

@ -2214,7 +2214,7 @@ index 159932e2807c8d51fbf141c2145a138a39ea8abe..41a5d509a398972db910d32babb70e9b
entityplayer1.setPos(entityplayer1.getX(), entityplayer1.getY() + 1.0D, entityplayer1.getZ());
}
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 09a49aa1f33796ab5947010538f504c49d2af226..5a6536bf3503ba27df8bdd810b76266aee42e037 100644
index d419ccff995a7d7bd83f31fd961e06899881b254..4903c0ddff7a7fcfdadb62e92ff285b77bd8eacf 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1215,9 +1215,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -2600,7 +2600,7 @@ index a25497eec004add7408a63b1a0f09e3fa443b324..9f892de55ab03367daed4c30cc44c9dd
// Paper start
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 126d37e14ff785c17e45d4601131156593f5ace5..096cd97827f4912fc5b538e01d29257195270055 100644
index 3b13a13c4e7de12ed0cac354701bf3502d788b59..3f196645f2259ed468e0dc3a05ecbd84d3792af0 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -300,6 +300,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@ -3005,7 +3005,7 @@ index 126d37e14ff785c17e45d4601131156593f5ace5..096cd97827f4912fc5b538e01d292571
// Paper end
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
index 49aa9020290e4466eb386400b4a6e5284cfe355b..5343a0c20cf87067ba307f001a28b0b18fae2c34 100644
index 142f9438f75cb7e2d97011fdeb3f9e367ff81599..38d587c93a9ae5706633608f681f18684b7a631d 100644
--- a/src/main/java/net/minecraft/world/level/block/Block.java
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
@@ -284,7 +284,7 @@ public class Block extends BlockBehaviour implements ItemLike {

View file

@ -8,7 +8,7 @@ Move collision logic to just the hasNewCollision call instead of getCubes + hasN
CHECK ME
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 64269f1e6c8b5b9911cd36c5d0a11859cd8be599..e5b71a899884c3f26374051a60e026b7a01f6be3 100644
index 3d2ef1728a54d7612a773dfb7066b7370c9df178..846db5783d85b68ca1f3788fe5434bc88b90c2d9 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -543,7 +543,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl

View file

@ -47,7 +47,7 @@ index 98c8b676fc5b2add44d6ddf5d32f85bc07ea22cb..84b2fd9db39e0cdf3e1cbe6444579f7c
ByteBuffer bytebuffer = ByteBuffer.wrap(this.buf, 0, this.count);
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
index 134a5cf10073c27dfbc19709e81ffa75bcc73743..db571f658f636cdda1dcdbaffa0c4da67fae11ad 100644
index a2794ec3d846136da64b6888d846587499a5f635..6eaeb2db0da59611501f2b1a63b5b48816a0ba48 100644
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
@@ -342,10 +342,17 @@ public class RegionFileStorage implements AutoCloseable {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Forward CraftEntity in teleport command
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 5a6536bf3503ba27df8bdd810b76266aee42e037..72badd1d14107a665f8730c9dc0aba91a1950caf 100644
index 4903c0ddff7a7fcfdadb62e92ff285b77bd8eacf..0d561537ab767e357c2e4385d0d87f8e3db022d8 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3531,6 +3531,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Load effect amplifiers greater than 127 correctly
MOJIRA: MC-118857
diff --git a/src/main/java/net/minecraft/world/effect/MobEffectInstance.java b/src/main/java/net/minecraft/world/effect/MobEffectInstance.java
index af7889fbed11ca413124908cb174a285d6d973e2..68e1b8271475996020af50b3b2cf04cd25aa6c85 100644
index 758a9ddd3489be9502cd4e7f31b709c49ce9e009..bf304db1f9506d3e83d16cd632b9155c39346634 100644
--- a/src/main/java/net/minecraft/world/effect/MobEffectInstance.java
+++ b/src/main/java/net/minecraft/world/effect/MobEffectInstance.java
@@ -293,7 +293,7 @@ public class MobEffectInstance implements Comparable<MobEffectInstance> {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Validate usernames
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index 0c4fb4a7d4fcdc6d724beb13a16bd729a3c525cd..fa6c77391ac40f86e1b679ef21f4ee43177857c8 100644
index 552568aabcd4910697027c4b578edcd75f56b723..a7a6d3d243bb11101cfe6fce97dad74242597121 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -63,6 +63,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,
@ -26,7 +26,7 @@ index 0c4fb4a7d4fcdc6d724beb13a16bd729a3c525cd..fa6c77391ac40f86e1b679ef21f4ee43
GameProfile gameprofile = this.server.getSingleplayerProfile();
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 30ad9f878d0b76c6bef594448c3122d614a7aa8c..147fed3b3f0b052bc2892eaf001f0fb5c9198a85 100644
index 41a5d509a398972db910d32babb70e9bd5fa41da..0bb3940da79733ccdfa75598b86ec0887a995933 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -679,7 +679,7 @@ public abstract class PlayerList {

View file

@ -18,7 +18,7 @@ index 0a23cfeaba071c2179de1931caa86bc46462c338..bc181f3f59eef3f2f3645e3facb37d5e
biomeProvider = gen.getDefaultBiomeProvider(worldInfo);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index aa7fa1211b88f14ac01a4562f4819151bc23db27..1eeefb6ac8af5928925180a1c5850f8e398a44a8 100644
index 23124f8b302e3ac5751c03e3839d2c35e24e5b30..be83340a6b2e64883c04a3593199179b856c5722 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1258,7 +1258,7 @@ public final class CraftServer implements Server {
@ -31,7 +31,7 @@ index aa7fa1211b88f14ac01a4562f4819151bc23db27..1eeefb6ac8af5928925180a1c5850f8e
biomeProvider = generator.getDefaultBiomeProvider(worldInfo);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index dcd5e7cc8bfc5732974bed81256828d011683f5a..1bf088ee3c18830ce613c77453cf471edbbdad82 100644
index e8d81c1f265001bcf4574c98950296ac99f24a29..83f51cbe9de3fdde19d02a564f873f51f697a828 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -205,6 +205,29 @@ public class CraftWorld extends CraftRegionAccessor implements World {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Added getHostname to AsyncPlayerPreLoginEvent
diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
index fa6c77391ac40f86e1b679ef21f4ee43177857c8..d52d3808a058b6eef57639f1d455986b9681f645 100644
index a7a6d3d243bb11101cfe6fce97dad74242597121..ec6a56e298872a403e0451944f7139256eab31d6 100644
--- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
@@ -294,7 +294,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener,

View file

@ -24,7 +24,7 @@ index f96d61bdeb556665d6e6e5023f9d77fd82204e89..e3f355c85eb7cc8c1683e3009502c10a
public void write(FriendlyByteBuf buf) {
buf.writeLong(this.sectionPos.asLong());
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index bf5c1e9a7742a327e1d35c3409d6623ae0f8ab48..29a2e22bda0595e9b4bbd42e6b9a0515c5cc2f1c 100644
index cb72755c1b1e04797dbe99612d7bdd0bfd4b540e..9d12fab078c0625844b5f07b884b5f5978bf590c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -886,6 +886,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Freeze Tick Lock API
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 72badd1d14107a665f8730c9dc0aba91a1950caf..225ad411a48c156bcd1973f97349db80b0ff6a92 100644
index 0d561537ab767e357c2e4385d0d87f8e3db022d8..1fd71bd27f601312f6ff00fbcb9b6687af284001 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -407,6 +407,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -122,7 +122,7 @@ index 0000000000000000000000000000000000000000..e3a5f1ec376319bdfda87fa27ae217bf
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 1eeefb6ac8af5928925180a1c5850f8e398a44a8..37bacd8e83df278d32282d0000a8de112aafbde4 100644
index be83340a6b2e64883c04a3593199179b856c5722..7aed22672cc9799fd577f225c350f6a6649b7f48 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2111,6 +2111,13 @@ public final class CraftServer implements Server {

View file

@ -20,7 +20,7 @@ seeds/salts to the frequency reducer which has a similar effect.
Co-authored-by: William Blake Galbreath <blake.galbreath@gmail.com>
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 53cf0859988dc5f9ec02be7448da7b5152d2809b..e0a00035b52cb202c5ca6a1d92709407de5d5d79 100644
index 996a49e1ccf827edf28ca92e947014517b7dad6e..e9239f90e59d1429fc7a2618e0fd3b8a57633b87 100644
--- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
@@ -568,7 +568,7 @@ public abstract class ChunkGenerator {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Implement regenerateChunk
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 1bf088ee3c18830ce613c77453cf471edbbdad82..9296b518fce2a66ef3a751947e9d9dcb1b4ab53b 100644
index 83f51cbe9de3fdde19d02a564f873f51f697a828..e709b6fda1703c0787ddeedec9b7cc09f440d652 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -144,6 +144,7 @@ import org.jetbrains.annotations.NotNull;

View file

@ -8,7 +8,7 @@ snow bucket didn't revert grass that became snowy because of the
placement.
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
index 368837172f87ac45e1d58e9905b4693cc0804328..b7d8684968051f7af5462fe98d39fbebe3e96fd7 100644
index fdcec8496abda362e611b42ef054ea730f47f408..8cf7d514803fd953e068d3436bfd4e50fb4b0da0 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -379,7 +379,7 @@ public final class ItemStack {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Add missing Validate calls to CraftServer#getSpawnLimit
Copies appropriate checks from CraftWorld#getSpawnLimit
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 37bacd8e83df278d32282d0000a8de112aafbde4..d113f7a4dbe7aabf4d5d26cc8d015ce5ba863dd0 100644
index 7aed22672cc9799fd577f225c350f6a6649b7f48..d1570b795894cda203154b9efc6f1f23759eab74 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2288,6 +2288,8 @@ public final class CraftServer implements Server {

View file

@ -46,7 +46,7 @@ index 0000000000000000000000000000000000000000..e7d9fd2702a1ce96596580fff8f5ee4f
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index d113f7a4dbe7aabf4d5d26cc8d015ce5ba863dd0..ed69f084dc8a0c97ff83932d014d1020e16bd7f8 100644
index d1570b795894cda203154b9efc6f1f23759eab74..e28cb2db9b93bf3c045563a8df9d1c819f054851 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2709,6 +2709,15 @@ public final class CraftServer implements Server {

View file

@ -23,7 +23,7 @@ index abd20b1bbda4177a3f3be8abf3977866780a9b67..330a7921849a4b3ab0d7ef156af4880e
if (worlddata.getCustomBossEvents() != null) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ed69f084dc8a0c97ff83932d014d1020e16bd7f8..be57ec31869e2cf9db131ec64c7581564f2b42e6 100644
index e28cb2db9b93bf3c045563a8df9d1c819f054851..7efd9766fa1e78127e9f02d8f29da435c7f27e0a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1288,10 +1288,11 @@ public final class CraftServer implements Server {

View file

@ -172,7 +172,7 @@ index 424406d2692856cfd82b6f3b7b6228fa3bd20c2f..c57efcb9a79337ec791e4e8f6671612f
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 21e66ea18be81dab53be94f95683b5054d9e1a55..80b9727ffd55f2c6b047f10b73fa71757d1f0633 100644
index 7efd9766fa1e78127e9f02d8f29da435c7f27e0a..8750983a05da55b0f491a5267965fe939e771c0e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -304,6 +304,7 @@ public final class CraftServer implements Server {

View file

@ -10,7 +10,7 @@ so we do not need that. The client only needs the chunk it is currently in to
be loaded to close the loading screen, so we just send an empty one.
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 147fed3b3f0b052bc2892eaf001f0fb5c9198a85..d728e637449ace459b3501fd6a4fb77657a5ca55 100644
index 0bb3940da79733ccdfa75598b86ec0887a995933..f6f845a1842cb7082e9e3132f91f4addcdaedd97 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -398,6 +398,16 @@ public abstract class PlayerList {

View file

@ -11,7 +11,7 @@ Restores the API behavior from previous versions of the server
public net.minecraft.world.entity.item.FallingBlockEntity <init>(Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index ad3d2130879bfaeccc4a67eaec398cec10d877b9..bbd0bc0e0ccd5e895ba054182024f5480416e849 100644
index e709b6fda1703c0787ddeedec9b7cc09f440d652..6dbd45103571f033daafe085c5ccb962e5d9a17a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1453,7 +1453,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {
@ -43,7 +43,7 @@ index ad3d2130879bfaeccc4a67eaec398cec10d877b9..bbd0bc0e0ccd5e895ba054182024f548
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java
index 104d68c636870a279cf4451da9c29237d532bdb2..61230477385eda3a806cfccdbb1685bf475a0c6a 100644
index 0aa6cd6da72c4a48d8bb48adeccc2bb49939fabd..08316493785e0cf1f93f07dda8016ca5956216f8 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java
@@ -378,7 +378,7 @@ public final class CraftEntityTypes {

View file

@ -509,7 +509,7 @@ index 20f9735c7cb76024e15dbdca7684f5c560876175..8a6af0db8e0aa0cffbf19584be747076
// Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index e4d08d4b85f9ce57af50e6aaf4a308a8a6c85ce3..50b26cbd121f57fc0e3c7c958295e38fad756572 100644
index d26dd7b3931ac99589880e3a02d3e7f19c53112a..595293dba9643ee3823f07ec2b077b805419d63c 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -831,19 +831,19 @@ public class CraftEventFactory {

View file

@ -7,7 +7,7 @@ Bring the vehicle move packet behavior in line with the
regular player move packet.
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index e5b71a899884c3f26374051a60e026b7a01f6be3..74cc0b0044b8ad5fe9afc24b44e5e215ca8f8b4b 100644
index 846db5783d85b68ca1f3788fe5434bc88b90c2d9..f48d6c0b1a9fd86061314d696ff84019667a38a2 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -465,6 +465,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Fix saving in unloadWorld
Change savingDisabled to false to ensure ServerLevel's saving logic gets called when unloadWorld is called with save = true
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 37822390d9cf71890a81e66509fa9f5ef77b2f5d..8682503d66ccdd6c6dce5f30c9b71ab3ae2f262a 100644
index 8750983a05da55b0f491a5267965fe939e771c0e..3366bcb7fe198f4b9681efb1ee201e32d10becb5 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1336,7 +1336,7 @@ public final class CraftServer implements Server {

View file

@ -78,7 +78,7 @@ index 6e1c67ad757e466d122badd547ee3f8421eba9ba..cf4859814a60468f683e3afe285b4934
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
index 0d1afaecc35b4c7f7656a2d903f08f92a706cb3f..ad6df234b618235b4e08fb45952d4f0f0078fded 100644
index 2beece01e1b2acc69eeb92810ce14db01a311f23..71bcd55d9d71fbd5bf3014c7e36d1456d8d5c3fd 100644
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
@@ -374,7 +374,7 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
@ -196,7 +196,7 @@ index c01cc63497917b0c5d95424c060c69f3693fc871..b6105d178778b326c11b7d29c5e4d8aa
}
// CraftBukkit end
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index 50b26cbd121f57fc0e3c7c958295e38fad756572..72a33f9e981d7a5e9a30a7ea8ef2a970c986cece 100644
index 595293dba9643ee3823f07ec2b077b805419d63c..3a6743c81c6740cda1622c60c09088c4cd61f4a3 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -1410,11 +1410,11 @@ public class CraftEventFactory {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] fix player loottables running when mob loot gamerule is false
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 29da0b80aa0a4e6ebf1f0e30c26a6b85f034e8e4..c9424effb591bbe96e803db9eb39640eec07148b 100644
index 7c8f5ae6bd83bd08403738dcd364b0af06fb1a9b..1f7b13806ffbcf81df67a02129aa2c07dfc7b8f5 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -924,12 +924,14 @@ public class ServerPlayer extends Player {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Ensure entity passenger world matches ridden entity
Bad plugins doing this would cause some obvious problems...
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 225ad411a48c156bcd1973f97349db80b0ff6a92..32d97353a5f030fa46ea637e546ef0856122b391 100644
index 1fd71bd27f601312f6ff00fbcb9b6687af284001..624e0b1af20a3595734bc3d59a674e902698b6d6 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2845,7 +2845,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Guard against invalid entity positions
Anything not finite should be blocked and logged
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 32d97353a5f030fa46ea637e546ef0856122b391..7179939c141d4c08e4d52ad8388625024dc8021c 100644
index 624e0b1af20a3595734bc3d59a674e902698b6d6..bc1b08f778537f7973ed1249dee63d9d12735dd1 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4539,11 +4539,33 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Allow to change the podium for the EnderDragon
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
index ca605316c9c639c096d545e8cdf233ad645bd041..f7f03725de9e72825fbe9516817c7345d2b4eb75 100644
index 2ede6678a5fe6e1280ee4918b69302f483cc50ff..4bcbfe3f95efd5d8ec2d2d7c66c4c355cdf510b2 100644
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
@@ -103,6 +103,10 @@ public class EnderDragon extends Mob implements Enemy {

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