Class FurnaceHandler
java.lang.Object
com.hammy275.immersivemc.common.immersive.handler.ContainerHandler<ListOfItemsStorage>
com.hammy275.immersivemc.common.immersive.handler.FurnaceHandler
- All Implemented Interfaces:
BlockBasedImmersiveHandler<ListOfItemsStorage>, ImmersiveHandler
- Direct Known Subclasses:
IronFurnacesFurnaceHandler
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidawardXP(net.minecraft.world.WorldlyContainer furnace, net.minecraft.server.level.ServerPlayer player) booleanenabledInConfig(net.minecraft.world.entity.player.Player player) net.minecraft.resources.IdentifiergetID()booleanisValidBlock(net.minecraft.core.BlockPos pos, net.minecraft.world.level.Level level) makeInventoryContents(net.minecraft.server.level.ServerPlayer tracker, net.minecraft.core.BlockPos pos) Creates inventory contents on the server to send to clients.voidswap(int slot, net.minecraft.world.InteractionHand hand, net.minecraft.core.BlockPos pos, net.minecraft.server.level.ServerPlayer tracker, ItemSwapAmount amount) Swaps an item from a player's hand into this immersive (and/or vice-versa).Methods inherited from class ContainerHandler
clientAuthoritative, isDirtyForClientSyncMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface BlockBasedImmersiveHandler
onStopTracking
-
Constructor Details
-
FurnaceHandler
public FurnaceHandler()
-
-
Method Details
-
makeInventoryContents
public ListOfItemsStorage makeInventoryContents(net.minecraft.server.level.ServerPlayer tracker, net.minecraft.core.BlockPos pos) Description copied from interface:BlockBasedImmersiveHandlerCreates inventory contents on the server to send to clients.- Parameters:
tracker- Player being sent to.pos- Position of the block being sent about.- Returns:
- A NetworkStorage to be sent over the network.
-
getEmptyNetworkStorage
- Returns:
- A new instance of the same type of NetworkStorage as made with
BlockBasedImmersiveHandler.makeInventoryContents(ServerPlayer, BlockPos), but in an empty state for purposes such as being decoded into by the client.
-
swap
public void swap(int slot, net.minecraft.world.InteractionHand hand, net.minecraft.core.BlockPos pos, net.minecraft.server.level.ServerPlayer tracker, ItemSwapAmount amount) Description copied from interface:BlockBasedImmersiveHandlerSwaps an item from a player's hand into this immersive (and/or vice-versa).- Parameters:
slot- Slot being swapped with in this immersive.hand- Player's hand being swapped with.pos- Position of block being swapped with.tracker- Player who is swapping.amount- An object representing the amount of items to swap. UseItemSwapAmount.getNumItemsToSwap(), passing in the item stack size of the item in the player's hand to get the amount of items to swap.
-
isValidBlock
public boolean isValidBlock(net.minecraft.core.BlockPos pos, net.minecraft.world.level.Level level) - Parameters:
pos- Position to check.level- The level being checked in.- Returns:
- Whether the supplied block matches what this handler handles.
-
enabledInConfig
public boolean enabledInConfig(net.minecraft.world.entity.player.Player player) - Parameters:
player- The player we're checking the config of.- Returns:
- Whether the immersive this handler handles is enabled. If you do not have a configuration system, this should always return true.
-
getID
public net.minecraft.resources.Identifier getID()- Returns:
- A unique ID to identify this handler. The same value should always be returned by this method.
-
awardXP
protected void awardXP(net.minecraft.world.WorldlyContainer furnace, net.minecraft.server.level.ServerPlayer player)
-