spacepaste

  1.  
  2. package com.superdoxin.conveyors.tile;
  3. import net.minecraft.entity.player.EntityPlayer;
  4. import net.minecraft.inventory.IInventory;
  5. import net.minecraft.item.ItemStack;
  6. import net.minecraft.tileentity.TileEntity;
  7. import net.minecraft.tileentity.TileEntityLockable;
  8. import net.minecraft.util.ChatComponentTranslation;
  9. import net.minecraft.util.IChatComponent;
  10. public class TileEntityConveyor extends TileEntity implements IInventory{
  11. private ItemStack[] contents = new ItemStack[8];
  12. @Override
  13. public String getName() {
  14. return "container.conveyor";
  15. }
  16. @Override
  17. public boolean hasCustomName() {
  18. return false;
  19. }
  20. @Override
  21. public IChatComponent getDisplayName() {
  22. return new ChatComponentTranslation(this.getName(), new Object[0]);
  23. }
  24. @Override
  25. public int getSizeInventory() {
  26. return 8;
  27. }
  28. @Override
  29. public ItemStack getStackInSlot(int index) {
  30. return this.contents[index];
  31. }
  32. @Override
  33. public ItemStack decrStackSize(int index, int count) {
  34. if (this.contents[index] != null)
  35. {
  36. if (this.contents[index].stackSize <= count)
  37. {
  38. ItemStack itemstack1 = this.contents[index];
  39. this.contents[index] = null;
  40. this.markDirty();
  41. return itemstack1;
  42. }
  43. else
  44. {
  45. ItemStack itemstack = this.contents[index].splitStack(count);
  46. if (this.contents[index].stackSize == 0)
  47. {
  48. this.contents[index] = null;
  49. }
  50. this.markDirty();
  51. return itemstack;
  52. }
  53. }
  54. else
  55. {
  56. return null;
  57. }
  58. }
  59. @Override
  60. public ItemStack removeStackFromSlot(int index) {
  61. if (this.contents[index] != null)
  62. {
  63. ItemStack itemstack = this.contents[index];
  64. this.contents[index] = null;
  65. return itemstack;
  66. }
  67. else
  68. {
  69. return null;
  70. }
  71. }
  72. @Override
  73. public void setInventorySlotContents(int index, ItemStack stack) {
  74. this.contents[index] = stack;
  75. if (stack != null && stack.stackSize > this.getInventoryStackLimit())
  76. {
  77. stack.stackSize = this.getInventoryStackLimit();
  78. }
  79. this.markDirty();
  80. }
  81. @Override
  82. public int getInventoryStackLimit() {
  83. return 1;
  84. }
  85. @Override
  86. public void markDirty() {
  87. // TODO Auto-generated method stub
  88. }
  89. @Override
  90. public boolean isUseableByPlayer(EntityPlayer player) {
  91. return false;
  92. }
  93. @Override
  94. public void openInventory(EntityPlayer player) {
  95. }
  96. @Override
  97. public void closeInventory(EntityPlayer player) {
  98. }
  99. @Override
  100. public boolean isItemValidForSlot(int index, ItemStack stack) {
  101. return true;
  102. }
  103. @Override
  104. public int getField(int id) {
  105. return 0;
  106. }
  107. @Override
  108. public void setField(int id, int value) {
  109. }
  110. @Override
  111. public int getFieldCount() {
  112. return 0;
  113. }
  114. @Override
  115. public void clear() {
  116. for (int i = 0; i < this.contents.length; ++i)
  117. {
  118. this.contents[i] = null;
  119. }
  120. }
  121. }
  122.