Fix formatting to use spaces instead

This commit is contained in:
ljfa-ag 2015-04-10 11:49:00 +02:00
parent 833858d064
commit 74930a9445

View file

@ -10,144 +10,146 @@ import net.minecraftforge.common.util.Constants;
/** /**
* Base class for tile entities with inventory * Base class for tile entities with inventory
*
* @author ljfa-ag * @author ljfa-ag
*/ */
public abstract class TEInventory extends TileEntity implements IInventory public abstract class TEInventory extends TileEntity implements IInventory
{ {
protected ItemStack[] inv; protected ItemStack[] inv;
public TEInventory(int size)
{
inv = new ItemStack[size];
}
@Override public TEInventory(int size)
public int getSizeInventory() {
{ inv = new ItemStack[size];
return inv.length; }
}
public ItemStack[] getSlots() @Override
{ public int getSizeInventory()
return inv; {
} return inv.length;
}
@Override public ItemStack[] getSlots()
public ItemStack getStackInSlot(int slot) {
{ return inv;
return inv[slot]; }
}
@Override @Override
public ItemStack decrStackSize(int slot, int amt) public ItemStack getStackInSlot(int slot)
{ {
ItemStack stack = getStackInSlot(slot); return inv[slot];
if (stack != null) }
{
if (stack.stackSize <= amt)
setInventorySlotContents(slot, null);
else
{
stack = stack.splitStack(amt);
if (stack.stackSize == 0)
setInventorySlotContents(slot, null);
}
}
return stack;
}
@Override @Override
public ItemStack getStackInSlotOnClosing(int slot) public ItemStack decrStackSize(int slot, int amt)
{ {
ItemStack stack = getStackInSlot(slot); ItemStack stack = getStackInSlot(slot);
if (stack != null) if (stack != null)
setInventorySlotContents(slot, null); {
return stack; if (stack.stackSize <= amt)
} setInventorySlotContents(slot, null);
else
{
stack = stack.splitStack(amt);
if (stack.stackSize == 0)
setInventorySlotContents(slot, null);
}
}
return stack;
}
@Override @Override
public void setInventorySlotContents(int slot, ItemStack stack) public ItemStack getStackInSlotOnClosing(int slot)
{ {
inv[slot] = stack; ItemStack stack = getStackInSlot(slot);
worldObj.markBlockForUpdate(xCoord, yCoord, zCoord); if (stack != null)
if (stack != null && stack.stackSize > getInventoryStackLimit()) setInventorySlotContents(slot, null);
stack.stackSize = getInventoryStackLimit(); return stack;
} }
@Override @Override
public abstract String getInventoryName(); public void setInventorySlotContents(int slot, ItemStack stack)
{
inv[slot] = stack;
worldObj.markBlockForUpdate(xCoord, yCoord, zCoord);
if (stack != null && stack.stackSize > getInventoryStackLimit())
stack.stackSize = getInventoryStackLimit();
}
@Override @Override
public boolean hasCustomInventoryName() public abstract String getInventoryName();
{
return false;
}
@Override @Override
public int getInventoryStackLimit() public boolean hasCustomInventoryName()
{ {
return 64; return false;
} }
@Override @Override
public boolean isUseableByPlayer(EntityPlayer player) public int getInventoryStackLimit()
{ {
return worldObj.getTileEntity(xCoord, yCoord, zCoord) == this return 64;
&& player.getDistanceSq(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5) < 64; }
}
@Override @Override
public void openInventory() public boolean isUseableByPlayer(EntityPlayer player)
{ {
} return worldObj.getTileEntity(xCoord, yCoord, zCoord) == this
&& player.getDistanceSq(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5) < 64;
}
@Override @Override
public void closeInventory() public void openInventory()
{ {
} }
@Override @Override
public boolean isItemValidForSlot(int slot, ItemStack stack) public void closeInventory()
{ {
return true; }
}
@Override @Override
public void writeToNBT(NBTTagCompound tag) public boolean isItemValidForSlot(int slot, ItemStack stack)
{ {
super.writeToNBT(tag); return true;
NBTTagList invList = new NBTTagList(); }
for (int i = 0; i < inv.length; i++)
{
if (inv[i] != null)
{
NBTTagCompound stackTag = new NBTTagCompound();
stackTag.setByte("Slot", (byte) i);
inv[i].writeToNBT(stackTag);
invList.appendTag(stackTag);
}
}
tag.setTag("Inventory", invList); @Override
} public void writeToNBT(NBTTagCompound tag)
{
@Override super.writeToNBT(tag);
public void readFromNBT(NBTTagCompound tag) NBTTagList invList = new NBTTagList();
{ for (int i = 0; i < inv.length; i++)
super.readFromNBT(tag); {
NBTTagList invList = tag.getTagList("Inventory", Constants.NBT.TAG_COMPOUND); if (inv[i] != null)
for(int i = 0; i < invList.tagCount(); i++) {
NBTTagCompound stackTag = new NBTTagCompound();
stackTag.setByte("Slot", (byte) i);
inv[i].writeToNBT(stackTag);
invList.appendTag(stackTag);
}
}
tag.setTag("Inventory", invList);
}
@Override
public void readFromNBT(NBTTagCompound tag)
{
super.readFromNBT(tag);
NBTTagList invList = tag.getTagList("Inventory",
Constants.NBT.TAG_COMPOUND);
for (int i = 0; i < invList.tagCount(); i++)
{ {
NBTTagCompound stackTag = invList.getCompoundTagAt(i); NBTTagCompound stackTag = invList.getCompoundTagAt(i);
int slot = stackTag.getByte("Slot"); int slot = stackTag.getByte("Slot");
if(slot >= 0 && slot < inv.length) if (slot >= 0 && slot < inv.length)
inv[slot] = ItemStack.loadItemStackFromNBT(stackTag); inv[slot] = ItemStack.loadItemStackFromNBT(stackTag);
} }
} }
public void clear() public void clear()
{ {
inv = new ItemStack[inv.length]; inv = new ItemStack[inv.length];
} }
} }