类 ChestHandler

java.lang.Object
committee.nova.mods.avaritia.core.chest.ChestHandler
所有已实现的接口:
net.minecraftforge.items.IItemHandler
直接已知子类:
ClientChestHandler, ServerChestHandler

public abstract class ChestHandler extends Object implements net.minecraftforge.items.IItemHandler
  • 字段详细资料

    • storageItems

      public final HashMap<String,Long> storageItems
    • nbtDataCache

      protected final Map<String,net.minecraft.nbt.Tag> nbtDataCache
  • 构造器详细资料

    • ChestHandler

      public ChestHandler()
  • 方法详细资料

    • isRemoved

      public abstract boolean isRemoved()
    • onItemChanged

      public void onItemChanged(String itemId, boolean listChanged)
    • updateItemKeys

      public void updateItemKeys()
    • hasItem

      public boolean hasItem(String item)
    • getItemAmount

      public int getItemAmount(String item)
    • getRealItemAmount

      public long getRealItemAmount(String item)
    • getStorageAmount

      public int getStorageAmount(net.minecraft.world.item.Item item)
    • canStorageAmount

      public int canStorageAmount(net.minecraft.world.item.ItemStack itemStack)
    • canStorageItem

      public boolean canStorageItem(String item)
    • canStorageItemAmount

      public int canStorageItemAmount(String item)
    • addItem

      public int addItem(net.minecraft.world.item.ItemStack itemStack)
      参数:
      itemStack - 会被修改,塞不进去会有余,
      返回:
      存进去的量
    • addItem

      public long addItem(String itemId, long count)
      返回:
      成功进入的
    • fillItemStack

      public void fillItemStack(net.minecraft.world.item.ItemStack itemStack, int count)
      填充物品叠堆,不限制数量。
      参数:
      itemStack - 要填充的物品
      count - 要填充的数量,负数为扣除。
    • takeItem

      public net.minecraft.world.item.ItemStack takeItem(String itemId, int count)
      获取物品,但不限制数量。
    • saveTakeItem

      public net.minecraft.world.item.ItemStack saveTakeItem(String itemId, int count)
      获取物品,数量限制在叠堆最大值。
    • saveTakeItem

      public net.minecraft.world.item.ItemStack saveTakeItem(String itemId, boolean half)
    • removeItem

      public void removeItem(net.minecraft.world.item.ItemStack itemStack)
    • removeItem

      public void removeItem(String itemId, long count)
    • isEmpty

      public boolean isEmpty()
    • getSlots

      public int getSlots()
      指定者:
      getSlots 在接口中 net.minecraftforge.items.IItemHandler
    • getStackInSlot

      @NotNull public @NotNull net.minecraft.world.item.ItemStack getStackInSlot(int slot)
      指定者:
      getStackInSlot 在接口中 net.minecraftforge.items.IItemHandler
    • insertItem

      @NotNull public @NotNull net.minecraft.world.item.ItemStack insertItem(int slot, @NotNull @NotNull net.minecraft.world.item.ItemStack stack, boolean simulate)
      指定者:
      insertItem 在接口中 net.minecraftforge.items.IItemHandler
    • extractItem

      @NotNull public @NotNull net.minecraft.world.item.ItemStack extractItem(int slot, int amount, boolean simulate)
      指定者:
      extractItem 在接口中 net.minecraftforge.items.IItemHandler
    • getSlotLimit

      public int getSlotLimit(int slot)
      指定者:
      getSlotLimit 在接口中 net.minecraftforge.items.IItemHandler
    • isItemValid

      public boolean isItemValid(int slot, @NotNull @NotNull net.minecraft.world.item.ItemStack stack)
      指定者:
      isItemValid 在接口中 net.minecraftforge.items.IItemHandler