13
0
geforkt von Mirrors/Paper

Make CraftMinecartHopper work as InventoryHolder. Adds BUKKIT-3796

By: Michael Limiero <mike5713@gmail.com>
Dieser Commit ist enthalten in:
CraftBukkit/Spigot 2013-03-17 15:50:34 -04:00
Ursprung e3356c9896
Commit 9262bc5393
3 geänderte Dateien mit 19 neuen und 7 gelöschten Zeilen

Datei anzeigen

@ -4,6 +4,7 @@ import java.util.Set;
import net.minecraft.server.Container;
import net.minecraft.server.EntityHuman;
import net.minecraft.server.EntityMinecartHopper;
import net.minecraft.server.EntityPlayer;
import net.minecraft.server.Packet100OpenWindow;
import net.minecraft.server.Packet101CloseWindow;
@ -193,14 +194,14 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
break;
case DISPENSER:
if (craftinv.getInventory() instanceof TileEntityDispenser) {
getHandle().openDispenser((TileEntityDispenser)craftinv.getInventory());
getHandle().openDispenser((TileEntityDispenser) craftinv.getInventory());
} else {
openCustomInventory(inventory, player, 3);
}
break;
case FURNACE:
if (craftinv.getInventory() instanceof TileEntityFurnace) {
getHandle().openFurnace((TileEntityFurnace)craftinv.getInventory());
getHandle().openFurnace((TileEntityFurnace) craftinv.getInventory());
} else {
openCustomInventory(inventory, player, 2);
}
@ -210,7 +211,7 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
break;
case BREWING:
if (craftinv.getInventory() instanceof TileEntityBrewingStand) {
getHandle().openBrewingStand((TileEntityBrewingStand)craftinv.getInventory());
getHandle().openBrewingStand((TileEntityBrewingStand) craftinv.getInventory());
} else {
openCustomInventory(inventory, player, 5);
}
@ -220,7 +221,9 @@ public class CraftHumanEntity extends CraftLivingEntity implements HumanEntity {
break;
case HOPPER:
if (craftinv.getInventory() instanceof TileEntityHopper) {
getHandle().openHopper((TileEntityHopper)craftinv.getInventory());
getHandle().openHopper((TileEntityHopper) craftinv.getInventory());
} else if (craftinv.getInventory() instanceof EntityMinecartHopper) {
getHandle().openMinecartHopper((EntityMinecartHopper) craftinv.getInventory());
}
break;
case CREATIVE:

Datei anzeigen

@ -3,20 +3,29 @@ package org.bukkit.craftbukkit.entity;
import net.minecraft.server.EntityMinecartHopper;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.craftbukkit.inventory.CraftInventory;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.minecart.HopperMinecart;
import org.bukkit.inventory.Inventory;
final class CraftMinecartHopper extends CraftMinecart implements HopperMinecart {
private final CraftInventory inventory;
CraftMinecartHopper(CraftServer server, EntityMinecartHopper entity) {
super(server, entity);
inventory = new CraftInventory(entity);
}
@Override
public String toString() {
return "CraftMinecartHopper";
return "CraftMinecartHopper{" + "inventory=" + inventory + '}';
}
public EntityType getType() {
return EntityType.MINECART_HOPPER;
}
public Inventory getInventory() {
return inventory;
}
}

Datei anzeigen

@ -6,6 +6,7 @@ import java.util.ListIterator;
import net.minecraft.server.ContainerAnvilInventory;
import net.minecraft.server.ContainerEnchantTableInventory;
import net.minecraft.server.IHopper;
import net.minecraft.server.IInventory;
import net.minecraft.server.InventoryCrafting;
import net.minecraft.server.InventoryEnderChest;
@ -15,7 +16,6 @@ import net.minecraft.server.TileEntityBeacon;
import net.minecraft.server.TileEntityBrewingStand;
import net.minecraft.server.TileEntityDispenser;
import net.minecraft.server.TileEntityFurnace;
import net.minecraft.server.TileEntityHopper;
import org.apache.commons.lang.Validate;
import org.bukkit.entity.HumanEntity;
@ -445,7 +445,7 @@ public class CraftInventory implements Inventory {
return InventoryType.BEACON;
} else if (inventory instanceof ContainerAnvilInventory) {
return InventoryType.ANVIL;
} else if (inventory instanceof TileEntityHopper) {
} else if (inventory instanceof IHopper) {
return InventoryType.HOPPER;
} else {
return InventoryType.CHEST;