diff --git a/Paper b/Paper index 21fbc3196..8fcef3c1f 160000 --- a/Paper +++ b/Paper @@ -1 +1 @@ -Subproject commit 21fbc319639d72e8fa325527994373a0ebc538bd +Subproject commit 8fcef3c1f6df0c7dcacf36c056e4feb9759f0953 diff --git a/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch b/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch index 888478589..1f43b11a3 100644 --- a/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch +++ b/patches/api/0033-Fix-javadoc-warnings-missing-param-and-return.patch @@ -1490,10 +1490,10 @@ index e7d905b1146b2bdd2da5bdeb6bf3541fb181d59e..1fab68c9de96b0d362ebf85fd675cc19 /** diff --git a/src/main/java/org/bukkit/inventory/meta/BookMeta.java b/src/main/java/org/bukkit/inventory/meta/BookMeta.java -index 0cfd4b02cc2095da56b4dc8d4ea4e9b4a95f513c..1378c8fc2fd187035fc159c8d025d58b5a61f535 100644 +index fdbd32c4bb6428f2dde484ecb53acdaaba2a0d18..7357c166115f346a1efebd0f0f2d5491de6a9a39 100644 --- a/src/main/java/org/bukkit/inventory/meta/BookMeta.java +++ b/src/main/java/org/bukkit/inventory/meta/BookMeta.java -@@ -305,6 +305,9 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -313,6 +313,9 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { BookMeta clone(); // Spigot start diff --git a/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch b/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch index 81563c3e9..e8e50ed68 100644 --- a/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch +++ b/patches/api/0039-Conflict-on-change-for-adventure-deprecations.patch @@ -626,10 +626,10 @@ index b06995aa57aa9cba0bb59f1d26d81015619a08e6..5e33fe46ab9bb034acc6a38a3c00c33c public abstract String getTitle(); } diff --git a/src/main/java/org/bukkit/inventory/meta/BookMeta.java b/src/main/java/org/bukkit/inventory/meta/BookMeta.java -index 1378c8fc2fd187035fc159c8d025d58b5a61f535..2cbeb4ced49cab055e96268077df2ee2e445c980 100644 +index 7357c166115f346a1efebd0f0f2d5491de6a9a39..b90cb7aa98ea40573557a80ca5c7be7c5c494956 100644 --- a/src/main/java/org/bukkit/inventory/meta/BookMeta.java +++ b/src/main/java/org/bukkit/inventory/meta/BookMeta.java -@@ -234,7 +234,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -242,7 +242,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { * @deprecated in favour of {@link #page(int)} */ @NotNull @@ -638,7 +638,7 @@ index 1378c8fc2fd187035fc159c8d025d58b5a61f535..2cbeb4ced49cab055e96268077df2ee2 String getPage(int page); /** -@@ -250,7 +250,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -258,7 +258,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { * @param data the data to set for that page * @deprecated in favour of {@link #page(int, net.kyori.adventure.text.Component)} */ @@ -647,7 +647,7 @@ index 1378c8fc2fd187035fc159c8d025d58b5a61f535..2cbeb4ced49cab055e96268077df2ee2 void setPage(int page, @NotNull String data); /** -@@ -260,7 +260,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -268,7 +268,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { * @deprecated in favour of {@link #pages()} */ @NotNull @@ -656,7 +656,7 @@ index 1378c8fc2fd187035fc159c8d025d58b5a61f535..2cbeb4ced49cab055e96268077df2ee2 List getPages(); /** -@@ -270,7 +270,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -278,7 +278,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { * @param pages A list of pages to set the book to use * @deprecated in favour of {@link #pages(List)} */ @@ -665,7 +665,7 @@ index 1378c8fc2fd187035fc159c8d025d58b5a61f535..2cbeb4ced49cab055e96268077df2ee2 void setPages(@NotNull List pages); /** -@@ -280,7 +280,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -288,7 +288,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { * @param pages A list of strings, each being a page * @deprecated in favour of {@link #pages(net.kyori.adventure.text.Component...)} */ @@ -674,7 +674,7 @@ index 1378c8fc2fd187035fc159c8d025d58b5a61f535..2cbeb4ced49cab055e96268077df2ee2 void setPages(@NotNull String... pages); /** -@@ -290,7 +290,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { +@@ -298,7 +298,7 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book { * @param pages A list of strings, each being a page * @deprecated in favour of {@link #addPages(net.kyori.adventure.text.Component...)} */ diff --git a/patches/server/0054-Skip-events-if-there-s-no-listeners.patch b/patches/server/0054-Skip-events-if-there-s-no-listeners.patch index d04cf7351..8a72a4f71 100644 --- a/patches/server/0054-Skip-events-if-there-s-no-listeners.patch +++ b/patches/server/0054-Skip-events-if-there-s-no-listeners.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Skip events if there's no listeners diff --git a/src/main/java/net/minecraft/commands/CommandDispatcher.java b/src/main/java/net/minecraft/commands/CommandDispatcher.java -index 87ddccc0808189cb80bef9d2c9eced362d025140..7cb062043a8a5e997557a23bdf71cbdf8dd457ae 100644 +index 29a395e69aab9c50a45c5fd5ab8795fd8e3ef727..5ae31658fb1183eab66f682cc5477bc526c27753 100644 --- a/src/main/java/net/minecraft/commands/CommandDispatcher.java +++ b/src/main/java/net/minecraft/commands/CommandDispatcher.java -@@ -364,6 +364,7 @@ public class CommandDispatcher { +@@ -367,6 +367,7 @@ public class CommandDispatcher { } private void runSync(EntityPlayer entityplayer, Collection bukkit, RootCommandNode rootcommandnode) { @@ -16,7 +16,7 @@ index 87ddccc0808189cb80bef9d2c9eced362d025140..7cb062043a8a5e997557a23bdf71cbdf // Paper end - Async command map building new com.destroystokyo.paper.event.brigadier.AsyncPlayerSendCommandsEvent(entityplayer.getBukkitEntity(), (RootCommandNode) rootcommandnode, false).callEvent(); // Paper PlayerCommandSendEvent event = new PlayerCommandSendEvent(entityplayer.getBukkitEntity(), new LinkedHashSet<>(bukkit)); -@@ -376,6 +377,7 @@ public class CommandDispatcher { +@@ -379,6 +380,7 @@ public class CommandDispatcher { } } // CraftBukkit end diff --git a/patches/server/0062-Villagers-follow-emerald-blocks.patch b/patches/server/0062-Villagers-follow-emerald-blocks.patch index 3b2b6d203..e99278e8c 100644 --- a/patches/server/0062-Villagers-follow-emerald-blocks.patch +++ b/patches/server/0062-Villagers-follow-emerald-blocks.patch @@ -58,7 +58,7 @@ index 49821f0f26864c35be84a4a4288857a04668fbba..91142526187f96615b5cbd3ed3b68d91 private CraftMerchant craftMerchant; diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -index 37e1b2bf33510c3603efadf219b462e667f573c2..6c13a34a7ab220a3bba1c091f4f6a9e1340212f6 100644 +index 69044827ed6b34924ffd89a977afa06df0dcefc3..6fab69bf5800ef8a37f29c3b6b2103051f36fedf 100644 --- a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java @@ -26,6 +26,7 @@ import net.minecraft.world.entity.ai.goal.PathfinderGoalLookAtTradingPlayer; @@ -69,7 +69,7 @@ index 37e1b2bf33510c3603efadf219b462e667f573c2..6c13a34a7ab220a3bba1c091f4f6a9e1 import net.minecraft.world.entity.ai.goal.PathfinderGoalTradeWithPlayer; import net.minecraft.world.entity.ai.goal.PathfinderGoalUseItem; import net.minecraft.world.entity.monster.EntityEvoker; -@@ -85,6 +86,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -89,6 +90,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { this.goalSelector.a(1, new PathfinderGoalPanic(this, 0.5D)); this.goalSelector.a(1, new PathfinderGoalLookAtTradingPlayer(this)); this.goalSelector.a(2, new EntityVillagerTrader.a(this, 2.0D, 0.35D)); diff --git a/patches/server/0063-Allow-leashing-villagers.patch b/patches/server/0063-Allow-leashing-villagers.patch index f5e6e6bcd..4f156979a 100644 --- a/patches/server/0063-Allow-leashing-villagers.patch +++ b/patches/server/0063-Allow-leashing-villagers.patch @@ -41,10 +41,10 @@ index 2464f1a5a922a5557e2d00233033714533acad76..aeb3c82afeda3f1688b1b6617c6d05da @Override diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -index 6c13a34a7ab220a3bba1c091f4f6a9e1340212f6..e0324cdb2d4c85714eaad490a7a5c826b38e6b16 100644 +index 6fab69bf5800ef8a37f29c3b6b2103051f36fedf..8df4d985e3124ddc1643da8385b15348937bc320 100644 --- a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -@@ -93,6 +93,13 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -97,6 +97,13 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { this.goalSelector.a(10, new PathfinderGoalLookAtPlayer(this, EntityInsentient.class, 8.0F)); } diff --git a/patches/server/0077-Add-ping-command.patch b/patches/server/0077-Add-ping-command.patch index ca445cd7c..a3b75b0f0 100644 --- a/patches/server/0077-Add-ping-command.patch +++ b/patches/server/0077-Add-ping-command.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add /ping command diff --git a/src/main/java/net/minecraft/commands/CommandDispatcher.java b/src/main/java/net/minecraft/commands/CommandDispatcher.java -index 7cb062043a8a5e997557a23bdf71cbdf8dd457ae..5afee94075efcaf480c494360778570b1a02b726 100644 +index 5ae31658fb1183eab66f682cc5477bc526c27753..94ed3811cbcc6f60a2c8bb033920f9c1ae2e91d6 100644 --- a/src/main/java/net/minecraft/commands/CommandDispatcher.java +++ b/src/main/java/net/minecraft/commands/CommandDispatcher.java @@ -191,6 +191,7 @@ public class CommandDispatcher { @@ -16,7 +16,7 @@ index 7cb062043a8a5e997557a23bdf71cbdf8dd457ae..5afee94075efcaf480c494360778570b } if (commanddispatcher_servertype.d) { -@@ -424,10 +425,12 @@ public class CommandDispatcher { +@@ -427,10 +428,12 @@ public class CommandDispatcher { } @@ -29,7 +29,7 @@ index 7cb062043a8a5e997557a23bdf71cbdf8dd457ae..5afee94075efcaf480c494360778570b public static RequiredArgumentBuilder a(String s, ArgumentType argumenttype) { return RequiredArgumentBuilder.argument(s, argumenttype); } -@@ -443,6 +446,7 @@ public class CommandDispatcher { +@@ -446,6 +449,7 @@ public class CommandDispatcher { }; } diff --git a/patches/server/0103-Ridables.patch b/patches/server/0103-Ridables.patch index 6bd4070c3..abd08850a 100644 --- a/patches/server/0103-Ridables.patch +++ b/patches/server/0103-Ridables.patch @@ -5367,7 +5367,7 @@ index d3032682af94428419daa02f55b6040090d8df73..a0f0d5e0909da5cfe87078d4722b0306 this.h(entityhuman); } diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -index e0324cdb2d4c85714eaad490a7a5c826b38e6b16..90cbef7fe8803295f82bddd6709fdf303aedcaba 100644 +index 8df4d985e3124ddc1643da8385b15348937bc320..6c390fb20c7f29133a60780a75676d8d3d6eab29 100644 --- a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java @@ -6,6 +6,7 @@ import net.minecraft.core.BlockPosition; @@ -5378,15 +5378,15 @@ index e0324cdb2d4c85714eaad490a7a5c826b38e6b16..90cbef7fe8803295f82bddd6709fdf30 import net.minecraft.server.level.WorldServer; import net.minecraft.sounds.SoundEffect; import net.minecraft.sounds.SoundEffects; -@@ -69,6 +70,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -73,6 +74,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { @Override protected void initPathfinder() { this.goalSelector.a(0, new PathfinderGoalFloat(this)); + this.goalSelector.a(0, new PathfinderGoalHasRider(this)); // Purpur this.goalSelector.a(0, new PathfinderGoalUseItem<>(this, PotionUtil.a(new ItemStack(Items.POTION), Potions.INVISIBILITY), SoundEffects.ENTITY_WANDERING_TRADER_DISAPPEARED, (entityvillagertrader) -> { - return this.world.isNight() && !entityvillagertrader.isInvisible(); + return canDrinkPotion && this.world.isNight() && !entityvillagertrader.isInvisible(); // Paper - Add more WanderingTrader API })); -@@ -94,6 +96,16 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -98,6 +100,16 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { } // Purpur - start @@ -5403,7 +5403,7 @@ index e0324cdb2d4c85714eaad490a7a5c826b38e6b16..90cbef7fe8803295f82bddd6709fdf30 @Override public boolean a(EntityHuman entityhuman) { return world.purpurConfig.villagerTraderCanBeLeashed && !this.isLeashed(); -@@ -121,8 +133,9 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -125,8 +137,9 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { } if (this.getOffers().isEmpty()) { diff --git a/patches/server/0134-Add-demo-command.patch b/patches/server/0134-Add-demo-command.patch index 139375bc5..be372b730 100644 --- a/patches/server/0134-Add-demo-command.patch +++ b/patches/server/0134-Add-demo-command.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add demo command diff --git a/src/main/java/net/minecraft/commands/CommandDispatcher.java b/src/main/java/net/minecraft/commands/CommandDispatcher.java -index 5afee94075efcaf480c494360778570b1a02b726..1a008ddade0f3bfb31661ff00404655316e68b49 100644 +index 94ed3811cbcc6f60a2c8bb033920f9c1ae2e91d6..2f5e8ed345ace0d9abb7edebe1fd47e562b1d272 100644 --- a/src/main/java/net/minecraft/commands/CommandDispatcher.java +++ b/src/main/java/net/minecraft/commands/CommandDispatcher.java @@ -191,6 +191,7 @@ public class CommandDispatcher { diff --git a/patches/server/0150-Configurable-entity-base-attributes.patch b/patches/server/0150-Configurable-entity-base-attributes.patch index b6d39b48b..8efad4af3 100644 --- a/patches/server/0150-Configurable-entity-base-attributes.patch +++ b/patches/server/0150-Configurable-entity-base-attributes.patch @@ -1383,7 +1383,7 @@ index 0924e0c13b3c57e46f6dc40232707088f96e98c7..16933de70a23414859019e19545bfa5b @Override diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -index 90cbef7fe8803295f82bddd6709fdf303aedcaba..b84916c0c58fd208ef5547299f8db8462d1c42fe 100644 +index 6c390fb20c7f29133a60780a75676d8d3d6eab29..f6e0a92037d22de102c42cc1953ea90919bd3a34 100644 --- a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java @@ -18,6 +18,7 @@ import net.minecraft.world.entity.EntityAgeable; @@ -1394,7 +1394,7 @@ index 90cbef7fe8803295f82bddd6709fdf303aedcaba..b84916c0c58fd208ef5547299f8db846 import net.minecraft.world.entity.ai.goal.PathfinderGoal; import net.minecraft.world.entity.ai.goal.PathfinderGoalAvoidTarget; import net.minecraft.world.entity.ai.goal.PathfinderGoalFloat; -@@ -110,6 +111,11 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -114,6 +115,11 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { public boolean a(EntityHuman entityhuman) { return world.purpurConfig.villagerTraderCanBeLeashed && !this.isLeashed(); } diff --git a/patches/server/0153-Implement-TPSBar.patch b/patches/server/0153-Implement-TPSBar.patch index a9627e43d..ce1c18e6b 100644 --- a/patches/server/0153-Implement-TPSBar.patch +++ b/patches/server/0153-Implement-TPSBar.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Implement TPSBar diff --git a/src/main/java/net/minecraft/commands/CommandDispatcher.java b/src/main/java/net/minecraft/commands/CommandDispatcher.java -index 1a008ddade0f3bfb31661ff00404655316e68b49..52f9b41c91af4af0e9fd66083319b18156f80dc8 100644 +index 2f5e8ed345ace0d9abb7edebe1fd47e562b1d272..ce95a7d9c967d723bad468bd00a5c0a6b887aa33 100644 --- a/src/main/java/net/minecraft/commands/CommandDispatcher.java +++ b/src/main/java/net/minecraft/commands/CommandDispatcher.java @@ -193,6 +193,7 @@ public class CommandDispatcher { diff --git a/patches/server/0187-Add-config-for-villager-trading.patch b/patches/server/0187-Add-config-for-villager-trading.patch index 13980ff11..7779be1dc 100644 --- a/patches/server/0187-Add-config-for-villager-trading.patch +++ b/patches/server/0187-Add-config-for-villager-trading.patch @@ -18,10 +18,10 @@ index 16933de70a23414859019e19545bfa5baa38091a..a02748bff911415d95bea344f179ad27 } diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -index b84916c0c58fd208ef5547299f8db8462d1c42fe..0b6b6aa6b358759c45bbcf4a9ffa53777c8efa1d 100644 +index f6e0a92037d22de102c42cc1953ea90919bd3a34..03e811e854034c6ca9cd11d35ed0a2dbd14c6097 100644 --- a/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java +++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillagerTrader.java -@@ -142,7 +142,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { +@@ -146,7 +146,7 @@ public class EntityVillagerTrader extends EntityVillagerAbstract { return tryRide(entityhuman, enumhand); // Purpur } else { if (world.purpurConfig.villagerTraderRidable && itemstack.isEmpty()) return tryRide(entityhuman, enumhand); // Purpur diff --git a/patches/server/0202-Add-credits-command.patch b/patches/server/0202-Add-credits-command.patch index 98d1f8871..993d994ed 100644 --- a/patches/server/0202-Add-credits-command.patch +++ b/patches/server/0202-Add-credits-command.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add credits command diff --git a/src/main/java/net/minecraft/commands/CommandDispatcher.java b/src/main/java/net/minecraft/commands/CommandDispatcher.java -index 52f9b41c91af4af0e9fd66083319b18156f80dc8..079b8444d13121f0f01860e88cea25cce9d0cc7e 100644 +index ce95a7d9c967d723bad468bd00a5c0a6b887aa33..0703148d079d86921dac42ef90e514d3584bf569 100644 --- a/src/main/java/net/minecraft/commands/CommandDispatcher.java +++ b/src/main/java/net/minecraft/commands/CommandDispatcher.java @@ -191,6 +191,7 @@ public class CommandDispatcher {