Class CrafterBlockEntity
java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.level.block.entity.BlockEntity
net.minecraft.world.level.block.entity.BaseContainerBlockEntity
net.minecraft.world.level.block.entity.RandomizableContainerBlockEntity
net.minecraft.world.level.block.entity.CrafterBlockEntity
- All Implemented Interfaces:
Iterable<ItemStack>, TypedInstance<BlockEntityType<?>>, DebugValueSource, Clearable, Container, SlotProvider, CraftingContainer, MenuConstructor, StackedContentsCompatible, MenuProvider, Nameable, RandomizableContainer, IAttachmentHolder, ContainerExtension, IBlockEntityExtension, IMenuProviderExtension
public class CrafterBlockEntity
extends RandomizableContainerBlockEntity
implements CraftingContainer
-
Nested Class Summary
Nested classes/interfaces inherited from class AttachmentHolder
AttachmentHolder.AsFieldNested classes/interfaces inherited from interface Container
Container.ContainerIteratorNested classes/interfaces inherited from interface DebugValueSource
DebugValueSource.Registration, DebugValueSource.ValueGetter<T> -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intprotected final ContainerDataprivate intstatic final intprivate static final intprivate static final Componentprivate static final intprivate NonNullList<ItemStack> static final intstatic final intstatic final intFields inherited from class RandomizableContainerBlockEntity
lootTable, lootTableSeedFields inherited from class BlockEntity
level, remove, worldPositionFields inherited from class AttachmentHolder
ATTACHMENTS_NBT_KEYFields inherited from interface Container
DEFAULT_DISTANCE_BUFFERFields inherited from interface RandomizableContainer
LOOT_TABLE_SEED_TAG, LOOT_TABLE_TAG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddDisabledSlots(ValueOutput output) private voidaddTriggered(ValueOutput output) booleancanPlaceItem(int slot, ItemStack itemStack) Returnstrueif automation is allowed to insert the given stack (ignoring stack size) into the given slot.protected AbstractContainerMenucreateMenu(int containerId, Inventory inventory) voidfillStackedContents(StackedItemContents contents) intprotected ComponentintgetItem(int slot) Returns the stack in the given slot.getItems()intintgetWidth()booleanisEmpty()booleanisSlotDisabled(int slotId) booleanprotected voidloadAdditional(ValueInput input) protected voidsaveAdditional(ValueOutput output) static voidserverTick(Level level, BlockPos blockPos, BlockState blockState, CrafterBlockEntity entity) voidsetCraftingTicksRemaining(int maxCraftingTicks) voidSets the given item stack to the specified slot in the inventory (can be crafting or armor sections).protected voidsetItems(NonNullList<ItemStack> items) voidsetSlotState(int slotId, boolean enabled) voidsetTriggered(boolean value) private booleanslotCanBeDisabled(int slotId) private booleansmallerStackExist(int baseSize, ItemStack baseItem, int baseSlot) booleanstillValid(Player player) Don't rename this method to canInteractWith due to conflicts with ContainerMethods inherited from class RandomizableContainerBlockEntity
applyImplicitComponents, canOpen, collectImplicitComponents, createMenu, getLootTable, getLootTableSeed, removeComponentsFromTag, removeItem, removeItemNoUpdate, setLootTable, setLootTableSeedMethods inherited from class BaseContainerBlockEntity
clearContent, getCustomName, getDisplayName, getName, isLocked, sendChestLockedNotifications, setItemMethods inherited from class BlockEntity
addEntityType, applyComponents, applyComponentsFromItemStack, clearRemoved, collectComponents, components, fillCrashReportCategory, getAndClearAttachmentTypesToSync, getBlockPos, getBlockState, getLevel, getNameForReporting, getPersistentData, getPosFromTag, getType, getUpdatePacket, getUpdateTag, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadStatic, loadWithComponents, parseCustomNameSafe, preRemoveSideEffects, problemPath, registerDebugValues, removeData, saveCustomOnly, saveCustomOnly, saveWithFullMetadata, saveWithFullMetadata, saveWithId, saveWithoutMetadata, saveWithoutMetadata, setBlockState, setChanged, setChanged, setComponents, setData, setLevel, setRemoved, syncData, triggerEvent, typeHolderMethods inherited from class AttachmentHolder
deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, serializeAttachmentsMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Clearable
clearContentMethods inherited from interface Container
canTakeItem, countItem, getEntitiesWithContainerOpen, getMaxStackSize, getMaxStackSize, getSlot, hasAnyMatching, hasAnyOf, iterator, removeItem, removeItemNoUpdate, setChanged, startOpen, stopOpenMethods inherited from interface ContainerExtension
onTransfer, setItemMethods inherited from interface CraftingContainer
asCraftInput, asPositionedCraftInputMethods inherited from interface IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncDataMethods inherited from interface IBlockEntityExtension
getModelData, handleUpdateTag, hasCustomOutlineRendering, invalidateCapabilities, onChunkUnloaded, onDataPacket, onLoad, requestModelDataUpdateMethods inherited from interface IMenuProviderExtension
shouldTriggerClientSideContainerClosingOnOpen, writeClientSideDataMethods inherited from interface Iterable
forEach, spliteratorMethods inherited from interface Nameable
getPlainTextName, hasCustomNameMethods inherited from interface RandomizableContainer
getBlockPos, getLevel, setLootTable, tryLoadLootTable, trySaveLootTable, unpackLootTableMethods inherited from interface SlotProvider
getSlotsFromRange
-
Field Details
-
CONTAINER_WIDTH
public static final int CONTAINER_WIDTH- See Also:
-
CONTAINER_HEIGHT
public static final int CONTAINER_HEIGHT- See Also:
-
CONTAINER_SIZE
public static final int CONTAINER_SIZE- See Also:
-
SLOT_DISABLED
public static final int SLOT_DISABLED- See Also:
-
SLOT_ENABLED
public static final int SLOT_ENABLED- See Also:
-
DATA_TRIGGERED
public static final int DATA_TRIGGERED- See Also:
-
NUM_DATA
public static final int NUM_DATA- See Also:
-
DEFAULT_CRAFTING_TICKS_REMAINING
private static final int DEFAULT_CRAFTING_TICKS_REMAINING- See Also:
-
DEFAULT_TRIGGERED
private static final int DEFAULT_TRIGGERED- See Also:
-
DEFAULT_NAME
-
items
-
craftingTicksRemaining
private int craftingTicksRemaining -
containerData
-
-
Constructor Details
-
CrafterBlockEntity
-
-
Method Details
-
getDefaultName
- Specified by:
getDefaultNamein classBaseContainerBlockEntity
-
createMenu
- Specified by:
createMenuin classBaseContainerBlockEntity
-
setSlotState
public void setSlotState(int slotId, boolean enabled) -
isSlotDisabled
public boolean isSlotDisabled(int slotId) -
canPlaceItem
Description copied from interface:ContainerReturnstrueif automation is allowed to insert the given stack (ignoring stack size) into the given slot. For guis use Slot.isItemValid- Specified by:
canPlaceItemin interfaceContainer
-
smallerStackExist
-
loadAdditional
- Overrides:
loadAdditionalin classBaseContainerBlockEntity
-
saveAdditional
- Overrides:
saveAdditionalin classBaseContainerBlockEntity
-
getContainerSize
public int getContainerSize()- Specified by:
getContainerSizein interfaceContainer
-
isEmpty
public boolean isEmpty()- Specified by:
isEmptyin interfaceContainer- Overrides:
isEmptyin classRandomizableContainerBlockEntity
-
getItem
-
setItem
Description copied from interface:ContainerSets the given item stack to the specified slot in the inventory (can be crafting or armor sections).- Specified by:
setItemin interfaceContainer- Overrides:
setItemin classRandomizableContainerBlockEntity
-
stillValid
Description copied from interface:ContainerDon't rename this method to canInteractWith due to conflicts with Container- Specified by:
stillValidin interfaceContainer- Overrides:
stillValidin classBaseContainerBlockEntity
-
getItems
- Specified by:
getItemsin interfaceCraftingContainer- Specified by:
getItemsin classBaseContainerBlockEntity
-
setItems
- Specified by:
setItemsin classBaseContainerBlockEntity
-
getWidth
public int getWidth()- Specified by:
getWidthin interfaceCraftingContainer
-
getHeight
public int getHeight()- Specified by:
getHeightin interfaceCraftingContainer
-
fillStackedContents
- Specified by:
fillStackedContentsin interfaceStackedContentsCompatible
-
addDisabledSlots
-
addTriggered
-
setTriggered
public void setTriggered(boolean value) -
isTriggered
public boolean isTriggered() -
serverTick
public static void serverTick(Level level, BlockPos blockPos, BlockState blockState, CrafterBlockEntity entity) -
setCraftingTicksRemaining
public void setCraftingTicksRemaining(int maxCraftingTicks) -
getRedstoneSignal
public int getRedstoneSignal() -
slotCanBeDisabled
private boolean slotCanBeDisabled(int slotId)
-