类 AbstractContainerMenu

java.lang.Object
net.minecraft.world.inventory.AbstractContainerMenu
直接已知子类:
BeaconMenu, BrewingStandMenu, CartographyTableMenu, ChestMenu, CreativeModeInventoryScreen.ItemPickerMenu, DispenserMenu, EnchantmentMenu, GrindstoneMenu, HopperMenu, HorseInventoryMenu, ItemCombinerMenu, LecternMenu, LoomMenu, MerchantMenu, RecipeBookMenu, ShulkerBoxMenu, StonecutterMenu

public abstract class AbstractContainerMenu extends Object
  • 字段详细资料

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • SLOT_CLICKED_OUTSIDE

      public static final int SLOT_CLICKED_OUTSIDE
      另请参阅:
    • QUICKCRAFT_TYPE_CHARITABLE

      public static final int QUICKCRAFT_TYPE_CHARITABLE
      另请参阅:
    • QUICKCRAFT_TYPE_GREEDY

      public static final int QUICKCRAFT_TYPE_GREEDY
      另请参阅:
    • QUICKCRAFT_TYPE_CLONE

      public static final int QUICKCRAFT_TYPE_CLONE
      另请参阅:
    • QUICKCRAFT_HEADER_START

      public static final int QUICKCRAFT_HEADER_START
      另请参阅:
    • QUICKCRAFT_HEADER_CONTINUE

      public static final int QUICKCRAFT_HEADER_CONTINUE
      另请参阅:
    • QUICKCRAFT_HEADER_END

      public static final int QUICKCRAFT_HEADER_END
      另请参阅:
    • CARRIED_SLOT_SIZE

      public static final int CARRIED_SLOT_SIZE
      另请参阅:
    • lastSlots

      private final NonNullList<ItemStack> lastSlots
    • slots

      public final NonNullList<Slot> slots
    • dataSlots

      private final List<DataSlot> dataSlots
    • carried

      private ItemStack carried
    • remoteSlots

      private final NonNullList<ItemStack> remoteSlots
    • remoteDataSlots

      private final it.unimi.dsi.fastutil.ints.IntList remoteDataSlots
    • remoteCarried

      private ItemStack remoteCarried
    • stateId

      private int stateId
    • containerId

      public final int containerId
    • quickcraftType

      private int quickcraftType
    • quickcraftStatus

      private int quickcraftStatus
    • quickcraftSlots

      private final Set<Slot> quickcraftSlots
    • containerListeners

      private final List<ContainerListener> containerListeners
    • synchronizer

      @Nullable private ContainerSynchronizer synchronizer
    • suppressRemoteUpdates

      private boolean suppressRemoteUpdates
  • 构造器详细资料

    • AbstractContainerMenu

      protected AbstractContainerMenu(@Nullable MenuType<?> pMenuType, int pContainerId)
  • 方法详细资料

    • stillValid

      protected static boolean stillValid(ContainerLevelAccess pAccess, Player pPlayer, Block pTargetBlock)
    • getType

      public MenuType<?> getType()
    • checkContainerSize

      protected static void checkContainerSize(Container pContainer, int pMinSize)
    • checkContainerDataCount

      protected static void checkContainerDataCount(ContainerData pIntArray, int pMinSize)
    • isValidSlotIndex

      public boolean isValidSlotIndex(int pSlotIndex)
    • addSlot

      protected Slot addSlot(Slot pSlot)
    • addDataSlot

      protected DataSlot addDataSlot(DataSlot pIntValue)
    • addDataSlots

      protected void addDataSlots(ContainerData pArray)
    • addSlotListener

      public void addSlotListener(ContainerListener pListener)
    • setSynchronizer

      public void setSynchronizer(ContainerSynchronizer pSynchronizer)
    • sendAllDataToRemote

      public void sendAllDataToRemote()
    • removeSlotListener

      public void removeSlotListener(ContainerListener pListener)
    • getItems

      public NonNullList<ItemStack> getItems()
    • broadcastChanges

      public void broadcastChanges()
    • broadcastFullState

      public void broadcastFullState()
    • updateDataSlotListeners

      private void updateDataSlotListeners(int pSlotIndex, int pValue)
    • triggerSlotListeners

      private void triggerSlotListeners(int pSlotIndex, ItemStack pStack, Supplier<ItemStack> pSupplier)
    • synchronizeSlotToRemote

      private void synchronizeSlotToRemote(int pSlotIndex, ItemStack pStack, Supplier<ItemStack> pSupplier)
    • synchronizeDataSlotToRemote

      private void synchronizeDataSlotToRemote(int pSlotIndex, int pValue)
    • synchronizeCarriedToRemote

      private void synchronizeCarriedToRemote()
    • setRemoteSlot

      public void setRemoteSlot(int pSlot, ItemStack pStack)
    • setRemoteSlotNoCopy

      public void setRemoteSlotNoCopy(int pSlot, ItemStack pStack)
    • setRemoteCarried

      public void setRemoteCarried(ItemStack pRemoteCarried)
    • clickMenuButton

      public boolean clickMenuButton(Player pPlayer, int pId)
    • getSlot

      public Slot getSlot(int pSlotId)
    • quickMoveStack

      public abstract ItemStack quickMoveStack(Player pPlayer, int pIndex)
    • clicked

      public void clicked(int pSlotId, int pButton, ClickType pClickType, Player pPlayer)
    • doClick

      private void doClick(int pSlotId, int pButton, ClickType pClickType, Player pPlayer)
    • tryItemClickBehaviourOverride

      private boolean tryItemClickBehaviourOverride(Player pPlayer, ClickAction pAction, Slot pSlot, ItemStack pClickedItem, ItemStack pCarriedItem)
    • createCarriedSlotAccess

      private SlotAccess createCarriedSlotAccess()
    • canTakeItemForPickAll

      public boolean canTakeItemForPickAll(ItemStack pStack, Slot pSlot)
    • removed

      public void removed(Player pPlayer)
    • clearContainer

      protected void clearContainer(Player pPlayer, Container pContainer)
    • slotsChanged

      public void slotsChanged(Container pContainer)
    • setItem

      public void setItem(int pSlotId, int pStateId, ItemStack pStack)
    • initializeContents

      public void initializeContents(int pStateId, List<ItemStack> pItems, ItemStack pCarried)
    • setData

      public void setData(int pId, int pData)
    • stillValid

      public abstract boolean stillValid(Player pPlayer)
    • moveItemStackTo

      protected boolean moveItemStackTo(ItemStack pStack, int pStartIndex, int pEndIndex, boolean pReverseDirection)
    • getQuickcraftType

      public static int getQuickcraftType(int pEventButton)
    • getQuickcraftHeader

      public static int getQuickcraftHeader(int pClickedButton)
    • getQuickcraftMask

      public static int getQuickcraftMask(int pQuickCraftingHeader, int pQuickCraftingType)
    • isValidQuickcraftType

      public static boolean isValidQuickcraftType(int pDragMode, Player pPlayer)
    • resetQuickCraft

      protected void resetQuickCraft()
    • canItemQuickReplace

      public static boolean canItemQuickReplace(@Nullable Slot pSlot, ItemStack pStack, boolean pStackSizeMatters)
    • getQuickCraftPlaceCount

      public static int getQuickCraftPlaceCount(Set<Slot> pSlots, int pType, ItemStack pStack)
    • canDragTo

      public boolean canDragTo(Slot pSlot)
    • getRedstoneSignalFromBlockEntity

      public static int getRedstoneSignalFromBlockEntity(@Nullable BlockEntity pBlockEntity)
    • getRedstoneSignalFromContainer

      public static int getRedstoneSignalFromContainer(@Nullable Container pContainer)
    • setCarried

      public void setCarried(ItemStack pStack)
    • getCarried

      public ItemStack getCarried()
    • suppressRemoteUpdates

      public void suppressRemoteUpdates()
    • resumeRemoteUpdates

      public void resumeRemoteUpdates()
    • transferState

      public void transferState(AbstractContainerMenu pMenu)
    • findSlot

      public OptionalInt findSlot(Container pContainer, int pSlotIndex)
    • getStateId

      public int getStateId()
    • incrementStateId

      public int incrementStateId()