Commits

md_5 authored 4c1e9342cbe
SPIGOT-1039: Improve DoubleChest semantics
No tags

src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryDoubleChest.java

Modified
1 1 package org.bukkit.craftbukkit.inventory;
2 2
3 3 import net.minecraft.server.ITileEntityContainer;
4 4 import net.minecraft.server.ITileInventory;
5 5 import org.bukkit.block.DoubleChest;
6 6 import org.bukkit.inventory.DoubleChestInventory;
7 7 import org.bukkit.inventory.Inventory;
8 8 import org.bukkit.inventory.ItemStack;
9 9
10 10 import net.minecraft.server.InventoryLargeChest;
11 +import org.bukkit.Location;
11 12
12 13 public class CraftInventoryDoubleChest extends CraftInventory implements DoubleChestInventory {
13 14 private final CraftInventory left;
14 15 private final CraftInventory right;
15 16
16 17 public CraftInventoryDoubleChest(CraftInventory left, CraftInventory right) {
17 18 super(new InventoryLargeChest("Large chest", (ITileInventory) left.getInventory(), (ITileInventory) right.getInventory()));
18 19 this.left = left;
19 20 this.right = right;
20 21 }
52 53 if (items.length >= left.getSize()) {
53 54 System.arraycopy(items, left.getSize(), rightItems, 0, Math.min(right.getSize(), items.length - left.getSize()));
54 55 right.setContents(rightItems);
55 56 }
56 57 }
57 58
58 59 @Override
59 60 public DoubleChest getHolder() {
60 61 return new DoubleChest(this);
61 62 }
63 +
64 + @Override
65 + public Location getLocation() {
66 + return getLeftSide().getLocation().add(getRightSide().getLocation()).multiply(0.5);
67 + }
62 68 }

Everything looks good. We'll let you know here if there's anything you should know about.

Add shortcut