forked from LogBlock/LogBlock
@@ -30,7 +30,7 @@ import java.util.logging.Level;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.BlockState;
|
||||
import org.bukkit.block.ContainerBlock;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
@@ -133,7 +133,7 @@ public class Consumer extends TimerTask
|
||||
* The respective container. Must be an instance of Chest, Dispencer or Furnace.
|
||||
*/
|
||||
public void queueChestAccess(String playerName, BlockState container, short itemType, short itemAmount, byte itemData) {
|
||||
if (!(container instanceof ContainerBlock))
|
||||
if (!(container instanceof InventoryHolder))
|
||||
return;
|
||||
queueChestAccess(playerName, new Location(container.getWorld(), container.getX(), container.getY(), container.getZ()), container.getTypeId(), itemType, itemAmount, itemData);
|
||||
}
|
||||
@@ -150,12 +150,12 @@ public class Consumer extends TimerTask
|
||||
* Logs a container block break. The block type before is assumed to be o (air). All content is assumed to be taken.
|
||||
*
|
||||
* @param container
|
||||
* Must be instanceof ContainerBlock
|
||||
* Must be instanceof InventoryHolder
|
||||
*/
|
||||
public void queueContainerBreak(String playerName, BlockState container) {
|
||||
if (!(container instanceof ContainerBlock))
|
||||
if (!(container instanceof InventoryHolder))
|
||||
return;
|
||||
queueContainerBreak(playerName, new Location(container.getWorld(), container.getX(), container.getY(), container.getZ()), container.getTypeId(), container.getRawData(), ((ContainerBlock)container).getInventory());
|
||||
queueContainerBreak(playerName, new Location(container.getWorld(), container.getX(), container.getY(), container.getZ()), container.getTypeId(), container.getRawData(), ((InventoryHolder)container).getInventory());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -19,7 +19,7 @@ import org.bukkit.World;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.block.BlockState;
|
||||
import org.bukkit.block.ContainerBlock;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.material.Bed;
|
||||
@@ -159,8 +159,8 @@ public class WorldEditor implements Runnable
|
||||
}
|
||||
if (!(equalTypes(block.getTypeId(), type) || replaceAnyway.contains(block.getTypeId())))
|
||||
return PerformResult.NO_ACTION;
|
||||
if (state instanceof ContainerBlock) {
|
||||
((ContainerBlock)state).getInventory().clear();
|
||||
if (state instanceof InventoryHolder) {
|
||||
((InventoryHolder)state).getInventory().clear();
|
||||
state.update();
|
||||
}
|
||||
if (block.getTypeId() == replaced) {
|
||||
|
@@ -9,7 +9,7 @@ import java.util.Map;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockState;
|
||||
import org.bukkit.block.ContainerBlock;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
@@ -36,9 +36,9 @@ public class ChestAccessLogging extends LoggingListener
|
||||
if (cont != null) {
|
||||
final ItemStack[] before = cont.items;
|
||||
final BlockState state = cont.loc.getBlock().getState();
|
||||
if (!(state instanceof ContainerBlock))
|
||||
if (!(state instanceof InventoryHolder))
|
||||
return;
|
||||
final ItemStack[] after = compressInventory(((ContainerBlock)state).getInventory().getContents());
|
||||
final ItemStack[] after = compressInventory(((InventoryHolder)state).getInventory().getContents());
|
||||
final ItemStack[] diff = compareInventories(before, after);
|
||||
for (final ItemStack item : diff)
|
||||
consumer.queueChestAccess(player.getName(), cont.loc, state.getTypeId(), (short)item.getTypeId(), (short)item.getAmount(), rawData(item));
|
||||
@@ -48,9 +48,9 @@ public class ChestAccessLogging extends LoggingListener
|
||||
|
||||
public void checkInventoryOpen(Player player, Block block) {
|
||||
final BlockState state = block.getState();
|
||||
if (!(state instanceof ContainerBlock))
|
||||
if (!(state instanceof InventoryHolder))
|
||||
return;
|
||||
containers.put(player, new ContainerState(block.getLocation(), compressInventory(((ContainerBlock)state).getInventory().getContents())));
|
||||
containers.put(player, new ContainerState(block.getLocation(), compressInventory(((InventoryHolder)state).getInventory().getContents())));
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
|
@@ -13,7 +13,7 @@ import org.bukkit.Chunk;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.BlockState;
|
||||
import org.bukkit.block.ContainerBlock;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.entity.TNTPrimed;
|
||||
@@ -156,8 +156,8 @@ public class BukkitUtils
|
||||
}
|
||||
|
||||
public static int modifyContainer(BlockState b, ItemStack item) {
|
||||
if (b instanceof ContainerBlock) {
|
||||
final Inventory inv = ((ContainerBlock)b).getInventory();
|
||||
if (b instanceof InventoryHolder) {
|
||||
final Inventory inv = ((InventoryHolder)b).getInventory();
|
||||
if (item.getAmount() < 0) {
|
||||
item.setAmount(-item.getAmount());
|
||||
final ItemStack tmp = inv.removeItem(item).get(0);
|
||||
|
Reference in New Issue
Block a user