From b58063a9492bdcee9601e76ae6d3eca1452f2824 Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Tue, 12 Jul 2022 10:16:05 -0700 Subject: [PATCH] Updated Upstream (Bukkit/CraftBukkit/Spigot) (#8124) 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: 607ce370 SPIGOT-7069: Material.BARREL has Directional data class, should also be Openable f14cea82 SPIGOT-7070: Material.SCULK_VEIN has Waterlogged data class, should also be MultipleFacing 8e43b278 PR-767: Add support checking/survivability methods for BlockData b3dee151 SPIGOT-7083: Add Boat.WoodenType, Boat.Status; deprecate TreeSpecies CraftBukkit Changes: 9a8e08010 SPIGOT-7069: Material.BARREL has Directional data class, should also be Openable 26bd88ccd SPIGOT-7070: Material.SCULK_VEIN has Waterlogged data class, should also be MultipleFacing 7ba06e15b SPIGOT-7095: StructureGrowEvent doesn't fire for mangrove propagules growing to a tree 163e35c91 PR-1079: Add support checking/survivability methods for BlockData 4230f8f0e SPIGOT-7083: Add Boat.WoodenType, Boat.Status; deprecate TreeSpecies Spigot Changes: 14a2382f Rebuild patches --- patches/api/0156-Material-API-additions.patch | 6 +-- .../0176-Fix-Spigot-annotation-mistakes.patch | 6 +-- ...-Add-methods-to-get-translation-keys.patch | 6 +-- ...et-Material-from-Boats-and-Minecarts.patch | 19 ++++----- ...Cache-the-result-of-Material-isBlock.patch | 8 ++-- patches/api/0278-Item-Rarity-API.patch | 4 +- ...304-Attributes-API-for-item-defaults.patch | 4 +- ...Collidable-methods-to-various-places.patch | 4 +- ...246-Optimize-CraftBlockData-Creation.patch | 4 +- .../0493-Cache-block-data-strings.patch | 4 +- .../server/0506-Optimise-getType-calls.patch | 4 +- ...-get-Material-from-Boats-and-Minecar.patch | 10 ++--- ...s-missing-EntityDropItemEvent-calls.patch} | 0 ...tureGrowEvent-for-mangrove-propagule.patch | 39 ------------------- ...debug-information-to-chat-packet-er.patch} | 0 ...PE.patch => 0923-Fix-Bee-flower-NPE.patch} | 0 work/Bukkit | 2 +- work/CraftBukkit | 2 +- work/Spigot | 2 +- 19 files changed, 40 insertions(+), 84 deletions(-) rename patches/server/{0922-Add-various-missing-EntityDropItemEvent-calls.patch => 0921-Add-various-missing-EntityDropItemEvent-calls.patch} (100%) delete mode 100644 patches/server/0921-Call-StructureGrowEvent-for-mangrove-propagule.patch rename patches/server/{0923-Add-some-minimal-debug-information-to-chat-packet-er.patch => 0922-Add-some-minimal-debug-information-to-chat-packet-er.patch} (100%) rename patches/server/{0924-Fix-Bee-flower-NPE.patch => 0923-Fix-Bee-flower-NPE.patch} (100%) diff --git a/patches/api/0156-Material-API-additions.patch b/patches/api/0156-Material-API-additions.patch index 421ed84d3..8279b57ea 100644 --- a/patches/api/0156-Material-API-additions.patch +++ b/patches/api/0156-Material-API-additions.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Material API additions diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 2f53bb42dc6a09ed35ec1335d23adf07289575fa..e40766c56fea6daae9f84fbdeb0b3f533e28d0b7 100644 +index 8314acc3cacb9a0da91097f1615868e663baceb2..e995480855e113d1f5a6f6b4972795005b9d9ed0 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -106,6 +106,7 @@ import org.jetbrains.annotations.Nullable; +@@ -108,6 +108,7 @@ import org.jetbrains.annotations.Nullable; /** * An enum of all material IDs accepted by the official server and client */ @@ -16,7 +16,7 @@ index 2f53bb42dc6a09ed35ec1335d23adf07289575fa..e40766c56fea6daae9f84fbdeb0b3f53 public enum Material implements Keyed { // AIR(9648, 0), -@@ -4110,6 +4111,22 @@ public enum Material implements Keyed { +@@ -4112,6 +4113,22 @@ public enum Material implements Keyed { } } diff --git a/patches/api/0176-Fix-Spigot-annotation-mistakes.patch b/patches/api/0176-Fix-Spigot-annotation-mistakes.patch index 77b6221d7..dfa453e72 100644 --- a/patches/api/0176-Fix-Spigot-annotation-mistakes.patch +++ b/patches/api/0176-Fix-Spigot-annotation-mistakes.patch @@ -79,10 +79,10 @@ index 57cb548683f7b2972c998afd34176952426f8b47..d4c87bfed81b2d73919705912f59fab0 if (this.world == null) { return null; diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index e40766c56fea6daae9f84fbdeb0b3f533e28d0b7..80b79ffa10ce7eba30d1df4ffa0e928be42f445f 100644 +index e995480855e113d1f5a6f6b4972795005b9d9ed0..f3e50dee6cf453d6621dcdbef0047335147f4d0c 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4140,11 +4140,11 @@ public enum Material implements Keyed { +@@ -4142,11 +4142,11 @@ public enum Material implements Keyed { } /** @@ -96,7 +96,7 @@ index e40766c56fea6daae9f84fbdeb0b3f533e28d0b7..80b79ffa10ce7eba30d1df4ffa0e928b public boolean isLegacy() { return legacy; } -@@ -4215,8 +4215,10 @@ public enum Material implements Keyed { +@@ -4217,8 +4217,10 @@ public enum Material implements Keyed { * Gets the MaterialData class associated with this Material * * @return MaterialData associated with this Material diff --git a/patches/api/0221-Add-methods-to-get-translation-keys.patch b/patches/api/0221-Add-methods-to-get-translation-keys.patch index 80ce30165..1361cdee4 100644 --- a/patches/api/0221-Add-methods-to-get-translation-keys.patch +++ b/patches/api/0221-Add-methods-to-get-translation-keys.patch @@ -144,10 +144,10 @@ index dddc450e1372409c513bbedc0acfc80d9f749333..38a1b02c006af766b0c10ee65e9fc28f + // Paper end } diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 80b79ffa10ce7eba30d1df4ffa0e928be42f445f..04e07abc29ed1c4eae27529307c4fa11b6fbc3f6 100644 +index f3e50dee6cf453d6621dcdbef0047335147f4d0c..f0042c25a19860645d0c869fad58625b6ecafb6e 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -107,7 +107,7 @@ import org.jetbrains.annotations.Nullable; +@@ -109,7 +109,7 @@ import org.jetbrains.annotations.Nullable; * An enum of all material IDs accepted by the official server and client */ @SuppressWarnings({"DeprecatedIsStillUsed", "deprecation"}) // Paper @@ -156,7 +156,7 @@ index 80b79ffa10ce7eba30d1df4ffa0e928be42f445f..04e07abc29ed1c4eae27529307c4fa11 // AIR(9648, 0), STONE(22948), -@@ -4125,6 +4125,23 @@ public enum Material implements Keyed { +@@ -4127,6 +4127,23 @@ public enum Material implements Keyed { } return false; } diff --git a/patches/api/0246-Add-API-to-get-Material-from-Boats-and-Minecarts.patch b/patches/api/0246-Add-API-to-get-Material-from-Boats-and-Minecarts.patch index a2eff2fae..0a774fcef 100644 --- a/patches/api/0246-Add-API-to-get-Material-from-Boats-and-Minecarts.patch +++ b/patches/api/0246-Add-API-to-get-Material-from-Boats-and-Minecarts.patch @@ -5,27 +5,22 @@ Subject: [PATCH] Add API to get Material from Boats and Minecarts diff --git a/src/main/java/org/bukkit/entity/Boat.java b/src/main/java/org/bukkit/entity/Boat.java -index 24751b5c4e3bc24bdfa85af8f6fcba37413aa002..e0d0537606d4f9a3fe588ebf7d02f314c0359335 100644 +index e5d5d2c944df1e9a81b38d3854fbe70c166588d1..3f848572935a73f637c6a91a97fa70041b0c6361 100644 --- a/src/main/java/org/bukkit/entity/Boat.java +++ b/src/main/java/org/bukkit/entity/Boat.java -@@ -1,5 +1,6 @@ - package org.bukkit.entity; - -+import org.bukkit.Material; - import org.bukkit.TreeSpecies; - import org.jetbrains.annotations.NotNull; - -@@ -103,4 +104,14 @@ public interface Boat extends Vehicle { - */ - @Deprecated - public void setWorkOnLand(boolean workOnLand); +@@ -173,4 +173,16 @@ public interface Boat extends Vehicle { + ON_LAND, + IN_AIR; + } + + // Paper start + /** + * Gets the {@link Material} that represents this Boat type. + * + * @return the boat material. ++ * @deprecated use {@link #getBoatType()} and {@link Type#getMaterial()} + */ ++ @Deprecated + @NotNull + public Material getBoatMaterial(); + // Paper end diff --git a/patches/api/0272-Cache-the-result-of-Material-isBlock.patch b/patches/api/0272-Cache-the-result-of-Material-isBlock.patch index 12980bd88..b3ee0e329 100644 --- a/patches/api/0272-Cache-the-result-of-Material-isBlock.patch +++ b/patches/api/0272-Cache-the-result-of-Material-isBlock.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cache the result of Material#isBlock diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 04e07abc29ed1c4eae27529307c4fa11b6fbc3f6..4c8c21982f825bb70ff5e14098836215bdb0cd17 100644 +index f0042c25a19860645d0c869fad58625b6ecafb6e..1a718a69e97cabda6a1c78529110193c14899949 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4069,6 +4069,7 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata +@@ -4071,6 +4071,7 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata public final Class data; private final boolean legacy; private final NamespacedKey key; @@ -16,7 +16,7 @@ index 04e07abc29ed1c4eae27529307c4fa11b6fbc3f6..4c8c21982f825bb70ff5e14098836215 private Material(final int id) { this(id, 64); -@@ -4275,6 +4276,11 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata +@@ -4277,6 +4278,11 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata * @return true if this material is a block */ public boolean isBlock() { @@ -28,7 +28,7 @@ index 04e07abc29ed1c4eae27529307c4fa11b6fbc3f6..4c8c21982f825bb70ff5e14098836215 switch (this) { // case ACACIA_BUTTON: -@@ -5391,6 +5397,7 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata +@@ -5393,6 +5399,7 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata static { for (Material material : values()) { BY_NAME.put(material.name(), material); diff --git a/patches/api/0278-Item-Rarity-API.patch b/patches/api/0278-Item-Rarity-API.patch index a628e0f45..27f16fd3c 100644 --- a/patches/api/0278-Item-Rarity-API.patch +++ b/patches/api/0278-Item-Rarity-API.patch @@ -39,10 +39,10 @@ index 0000000000000000000000000000000000000000..74ef8395cc040ce488c2acaa416db202 + } +} diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 4c8c21982f825bb70ff5e14098836215bdb0cd17..663452b8009d2899f8a196a20b6337024ce3caf0 100644 +index 1a718a69e97cabda6a1c78529110193c14899949..4e6273c609630be7c196d4eed54fbca097eaf7d4 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4143,6 +4143,17 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata +@@ -4145,6 +4145,17 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata public @NotNull String translationKey() { return Bukkit.getUnsafe().getTranslationKey(this); } diff --git a/patches/api/0304-Attributes-API-for-item-defaults.patch b/patches/api/0304-Attributes-API-for-item-defaults.patch index 2a59affc0..6ad130b50 100644 --- a/patches/api/0304-Attributes-API-for-item-defaults.patch +++ b/patches/api/0304-Attributes-API-for-item-defaults.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Attributes API for item defaults diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 663452b8009d2899f8a196a20b6337024ce3caf0..12ed298cb585107370d4400902a651f43bd05d78 100644 +index 4e6273c609630be7c196d4eed54fbca097eaf7d4..6eae173f589cb90eb6e41b5b75e13a3c02e7901d 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4154,6 +4154,21 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata +@@ -4156,6 +4156,21 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata public io.papermc.paper.inventory.ItemRarity getItemRarity() { return Bukkit.getUnsafe().getItemRarity(this); } diff --git a/patches/api/0337-Add-isCollidable-methods-to-various-places.patch b/patches/api/0337-Add-isCollidable-methods-to-various-places.patch index 78338a4c0..4cd674315 100644 --- a/patches/api/0337-Add-isCollidable-methods-to-various-places.patch +++ b/patches/api/0337-Add-isCollidable-methods-to-various-places.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add isCollidable methods to various places diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 12ed298cb585107370d4400902a651f43bd05d78..2d39ecea67cd033858eaa713e405260a87c718a3 100644 +index 6eae173f589cb90eb6e41b5b75e13a3c02e7901d..1d6baee05643607baa40a07022576906ea61a92f 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -4169,6 +4169,16 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata +@@ -4171,6 +4171,16 @@ public enum Material implements Keyed, net.kyori.adventure.translation.Translata public Multimap getItemAttributes(@NotNull EquipmentSlot equipmentSlot) { return Bukkit.getUnsafe().getItemAttributes(this, equipmentSlot); } diff --git a/patches/server/0246-Optimize-CraftBlockData-Creation.patch b/patches/server/0246-Optimize-CraftBlockData-Creation.patch index e3172812e..6f729d992 100644 --- a/patches/server/0246-Optimize-CraftBlockData-Creation.patch +++ b/patches/server/0246-Optimize-CraftBlockData-Creation.patch @@ -26,10 +26,10 @@ index 06525d7687fec5b37cd6020ad1bac998b194e89f..942dae5116840a2e8a992f0830574ab2 // Paper start protected boolean shapeExceedsCube = true; 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 15aff39d8d68430cc35ab134c0ab55cf50575cce..8ec78b26d6bfbcdad443c9649e35f79dd336b095 100644 +index 8a4dcbbfdc4ef9f7fcd1eb04db010f93f5f06933..514e1ab74cd24cfcf1dd031e69a8ebfaddf9d3dc 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -@@ -533,7 +533,17 @@ public class CraftBlockData implements BlockData { +@@ -539,7 +539,17 @@ public class CraftBlockData implements BlockData { return craft; } diff --git a/patches/server/0493-Cache-block-data-strings.patch b/patches/server/0493-Cache-block-data-strings.patch index 916bd6609..0e7d0856b 100644 --- a/patches/server/0493-Cache-block-data-strings.patch +++ b/patches/server/0493-Cache-block-data-strings.patch @@ -17,10 +17,10 @@ index 9ce0c366b81ee8468cfcca1bd9fb8ed49ffea0ba..343eb9e6417f94bec66b4d9ef583e04d if (this.isSameThread()) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -index 8ec78b26d6bfbcdad443c9649e35f79dd336b095..37a6d050ae46461ad4b9b6c0fc9b9c2879d9b6fb 100644 +index 514e1ab74cd24cfcf1dd031e69a8ebfaddf9d3dc..d02a5e383190fc4713141d953efc111bb2f7f89c 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -@@ -500,9 +500,39 @@ public class CraftBlockData implements BlockData { +@@ -506,9 +506,39 @@ public class CraftBlockData implements BlockData { Preconditions.checkState(CraftBlockData.MAP.put(nms, bukkit) == null, "Duplicate mapping %s->%s", nms, bukkit); } diff --git a/patches/server/0506-Optimise-getType-calls.patch b/patches/server/0506-Optimise-getType-calls.patch index bc67ce900..5d53107ff 100644 --- a/patches/server/0506-Optimise-getType-calls.patch +++ b/patches/server/0506-Optimise-getType-calls.patch @@ -67,10 +67,10 @@ index 0a755f38fae9dc84440f43113920c5b4c6d8218b..7b9e943b391c061782fccd2b8d705cee public void setFlag(int flag) { diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -index 37a6d050ae46461ad4b9b6c0fc9b9c2879d9b6fb..ba3c0437d416b45e6444d16fd631c94665873cbb 100644 +index d02a5e383190fc4713141d953efc111bb2f7f89c..aae7f7ab4931db8f955c3055157fe01f99931ec7 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -@@ -44,7 +44,7 @@ public class CraftBlockData implements BlockData { +@@ -50,7 +50,7 @@ public class CraftBlockData implements BlockData { @Override public Material getMaterial() { diff --git a/patches/server/0547-Implement-API-to-get-Material-from-Boats-and-Minecar.patch b/patches/server/0547-Implement-API-to-get-Material-from-Boats-and-Minecar.patch index 69d3ef793..33941db03 100644 --- a/patches/server/0547-Implement-API-to-get-Material-from-Boats-and-Minecar.patch +++ b/patches/server/0547-Implement-API-to-get-Material-from-Boats-and-Minecar.patch @@ -5,23 +5,23 @@ Subject: [PATCH] Implement API to get Material from Boats and Minecarts diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java -index 47f95fb26793fbf6c5c37187d4958ee5ba93f060..39e7aeb409a39bd8cd8200b18dd3da1e427519ab 100644 +index 5871cd149fe07e97c5d68ffd83dae4d3fc6bcf03..40debf1130a8e6cc9510061976a01050cd8ddc05 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftBoat.java -@@ -65,6 +65,13 @@ public class CraftBoat extends CraftVehicle implements Boat { +@@ -80,6 +80,13 @@ public class CraftBoat extends CraftVehicle implements Boat { this.getHandle().landBoats = workOnLand; } + // Paper start + @Override + public org.bukkit.Material getBoatMaterial() { -+ return org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(getHandle().getDropItem()); ++ return this.getBoatType().getMaterial(); + } + // Paper end + @Override - public net.minecraft.world.entity.vehicle.Boat getHandle() { - return (net.minecraft.world.entity.vehicle.Boat) entity; + public Status getStatus() { + return CraftBoat.boatStatusFromNms(this.getHandle().status); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java index 053112d7411caa6f439bd344e74aff8c844d93ac..067fcc1f44d59dd675a9cc5485234c87366ffe10 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecart.java diff --git a/patches/server/0922-Add-various-missing-EntityDropItemEvent-calls.patch b/patches/server/0921-Add-various-missing-EntityDropItemEvent-calls.patch similarity index 100% rename from patches/server/0922-Add-various-missing-EntityDropItemEvent-calls.patch rename to patches/server/0921-Add-various-missing-EntityDropItemEvent-calls.patch diff --git a/patches/server/0921-Call-StructureGrowEvent-for-mangrove-propagule.patch b/patches/server/0921-Call-StructureGrowEvent-for-mangrove-propagule.patch deleted file mode 100644 index b332c9254..000000000 --- a/patches/server/0921-Call-StructureGrowEvent-for-mangrove-propagule.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Noah van der Aa -Date: Mon, 20 Jun 2022 15:46:46 +0200 -Subject: [PATCH] Call StructureGrowEvent for mangrove propagule - - -diff --git a/src/main/java/net/minecraft/world/level/block/MangrovePropaguleBlock.java b/src/main/java/net/minecraft/world/level/block/MangrovePropaguleBlock.java -index 4eaf75ef7362ee781762f5e8def6bc4d986e9db7..0a60918ec9b2374cd9ae375a8d36ed1a212c19ae 100644 ---- a/src/main/java/net/minecraft/world/level/block/MangrovePropaguleBlock.java -+++ b/src/main/java/net/minecraft/world/level/block/MangrovePropaguleBlock.java -@@ -90,7 +90,28 @@ public class MangrovePropaguleBlock extends SaplingBlock implements SimpleWaterl - public void randomTick(BlockState state, ServerLevel world, BlockPos pos, RandomSource random) { - if (!isHanging(state)) { - if (random.nextInt(7) == 0) { -+ world.captureTreeGeneration = true; // Paper - this.advanceTree(world, pos, state, random); -+ // Paper start -+ world.captureTreeGeneration = false; -+ if (world.capturedBlockStates.size() > 0) { -+ org.bukkit.TreeType treeType = SaplingBlock.treeType; -+ SaplingBlock.treeType = null; -+ org.bukkit.Location location = new org.bukkit.Location(world.getWorld(), pos.getX(), pos.getY(), pos.getZ()); -+ java.util.List blocks = new java.util.ArrayList<>(world.capturedBlockStates.values()); -+ world.capturedBlockStates.clear(); -+ org.bukkit.event.world.StructureGrowEvent event = null; -+ if (treeType != null) { -+ event = new org.bukkit.event.world.StructureGrowEvent(location, treeType, false, null, blocks); -+ org.bukkit.Bukkit.getPluginManager().callEvent(event); -+ } -+ if (event == null || !event.isCancelled()) { -+ for (org.bukkit.block.BlockState blockstate : blocks) { -+ blockstate.update(true); -+ } -+ } -+ } -+ // Paper end - } - - } else { diff --git a/patches/server/0923-Add-some-minimal-debug-information-to-chat-packet-er.patch b/patches/server/0922-Add-some-minimal-debug-information-to-chat-packet-er.patch similarity index 100% rename from patches/server/0923-Add-some-minimal-debug-information-to-chat-packet-er.patch rename to patches/server/0922-Add-some-minimal-debug-information-to-chat-packet-er.patch diff --git a/patches/server/0924-Fix-Bee-flower-NPE.patch b/patches/server/0923-Fix-Bee-flower-NPE.patch similarity index 100% rename from patches/server/0924-Fix-Bee-flower-NPE.patch rename to patches/server/0923-Fix-Bee-flower-NPE.patch diff --git a/work/Bukkit b/work/Bukkit index d41796deb..607ce370a 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit d41796deb5e14fd69558db71324e8feb12a1effa +Subproject commit 607ce370a5e526985c050c9cec6abfc5fb2f475d diff --git a/work/CraftBukkit b/work/CraftBukkit index 991aeda12..9a8e08010 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 991aeda1218e72e9237942071e7ea55cc77b541c +Subproject commit 9a8e080108222cf09aed735a3b5089d3da6350c6 diff --git a/work/Spigot b/work/Spigot index 475f60088..14a2382f7 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit 475f600885a8f58aee83aa7473f37dfe6b8ac3b5 +Subproject commit 14a2382f7da41c880fdbf64536fb222df98dc111