Class AbstractFurnaceBlockEntity
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.AbstractFurnaceBlockEntity
- All Implemented Interfaces:
 Clearable,Container,MenuConstructor,RecipeCraftingHolder,StackedContentsCompatible,MenuProvider,Nameable,WorldlyContainer,IAttachmentHolder,IMenuProviderExtension,IBlockEntityExtension,INBTSerializable<CompoundTag>
- Direct Known Subclasses:
 BlastFurnaceBlockEntity,FurnaceBlockEntity,SmokerBlockEntity
public abstract class AbstractFurnaceBlockEntity
extends BaseContainerBlockEntity
implements WorldlyContainer, RecipeCraftingHolder, StackedContentsCompatible
- 
Nested Class Summary
Nested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
AttachmentHolder.AsField - 
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final int(package private) int(package private) intstatic final intstatic final intstatic final intstatic final intprotected final ContainerDataprotected NonNullList<ItemStack>(package private) int(package private) intstatic final intprivate final RecipeManager.CachedCheck<Container,? extends AbstractCookingRecipe> private final it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap<ResourceLocation>private final RecipeType<? extends AbstractCookingRecipe>protected static final intprotected static final intprotected static final intprivate static final int[]private static final int[]private static final int[]Fields inherited from class net.minecraft.world.level.block.entity.BlockEntity
level, remove, worldPositionFields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
ATTACHMENTS_NBT_KEYFields inherited from interface net.minecraft.world.Container
DEFAULT_DISTANCE_LIMIT, LARGE_MAX_STACK_SIZE - 
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractFurnaceBlockEntity(BlockEntityType<?> p_154991_, BlockPos p_154992_, BlockState p_154993_, RecipeType<? extends AbstractCookingRecipe> p_154994_)  - 
Method Summary
Modifier and TypeMethodDescriptionprivate static voidadd(ObjIntConsumer<com.mojang.datafixers.util.Either<Item, TagKey<Item>>> consumer, TagKey<Item> tag, int time) private static voidadd(ObjIntConsumer<com.mojang.datafixers.util.Either<Item, TagKey<Item>>> consumer, ItemLike item, int time) private static voidprivate static voidvoidawardUsedRecipes(Player p_58396_, List<ItemStack> p_282202_) voidawardUsedRecipesAndPopExperience(ServerPlayer p_155004_) static voidbuildFuels(ObjIntConsumer<com.mojang.datafixers.util.Either<Item, TagKey<Item>>> map) private booleanburn(RegistryAccess p_266740_, RecipeHolder<?> p_300910_, NonNullList<ItemStack> p_267073_, int p_267157_) private booleancanBurn(RegistryAccess p_266924_, RecipeHolder<?> p_301107_, NonNullList<ItemStack> p_155007_, int p_155008_) booleancanPlaceItem(int p_58389_, ItemStack p_58390_) booleancanPlaceItemThroughFace(int p_58336_, ItemStack p_58337_, Direction p_58338_) booleancanTakeItemThroughFace(int p_58392_, ItemStack p_58393_, Direction p_58394_) voidprivate static voidcreateExperience(ServerLevel p_154999_, Vec3 p_155000_, int p_155001_, float p_155002_) voidfillStackedContents(StackedContents p_58342_) protected intgetBurnDuration(ItemStack p_58343_) intgetFuel()Deprecated.Forge: get burn times by calling CommonHooks#getBurnTime(ItemStack)getItem(int p_58328_) List<RecipeHolder<?>>getRecipesToAwardAndPopExperience(ServerLevel p_154996_, Vec3 p_154997_) RecipeHolder<?>int[]getSlotsForFace(Direction p_58363_) private static intgetTotalCookTime(Level p_222693_, AbstractFurnaceBlockEntity p_222694_) booleanisEmpty()static booleanprivate booleanisLit()private static booleanisNeverAFurnaceFuel(Item p_58398_) voidload(CompoundTag p_155025_) removeItem(int p_58330_, int p_58331_) removeItemNoUpdate(int p_58387_) protected voidsaveAdditional(CompoundTag p_187452_) static voidserverTick(Level p_155014_, BlockPos p_155015_, BlockState p_155016_, AbstractFurnaceBlockEntity p_155017_) voidvoidsetRecipeUsed(RecipeHolder<?> p_301245_) booleanstillValid(Player p_58340_) Methods inherited from class net.minecraft.world.level.block.entity.BaseContainerBlockEntity
canOpen, canUnlock, createMenu, createMenu, getCustomName, getDefaultName, getDisplayName, getName, setCustomNameMethods inherited from class net.minecraft.world.level.block.entity.BlockEntity
addEntityType, clearRemoved, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPersistentData, getPosFromTag, getType, getUpdatePacket, getUpdateTag, hasLevel, isRemoved, loadStatic, onlyOpCanSetNbt, removeData, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setBlockState, setChanged, setChanged, setData, setLevel, setRemoved, triggerEventMethods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
areAttachmentsCompatible, deserializeAttachments, getData, hasAttachments, hasData, serializeAttachmentsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.world.Container
canTakeItem, countItem, getMaxStackSize, hasAnyMatching, hasAnyOf, setChanged, startOpen, stopOpenMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, hasData, removeData, setDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IBlockEntityExtension
deserializeNBT, getModelData, handleUpdateTag, hasCustomOutlineRendering, invalidateCapabilities, onChunkUnloaded, onDataPacket, onLoad, requestModelDataUpdate, serializeNBTMethods inherited from interface net.neoforged.neoforge.client.extensions.IMenuProviderExtension
shouldTriggerClientSideContainerClosingOnOpenMethods inherited from interface net.minecraft.world.Nameable
hasCustomNameMethods inherited from interface net.minecraft.world.inventory.RecipeCraftingHolder
setRecipeUsed 
- 
Field Details
- 
SLOT_INPUT
protected static final int SLOT_INPUT- See Also:
 
 - 
SLOT_FUEL
protected static final int SLOT_FUEL- See Also:
 
 - 
SLOT_RESULT
protected static final int SLOT_RESULT- See Also:
 
 - 
DATA_LIT_TIME
public static final int DATA_LIT_TIME- See Also:
 
 - 
SLOTS_FOR_UP
private static final int[] SLOTS_FOR_UP - 
SLOTS_FOR_DOWN
private static final int[] SLOTS_FOR_DOWN - 
SLOTS_FOR_SIDES
private static final int[] SLOTS_FOR_SIDES - 
DATA_LIT_DURATION
public static final int DATA_LIT_DURATION- See Also:
 
 - 
DATA_COOKING_PROGRESS
public static final int DATA_COOKING_PROGRESS- See Also:
 
 - 
DATA_COOKING_TOTAL_TIME
public static final int DATA_COOKING_TOTAL_TIME- See Also:
 
 - 
NUM_DATA_VALUES
public static final int NUM_DATA_VALUES- See Also:
 
 - 
BURN_TIME_STANDARD
public static final int BURN_TIME_STANDARD- See Also:
 
 - 
BURN_COOL_SPEED
public static final int BURN_COOL_SPEED- See Also:
 
 - 
recipeType
 - 
items
 - 
litTime
int litTime - 
litDuration
int litDuration - 
cookingProgress
int cookingProgress - 
cookingTotalTime
int cookingTotalTime - 
dataAccess
 - 
recipesUsed
 - 
quickCheck
 
 - 
 - 
Constructor Details
- 
AbstractFurnaceBlockEntity
protected AbstractFurnaceBlockEntity(BlockEntityType<?> p_154991_, BlockPos p_154992_, BlockState p_154993_, RecipeType<? extends AbstractCookingRecipe> p_154994_)  
 - 
 - 
Method Details
- 
getFuel
Deprecated.Forge: get burn times by calling CommonHooks#getBurnTime(ItemStack) - 
add
private static void add(ObjIntConsumer<com.mojang.datafixers.util.Either<Item, TagKey<Item>>> consumer, ItemLike item, int time)  - 
add
 - 
buildFuels
@Internal public static void buildFuels(ObjIntConsumer<com.mojang.datafixers.util.Either<Item, TagKey<Item>>> map)  - 
isNeverAFurnaceFuel
 - 
add
 - 
add
 - 
isLit
private boolean isLit() - 
load
- Overrides:
 loadin classBaseContainerBlockEntity
 - 
saveAdditional
- Overrides:
 saveAdditionalin classBaseContainerBlockEntity
 - 
serverTick
public static void serverTick(Level p_155014_, BlockPos p_155015_, BlockState p_155016_, AbstractFurnaceBlockEntity p_155017_)  - 
canBurn
private boolean canBurn(RegistryAccess p_266924_, @Nullable RecipeHolder<?> p_301107_, NonNullList<ItemStack> p_155007_, int p_155008_)  - 
burn
private boolean burn(RegistryAccess p_266740_, @Nullable RecipeHolder<?> p_300910_, NonNullList<ItemStack> p_267073_, int p_267157_)  - 
getBurnDuration
 - 
getTotalCookTime
 - 
isFuel
 - 
getSlotsForFace
- Specified by:
 getSlotsForFacein interfaceWorldlyContainer
 - 
canPlaceItemThroughFace
public boolean canPlaceItemThroughFace(int p_58336_, ItemStack p_58337_, @Nullable Direction p_58338_) - Specified by:
 canPlaceItemThroughFacein interfaceWorldlyContainer
 - 
canTakeItemThroughFace
- Specified by:
 canTakeItemThroughFacein interfaceWorldlyContainer
 - 
getContainerSize
public int getContainerSize()- Specified by:
 getContainerSizein interfaceContainer
 - 
isEmpty
public boolean isEmpty() - 
getItem
 - 
removeItem
- Specified by:
 removeItemin interfaceContainer
 - 
removeItemNoUpdate
- Specified by:
 removeItemNoUpdatein interfaceContainer
 - 
setItem
 - 
stillValid
- Specified by:
 stillValidin interfaceContainer
 - 
canPlaceItem
- Specified by:
 canPlaceItemin interfaceContainer
 - 
clearContent
public void clearContent()- Specified by:
 clearContentin interfaceClearable
 - 
setRecipeUsed
- Specified by:
 setRecipeUsedin interfaceRecipeCraftingHolder
 - 
getRecipeUsed
- Specified by:
 getRecipeUsedin interfaceRecipeCraftingHolder
 - 
awardUsedRecipes
- Specified by:
 awardUsedRecipesin interfaceRecipeCraftingHolder
 - 
awardUsedRecipesAndPopExperience
 - 
getRecipesToAwardAndPopExperience
public List<RecipeHolder<?>> getRecipesToAwardAndPopExperience(ServerLevel p_154996_, Vec3 p_154997_)  - 
createExperience
private static void createExperience(ServerLevel p_154999_, Vec3 p_155000_, int p_155001_, float p_155002_)  - 
fillStackedContents
- Specified by:
 fillStackedContentsin interfaceStackedContentsCompatible
 
 -