diff options
Diffstat (limited to 'patch-remap/og/net/minecraft/world/entity/vehicle/EntityMinecartContainer.patch')
-rw-r--r-- | patch-remap/og/net/minecraft/world/entity/vehicle/EntityMinecartContainer.patch | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/patch-remap/og/net/minecraft/world/entity/vehicle/EntityMinecartContainer.patch b/patch-remap/og/net/minecraft/world/entity/vehicle/EntityMinecartContainer.patch new file mode 100644 index 0000000000..b5693bdfa2 --- /dev/null +++ b/patch-remap/og/net/minecraft/world/entity/vehicle/EntityMinecartContainer.patch @@ -0,0 +1,75 @@ +--- a/net/minecraft/world/entity/vehicle/EntityMinecartContainer.java ++++ b/net/minecraft/world/entity/vehicle/EntityMinecartContainer.java +@@ -18,6 +18,14 @@ + import net.minecraft.world.item.ItemStack; + import net.minecraft.world.level.World; + ++// CraftBukkit start ++import java.util.List; ++import org.bukkit.Location; ++import org.bukkit.craftbukkit.entity.CraftHumanEntity; ++import org.bukkit.entity.HumanEntity; ++import org.bukkit.inventory.InventoryHolder; ++// CraftBukkit end ++ + public abstract class EntityMinecartContainer extends EntityMinecartAbstract implements ContainerEntity { + + private NonNullList<ItemStack> itemStacks; +@@ -25,14 +33,55 @@ + public MinecraftKey lootTable; + public long lootTableSeed; + ++ // CraftBukkit start ++ public List<HumanEntity> transaction = new java.util.ArrayList<HumanEntity>(); ++ private int maxStack = MAX_STACK; ++ ++ public List<ItemStack> getContents() { ++ return this.itemStacks; ++ } ++ ++ public void onOpen(CraftHumanEntity who) { ++ transaction.add(who); ++ } ++ ++ public void onClose(CraftHumanEntity who) { ++ transaction.remove(who); ++ } ++ ++ public List<HumanEntity> getViewers() { ++ return transaction; ++ } ++ ++ public InventoryHolder getOwner() { ++ org.bukkit.entity.Entity cart = getBukkitEntity(); ++ if(cart instanceof InventoryHolder) return (InventoryHolder) cart; ++ return null; ++ } ++ ++ @Override ++ public int getMaxStackSize() { ++ return maxStack; ++ } ++ ++ public void setMaxStackSize(int size) { ++ maxStack = size; ++ } ++ ++ @Override ++ public Location getLocation() { ++ return getBukkitEntity().getLocation(); ++ } ++ // CraftBukkit end ++ + protected EntityMinecartContainer(EntityTypes<?> entitytypes, World world) { + super(entitytypes, world); +- this.itemStacks = NonNullList.withSize(36, ItemStack.EMPTY); ++ this.itemStacks = NonNullList.withSize(this.getContainerSize(), ItemStack.EMPTY); // CraftBukkit - SPIGOT-3513 + } + + protected EntityMinecartContainer(EntityTypes<?> entitytypes, double d0, double d1, double d2, World world) { + super(entitytypes, world, d0, d1, d2); +- this.itemStacks = NonNullList.withSize(36, ItemStack.EMPTY); ++ this.itemStacks = NonNullList.withSize(this.getContainerSize(), ItemStack.EMPTY); // CraftBukkit - SPIGOT-3513 + } + + @Override |