From 993318eb6baed6171d9aaf0ff23de8a317d264a0 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Thu, 23 May 2019 21:50:37 -0500 Subject: [PATCH] Packed Barrels --- src/main/java/net/minecraft/server/TileEntityBarrel.java | 5 +++-- src/main/java/net/pl3x/purpur/PurpurConfig.java | 7 +++++++ .../org/bukkit/craftbukkit/inventory/CraftContainer.java | 4 ++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/minecraft/server/TileEntityBarrel.java b/src/main/java/net/minecraft/server/TileEntityBarrel.java index 5d80ec8010..dd8c6e8876 100644 --- a/src/main/java/net/minecraft/server/TileEntityBarrel.java +++ b/src/main/java/net/minecraft/server/TileEntityBarrel.java @@ -56,7 +56,7 @@ public class TileEntityBarrel extends TileEntityLootable { private TileEntityBarrel(TileEntityTypes tileentitytypes) { super(tileentitytypes); - this.items = NonNullList.a(27, ItemStack.a); + this.items = NonNullList.a(net.pl3x.purpur.PurpurConfig.packedBarrels ? 54 : 27, ItemStack.a); // Purpur } public TileEntityBarrel() { @@ -85,7 +85,7 @@ public class TileEntityBarrel extends TileEntityLootable { @Override public int getSize() { - return 27; + return net.pl3x.purpur.PurpurConfig.packedBarrels ? 54 : 27; // Purpur } @Override @@ -151,6 +151,7 @@ public class TileEntityBarrel extends TileEntityLootable { @Override protected Container createContainer(int i, PlayerInventory playerinventory) { + if (net.pl3x.purpur.PurpurConfig.packedBarrels) return ContainerChest.b(i, playerinventory, this); // Purpur return ContainerChest.a(i, playerinventory, this); } diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java index 4d0d7a9dad..3fe87c2daa 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -6,6 +6,7 @@ import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.configuration.InvalidConfigurationException; import org.bukkit.configuration.file.YamlConfiguration; +import org.bukkit.event.inventory.InventoryType; import java.io.File; import java.io.IOException; @@ -162,6 +163,12 @@ public class PurpurConfig { snowmanPumpkinPutBack = getBoolean("settings.mobs.snow_golem.pumpkin-can-be-added-back", snowmanPumpkinPutBack); } + public static boolean packedBarrels = true; + private static void packedBarrels() { + packedBarrels = getBoolean("settings.packed-barrels", packedBarrels); + InventoryType.BARREL.setDefaultSize(packedBarrels ? 54 : 27); + } + public static boolean ridableBat = true; public static boolean ridableBlaze = true; public static boolean ridableCat = true; diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java index ae119756be..5ee6fc1629 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftContainer.java @@ -155,6 +155,8 @@ public class CraftContainer extends Container { return Containers.GRINDSTONE; case STONECUTTER: return Containers.STONECUTTER; + case BARREL: + return net.pl3x.purpur.PurpurConfig.packedBarrels ? Containers.GENERIC_9X6 : Containers.GENERIC_9X3; default: return Containers.GENERIC_9X3; } @@ -168,7 +170,9 @@ public class CraftContainer extends Container { case PLAYER: case CHEST: case ENDER_CHEST: + delegate = new ContainerChest(Containers.GENERIC_9X3, windowId, bottom, top, top.getSize() / 9); break; // Purpur case BARREL: + if (net.pl3x.purpur.PurpurConfig.packedBarrels) delegate = new ContainerChest(Containers.GENERIC_9X6, windowId, bottom, top, top.getSize() / 9); // Purpur delegate = new ContainerChest(Containers.GENERIC_9X3, windowId, bottom, top, top.getSize() / 9); break; case DISPENSER: -- 2.20.1