Updated Upstream (Bukkit/CraftBukkit/Spigot)

Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
1d522878 PR-966: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
cc01b745 PR-965: Add DragonBattle#setPreviouslyKilled
28e3702f SPIGOT-6921, PR-957: Add methods to remove all enchantments on an ItemStack
8872404e PR-961: Add BlockData#copyTo
4054cc7b PR-956: Add method to get an offline player's location

CraftBukkit Changes:
292ec79e0 SPIGOT-7568: Call EntityChangeBlockEvent for DecoratedPot
b44bf5aa8 SPIGOT-7575: SuspiciousStewMeta creates invalid PotionEffect data
161784713 PR-1340: Centralize the conversion from and to Minecraft / Bukkit registry items even more and add a test case for them
b93c5a30d PR-1338: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
fb973486c SPIGOT-7570: PrepareItemCraftEvent#isRepair() always returns false
c9c24535e PR-1337: Add DragonBattle#setPreviouslyKilled
c8b4da803 SPIGOT-6921, PR-1330: Add methods to remove all enchantments on an ItemStack
95bc1c4f5 PR-1333: Add BlockData#copyTo
36e2f9ce1 PR-1329: Add method to get an offline player's location

Spigot Changes:
c198da22 SPIGOT-7563: Update to latest release of bungeecord-chat
This commit is contained in:
Nassim Jahnke 2024-01-26 20:17:06 +01:00
parent bd2fd615ce
commit fe53b0e76f
No known key found for this signature in database
GPG key ID: EF6771C01F6EF02F
192 changed files with 403 additions and 409 deletions

View file

@ -131,44 +131,6 @@ index 1edc58410316eaf45858db56897179587e8b22ee..cf6f34e506570e7bb9624c5899fbcdd7
String.format("""
Could not encoded particle param for particle %s.
This can indicated, that the wrong particle param is created in CraftParticle.
diff --git a/src/test/java/org/bukkit/RegistryConstantsTest.java b/src/test/java/org/bukkit/RegistryConstantsTest.java
index 6be404dafe1f0ae5ab39a0782e4c3ca7c0923752..545a329a52be0dc1f3cf8ca1315152d8b4a465dd 100644
--- a/src/test/java/org/bukkit/RegistryConstantsTest.java
+++ b/src/test/java/org/bukkit/RegistryConstantsTest.java
@@ -19,17 +19,17 @@ public class RegistryConstantsTest extends AbstractTestingBase {
@Test
public void testTrimMaterial() {
- this.testExcessConstants(TrimMaterial.class, Registry.TRIM_MATERIAL);
+ this.testExcessConstants(TrimMaterial.class, org.bukkit.Registry.TRIM_MATERIAL); // Paper - remap fix
this.testMissingConstants(TrimMaterial.class, Registries.TRIM_MATERIAL);
}
@Test
public void testTrimPattern() {
- this.testExcessConstants(TrimPattern.class, Registry.TRIM_PATTERN);
+ this.testExcessConstants(TrimPattern.class, org.bukkit.Registry.TRIM_PATTERN); // Paper - remap fix
this.testMissingConstants(TrimPattern.class, Registries.TRIM_PATTERN);
}
- private <T extends Keyed> void testExcessConstants(Class<T> clazz, Registry<T> registry) {
+ private <T extends Keyed> void testExcessConstants(Class<T> clazz, org.bukkit.Registry<T> registry) { // Paper - remap fix
List<NamespacedKey> excessKeys = new ArrayList<>();
for (Field field : clazz.getFields()) {
diff --git a/src/test/java/org/bukkit/RegistryLoadOrderTest.java b/src/test/java/org/bukkit/RegistryLoadOrderTest.java
index e4298c14eb793743081cb0088427bb5a50d74b46..194ff80040eec0427acfef644cd85666370902fa 100644
--- a/src/test/java/org/bukkit/RegistryLoadOrderTest.java
+++ b/src/test/java/org/bukkit/RegistryLoadOrderTest.java
@@ -20,7 +20,7 @@ public class RegistryLoadOrderTest extends AbstractTestingBase {
private static boolean initInterface = false;
private static boolean initAbstract = false;
- private static Registry<Keyed> registry;
+ private static org.bukkit.Registry<Keyed> registry; // Paper - remap fix
public static Stream<Arguments> data() {
return Stream.of(
diff --git a/src/test/java/org/bukkit/entity/EntityTypesTest.java b/src/test/java/org/bukkit/entity/EntityTypesTest.java
index 32df0090aab65b551b524603cce0b96e461cc358..952924abae79cc504342bbdb6f6953ab8a6cc295 100644
--- a/src/test/java/org/bukkit/entity/EntityTypesTest.java
@ -224,3 +186,41 @@ index 5818bfa69a8573a2a8f350066f829d587cbc546b..8e421a1bee0c526e3024eab9ba4cc0b3
org.bukkit.entity.Panda.Gene bukkit = CraftPanda.fromNms(gene);
assertNotNull(bukkit, "Bukkit gene null for " + gene);
diff --git a/src/test/java/org/bukkit/registry/RegistryConstantsTest.java b/src/test/java/org/bukkit/registry/RegistryConstantsTest.java
index 8acd2400dac0486d95a28cc07c21fc0c7183769b..8038e422cfcdda0eab19a2b3961c2597de25752b 100644
--- a/src/test/java/org/bukkit/registry/RegistryConstantsTest.java
+++ b/src/test/java/org/bukkit/registry/RegistryConstantsTest.java
@@ -21,17 +21,17 @@ public class RegistryConstantsTest extends AbstractTestingBase {
@Test
public void testTrimMaterial() {
- this.testExcessConstants(TrimMaterial.class, Registry.TRIM_MATERIAL);
+ this.testExcessConstants(TrimMaterial.class, org.bukkit.Registry.TRIM_MATERIAL); // Paper - remap fix
this.testMissingConstants(TrimMaterial.class, Registries.TRIM_MATERIAL);
}
@Test
public void testTrimPattern() {
- this.testExcessConstants(TrimPattern.class, Registry.TRIM_PATTERN);
+ this.testExcessConstants(TrimPattern.class, org.bukkit.Registry.TRIM_PATTERN); // Paper - remap fix
this.testMissingConstants(TrimPattern.class, Registries.TRIM_PATTERN);
}
- private <T extends Keyed> void testExcessConstants(Class<T> clazz, Registry<T> registry) {
+ private <T extends Keyed> void testExcessConstants(Class<T> clazz, org.bukkit.Registry<T> registry) { // Paper - remap fix
List<NamespacedKey> excessKeys = new ArrayList<>();
for (Field field : clazz.getFields()) {
diff --git a/src/test/java/org/bukkit/registry/RegistryLoadOrderTest.java b/src/test/java/org/bukkit/registry/RegistryLoadOrderTest.java
index b60b07f15fc61b9a92850b2008e2c928b94dbd04..da3eed6f130903bf27eed7e0bcae672a4f860c17 100644
--- a/src/test/java/org/bukkit/registry/RegistryLoadOrderTest.java
+++ b/src/test/java/org/bukkit/registry/RegistryLoadOrderTest.java
@@ -22,7 +22,7 @@ public class RegistryLoadOrderTest extends AbstractTestingBase {
private static boolean initInterface = false;
private static boolean initAbstract = false;
- private static Registry<Keyed> registry;
+ private static org.bukkit.Registry<Keyed> registry; // Paper - remap fix
public static Stream<Arguments> data() {
return Stream.of(

View file

@ -98,12 +98,12 @@ index 0000000000000000000000000000000000000000..6eb95a5e2534974c0e52e2b78b04e7c2
+ }
+}
diff --git a/src/test/java/org/bukkit/support/DummyServer.java b/src/test/java/org/bukkit/support/DummyServer.java
index d96efc9aa90debcca5f237c949ba11b10070223a..d1253a07a90aa4cc29d0140795203a71118c827a 100644
index b19d4f7d1fcb604b448a5084f6bfe56d47ab12b3..f3017525b0c2397fdc7ce0778add2e7b38e9e2ba 100644
--- a/src/test/java/org/bukkit/support/DummyServer.java
+++ b/src/test/java/org/bukkit/support/DummyServer.java
@@ -38,6 +38,15 @@ public final class DummyServer {
when(instance.getRegistry(any())).then(mock -> CraftRegistry.createRegistry(mock.getArgument(0), AbstractTestingBase.REGISTRY_CUSTOM));
@@ -48,6 +48,15 @@ public final class DummyServer {
return registers.computeIfAbsent(aClass, key -> CraftRegistry.createRegistry(aClass, AbstractTestingBase.REGISTRY_CUSTOM));
});
+ // Paper start - testing additions
+ final Thread currentThread = Thread.currentThread();

View file

@ -7738,7 +7738,7 @@ index 98836000cbca2a21649cb8f2a466986373405ea1..bbbf6dd8e566ecdca8794e3b03765fe7
return false;
} else {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 82d5c749a70f7a808c073263e861e09913c529d4..fdb24fe5504458ba2806df617464a1c41d8ba9e3 100644
index d6a1b9bbf9737ed884ecf4af31e1521f46807405..5ee460d5d6e017a52bf26cfd56ca2cfeb82d3343 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2533,4 +2533,9 @@ public final class CraftServer implements Server {
@ -7874,10 +7874,10 @@ index 70165d287156f46b793eb23dd30b601289c0ffb1..758bf988432bb34aad9386e3f4e8bba6
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index d5e56ed0a1bef50c0c715a7877f43fbc80dcaa44..633242f7cb25b8cdebd8c6ce579e4b60e471cdfa 100644
index 070f119315a83be900c1a8e83962833d7df4c485..5d2ece0c415526d8c632b507f441977e6888c2cb 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2267,4 +2267,34 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2282,4 +2282,34 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.spigot;
}
// Spigot end
@ -7913,7 +7913,7 @@ index d5e56ed0a1bef50c0c715a7877f43fbc80dcaa44..633242f7cb25b8cdebd8c6ce579e4b60
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index 97c8723d19233fb0a12e446594b18c50f34f11f1..cba729914a3adaee2507e2916a4cfb585869746d 100644
index bf46aa3bd46ffabe92d58aa45ea0dfe6c98d94aa..23b83f8e98d681895b4e23cda4f3d50f85c12dd9 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -23,6 +23,16 @@ import org.bukkit.material.MaterialData;

View file

@ -3354,7 +3354,7 @@ index 23bdb77690ba15bcbbfb0c70af23336d08ac7752..8f144a357174bbe096ac9b38a5e67a61
}
collection = icons;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index fdb24fe5504458ba2806df617464a1c41d8ba9e3..1079476a3b327d668cf3d98f0a0659c81c120443 100644
index 5ee460d5d6e017a52bf26cfd56ca2cfeb82d3343..a381673d2397bcb3569e0b24eb071d86afa709ac 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -608,8 +608,10 @@ public final class CraftServer implements Server {
@ -4005,10 +4005,10 @@ index 1e82312c24cb752d63b165926861fc178cd7849b..7f22950ae61436e91a59cd29a345809c
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
index 6f95a6bf27af151aec38bb2bd6fa657acc1c62e9..b54bd4e85042955448a2e76b379d370eefdff383 100644
index 24052b8102061c6fbf01b3e9b2346ed9783787e6..f0f7fb977edb7e7009716429f007e44fa36bfcda 100644
--- a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
+++ b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
@@ -156,6 +156,12 @@ public class CraftEnchantment extends Enchantment {
@@ -147,6 +147,12 @@ public class CraftEnchantment extends Enchantment implements Handleable<net.mine
CraftEnchantment ench = (CraftEnchantment) other;
return !this.handle.isCompatibleWith(ench.getHandle());
}
@ -4137,7 +4137,7 @@ index 61759e8179d0f6342abf0c0294e5a024928db8d9..92e21126a9347f1ee2279ab09bb6abf2
public boolean isOp() {
return true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 633242f7cb25b8cdebd8c6ce579e4b60e471cdfa..f609c4e67dd6feefb0c9366a515fd91256af3ff4 100644
index 5d2ece0c415526d8c632b507f441977e6888c2cb..f53e223e2412846b82298233459ec9953bc0a63e 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -300,14 +300,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -4303,7 +4303,7 @@ index 633242f7cb25b8cdebd8c6ce579e4b60e471cdfa..f609c4e67dd6feefb0c9366a515fd912
}
@Override
@@ -1690,7 +1756,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1705,7 +1771,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void setResourcePack(String url) {
@ -4312,7 +4312,7 @@ index 633242f7cb25b8cdebd8c6ce579e4b60e471cdfa..f609c4e67dd6feefb0c9366a515fd912
}
@Override
@@ -1705,7 +1771,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1720,7 +1786,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void setResourcePack(String url, byte[] hash, boolean force) {
@ -4321,7 +4321,7 @@ index 633242f7cb25b8cdebd8c6ce579e4b60e471cdfa..f609c4e67dd6feefb0c9366a515fd912
}
@Override
@@ -1728,6 +1794,59 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1743,6 +1809,59 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
}
@ -4381,7 +4381,7 @@ index 633242f7cb25b8cdebd8c6ce579e4b60e471cdfa..f609c4e67dd6feefb0c9366a515fd912
@Override
public void removeResourcePack(UUID id) {
Preconditions.checkArgument(id != null, "Resource pack id cannot be null");
@@ -2135,6 +2254,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2150,6 +2269,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return (this.getHandle().requestedViewDistance() == 0) ? Bukkit.getViewDistance() : this.getHandle().requestedViewDistance();
}
@ -4394,7 +4394,7 @@ index 633242f7cb25b8cdebd8c6ce579e4b60e471cdfa..f609c4e67dd6feefb0c9366a515fd912
@Override
public int getPing() {
return this.getHandle().connection.latency();
@@ -2185,6 +2310,252 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2200,6 +2325,252 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.getHandle().allowsListing();
}
@ -5092,7 +5092,7 @@ index cc588fb207062829637adad79129ca91950496cb..8b27ca7606869798486c3afd03e86205
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index 92e73e0a41a7f63c51e426534ecb2604d9fca958..fcef34d7c88f7f8e21f9789ce3d0962e64d2f092 100644
index 39eb09106c1e3d00eb32b56babae751f487d6bcb..893da5266fc09e583a660bc23ac84008b95ea2a1 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -751,6 +751,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {

View file

@ -7097,7 +7097,7 @@ index 403c57fc683bb0497602e1a9ec7b81b2722ecc01..ba58580f4c60205d1c7a7b7dfcdc22c4
Bootstrap.validate();
Util.startTimerHackThread();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 6c6a2a1eb9a02bf14b6b851f5d0aaba8528a8fec..59872b2a9d88db63b76e07f7815246bbb095dbc1 100644
index 747bbd6ea43f2374a7b406a5eecb95717e8527e2..ab7f7246ee7cd456dbf016aa4b3eed974cd0bca2 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -270,7 +270,8 @@ public final class CraftServer implements Server {
@ -7996,10 +7996,10 @@ index 0000000000000000000000000000000000000000..ba271c35eb2804f94cfc893bf94affb9
+ }
+}
diff --git a/src/test/java/org/bukkit/support/DummyServer.java b/src/test/java/org/bukkit/support/DummyServer.java
index d1253a07a90aa4cc29d0140795203a71118c827a..c20d5ed12efed109f3702a994188ac4af66c8b9a 100644
index f3017525b0c2397fdc7ce0778add2e7b38e9e2ba..3b3e44c5ed24f653f7dc1e5d3d4f0ff76084f277 100644
--- a/src/test/java/org/bukkit/support/DummyServer.java
+++ b/src/test/java/org/bukkit/support/DummyServer.java
@@ -42,7 +42,7 @@ public final class DummyServer {
@@ -52,7 +52,7 @@ public final class DummyServer {
final Thread currentThread = Thread.currentThread();
when(instance.isPrimaryThread()).thenAnswer(ignored -> Thread.currentThread().equals(currentThread));

View file

@ -1605,7 +1605,7 @@ index 0eb09ce5c850d85ffd7229d27cf06b3e0edda11b..cc1d7626a82881c4410d65c6a33dadae
};
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 59872b2a9d88db63b76e07f7815246bbb095dbc1..b1d0e9caed38b6a264b7ea8e508be103d3d0664e 100644
index ab7f7246ee7cd456dbf016aa4b3eed974cd0bca2..eccca51b91f3c8afeab19fe11b3e60df314c9c72 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -368,7 +368,7 @@ public final class CraftServer implements Server {
@ -1819,10 +1819,10 @@ index b0ffa23faf62629043dfd613315eaf9c5fcc2cfe..00000000000000000000000000000000
- }
-}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index f609c4e67dd6feefb0c9366a515fd91256af3ff4..86802dee856ec0a5342c35ace716b6d66b093ccd 100644
index f53e223e2412846b82298233459ec9953bc0a63e..87e7071a381540be3b1db55f5d606e9e1e117b39 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2631,6 +2631,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2646,6 +2646,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
CraftPlayer.this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundSystemChatPacket(components, position == net.md_5.bungee.api.ChatMessageType.ACTION_BAR));
}

View file

@ -10,10 +10,10 @@ packs before sending the new pack. Other API exists
for adding a new pack to the existing packs on a client.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 86802dee856ec0a5342c35ace716b6d66b093ccd..6802d5a06741f8e71d8a042993e364557a62b20e 100644
index 87e7071a381540be3b1db55f5d606e9e1e117b39..afdc702682af7ddf338fe00a1b1912766e728f41 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1788,8 +1788,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1803,8 +1803,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
if (hash != null) {
Preconditions.checkArgument(hash.length == 20, "Resource pack hash should be 20 bytes long but was %s", hash.length);

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Support components in ItemMeta
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index fcef34d7c88f7f8e21f9789ce3d0962e64d2f092..aad1bfb515556ed98a55b181057d3ebb178ee52d 100644
index 893da5266fc09e583a660bc23ac84008b95ea2a1..2157034e735c3921d4ef128688c30917aaad7161 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -768,11 +768,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@ -32,7 +32,7 @@ index fcef34d7c88f7f8e21f9789ce3d0962e64d2f092..aad1bfb515556ed98a55b181057d3ebb
@Override
public boolean hasDisplayName() {
return this.displayName != null;
@@ -913,6 +925,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -920,6 +932,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
return this.lore == null ? null : new ArrayList<String>(Lists.transform(this.lore, CraftChatMessage::fromJSONComponent));
}
@ -47,7 +47,7 @@ index fcef34d7c88f7f8e21f9789ce3d0962e64d2f092..aad1bfb515556ed98a55b181057d3ebb
@Override
public void setLore(List<String> lore) {
if (lore == null || lore.isEmpty()) {
@@ -927,6 +947,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -934,6 +954,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
}
}
@ -69,7 +69,7 @@ index fcef34d7c88f7f8e21f9789ce3d0962e64d2f092..aad1bfb515556ed98a55b181057d3ebb
@Override
public boolean hasCustomModelData() {
return this.customModelData != null;
@@ -1362,6 +1397,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1369,6 +1404,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
}
for (Object object : addFrom) {

View file

@ -65,7 +65,7 @@ index bd72deadb59289ae90afc379ee61e8198ddaf4ed..e8dc4ea90d74036dacb0785fcb9125df
}
diff --git a/src/main/java/net/minecraft/world/level/block/CactusBlock.java b/src/main/java/net/minecraft/world/level/block/CactusBlock.java
index fcd5b593c79aab42928cb1ddd0e6c1b03b7bafaf..b3b21763079698b86ea27bb60ea12f078d101901 100644
index fcd5b593c79aab42928cb1ddd0e6c1b03b7bafaf..581870d23e4deca85ae94bffac2011b69650c23d 100644
--- a/src/main/java/net/minecraft/world/level/block/CactusBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/CactusBlock.java
@@ -61,7 +61,7 @@ public class CactusBlock extends Block {
@ -73,12 +73,12 @@ index fcd5b593c79aab42928cb1ddd0e6c1b03b7bafaf..b3b21763079698b86ea27bb60ea12f07
}
- if (i < 3) {
+ if (i < world.paperConfig().maxGrowthHeight.cactus) { // Paper - Configurable cactus/bamboo/reed growth heightt
+ if (i < world.paperConfig().maxGrowthHeight.cactus) { // Paper - Configurable cactus/bamboo/reed growth height
int j = (Integer) state.getValue(CactusBlock.AGE);
int modifier = world.spigotConfig.cactusModifier; // Spigot - SPIGOT-7159: Better modifier resolution
diff --git a/src/main/java/net/minecraft/world/level/block/SugarCaneBlock.java b/src/main/java/net/minecraft/world/level/block/SugarCaneBlock.java
index 47d4fc5bcf2657078abc7a2637b6337fc0ea0977..0c052892e930e08fafac729d6bd238eaf261a474 100644
index 47d4fc5bcf2657078abc7a2637b6337fc0ea0977..04957d461d0e968d443737068aaeec1d0bce78b2 100644
--- a/src/main/java/net/minecraft/world/level/block/SugarCaneBlock.java
+++ b/src/main/java/net/minecraft/world/level/block/SugarCaneBlock.java
@@ -59,7 +59,7 @@ public class SugarCaneBlock extends Block {
@ -86,7 +86,7 @@ index 47d4fc5bcf2657078abc7a2637b6337fc0ea0977..0c052892e930e08fafac729d6bd238ea
}
- if (i < 3) {
+ if (i < world.paperConfig().maxGrowthHeight.reeds) { // Paper - Configurable cactus/bamboo/reed growth height
+ if (i < world.paperConfig().maxGrowthHeight.reeds) { // Paper - Configurable cactus/bamboo/reed growth heigh
int j = (Integer) state.getValue(SugarCaneBlock.AGE);
int modifier = world.spigotConfig.caneModifier; // Spigot - SPIGOT-7159: Better modifier resolution

View file

@ -135,10 +135,10 @@ index b6a3c75b84d9f768afee33aa0f226207b307c1c0..07e7851ca27ea0f8166be52b086a6504
for(Player player : this.players()) {
if (EntitySelector.NO_SPECTATORS.test(player) && EntitySelector.LIVING_ENTITY_STILL_ALIVE.test(player)) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 6802d5a06741f8e71d8a042993e364557a62b20e..243c4ab34922171e67fe9dfd3307c71910c9d082 100644
index afdc702682af7ddf338fe00a1b1912766e728f41..aafab28ed643e9f5f4b28a12ecd7bde3bc993abf 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2272,6 +2272,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2287,6 +2287,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.getHandle().language;
}

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Only refresh abilities if needed
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 243c4ab34922171e67fe9dfd3307c71910c9d082..3479728bc4dc1df00e207feb1a5494d9997582ea 100644
index aafab28ed643e9f5f4b28a12ecd7bde3bc993abf..8b7f6ac3214d318bff41779ae80c48ce3ecd54ce 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1944,12 +1944,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1959,12 +1959,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void setFlying(boolean value) {

View file

@ -39,10 +39,10 @@ index c1006a1991e294fa69b1eb35f4224154b064671b..b0a548ed0abbe08df2cae771248a811f
// CraftBukkit end
this.language = clientOptions.language();
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 3479728bc4dc1df00e207feb1a5494d9997582ea..2de311e8c9bc37bf8c1fb1234a9fc6df30d5aaab 100644
index 8b7f6ac3214d318bff41779ae80c48ce3ecd54ce..3eb1a36eb171d0b98ae005a61902274ef4b12b6e 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2270,7 +2270,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2285,7 +2285,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public String getLocale() {

View file

@ -22,7 +22,7 @@ index c8041492b7b2a1ff67b95d9944cfccd476b3ee1d..66497960995dc30abe60d26200979a78
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 02cb029b436850456daea7bcf646ff754e0aada2..610fcc99098780608afede7ed4a59cef36daaffa 100644
index 05a3d86c5861f237dcccb93c8a9f91cf6a7c18b6..8be468cb5305c0db5f46298aaf6c896b27ce4aee 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -189,6 +189,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -33,7 +33,7 @@ index 02cb029b436850456daea7bcf646ff754e0aada2..610fcc99098780608afede7ed4a59cef
public CraftPlayer(CraftServer server, ServerPlayer entity) {
super(server, entity);
@@ -1957,6 +1958,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1972,6 +1973,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
// Paper end - adventure

View file

@ -70,7 +70,7 @@ index 9861cd23b07f8fbacb1d125af835dee58c2debbb..b0ea04fc0bac640f7076100e44c16c03
public boolean isEnchanted() {
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index cba729914a3adaee2507e2916a4cfb585869746d..a05f01ca9a9bc88e414c8cf89c01c7e993e27dd2 100644
index 23b83f8e98d681895b4e23cda4f3d50f85c12dd9..c72a1a503f6e71228a1f82b37068ff7a83e983dc 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -188,28 +188,11 @@ public final class CraftItemStack extends ItemStack {
@ -107,7 +107,7 @@ index cba729914a3adaee2507e2916a4cfb585869746d..a05f01ca9a9bc88e414c8cf89c01c7e9
}
static boolean makeTag(net.minecraft.world.item.ItemStack item) {
@@ -242,50 +225,22 @@ public final class CraftItemStack extends ItemStack {
@@ -242,43 +225,15 @@ public final class CraftItemStack extends ItemStack {
public int removeEnchantment(Enchantment ench) {
Preconditions.checkArgument(ench != null, "Enchantment cannot be null");
@ -159,6 +159,7 @@ index cba729914a3adaee2507e2916a4cfb585869746d..a05f01ca9a9bc88e414c8cf89c01c7e9
return level;
}
@@ -290,7 +245,7 @@ public final class CraftItemStack extends ItemStack {
@Override
public Map<Enchantment, Integer> getEnchantments() {
@ -168,7 +169,7 @@ index cba729914a3adaee2507e2916a4cfb585869746d..a05f01ca9a9bc88e414c8cf89c01c7e9
static Map<Enchantment, Integer> getEnchantments(net.minecraft.world.item.ItemStack item) {
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index 9e11d7bccd04b4c2e6913de56a299190c22aa9c1..c76fe9599b4f2458cac6e2477f1f963451b357b4 100644
index ffdea312f93d00289364ef4d41a820cd1338f3bd..361268bcc0197c2f9f4bd065d8f7b51771d562a9 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -6,6 +6,7 @@ import com.google.common.collect.ImmutableList;
@ -271,7 +272,7 @@ index 9e11d7bccd04b4c2e6913de56a299190c22aa9c1..c76fe9599b4f2458cac6e2477f1f9634
}
if (ignoreRestrictions || level >= ench.getStartLevel() && level <= ench.getMaxLevel()) {
@@ -1262,7 +1265,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1269,7 +1272,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
clone.customModelData = this.customModelData;
clone.blockData = this.blockData;
if (this.enchantments != null) {
@ -280,7 +281,7 @@ index 9e11d7bccd04b4c2e6913de56a299190c22aa9c1..c76fe9599b4f2458cac6e2477f1f9634
}
if (this.hasAttributeModifiers()) {
clone.attributeModifiers = LinkedHashMultimap.create(this.attributeModifiers);
@@ -1509,4 +1512,22 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1516,4 +1519,22 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
return CraftMetaItem.HANDLED_TAGS;
}
}

View file

@ -44,10 +44,10 @@ index 3179fc1b33f503b0cdd462ad160edee760b5a7eb..428a9d21b24e9c349bf766c16172ffd9
protected void internalSetAbsorptionAmount(float absorptionAmount) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 610fcc99098780608afede7ed4a59cef36daaffa..1b7010f4d191ee08e250cdf27f5fd9e9bfa0abdd 100644
index 8be468cb5305c0db5f46298aaf6c896b27ce4aee..af0b3ea4bdb474d15c3e0a8ad8e1d23abc4c3413 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2192,6 +2192,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2207,6 +2207,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
public void setRealHealth(double health) {

View file

@ -14,10 +14,10 @@ public net.minecraft.world.entity.ExperienceOrb durabilityToXp(I)I
public net.minecraft.world.entity.ExperienceOrb xpToDurability(I)I
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c3eb39a30a70d7e289caba49749cf1f9c812be90..ee5d14413f27e61df0adc8c151cee438a912e6cf 100644
index cfa861cc63ccd96ef9c71e65d6796567154afd5f..af58b8c5a9faf78bd4daace9bd52a012fa91e079 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1501,7 +1501,37 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1516,7 +1516,37 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
@Override

View file

@ -255,10 +255,10 @@ index b77f5832265be5aaf96d95fcac4737919720fa6e..e15723080445b09852512132039ca2cd
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index c76fe9599b4f2458cac6e2477f1f963451b357b4..76982348d76ecbcc3db1d81ebb5d2a8805b81e94 100644
index 361268bcc0197c2f9f4bd065d8f7b51771d562a9..1920cf7ad846f57cd278cb9a72dce03f3d014fbb 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -1502,6 +1502,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1509,6 +1509,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
CraftMetaCrossbow.CHARGED.NBT,
CraftMetaCrossbow.CHARGED_PROJECTILES.NBT,
CraftMetaSuspiciousStew.EFFECTS.NBT,

View file

@ -62,10 +62,10 @@ index 7552d1b9e6c286daaa6b094af0fdebc2b300272a..9f8a95c8f46a11f36ff16863922a91a8
public void tick() {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
index 477d3245facb5ae59c786d4f696f64226cb540a6..e8490a58dd4d9bc39a5bb2f9fc109526e031b971 100644
index 954825dcd011716dcd859aa285a8e3cdb6ff5464..34925d6448e0ef1d5bb4b24359f732b67aaa4230 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
@@ -81,8 +81,8 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
@@ -82,8 +82,8 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
}
@Override
@ -77,7 +77,7 @@ index 477d3245facb5ae59c786d4f696f64226cb540a6..e8490a58dd4d9bc39a5bb2f9fc109526
public Server getServer() {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index ee5d14413f27e61df0adc8c151cee438a912e6cf..0f78ff8b4a7143388416563d964c467d29617b36 100644
index af58b8c5a9faf78bd4daace9bd52a012fa91e079..d59c2bbb88a4e11136e2aa8fb30f15894560f13f 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -230,11 +230,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -92,7 +92,7 @@ index ee5d14413f27e61df0adc8c151cee438a912e6cf..0f78ff8b4a7143388416563d964c467d
@Override
public InetSocketAddress getAddress() {
if (this.getHandle().connection == null) return null;
@@ -1651,8 +1646,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1666,8 +1661,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
private void untrackAndHideEntity(org.bukkit.entity.Entity entity) {
// Remove this entity from the hidden player's EntityTrackerEntry
@ -109,7 +109,7 @@ index ee5d14413f27e61df0adc8c151cee438a912e6cf..0f78ff8b4a7143388416563d964c467d
ChunkMap.TrackedEntity entry = tracker.entityMap.get(other.getId());
if (entry != null) {
entry.removePlayer(this.getHandle());
@@ -1665,8 +1667,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1680,8 +1682,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.getHandle().connection.send(new ClientboundPlayerInfoRemovePacket(List.of(otherPlayer.getUUID())));
}
}
@ -118,7 +118,7 @@ index ee5d14413f27e61df0adc8c151cee438a912e6cf..0f78ff8b4a7143388416563d964c467d
}
void resetAndHideEntity(org.bukkit.entity.Entity entity) {
@@ -1731,12 +1731,25 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1746,12 +1746,25 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
private void trackAndShowEntity(org.bukkit.entity.Entity entity) {
@ -144,7 +144,7 @@ index ee5d14413f27e61df0adc8c151cee438a912e6cf..0f78ff8b4a7143388416563d964c467d
}
ChunkMap.TrackedEntity entry = tracker.entityMap.get(other.getId());
@@ -1746,6 +1759,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1761,6 +1774,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.server.getPluginManager().callEvent(new PlayerShowEntityEvent(this, entity));
}
@ -184,7 +184,7 @@ index ee5d14413f27e61df0adc8c151cee438a912e6cf..0f78ff8b4a7143388416563d964c467d
void resetAndShowEntity(org.bukkit.entity.Entity entity) {
// SPIGOT-7312: Can't show/hide self
@@ -1757,6 +1803,34 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1772,6 +1818,34 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.trackAndShowEntity(entity);
}
}

View file

@ -9,7 +9,7 @@ e.g. servers which allow and support the usage of mod packs.
provide an optional flag to disable this check, at your own risk.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 7ca0b3661ec8f1e1060b8e6d93e8c5d5a98f4d23..5eef491a3081973edb64b31710099c736c6dcd4a 100644
index d59c2bbb88a4e11136e2aa8fb30f15894560f13f..4d0d2b1bc24a0d56724d7062bdbc3c7cf78e2b8a 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -190,6 +190,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -20,7 +20,7 @@ index 7ca0b3661ec8f1e1060b8e6d93e8c5d5a98f4d23..5eef491a3081973edb64b31710099c73
public CraftPlayer(CraftServer server, ServerPlayer entity) {
super(server, entity);
@@ -2120,7 +2121,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2135,7 +2136,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
public void addChannel(String channel) {

View file

@ -11,10 +11,10 @@ Returns true if getDamage() == 0 or has damage tag or other tag is set.
Check the `ItemMetaTest#testTaggedButNotMeta` method to see how this method behaves.
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index 07f011a968592ba5b38a0a2723189824ba5d0938..1478fb3e1f0f97423855db7e5c4618cc066efb6b 100644
index d9a07829d5d0ebcb18b8e3f12622ed7795955d61..7ce48473222516aefda3c5ad40e5e3fd23502e3d 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -670,7 +670,7 @@ public final class CraftItemStack extends ItemStack {
@@ -675,7 +675,7 @@ public final class CraftItemStack extends ItemStack {
@Override
public boolean hasItemMeta() {

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Expose attack cooldown methods for Player
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 57b5f5c13a5e397e153f06d7f60d3177ee59e91c..fff6d3d50df7bdf91a1fb48c97ee6ee4cf06a7e8 100644
index 047be06ad290e6e066689fe3b95902a3459304b3..b98f26b6958cb3f874a4c0d85e2c10ec517cbbff 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2831,6 +2831,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2846,6 +2846,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return this.adventure$pointers;
}

View file

@ -402,10 +402,10 @@ index ecce8036e58a9ed1408e110e75980bf77c18779a..ddd512e1d7608ec051fb5adf6ec2c6bb
this.gameEvent(GameEvent.ENTITY_DIE);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index fff6d3d50df7bdf91a1fb48c97ee6ee4cf06a7e8..4dce0bc472a7a210680d86e90828749766908afd 100644
index b98f26b6958cb3f874a4c0d85e2c10ec517cbbff..adcba9111415a20a4a55bb182be84c9f6d3755d7 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2368,7 +2368,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2383,7 +2383,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void sendHealthUpdate() {
FoodData foodData = this.getHandle().getFoodData();

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Add API for CanPlaceOn and CanDestroy NBT values
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec4e8f5f3d 100644
index 1920cf7ad846f57cd278cb9a72dce03f3d014fbb..629fa76e6c7c2ede36ab855bb3a7a65dfd601449 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -85,6 +85,12 @@ import org.bukkit.persistence.PersistentDataContainer;
@ -181,7 +181,7 @@ index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec
}
// Paper start
@@ -1216,7 +1324,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1223,7 +1331,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
&& (this.hideFlag == that.hideFlag)
&& (this.isUnbreakable() == that.isUnbreakable())
&& (this.hasDamage() ? that.hasDamage() && this.damage == that.damage : !that.hasDamage())
@ -194,7 +194,7 @@ index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec
}
/**
@@ -1251,6 +1363,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1258,6 +1370,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
hash = 61 * hash + (this.hasDamage() ? this.damage : 0);
hash = 61 * hash + (this.hasAttributeModifiers() ? this.attributeModifiers.hashCode() : 0);
hash = 61 * hash + this.version;
@ -205,7 +205,7 @@ index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec
return hash;
}
@@ -1275,6 +1391,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1282,6 +1398,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
clone.unbreakable = this.unbreakable;
clone.damage = this.damage;
clone.version = this.version;
@ -220,7 +220,7 @@ index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec
return clone;
} catch (CloneNotSupportedException e) {
throw new Error(e);
@@ -1332,6 +1456,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1339,6 +1463,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
builder.put(CraftMetaItem.DAMAGE.BUKKIT, this.damage);
}
@ -244,7 +244,7 @@ index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec
final Map<String, Tag> internalTags = new HashMap<String, Tag>(this.unhandledTags);
this.serializeInternal(internalTags);
if (!internalTags.isEmpty()) {
@@ -1509,6 +1650,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1516,6 +1657,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
CraftMetaArmorStand.SHOW_ARMS.NBT,
CraftMetaArmorStand.SMALL.NBT,
CraftMetaArmorStand.MARKER.NBT,
@ -253,7 +253,7 @@ index 76982348d76ecbcc3db1d81ebb5d2a8805b81e94..ed50a1e492643842a094fc90fb52cbec
// Paper end
CraftMetaCompass.LODESTONE_DIMENSION.NBT,
CraftMetaCompass.LODESTONE_POS.NBT,
@@ -1538,4 +1681,146 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1545,4 +1688,146 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
}
// Paper end

View file

@ -40,10 +40,10 @@ index 455f14d758551229d15d703990bb5225fff37700..e2136ae52074f922a87ac30f5e34cb80
GameProfileCache usercache = this.server.getProfileCache();
String s;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
index e8490a58dd4d9bc39a5bb2f9fc109526e031b971..5f590575f95eff8bf0cdcafde7dee0e3c7fc30ad 100644
index 34925d6448e0ef1d5bb4b24359f732b67aaa4230..0c1b5f625a351905e082b2c2a63bfd737101527e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
@@ -261,6 +261,61 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
@@ -262,6 +262,61 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
return this.getData() != null;
}
@ -106,7 +106,7 @@ index e8490a58dd4d9bc39a5bb2f9fc109526e031b971..5f590575f95eff8bf0cdcafde7dee0e3
public Location getLastDeathLocation() {
if (this.getData().contains("LastDeathLocation", 10)) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c3af502148a700892ac86d56bcb4f05703d98160..24b08196d160feaa7b4409151fcd98cece19892e 100644
index adcba9111415a20a4a55bb182be84c9f6d3755d7..95eb6060eb5661fa88bfdbd1c4d8bbcd78c2d983 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -191,6 +191,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -117,7 +117,7 @@ index c3af502148a700892ac86d56bcb4f05703d98160..24b08196d160feaa7b4409151fcd98ce
public CraftPlayer(CraftServer server, ServerPlayer entity) {
super(server, entity);
@@ -1911,6 +1912,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1926,6 +1927,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.firstPlayed = firstPlayed;
}
@ -136,7 +136,7 @@ index c3af502148a700892ac86d56bcb4f05703d98160..24b08196d160feaa7b4409151fcd98ce
public void readExtraData(CompoundTag nbttagcompound) {
this.hasPlayedBefore = true;
if (nbttagcompound.contains("bukkit")) {
@@ -1933,6 +1946,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1948,6 +1961,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
public void setExtraData(CompoundTag nbttagcompound) {
@ -145,7 +145,7 @@ index c3af502148a700892ac86d56bcb4f05703d98160..24b08196d160feaa7b4409151fcd98ce
if (!nbttagcompound.contains("bukkit")) {
nbttagcompound.put("bukkit", new CompoundTag());
}
@@ -1947,6 +1962,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1962,6 +1977,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
data.putLong("firstPlayed", this.getFirstPlayed());
data.putLong("lastPlayed", System.currentTimeMillis());
data.putString("lastKnownName", handle.getScoreboardName());

View file

@ -57,10 +57,10 @@ index e69043316372d98b122ed3788fda79cdd36849e8..6597e6e9987ddb5906909c22704fdfb6
} catch (Exception ex) {
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex);
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index febbb35077811c6cfd4101500aad24c447f4cae1..7e3f0cacbe1b562c73b5d62bfa81b832af5bbd93 100644
index dcea3f827a79de3581adff51f34220a1d656e8e9..8a289cd0876a8c063a2b5f75ce8eb41f4be98acf 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2990,6 +2990,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -3005,6 +3005,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
// Paper end
};

View file

@ -25,10 +25,10 @@ index f041b5d80bff9c022b007e04ef1558e9116acc6b..a586442422a2b2c06b785af0d261d3e1
// Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
index b54bd4e85042955448a2e76b379d370eefdff383..92922e8eef7fa4638a01f3cefc4c46a1451e40e7 100644
index f0f7fb977edb7e7009716429f007e44fa36bfcda..7aa4035a4df1ddcc71065034eafd569ca59be810 100644
--- a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
+++ b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
@@ -161,6 +161,11 @@ public class CraftEnchantment extends Enchantment {
@@ -152,6 +152,11 @@ public class CraftEnchantment extends Enchantment implements Handleable<net.mine
public net.kyori.adventure.text.Component displayName(int level) {
return io.papermc.paper.adventure.PaperAdventure.asAdventure(getHandle().getFullname(level));
}

View file

@ -6,10 +6,10 @@ Subject: [PATCH] Add Destroy Speed API
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
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 a9a69191895ba2f66b133c162d1b31b1dfc73101..20dcbea3bb06e637a88d81ed09138b57797e270f 100644
index 01a1479711b7f7bb87db275a1edfab5a95464cca..a4252f9078c3ab7e458504496ebcdeb6875724d1 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
@@ -703,4 +703,19 @@ public class CraftBlockData implements BlockData {
@@ -720,4 +720,19 @@ public class CraftBlockData implements BlockData {
public BlockState createBlockState() {
return CraftBlockStates.getBlockState(this.state, null);
}

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 7e3f0cacbe1b562c73b5d62bfa81b832af5bbd93..bcbc4e0a820458733a45cdf65b30317d9a327ce4 100644
index 8a289cd0876a8c063a2b5f75ce8eb41f4be98acf..45288a75ddbbf0bb03bacce7a88c59e740914dbe 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2553,7 +2553,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2568,7 +2568,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
if (data != null) {
Preconditions.checkArgument(particle.getDataType().isInstance(data), "data (%s) should be %s", data.getClass(), particle.getDataType());
}

View file

@ -5,10 +5,10 @@ Subject: [PATCH] TODO Registry Modification API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
index e374fdde3eda6b88793efbdc57f2a31bcbca7274..47b5930adf1870125b1ec063895b0652890a06de 100644
index 72c2bc09ce6eefc63c3bab5a8f183e48316d0196..b84e984e53834ef338afd7b61a656eb82a14349a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
@@ -72,6 +72,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
@@ -114,6 +114,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
if (bukkitClass == TrimPattern.class) {
return new CraftRegistry<>(TrimPattern.class, registryHolder.registryOrThrow(Registries.TRIM_PATTERN), CraftTrimPattern::new);
}

View file

@ -76,10 +76,10 @@ index 3e57142dd9cb23d43857d5a4cb30962e4b696b74..a6d5b3fa7e3437e0aec54eec4079e9f3
Map<StructurePlacement, Set<Holder<Structure>>> map = new Object2ObjectArrayMap();
Iterator iterator = structures.iterator();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
index 47b5930adf1870125b1ec063895b0652890a06de..253b4cf66e94faf0bc8861318ae7549f52cd29d1 100644
index b84e984e53834ef338afd7b61a656eb82a14349a..13270b2197c594dc03d089aea46aa410dd9efd13 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
@@ -73,6 +73,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
@@ -115,6 +115,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
return new CraftRegistry<>(TrimPattern.class, registryHolder.registryOrThrow(Registries.TRIM_PATTERN), CraftTrimPattern::new);
}
// TODO registry modification API
@ -193,11 +193,11 @@ index 0000000000000000000000000000000000000000..9178fe0d01b998ca1442bf2511f8fc00
+ System.setOut(out);
+ }
+}
diff --git a/src/test/java/org/bukkit/PerRegistryTest.java b/src/test/java/org/bukkit/PerRegistryTest.java
index a5db5b190bf16571d329a653de01acdae8dc8cfa..9e553a8858750c494456f04abd7bffd1d257308c 100644
--- a/src/test/java/org/bukkit/PerRegistryTest.java
+++ b/src/test/java/org/bukkit/PerRegistryTest.java
@@ -33,6 +33,7 @@ public class PerRegistryTest extends AbstractTestingBase {
diff --git a/src/test/java/org/bukkit/registry/PerRegistryTest.java b/src/test/java/org/bukkit/registry/PerRegistryTest.java
index 4e4ea083063daf22f1bb785ef212958ea889c43b..1c4966520b6401e6571aa44d5934dfa280bc80e3 100644
--- a/src/test/java/org/bukkit/registry/PerRegistryTest.java
+++ b/src/test/java/org/bukkit/registry/PerRegistryTest.java
@@ -36,6 +36,7 @@ public class PerRegistryTest extends AbstractTestingBase {
if (!(object instanceof CraftRegistry<?, ?> registry)) {
continue;
}
@ -205,3 +205,15 @@ index a5db5b190bf16571d329a653de01acdae8dc8cfa..9e553a8858750c494456f04abd7bffd1
data.add(Arguments.of(registry));
} catch (ReflectiveOperationException e) {
diff --git a/src/test/java/org/bukkit/registry/RegistryArgumentAddedTest.java b/src/test/java/org/bukkit/registry/RegistryArgumentAddedTest.java
index 4adaafafb7140e983a4e90f0ff0deaaf0887a9a5..65cc33c45553e755371ec4313dd38bb61eb7d61c 100644
--- a/src/test/java/org/bukkit/registry/RegistryArgumentAddedTest.java
+++ b/src/test/java/org/bukkit/registry/RegistryArgumentAddedTest.java
@@ -23,6 +23,7 @@ public class RegistryArgumentAddedTest extends AbstractTestingBase {
Set<Class<?>> loadedRegistries = new HashSet<>(DummyServer.registers.keySet());
Set<Class<?>> notFound = new HashSet<>();
+ loadedRegistries.remove(io.papermc.paper.world.structure.ConfiguredStructure.class); // Paper - ignore
RegistriesArgumentProvider
.getData()

View file

@ -131,7 +131,7 @@ index f66ce9ae705b0fbe17a1bb437bad6808ff47ed92..37513cf5714afda6c552219c2eca8134
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 6acec839ee6d7a8893016e79af76892d63a7b601..4ee35e2f717a5a55c9f90a6528f5c93529a92a84 100644
index 3d727afa81b4134d6bc7ab13e0fef3a741a39f36..476cd64e29b7171952fe4f02b661f871897a10f1 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2641,7 +2641,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@ -144,10 +144,10 @@ index 6acec839ee6d7a8893016e79af76892d63a7b601..4ee35e2f717a5a55c9f90a6528f5c935
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 537590236e9a0ac2946953ebbebe0044e17ccc72..55fec85c4adb6e92e371547b5c3d58e5adc53ce8 100644
index deff963f73b5317be6f82945c01e45f337675103..9356752eae2499654f26fb60490490adbc1010c9 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1517,7 +1517,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1532,7 +1532,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
Preconditions.checkArgument(mode != null, "GameMode cannot be null");
if (this.getHandle().connection == null) return;

View file

@ -9,10 +9,10 @@ public net.minecraft.world.item.enchantment.Enchantment slots
Co-authored-by: Luis <luisc99@icloud.com>
diff --git a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
index 92922e8eef7fa4638a01f3cefc4c46a1451e40e7..92465b2a9f1483be76004c9f80a1fe15913b3b8b 100644
index 7aa4035a4df1ddcc71065034eafd569ca59be810..5b7579395e61684592758f408d61cffe57f8b21d 100644
--- a/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
+++ b/src/main/java/org/bukkit/craftbukkit/enchantments/CraftEnchantment.java
@@ -90,7 +90,7 @@ public class CraftEnchantment extends Enchantment {
@@ -81,7 +81,7 @@ public class CraftEnchantment extends Enchantment implements Handleable<net.mine
@Override
public boolean isCursed() {
@ -21,7 +21,7 @@ index 92922e8eef7fa4638a01f3cefc4c46a1451e40e7..92465b2a9f1483be76004c9f80a1fe15
}
@Override
@@ -166,6 +166,55 @@ public class CraftEnchantment extends Enchantment {
@@ -157,6 +157,55 @@ public class CraftEnchantment extends Enchantment implements Handleable<net.mine
public String translationKey() {
return this.handle.getDescriptionId();
}

View file

@ -187,12 +187,12 @@ index ecaa7f0b2bf795f16187f11fa27f6d5d435ccbfe..acd5ec218b8d4c096f44ae2eec1379ee
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 490e84e1b0bc72a5953ac540dc60640814ecc64a..c74f43450469b1158040372a59c4b49d6020a2aa 100644
index 8b54fe6ee1c07a70f9823f1a2a13887620a6dfda..ff85623db8fc9cbf9b056eec9774ddcd3106c194 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1276,9 +1276,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1291,9 +1291,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void setBedSpawnLocation(Location location, boolean override) {
public void setRespawnLocation(Location location, boolean override) {
if (location == null) {
- this.getHandle().setRespawnPosition(null, null, 0.0F, override, false, PlayerSpawnChangeEvent.Cause.PLUGIN);
+ this.getHandle().setRespawnPosition(null, null, 0.0F, override, false, com.destroystokyo.paper.event.player.PlayerSetSpawnEvent.Cause.PLUGIN); // Paper - Add PlayerSetSpawnEvent

View file

@ -5,14 +5,13 @@ Subject: [PATCH] More PotionEffectType API
diff --git a/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java b/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java
index 7055a051759bf01dd76cc53b74fe1e65c521403e..a1a386b09f477056bb2f764ec414782ba61460ea 100644
index c038bcd6670160193c91506366208b6110524e98..0d8b6a50c91d258eec268cee4b5b5859dac6fbf6 100644
--- a/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java
+++ b/src/main/java/org/bukkit/craftbukkit/potion/CraftPotionEffectType.java
@@ -139,4 +139,46 @@ public class CraftPotionEffectType extends PotionEffectType {
return ((CraftPotionEffectType) bukkit).getHandle();
@@ -108,6 +108,48 @@ public class CraftPotionEffectType extends PotionEffectType implements Handleabl
return Color.fromRGB(this.handle.getColor());
}
+
+ // Paper start
+ @Override
+ public java.util.Map<org.bukkit.attribute.Attribute, org.bukkit.attribute.AttributeModifier> getEffectAttributes() {
@ -54,7 +53,10 @@ index 7055a051759bf01dd76cc53b74fe1e65c521403e..a1a386b09f477056bb2f764ec414782b
+ };
+ }
+ // Paper end
}
+
@Override
public boolean equals(Object other) {
if (this == other) {
diff --git a/src/test/java/io/papermc/paper/effects/EffectCategoryTest.java b/src/test/java/io/papermc/paper/effects/EffectCategoryTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..6262598f85bd7d9af5546cc0a96531b2f4baf64d

View file

@ -560,10 +560,10 @@ index 25133298b26523bd36300ab03e216200c915386b..af7e3acde2eb521ac809b4c5980ff6ad
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index 1478fb3e1f0f97423855db7e5c4618cc066efb6b..a4d522a19f1a1288baa2688d5beb62c91a5fb3a3 100644
index 7ce48473222516aefda3c5ad40e5e3fd23502e3d..6725c0824b986885c8aade846f6e159986ffbe59 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -289,12 +289,20 @@ public final class CraftItemStack extends ItemStack {
@@ -294,12 +294,20 @@ public final class CraftItemStack extends ItemStack {
public ItemMeta getItemMeta() {
return CraftItemStack.getItemMeta(this.handle);
}

View file

@ -8,10 +8,10 @@ instance of CraftOfflinePlayer the world was incorrect
due to the logic for reading the NBT not being up-to-date.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
index 5f590575f95eff8bf0cdcafde7dee0e3c7fc30ad..a0fcd11e6b0ca2a7055a4d1910124b20bd9c0b94 100644
index 0c1b5f625a351905e082b2c2a63bfd737101527e..ef2dfa30686bba3eb510bf95172174cc9972422e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
@@ -36,6 +36,7 @@ import org.bukkit.profile.PlayerProfile;
@@ -37,6 +37,7 @@ import org.bukkit.profile.PlayerProfile;
@SerializableAs("Player")
public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializable {
@ -19,7 +19,7 @@ index 5f590575f95eff8bf0cdcafde7dee0e3c7fc30ad..a0fcd11e6b0ca2a7055a4d1910124b20
private final GameProfile profile;
private final CraftServer server;
private final PlayerDataStorage storage;
@@ -330,11 +331,20 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
@@ -361,11 +362,20 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
if (data == null) return null;
if (data.contains("SpawnX") && data.contains("SpawnY") && data.contains("SpawnZ")) {

View file

@ -31,10 +31,10 @@ index 6d10396347b69d9243ab902ecc68ede93fa17b7d..0a96b00a98227714ef99005e0a223765
// Paper end
}
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 20dcbea3bb06e637a88d81ed09138b57797e270f..d5719d943946acd77dc9b26299c9f3d12d86062f 100644
index a4252f9078c3ab7e458504496ebcdeb6875724d1..37c5d66dafd877d2231c8d191f5a84748bf24551 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
@@ -718,4 +718,11 @@ public class CraftBlockData implements BlockData {
@@ -735,4 +735,11 @@ public class CraftBlockData implements BlockData {
return speed;
}
// Paper end - destroy speed API

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Elder Guardian appearance API
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index f97040ad62f10b1f12ab70b89573316f7c173bf7..9a10f548e6264ae1c3b8ec26670e6ebf340c7ecd 100644
index 10d82f0e0c2c514e971d9cf95848a79ff8b7082d..432790b46ad5edcf504a3aab603597585c82913c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -3149,6 +3149,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -3164,6 +3164,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
// Paper end

View file

@ -10,10 +10,10 @@ public net.minecraft.world.entity.monster.warden.WardenSpawnTracker cooldownTick
public net.minecraft.world.entity.monster.warden.WardenSpawnTracker increaseWarningLevel()V
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9a10f548e6264ae1c3b8ec26670e6ebf340c7ecd..b6a5c3f38cf63ffd0ed86796dcea0f97bd048bd0 100644
index 432790b46ad5edcf504a3aab603597585c82913c..be5b8e12a7a15b97a34ddd9f50b8780a74faffbf 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -3154,6 +3154,41 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -3169,6 +3169,41 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void showElderGuardian(boolean silent) {
if (getHandle().connection != null) getHandle().connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.GUARDIAN_ELDER_EFFECT, silent ? 0F : 1F));
}

View file

@ -26,10 +26,10 @@ index e0fd3c3a129216ad1272a6e038eb16cb44e45475..182180275be3bf90b9f8e66dcf19ad6c
} else {
if (fallDistance >= 2.0F) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 2f299e3485fca4701719a31ba6c981b91155cf05..f807dfc75a8e8f1e642aeedfb46def1e5aacde85 100644
index b2990c187d0689eece9e43c7895d8055e8d61586..6748c7f7ccd242dfa782687114bafde051b51cc9 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2432,6 +2432,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2447,6 +2447,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.getHandle().onUpdateAbilities();
}

View file

@ -33,10 +33,10 @@ index 36d5d1736bf826f3abc756277de431c94cabb744..e814b2ef2577f032d6760de2f798d4fe
return k > 0 ? this.repairPlayerItems(player, k) : 0;
} else {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 66176fc39f5e6a06b1a5e92627747fbbad87c6d0..b02894b1adb53b37aaff33cf0af00f1a1f72d8df 100644
index 561703f56637046bc274c378a63c03f684b5b787..5190613932bc1084d617f49e1517a9942e3765fc 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1712,11 +1712,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1727,11 +1727,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
orb.setPosRaw(handle.getX(), handle.getY(), handle.getZ());
int i = Math.min(orb.xpToDurability(amount), itemstack.getDamageValue());

View file

@ -17,10 +17,10 @@ index c421649a0c88ee9c773bb6985f7114e58f08a7a1..71aac5d4cf29cea9daa378fc8ac58475
case GLOW_ITEM_FRAME:
case PAINTING:
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index 749bf6a897b053197988112551192abe6af2f186..d1604c52784c1bf94e797ca1f5d8146c19314c11 100644
index 312e756843f62371048a4d8de9deb024bd9846a7..a2e605bc1418dc0b5570566a6e348df03c9aee4c 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -592,6 +592,7 @@ public final class CraftItemStack extends ItemStack {
@@ -597,6 +597,7 @@ public final class CraftItemStack extends ItemStack {
case COD_BUCKET:
case PUFFERFISH_BUCKET:
case SALMON_BUCKET:

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Fix BanList API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
index a0fcd11e6b0ca2a7055a4d1910124b20bd9c0b94..9daec0782774ab51ea8091cb8ed9d0a106e34cfa 100644
index ef2dfa30686bba3eb510bf95172174cc9972422e..96408d505ce80799868ff84554a3b0b25adabb22 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
@@ -114,17 +114,17 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
@@ -115,17 +115,17 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
}
@Override
@ -208,10 +208,10 @@ index 172202accf4448a933fcf1ff820316c7910dd7f7..50ee7656580d386db473c054f5c5ec57
return null;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index b02894b1adb53b37aaff33cf0af00f1a1f72d8df..a003b72f5c0384712ffd39f6505a408e09cbbc25 100644
index 5190613932bc1084d617f49e1517a9942e3765fc..cd477ae33aa98a629ebb5bd9c39912185df09cbc 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1610,23 +1610,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1625,23 +1625,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
@Override
@ -240,7 +240,7 @@ index b02894b1adb53b37aaff33cf0af00f1a1f72d8df..a003b72f5c0384712ffd39f6505a408e
if (kickPlayer) {
this.kickPlayer(reason);
}
@@ -1634,12 +1634,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1649,12 +1649,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
@Override

View file

@ -74,7 +74,7 @@ index d43106eb89b14667e85cd6e8fa047d64f2e8ec87..56eddd28429cf42c02d88b8bf79f8b61
static class EntryBuilder {
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index fecee3dc3d5ab8daac677530e8b0eeb6ef86e400..895b4f2d3007879e81a0f4da1dce8d083ad57e26 100644
index fd32811f00a2c82dcb6efb9d78ffee0240d5de0b..b07b19876ba9edb25b89503a8c6e5a5897eb326c 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -356,14 +356,22 @@ public abstract class PlayerList {
@ -111,7 +111,7 @@ index fecee3dc3d5ab8daac677530e8b0eeb6ef86e400..895b4f2d3007879e81a0f4da1dce8d08
// Paper end - Use single player info update packet on join
player.sentListPacket = true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 6d6bbd1d40bbb6d8c0b9a03b6c69f98c0370e866..9afc24a451010298c59b588785626c5b7f5f4d31 100644
index 059c7a71812bf65124d7422e85f25f09eca1ea9e..de5d0b29d9b4631e7197520de7eb99ac6d9c8165 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -182,6 +182,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -122,7 +122,7 @@ index 6d6bbd1d40bbb6d8c0b9a03b6c69f98c0370e866..9afc24a451010298c59b588785626c5b
private static final WeakHashMap<Plugin, WeakReference<Plugin>> pluginWeakReferences = new WeakHashMap<>();
private int hash = 0;
private double health = 20;
@@ -1950,7 +1951,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1965,7 +1966,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
otherPlayer.setUUID(uuidOverride);
}
// Paper end
@ -131,7 +131,7 @@ index 6d6bbd1d40bbb6d8c0b9a03b6c69f98c0370e866..9afc24a451010298c59b588785626c5b
if (original != null) otherPlayer.setUUID(original); // Paper - uuid override
}
@@ -2057,6 +2058,43 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2072,6 +2073,43 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return (entity != null) ? this.canSee(entity) : false; // If we can't find it, we can't see it
}

View file

@ -10,7 +10,7 @@ public net.minecraft.world.level.dimension.end.EndDragonFight respawnCrystals
public net.minecraft.world.level.dimension.end.EndDragonFight spawnNewGateway(Lnet/minecraft/core/BlockPos;)V
diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
index e2e2c9f168ae4651f8fa484f6f2a17ba25f99207..2d9a7a91eb14c4f4f82d6ee491fbc628d91fb07d 100644
index b9b773d7dba559afe00b085ded3f020ea6b97c12..adbe8ca78716114a3bc03136f02c631f30aff977 100644
--- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
+++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java
@@ -439,6 +439,24 @@ public class EndDragonFight {
@ -39,10 +39,10 @@ index e2e2c9f168ae4651f8fa484f6f2a17ba25f99207..2d9a7a91eb14c4f4f82d6ee491fbc628
if (!this.gateways.isEmpty()) {
int i = (Integer) this.gateways.remove(this.gateways.size() - 1);
diff --git a/src/main/java/org/bukkit/craftbukkit/boss/CraftDragonBattle.java b/src/main/java/org/bukkit/craftbukkit/boss/CraftDragonBattle.java
index 58f1562373bab8d082172e4a5db22493fb913ca8..cd5c59ed59eedf233f31415bb949fcf5ae2bd49f 100644
index dc7fdc120f4317ee1b7935ef226eddb0406aee6e..6bfabb38b51115beb2a65a165f235347838b6006 100644
--- a/src/main/java/org/bukkit/craftbukkit/boss/CraftDragonBattle.java
+++ b/src/main/java/org/bukkit/craftbukkit/boss/CraftDragonBattle.java
@@ -132,4 +132,46 @@ public class CraftDragonBattle implements DragonBattle {
@@ -137,4 +137,46 @@ public class CraftDragonBattle implements DragonBattle {
private DragonRespawnAnimation toNMSRespawnPhase(RespawnPhase phase) {
return (phase != RespawnPhase.NONE) ? DragonRespawnAnimation.values()[phase.ordinal()] : null;
}

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Deep clone unhandled nbt tags
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index d42f4640a53221ffa7a479bce681374527cb3a0c..61813713aa2de0a4761d423e6a2d569fd776f88b 100644
index 6c797f35a10e8491718f38eb08f31b1e6182a8d1..c425b21ddc12917ab9aa10869ff3aec622ce2d9a 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -305,7 +305,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@ -30,7 +30,7 @@ index d42f4640a53221ffa7a479bce681374527cb3a0c..61813713aa2de0a4761d423e6a2d569f
this.internalTag = meta.internalTag;
if (this.internalTag != null) {
@@ -1386,7 +1388,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1393,7 +1395,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
if (this.hasAttributeModifiers()) {
clone.attributeModifiers = LinkedHashMultimap.create(this.attributeModifiers);
}

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Implement OfflinePlayer#isConnected
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
index 9daec0782774ab51ea8091cb8ed9d0a106e34cfa..2bbc39c257965ad91ee360cdfcd3538a0f041c7e 100644
index 96408d505ce80799868ff84554a3b0b25adabb22..4a875bce9563f3b9351ebecde9b0eb1287beb50e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java
@@ -53,6 +53,13 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
@@ -54,6 +54,13 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa
return this.getPlayer() != null;
}
@ -23,7 +23,7 @@ index 9daec0782774ab51ea8091cb8ed9d0a106e34cfa..2bbc39c257965ad91ee360cdfcd3538a
public String getName() {
Player player = this.getPlayer();
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9afc24a451010298c59b588785626c5b7f5f4d31..ea8eca5a7359d68095d073ea725f12a45e44dcaa 100644
index de5d0b29d9b4631e7197520de7eb99ac6d9c8165..3d061f6dd550e395ec572ecdbd80b8d2d36a4453 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -237,6 +237,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View file

@ -1,21 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com>
Date: Sat, 23 Sep 2023 16:36:54 +0200
Subject: [PATCH] Fix SuspiciousStewMeta
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSuspiciousStew.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSuspiciousStew.java
index df1df2ad759622b5b1355fae322cbc0333c932fb..bafc7215a3577c857fb7585f0d6dec54e1b95e90 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSuspiciousStew.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSuspiciousStew.java
@@ -20,8 +20,8 @@ import org.bukkit.potion.PotionEffectType;
@DelegateDeserialization(CraftMetaItem.SerializableMeta.class)
public class CraftMetaSuspiciousStew extends CraftMetaItem implements SuspiciousStewMeta {
- static final ItemMetaKey DURATION = new ItemMetaKey("EffectDuration", "duration");
- static final ItemMetaKey EFFECTS = new ItemMetaKey("Effects", "effects");
+ static final ItemMetaKey DURATION = new ItemMetaKey("duration", "duration"); // Paper
+ static final ItemMetaKey EFFECTS = new ItemMetaKey(net.minecraft.world.item.SuspiciousStewItem.EFFECTS_TAG, "effects"); // Paper
static final ItemMetaKey ID = new ItemMetaKey("id", "id");
private List<PotionEffect> customEffects;

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Fix UnsafeValues#loadAdvancement
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index 1cdcd673e67090b6ba3ec7b38bd062c0d8f7308a..509f8487a170f3dc84b091acf16df26e42391189 100644
index 187854e8c560234710763f8e92c1a026550ba60d..b9183a9a657c2cd320fca0f15db0dae6827546f1 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -316,7 +316,27 @@ public final class CraftMagicNumbers implements UnsafeValues {

View file

@ -6,10 +6,10 @@ Subject: [PATCH] Add player idle duration API
Implements API for getting and resetting a player's idle duration.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 3155a7978f9cb77c7cfe299f751f2231ba71c478..7523db3196409c5d04069ff4bd22ba06bcfbbe84 100644
index 3d061f6dd550e395ec572ecdbd80b8d2d36a4453..f983f5dfb0bc5a4aee3971c13d2b84f12519edec 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -3271,6 +3271,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -3286,6 +3286,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
// Paper end

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Don't check if we can see non-visible entities
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index aaca1b2394641a74bbe1309f150507a49b8e1459..0801bbba0ea2a5d6e19d503ee31ad6717f1d5234 100644
index 4793871db838aba8b0370ada299406d3fb904c14..886ddaf896c8385a744e9abe4dcd399bc693f60b 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -1752,7 +1752,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Allow null itemstack for Player#sendEquipmentChange
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 350d4e75401d2adda3f60e5637eac3d6c278c928..838ea7a08df425adac7986d1bc6bf13ca8ce956b 100644
index f983f5dfb0bc5a4aee3971c13d2b84f12519edec..cd58b5e338ece695cddab37b5bcce730b04dc63d 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1041,7 +1041,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

View file

@ -6,7 +6,7 @@ Subject: [PATCH] Add API to get the collision shape of a block before it's
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 d5719d943946acd77dc9b26299c9f3d12d86062f..ee5e11e5f32b92390dae176e8538a09c3553d9f5 100644
index 37c5d66dafd877d2231c8d191f5a84748bf24551..d6480b44f94f1a8d21eb5b5ded2956889883c560 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java
@@ -678,6 +678,20 @@ public class CraftBlockData implements BlockData {

View file

@ -31,7 +31,7 @@ index 0e7811ae2a8731ae7475aabd2322e56ab364bc32..b5d6a7eaa24d9968e159d77a4295be00
if (entity.valid) {
MinecraftServer.LOGGER.error("Attempted Double World add on {}", entity, new Throwable());
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 55feebb8e75bdeab4d089a1d6f80be49996dfcb6..7fa7cb2a567c90a4bb7cf20c7182c45395b6ea32 100644
index 0e299073086cc06324794ca8b6e74674a70cc77a..5fec06e12ede63496f75ccf43f52b16301d11eb0 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -624,7 +624,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S

View file

@ -5,7 +5,7 @@ Subject: [PATCH] Add Structure check API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index d3ea1097a3df1af221d190aaa8c7c246f75e2b90..a8131d68c7b8f762be6ee39e3a4f7f3edb978fe9 100644
index da5f8dc6b4fce78f5f6278396d58474a5cc13f12..4ae206af89a413edb09319fd4bce2a94c575c617 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -230,6 +230,12 @@ public class CraftWorld extends CraftRegionAccessor implements World {

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Fix CraftMetaItem#getAttributeModifier duplication check
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index 61813713aa2de0a4761d423e6a2d569fd776f88b..95c75aadea68e9b60caa935a88f2829e36948ae5 100644
index c425b21ddc12917ab9aa10869ff3aec622ce2d9a..536e80886c2393edaf526f460f49dae8c3b40295 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -1167,7 +1167,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@@ -1174,7 +1174,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
Preconditions.checkNotNull(modifier, "AttributeModifier cannot be null");
this.checkAttributeList();
for (Map.Entry<Attribute, AttributeModifier> entry : this.attributeModifiers.entries()) {

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Improve Registry
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
index 253b4cf66e94faf0bc8861318ae7549f52cd29d1..9131fc3a56819ae3e2d754fbe5d8815c71ab9ab3 100644
index 13270b2197c594dc03d089aea46aa410dd9efd13..493d054cdda04bc08ab610a09c2a1d0290ae046c 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java
@@ -84,6 +84,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
@@ -126,6 +126,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
private final Class<? super B> bukkitClass;
private final Map<NamespacedKey, B> cache = new HashMap<>();
@ -16,7 +16,7 @@ index 253b4cf66e94faf0bc8861318ae7549f52cd29d1..9131fc3a56819ae3e2d754fbe5d8815c
private final net.minecraft.core.Registry<M> minecraftRegistry;
private final BiFunction<NamespacedKey, M, B> minecraftToBukkit;
private boolean init;
@@ -128,6 +129,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
@@ -170,6 +171,7 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
}
this.cache.put(namespacedKey, bukkit);
@ -24,7 +24,7 @@ index 253b4cf66e94faf0bc8861318ae7549f52cd29d1..9131fc3a56819ae3e2d754fbe5d8815c
return bukkit;
}
@@ -150,4 +152,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
@@ -192,4 +194,11 @@ public class CraftRegistry<B extends Keyed, M> implements Registry<B> {
return this.minecraftToBukkit.apply(namespacedKey, minecraft);
}
@ -37,34 +37,34 @@ index 253b4cf66e94faf0bc8861318ae7549f52cd29d1..9131fc3a56819ae3e2d754fbe5d8815c
+ // Paper end - improve Registry
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java
index ff365d4f3745adcfe87a4aa0f8a940decccc0f16..c4a63bdd3eda590945ba0c8e7e6e8b9ba4a60ce3 100644
index 2e6b04a150eae4fbac7b4c6413d81b755ac87be2..6cce693a24e0b1b485832935d398fb26c91e0be0 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimMaterial.java
@@ -17,6 +17,7 @@ public class CraftTrimMaterial implements TrimMaterial {
@@ -34,6 +34,7 @@ public class CraftTrimMaterial implements TrimMaterial, Handleable<net.minecraft
@Override
@NotNull
public NamespacedKey getKey() {
+ if (true) return java.util.Objects.requireNonNull(org.bukkit.Registry.TRIM_MATERIAL.getKey(this), () -> this + " doesn't have a key"); // Paper
return this.key;
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java
index 89449c09a4fbf475805f76cd31a0f9e5c1109210..c062c349bf5129cf9b5f637f09dac13b8f8c1796 100644
index 5a570bae1262f768d86a6078bfded427294ed135..bf13fe2f858ee35c84c5a1f3fb2f7df61a62315b 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/trim/CraftTrimPattern.java
@@ -17,6 +17,7 @@ public class CraftTrimPattern implements TrimPattern {
@@ -34,6 +34,7 @@ public class CraftTrimPattern implements TrimPattern, Handleable<net.minecraft.w
@Override
@NotNull
public NamespacedKey getKey() {
+ if (true) return java.util.Objects.requireNonNull(org.bukkit.Registry.TRIM_PATTERN.getKey(this), () -> this + " doesn't have a key"); // Paper
return this.key;
}
diff --git a/src/test/java/org/bukkit/PerRegistryTest.java b/src/test/java/org/bukkit/PerRegistryTest.java
index 9e553a8858750c494456f04abd7bffd1d257308c..6e3062da8840fc7118b59ddb0d6871c9a3178584 100644
--- a/src/test/java/org/bukkit/PerRegistryTest.java
+++ b/src/test/java/org/bukkit/PerRegistryTest.java
@@ -46,19 +46,22 @@ public class PerRegistryTest extends AbstractTestingBase {
}
diff --git a/src/test/java/org/bukkit/registry/PerRegistryTest.java b/src/test/java/org/bukkit/registry/PerRegistryTest.java
index 1c4966520b6401e6571aa44d5934dfa280bc80e3..010de6fbb75eb5d51639695d260f916072fdb22d 100644
--- a/src/test/java/org/bukkit/registry/PerRegistryTest.java
+++ b/src/test/java/org/bukkit/registry/PerRegistryTest.java
@@ -49,19 +49,22 @@ public class PerRegistryTest extends AbstractTestingBase {
@ParameterizedTest
@MethodSource("data")
@ -91,7 +91,7 @@ index 9e553a8858750c494456f04abd7bffd1d257308c..6e3062da8840fc7118b59ddb0d6871c9
this.assertSameMatchWithKeyMessage(registry, element, key.toString()); // namespace:key
this.assertSameMatchWithKeyMessage(registry, element, key.getKey()); // key
@@ -69,7 +72,7 @@ public class PerRegistryTest extends AbstractTestingBase {
@@ -72,7 +75,7 @@ public class PerRegistryTest extends AbstractTestingBase {
});
}

View file

@ -18,10 +18,10 @@ index 182180275be3bf90b9f8e66dcf19ad6ce02136bf..2759fa8768cfa7a38af7266a8e58af5f
// Paper start - send while respecting visibility
private static void sendSoundEffect(Player fromEntity, double x, double y, double z, SoundEvent soundEffect, SoundSource soundCategory, float volume, float pitch) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 81d89d2d3c3144e6b4667597d39eddcceb9f1913..5743013c527c80f2dda444b5bf2d8872ff000386 100644
index cd58b5e338ece695cddab37b5bcce730b04dc63d..a85f7f56bdabe246ce47ab83f4000bd779cf5c3b 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1779,6 +1779,49 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1794,6 +1794,49 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
Preconditions.checkArgument(exp >= 0, "Total experience points must not be negative (%s)", exp);
this.getHandle().totalExperience = exp;
}

View file

@ -264,7 +264,7 @@ index 93f79e5c7244fc155364a35a75a62d42f2d1ee27..b9e90f589749dfc9324c4aa2062c505f
public static Cancellable handleStatisticsIncrease(net.minecraft.world.entity.player.Player entityHuman, net.minecraft.stats.Stat<?> statistic, int current, int newValue) {
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index 414a67096478ca57be54bd2ce565e7d50c8dd100..9dac41e4a93911f920204ed72ce9fe419b5bf696 100644
index e1f9a603e7adf3468faa9bb6d93dd3339327b47e..fdb2c65ca47df95ef5735216eb9b1c1380e41f32 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -61,6 +61,15 @@ public final class CraftItemStack extends ItemStack {

View file

@ -20347,7 +20347,7 @@ index 13209267c26f46492a92e820889a9be0bd2287a0..f3b96a921e7d085b51da62fa5493384a
this.desiredChunksPerTick = Double.isNaN((double)desiredBatchSize) ? 0.01F : Mth.clamp(desiredBatchSize, 0.01F, 64.0F);
if (this.unacknowledgedBatches == 0) {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 401658927b6bf4946709f0f2aeba01f944ec4dfb..fc540b879230b5a5f8d6e01fa435ce140849a712 100644
index 50fdc6c1a4aeaa5a6deacc2e7b5aecc8f9016b79..58788d9fb5033a288454ce9b52c7efa71c603a09 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -744,6 +744,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@ -22531,7 +22531,7 @@ index 1eff5e4800ad3b628a42113fb3ba67458e56a40d..d4e0ef75dd12709a0dcf9193821c30b8
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 28529732f23fefc8f642a44b95779f9e1cc2bb64..cbe6e8dae17b30905a28167449f1799b66d403c1 100644
index 2edf73bae205c6ce9ad1811dffc4028ca54130b1..d6acca68e885b137ab097cabadd9dbf49798341f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1384,7 +1384,6 @@ public final class CraftServer implements Server {
@ -22663,10 +22663,10 @@ index 5cc2deb8f170452c7049743068bf281f67687db9..84ec87b889d0d450293310e18c34aef5
// Paper start - implement pointers
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 5743013c527c80f2dda444b5bf2d8872ff000386..5c1e016de183933c5458deaae257b978e6350307 100644
index a85f7f56bdabe246ce47ab83f4000bd779cf5c3b..39b25c2478eadd373383a3445a7f27ea30d18550 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -3334,31 +3334,31 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -3349,31 +3349,31 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public int getViewDistance() {

View file

@ -5,7 +5,7 @@ Subject: [PATCH] incremental chunk and player saving
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 103d2b4169215a8931d33b499fbfeb2354163712..ca352fc1a3d206f9a1fc52eba787e66040d5882c 100644
index b27cdfd527d9234b51eba7bb642968fa886d460e..a0972ad233ce1582fd4d054eba282d47ddbc10d3 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -908,7 +908,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa

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