fix compilation issues

This commit is contained in:
granny
2025-01-07 17:52:15 -08:00
committed by granny
parent c81d37b664
commit ceb127eaec
9 changed files with 51 additions and 40 deletions

View File

@@ -5,12 +5,12 @@ Subject: [PATCH] Ridables
diff --git a/net/minecraft/gametest/framework/GameTestHelper.java b/net/minecraft/gametest/framework/GameTestHelper.java diff --git a/net/minecraft/gametest/framework/GameTestHelper.java b/net/minecraft/gametest/framework/GameTestHelper.java
index fe4ae6bcdcbb55c47e9f9a4d63ead4c39e6d63cf..bf368ba3eecb6131dd23c1fcabf61f439ee6fdb5 100644 index 29d402620d2e1cbed94f941f933ae8eb5d786e7f..ec0998369158286fccb38c8e10c3cfa2a653a8aa 100644
--- a/net/minecraft/gametest/framework/GameTestHelper.java --- a/net/minecraft/gametest/framework/GameTestHelper.java
+++ b/net/minecraft/gametest/framework/GameTestHelper.java +++ b/net/minecraft/gametest/framework/GameTestHelper.java
@@ -279,6 +279,8 @@ public class GameTestHelper { @@ -281,6 +281,8 @@ public class GameTestHelper {
return gameType.isCreative();
} public void setAfk(final boolean afk) {} // Purpur - AFK API
+ public void resetLastActionTime() {} // Purpur - Ridables + public void resetLastActionTime() {} // Purpur - Ridables
+ +
@@ -62,7 +62,7 @@ index f8a31e8b2f917e9d00827dc98bfb766be1f9f85a..041019ff63f7f437c140ea354f84e49b
private void updatePlayerAttributes() { private void updatePlayerAttributes() {
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 2a8e90005efe88cbff727e64687df69d0c9ac4e6..ab651a0612320bbccce396652c1cf6db7ee2ae03 100644 index 7cb8b2f113be88c7df834f3dcdb304bfcd73d92e..685068a1f633266371cf4f292f05761e903ecc7b 100644
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2795,6 +2795,8 @@ public class ServerGamePacketListenerImpl @@ -2795,6 +2795,8 @@ public class ServerGamePacketListenerImpl

View File

@@ -13,7 +13,7 @@ index e693c5ef414dd77b684d0a393444a5d28b975bfd..d12896bb6f23bfdb1d22e1ecadd23c01
this.server.getCommands().sendCommands(player); this.server.getCommands().sendCommands(player);
} // Paper - Add sendOpLevel API } // Paper - Add sendOpLevel API
+ +
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ if (org.purpurmc.purpur.PurpurConfig.enderChestSixRows && org.purpurmc.purpur.PurpurConfig.enderChestPermissionRows) { + if (org.purpurmc.purpur.PurpurConfig.enderChestSixRows && org.purpurmc.purpur.PurpurConfig.enderChestPermissionRows) {
+ org.bukkit.craftbukkit.entity.CraftHumanEntity bukkit = player.getBukkitEntity(); + org.bukkit.craftbukkit.entity.CraftHumanEntity bukkit = player.getBukkitEntity();
+ if (bukkit.hasPermission("purpur.enderchest.rows.six")) { + if (bukkit.hasPermission("purpur.enderchest.rows.six")) {
@@ -32,19 +32,19 @@ index e693c5ef414dd77b684d0a393444a5d28b975bfd..d12896bb6f23bfdb1d22e1ecadd23c01
+ } else { + } else {
+ player.sixRowEnderchestSlotCount = -1; + player.sixRowEnderchestSlotCount = -1;
+ } + }
+ //Purpur end + // Purpur end - Barrels and enderchests 6 rows
} }
public boolean isWhiteListed(GameProfile profile) { public boolean isWhiteListed(GameProfile profile) {
diff --git a/net/minecraft/world/entity/player/Player.java b/net/minecraft/world/entity/player/Player.java diff --git a/net/minecraft/world/entity/player/Player.java b/net/minecraft/world/entity/player/Player.java
index a65023d0929435785116682c1378428120340547..52bbe204bdcf08eb4ef0b4c91567bce4d6da3cb5 100644 index 27a0cb04dd50974a96ed420ef811d9c9f3182e52..9b762d48c63ddc532c86e2982006eed42375ac1e 100644
--- a/net/minecraft/world/entity/player/Player.java --- a/net/minecraft/world/entity/player/Player.java
+++ b/net/minecraft/world/entity/player/Player.java +++ b/net/minecraft/world/entity/player/Player.java
@@ -200,6 +200,7 @@ public abstract class Player extends LivingEntity { @@ -200,6 +200,7 @@ public abstract class Player extends LivingEntity {
private int currentImpulseContextResetGraceTime; private int currentImpulseContextResetGraceTime;
public boolean affectsSpawning = true; // Paper - Affects Spawning API public boolean affectsSpawning = true; // Paper - Affects Spawning API
public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage public net.kyori.adventure.util.TriState flyingFallDamage = net.kyori.adventure.util.TriState.NOT_SET; // Paper - flying fall damage
+ public int sixRowEnderchestSlotCount = -1; // Purpur + public int sixRowEnderchestSlotCount = -1; // Purpur - Barrels and enderchests 6 rows
// CraftBukkit start // CraftBukkit start
public boolean fauxSleeping; public boolean fauxSleeping;
@@ -56,7 +56,7 @@ index cf5b99c1337a7eafa9f5e8b2062c32ab4ff78968..0582698825544267e65a427351e27101
return new ChestMenu(MenuType.GENERIC_9x6, containerId, playerInventory, 6); return new ChestMenu(MenuType.GENERIC_9x6, containerId, playerInventory, 6);
} }
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ public static ChestMenu oneRow(int syncId, Inventory playerInventory, Container inventory) { + public static ChestMenu oneRow(int syncId, Inventory playerInventory, Container inventory) {
+ return new ChestMenu(MenuType.GENERIC_9x1, syncId, playerInventory, inventory, 1); + return new ChestMenu(MenuType.GENERIC_9x1, syncId, playerInventory, inventory, 1);
+ } + }
@@ -64,13 +64,13 @@ index cf5b99c1337a7eafa9f5e8b2062c32ab4ff78968..0582698825544267e65a427351e27101
+ public static ChestMenu twoRows(int syncId, Inventory playerInventory, Container inventory) { + public static ChestMenu twoRows(int syncId, Inventory playerInventory, Container inventory) {
+ return new ChestMenu(MenuType.GENERIC_9x2, syncId, playerInventory, inventory, 2); + return new ChestMenu(MenuType.GENERIC_9x2, syncId, playerInventory, inventory, 2);
+ } + }
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
+ +
public static ChestMenu threeRows(int containerId, Inventory playerInventory, Container container) { public static ChestMenu threeRows(int containerId, Inventory playerInventory, Container container) {
return new ChestMenu(MenuType.GENERIC_9x3, containerId, playerInventory, container, 3); return new ChestMenu(MenuType.GENERIC_9x3, containerId, playerInventory, container, 3);
} }
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ public static ChestMenu fourRows(int syncId, Inventory playerInventory, Container inventory) { + public static ChestMenu fourRows(int syncId, Inventory playerInventory, Container inventory) {
+ return new ChestMenu(MenuType.GENERIC_9x4, syncId, playerInventory, inventory, 4); + return new ChestMenu(MenuType.GENERIC_9x4, syncId, playerInventory, inventory, 4);
+ } + }
@@ -78,7 +78,7 @@ index cf5b99c1337a7eafa9f5e8b2062c32ab4ff78968..0582698825544267e65a427351e27101
+ public static ChestMenu fiveRows(int syncId, Inventory playerInventory, Container inventory) { + public static ChestMenu fiveRows(int syncId, Inventory playerInventory, Container inventory) {
+ return new ChestMenu(MenuType.GENERIC_9x5, syncId, playerInventory, inventory, 5); + return new ChestMenu(MenuType.GENERIC_9x5, syncId, playerInventory, inventory, 5);
+ } + }
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
+ +
public static ChestMenu sixRows(int containerId, Inventory playerInventory, Container container) { public static ChestMenu sixRows(int containerId, Inventory playerInventory, Container container) {
return new ChestMenu(MenuType.GENERIC_9x6, containerId, playerInventory, container, 6); return new ChestMenu(MenuType.GENERIC_9x6, containerId, playerInventory, container, 6);
@@ -92,23 +92,23 @@ index a6a359bab2a727f4631b633a8bb370dd40decc75..4c48bdc2a4596b7b192e76974fa385c3
public PlayerEnderChestContainer(Player owner) { public PlayerEnderChestContainer(Player owner) {
- super(27); - super(27);
+ super(org.purpurmc.purpur.PurpurConfig.enderChestSixRows ? 54 : 27); // Purpur + super(org.purpurmc.purpur.PurpurConfig.enderChestSixRows ? 54 : 27); // Purpur - Barrels and enderchests 6 rows
this.owner = owner; this.owner = owner;
// CraftBukkit end // CraftBukkit end
} }
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ @Override + @Override
+ public int getContainerSize() { + public int getContainerSize() {
+ return owner.sixRowEnderchestSlotCount < 0 ? super.getContainerSize() : owner.sixRowEnderchestSlotCount; + return owner.sixRowEnderchestSlotCount < 0 ? super.getContainerSize() : owner.sixRowEnderchestSlotCount;
+ } + }
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
+ +
public void setActiveChest(EnderChestBlockEntity enderChestBlockEntity) { public void setActiveChest(EnderChestBlockEntity enderChestBlockEntity) {
this.activeChest = enderChestBlockEntity; this.activeChest = enderChestBlockEntity;
} }
diff --git a/net/minecraft/world/level/block/EnderChestBlock.java b/net/minecraft/world/level/block/EnderChestBlock.java diff --git a/net/minecraft/world/level/block/EnderChestBlock.java b/net/minecraft/world/level/block/EnderChestBlock.java
index 2f60681c50e3656400e84fe9a7670e0412743853..5a60acf92acc77593aec95413c206317999e43ba 100644 index 2f60681c50e3656400e84fe9a7670e0412743853..79dbafcfde314058bdf95f887fa7a1032433032c 100644
--- a/net/minecraft/world/level/block/EnderChestBlock.java --- a/net/minecraft/world/level/block/EnderChestBlock.java
+++ b/net/minecraft/world/level/block/EnderChestBlock.java +++ b/net/minecraft/world/level/block/EnderChestBlock.java
@@ -84,7 +84,7 @@ public class EnderChestBlock extends AbstractChestBlock<EnderChestBlockEntity> i @@ -84,7 +84,7 @@ public class EnderChestBlock extends AbstractChestBlock<EnderChestBlockEntity> i
@@ -116,7 +116,7 @@ index 2f60681c50e3656400e84fe9a7670e0412743853..5a60acf92acc77593aec95413c206317
enderChestInventory.setActiveChest(enderChestBlockEntity); // Needs to happen before ChestMenu.threeRows as it is required for opening animations enderChestInventory.setActiveChest(enderChestBlockEntity); // Needs to happen before ChestMenu.threeRows as it is required for opening animations
if (level instanceof ServerLevel serverLevel && player.openMenu( if (level instanceof ServerLevel serverLevel && player.openMenu(
- new SimpleMenuProvider((i, inventory, playerx) -> ChestMenu.threeRows(i, inventory, enderChestInventory), CONTAINER_TITLE) - new SimpleMenuProvider((i, inventory, playerx) -> ChestMenu.threeRows(i, inventory, enderChestInventory), CONTAINER_TITLE)
+ new SimpleMenuProvider((i, inventory, playerx) -> org.purpurmc.purpur.PurpurConfig.enderChestSixRows ? getEnderChestSixRows(i, inventory, player, playerEnderChestContainer) : ChestMenu.threeRows(i, inventory, enderChestInventory), CONTAINER_TITLE) // Purpur + new SimpleMenuProvider((i, inventory, playerx) -> org.purpurmc.purpur.PurpurConfig.enderChestSixRows ? getEnderChestSixRows(i, inventory, player, enderChestInventory) : ChestMenu.threeRows(i, inventory, enderChestInventory), CONTAINER_TITLE) // Purpur - Barrels and enderchests 6 rows
).isPresent()) { ).isPresent()) {
// Paper end - Fix InventoryOpenEvent cancellation - moved up; // Paper end - Fix InventoryOpenEvent cancellation - moved up;
player.awardStat(Stats.OPEN_ENDERCHEST); player.awardStat(Stats.OPEN_ENDERCHEST);
@@ -124,7 +124,7 @@ index 2f60681c50e3656400e84fe9a7670e0412743853..5a60acf92acc77593aec95413c206317
} }
} }
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ private ChestMenu getEnderChestSixRows(int syncId, net.minecraft.world.entity.player.Inventory inventory, Player player, PlayerEnderChestContainer playerEnderChestContainer) { + private ChestMenu getEnderChestSixRows(int syncId, net.minecraft.world.entity.player.Inventory inventory, Player player, PlayerEnderChestContainer playerEnderChestContainer) {
+ if (org.purpurmc.purpur.PurpurConfig.enderChestPermissionRows) { + if (org.purpurmc.purpur.PurpurConfig.enderChestPermissionRows) {
+ org.bukkit.craftbukkit.entity.CraftHumanEntity bukkitPlayer = player.getBukkitEntity(); + org.bukkit.craftbukkit.entity.CraftHumanEntity bukkitPlayer = player.getBukkitEntity();
@@ -151,7 +151,7 @@ index 2f60681c50e3656400e84fe9a7670e0412743853..5a60acf92acc77593aec95413c206317
+ player.sixRowEnderchestSlotCount = -1; + player.sixRowEnderchestSlotCount = -1;
+ return ChestMenu.sixRows(syncId, inventory, playerEnderChestContainer); + return ChestMenu.sixRows(syncId, inventory, playerEnderChestContainer);
+ } + }
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
+ +
@Override @Override
public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { public BlockEntity newBlockEntity(BlockPos pos, BlockState state) {
@@ -165,7 +165,7 @@ index 0f808855f58281578c2758513787f0f7330c9291..7ea7032eae78726e6d4dcfda49b01a10
} }
// CraftBukkit end // CraftBukkit end
- private NonNullList<ItemStack> items = NonNullList.withSize(27, ItemStack.EMPTY); - private NonNullList<ItemStack> items = NonNullList.withSize(27, ItemStack.EMPTY);
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ private NonNullList<ItemStack> items = NonNullList.withSize(switch (org.purpurmc.purpur.PurpurConfig.barrelRows) { + private NonNullList<ItemStack> items = NonNullList.withSize(switch (org.purpurmc.purpur.PurpurConfig.barrelRows) {
+ case 6 -> 54; + case 6 -> 54;
+ case 5 -> 45; + case 5 -> 45;
@@ -174,7 +174,7 @@ index 0f808855f58281578c2758513787f0f7330c9291..7ea7032eae78726e6d4dcfda49b01a10
+ case 1 -> 9; + case 1 -> 9;
+ default -> 27; + default -> 27;
+ }, ItemStack.EMPTY); + }, ItemStack.EMPTY);
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
+ +
public final ContainerOpenersCounter openersCounter = new ContainerOpenersCounter() { public final ContainerOpenersCounter openersCounter = new ContainerOpenersCounter() {
@Override @Override
@@ -184,7 +184,7 @@ index 0f808855f58281578c2758513787f0f7330c9291..7ea7032eae78726e6d4dcfda49b01a10
@Override @Override
public int getContainerSize() { public int getContainerSize() {
- return 27; - return 27;
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ return switch (org.purpurmc.purpur.PurpurConfig.barrelRows) { + return switch (org.purpurmc.purpur.PurpurConfig.barrelRows) {
+ case 6 -> 54; + case 6 -> 54;
+ case 5 -> 45; + case 5 -> 45;
@@ -193,7 +193,7 @@ index 0f808855f58281578c2758513787f0f7330c9291..7ea7032eae78726e6d4dcfda49b01a10
+ case 1 -> 9; + case 1 -> 9;
+ default -> 27; + default -> 27;
+ }; + };
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
} }
@Override @Override
@@ -202,7 +202,7 @@ index 0f808855f58281578c2758513787f0f7330c9291..7ea7032eae78726e6d4dcfda49b01a10
@Override @Override
protected AbstractContainerMenu createMenu(int id, Inventory player) { protected AbstractContainerMenu createMenu(int id, Inventory player) {
- return ChestMenu.threeRows(id, player, this); - return ChestMenu.threeRows(id, player, this);
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ return switch (org.purpurmc.purpur.PurpurConfig.barrelRows) { + return switch (org.purpurmc.purpur.PurpurConfig.barrelRows) {
+ case 6 -> ChestMenu.sixRows(id, player, this); + case 6 -> ChestMenu.sixRows(id, player, this);
+ case 5 -> ChestMenu.fiveRows(id, player, this); + case 5 -> ChestMenu.fiveRows(id, player, this);
@@ -211,7 +211,7 @@ index 0f808855f58281578c2758513787f0f7330c9291..7ea7032eae78726e6d4dcfda49b01a10
+ case 1 -> ChestMenu.oneRow(id, player, this); + case 1 -> ChestMenu.oneRow(id, player, this);
+ default -> ChestMenu.threeRows(id, player, this); + default -> ChestMenu.threeRows(id, player, this);
+ }; + };
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
} }
@Override @Override

View File

@@ -7,7 +7,7 @@ temporarily migrate to paper's config
drop patch on the next minecraft release drop patch on the next minecraft release
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
index b5011af774484b6ed35ee83b4a562ddd4425c22f..514b7d86c403568ddb130e7f7798867f838e1203 100644 index b5011af774484b6ed35ee83b4a562ddd4425c22f..88c90e0ffca024c2867a7ed70d53d12aff7201c6 100644
--- a/net/minecraft/server/MinecraftServer.java --- a/net/minecraft/server/MinecraftServer.java
+++ b/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java
@@ -1198,7 +1198,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1198,7 +1198,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -18,9 +18,9 @@ index b5011af774484b6ed35ee83b4a562ddd4425c22f..514b7d86c403568ddb130e7f7798867f
+ // Purpur start - Configurable void damage height and damage + // Purpur start - Configurable void damage height and damage
+ if (org.purpurmc.purpur.configuration.transformation.VoidDamageHeightMigration.HAS_BEEN_REGISTERED) { + if (org.purpurmc.purpur.configuration.transformation.VoidDamageHeightMigration.HAS_BEEN_REGISTERED) {
+ try { + try {
+ org.purpurmc.purpur.PurpurConfig.config.save((File) this.options.valueOf("purpur-settings")); + org.purpurmc.purpur.PurpurConfig.config.save((java.io.File) this.options.valueOf("purpur-settings"));
+ } catch (IOException ex) { + } catch (IOException ex) {
+ Bukkit.getLogger().log(java.util.logging.Level.SEVERE, "Could not save " + this.options.valueOf("purpur-settings"), ex); + org.bukkit.Bukkit.getLogger().log(java.util.logging.Level.SEVERE, "Could not save " + this.options.valueOf("purpur-settings"), ex);
+ } + }
+ } + }
+ // Purpur end - Configurable void damage height and damage + // Purpur end - Configurable void damage height and damage

View File

@@ -0,0 +1,11 @@
--- a/net/minecraft/gametest/framework/GameTestHelper.java
+++ b/net/minecraft/gametest/framework/GameTestHelper.java
@@ -279,6 +_,8 @@
return gameType.isCreative();
}
+ public void setAfk(final boolean afk) {} // Purpur - AFK API
+
@Override
public boolean isLocalPlayer() {
return true;

View File

@@ -5,13 +5,13 @@
} }
+ // Purpur start - AFK API + // Purpur start - AFK API
+ private final com.google.common.cache.LoadingCache<CraftPlayer, Boolean> kickPermissionCache = com.google.common.cache.CacheBuilder.newBuilder() + private final com.google.common.cache.LoadingCache<org.bukkit.craftbukkit.entity.CraftPlayer, Boolean> kickPermissionCache = com.google.common.cache.CacheBuilder.newBuilder()
+ .maximumSize(1000) + .maximumSize(1000)
+ .expireAfterWrite(1, java.util.concurrent.TimeUnit.MINUTES) + .expireAfterWrite(1, java.util.concurrent.TimeUnit.MINUTES)
+ .build( + .build(
+ new com.google.common.cache.CacheLoader<>() { + new com.google.common.cache.CacheLoader<>() {
+ @Override + @Override
+ public Boolean load(CraftPlayer player) { + public Boolean load(org.bukkit.craftbukkit.entity.CraftPlayer player) {
+ return player.hasPermission("purpur.bypassIdleKick"); + return player.hasPermission("purpur.bypassIdleKick");
+ } + }
+ } + }
@@ -115,7 +115,7 @@
if (event.getLogWarning()) if (event.getLogWarning())
// Paper end // Paper end
- LOGGER.warn("{} moved wrongly!", this.player.getName().getString()); - LOGGER.warn("{} moved wrongly!", this.player.getName().getString());
+ LOGGER.warn("{} moved wrongly!, ({})", this.player.getName().getString(), d11); // Purpur - AFK API + LOGGER.warn("{} moved wrongly!, ({})", this.player.getName().getString(), verticalDelta); // Purpur - AFK API
} // Paper } // Paper
} }

View File

@@ -5,7 +5,7 @@
} else if (this.selector != null && !this.selector.test(target, level)) { } else if (this.selector != null && !this.selector.test(target, level)) {
return false; return false;
+ // Purpur start - AFK API + // Purpur start - AFK API
+ } else if (!world.purpurConfig.idleTimeoutTargetPlayer && target instanceof net.minecraft.server.level.ServerPlayer player && player.isAfk()) { + } else if (!level.purpurConfig.idleTimeoutTargetPlayer && target instanceof net.minecraft.server.level.ServerPlayer player && player.isAfk()) {
+ return false; + return false;
+ // Purpur end - AFK API + // Purpur end - AFK API
} else { } else {

View File

@@ -92,8 +92,8 @@
this.broadcastChanges(); this.broadcastChanges();
+ +
+ // Purpur start - Anvil API + // Purpur start - Anvil API
+ if (this.canDoUnsafeEnchants && itemstack1 != ItemStack.EMPTY) { + if (this.canDoUnsafeEnchants && itemStack != ItemStack.EMPTY) {
+ ((ServerPlayer) this.player).connection.send(new ClientboundContainerSetSlotPacket(this.containerId, this.incrementStateId(), 2, itemstack1)); + ((ServerPlayer) this.player).connection.send(new ClientboundContainerSetSlotPacket(this.containerId, this.incrementStateId(), 2, itemStack));
+ ((ServerPlayer) this.player).connection.send(new ClientboundContainerSetDataPacket(this.containerId, 0, this.cost.get())); + ((ServerPlayer) this.player).connection.send(new ClientboundContainerSetDataPacket(this.containerId, 0, this.cost.get()));
+ } + }
+ // Purpur end - Anvil API + // Purpur end - Anvil API

View File

@@ -12,7 +12,7 @@ index 6d3f9d5dab6c9a2860ae31cae24310aa2d62da7c..4f29c579f94efe59a8c78520d75676fc
case PLAYER: case PLAYER:
case CHEST: case CHEST:
case ENDER_CHEST: case ENDER_CHEST:
+ // Purpur start + // Purpur start - Barrels and enderchests 6 rows
+ this.delegate = new ChestMenu(org.purpurmc.purpur.PurpurConfig.enderChestSixRows ? net.minecraft.world.inventory.MenuType.GENERIC_9x6 : net.minecraft.world.inventory.MenuType.GENERIC_9x3, windowId, bottom, top, top.getContainerSize() / 9); + this.delegate = new ChestMenu(org.purpurmc.purpur.PurpurConfig.enderChestSixRows ? net.minecraft.world.inventory.MenuType.GENERIC_9x6 : net.minecraft.world.inventory.MenuType.GENERIC_9x3, windowId, bottom, top, top.getContainerSize() / 9);
+ break; + break;
case BARREL: case BARREL:
@@ -25,7 +25,7 @@ index 6d3f9d5dab6c9a2860ae31cae24310aa2d62da7c..4f29c579f94efe59a8c78520d75676fc
+ case 1 -> net.minecraft.world.inventory.MenuType.GENERIC_9x1; + case 1 -> net.minecraft.world.inventory.MenuType.GENERIC_9x1;
+ default -> net.minecraft.world.inventory.MenuType.GENERIC_9x3; + default -> net.minecraft.world.inventory.MenuType.GENERIC_9x3;
+ }, windowId, bottom, top, top.getContainerSize() / 9); + }, windowId, bottom, top, top.getContainerSize() / 9);
+ // Purpur end + // Purpur end - Barrels and enderchests 6 rows
break; break;
case DISPENSER: case DISPENSER:
case DROPPER: case DROPPER:
@@ -38,7 +38,7 @@ index c6159c70f7a37b9bffe268b91905ce848d1d2927..d02adaaa6fbdc1c0eff44cb4a1f1642f
@Override @Override
public void setContents(ItemStack[] items) { public void setContents(ItemStack[] items) {
- Preconditions.checkArgument(items.length <= this.getSize(), "Invalid inventory size (%s); expected %s or less", items.length, this.getSize()); - Preconditions.checkArgument(items.length <= this.getSize(), "Invalid inventory size (%s); expected %s or less", items.length, this.getSize());
+ // Preconditions.checkArgument(items.length <= this.getSize(), "Invalid inventory size (%s); expected %s or less", items.length, this.getSize()); // Purpur + // Preconditions.checkArgument(items.length <= this.getSize(), "Invalid inventory size (%s); expected %s or less", items.length, this.getSize()); // Purpur - Barrels and enderchests 6 rows
for (int i = 0; i < this.getSize(); i++) { for (int i = 0; i < this.getSize(); i++) {
if (i >= items.length) { if (i >= items.length) {

View File

@@ -5,7 +5,7 @@
} }
// Paper end // Paper end
+ +
+ // Purpur start + // Purpur start - Llama API
+ @Override + @Override
+ public boolean shouldJoinCaravan() { + public boolean shouldJoinCaravan() {
+ return getHandle().shouldJoinCaravan; + return getHandle().shouldJoinCaravan;
@@ -15,5 +15,5 @@
+ public void setShouldJoinCaravan(boolean shouldJoinCaravan) { + public void setShouldJoinCaravan(boolean shouldJoinCaravan) {
+ getHandle().shouldJoinCaravan = shouldJoinCaravan; + getHandle().shouldJoinCaravan = shouldJoinCaravan;
+ } + }
+ // Purpur end + // Purpur end - Llama API
} }