Package org.moddingx.libx.base.tile
Class MenuBlockBE<T extends net.minecraft.world.level.block.entity.BlockEntity,C extends BlockEntityMenu<T>>
java.lang.Object
net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.Block
org.moddingx.libx.base.BlockBase
org.moddingx.libx.base.tile.BlockBE<T>
org.moddingx.libx.base.tile.MenuBlockBE<T,C>
- All Implemented Interfaces:
net.minecraft.world.flag.FeatureElement
,net.minecraft.world.level.block.EntityBlock
,net.minecraft.world.level.ItemLike
,net.minecraftforge.common.extensions.IForgeBlock
,CreativeTabItemProvider
,Registerable
public class MenuBlockBE<T extends net.minecraft.world.level.block.entity.BlockEntity,C extends BlockEntityMenu<T>>
extends BlockBE<T>
This class registers a menu to its
block entity type
and handles the gui
opening when the block is right clicked. You still need to manually register the screen on the client
Note: You need to register the Screen by yourself using the MenuScreens
register function.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.level.block.Block
net.minecraft.world.level.block.Block.BlockStatePairKey
Nested classes/interfaces inherited from class net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.state.BlockBehaviour.BlockStateBase, net.minecraft.world.level.block.state.BlockBehaviour.OffsetFunction, net.minecraft.world.level.block.state.BlockBehaviour.OffsetType, net.minecraft.world.level.block.state.BlockBehaviour.Properties, net.minecraft.world.level.block.state.BlockBehaviour.StateArgumentPredicate<A extends Object>, net.minecraft.world.level.block.state.BlockBehaviour.StatePredicate
Nested classes/interfaces inherited from interface org.moddingx.libx.registration.Registerable
Registerable.EntryCollector, Registerable.TrackingCollector
-
Field Summary
Fields inherited from class net.minecraft.world.level.block.Block
BLOCK_STATE_REGISTRY, INDESTRUCTIBLE, INSTANT, stateDefinition, UPDATE_ALL, UPDATE_ALL_IMMEDIATE, UPDATE_CLIENTS, UPDATE_IMMEDIATE, UPDATE_INVISIBLE, UPDATE_KNOWN_SHAPE, UPDATE_LIMIT, UPDATE_MOVE_BY_PISTON, UPDATE_NEIGHBORS, UPDATE_NONE, UPDATE_SUPPRESS_DROPS
Fields inherited from class net.minecraft.world.level.block.state.BlockBehaviour
drops, dynamicShape, explosionResistance, friction, hasCollision, isRandomlyTicking, jumpFactor, properties, requiredFeatures, soundType, speedFactor, UPDATE_SHAPE_ORDER
Fields inherited from interface net.minecraft.world.flag.FeatureElement
FILTERED_REGISTRIES
-
Constructor Summary
ConstructorDescriptionMenuBlockBE
(ModX mod, Class<T> beClass, net.minecraft.world.inventory.MenuType<C> menu, net.minecraft.world.level.block.state.BlockBehaviour.Properties properties) MenuBlockBE
(ModX mod, Class<T> beClass, net.minecraft.world.inventory.MenuType<C> menu, net.minecraft.world.level.block.state.BlockBehaviour.Properties properties, net.minecraft.world.item.Item.Properties itemProperties) -
Method Summary
Modifier and TypeMethodDescriptionvoid
initTracking
(RegistrationContext ctx, Registerable.TrackingCollector builder) Adds fields with additional registry values to theRegistryTracker
.void
registerAdditional
(RegistrationContext ctx, Registerable.EntryCollector builder) Registers additional objects.net.minecraft.world.InteractionResult
use
(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand, net.minecraft.world.phys.BlockHitResult hit) Methods inherited from class org.moddingx.libx.base.tile.BlockBE
getBlockEntity, getBlockEntityType, getListener, getTicker, newBlockEntity, onRemove, shouldDropInventory
Methods inherited from class org.moddingx.libx.base.BlockBase
getBurnTime, initializeItemClient, makeCreativeTabStacks
Methods inherited from class net.minecraft.world.level.block.Block
animateTick, appendHoverText, asBlock, asItem, box, builtInRegistryHolder, byItem, canSupportCenter, canSupportRigidBlock, canSustainPlant, createBlockStateDefinition, defaultBlockState, destroy, dropFromExplosion, dropResources, dropResources, dropResources, dropResources, fallOn, getCloneItemStack, getDescriptionId, getDrops, getDrops, getExplosionResistance, getFriction, getId, getJumpFactor, getName, getRenderPropertiesInternal, getShapeForEachState, getSoundType, getSpeedFactor, getStateDefinition, getStateForPlacement, handlePrecipitation, hasDynamicShape, initializeClient, isExceptionForConnection, isFaceFull, isPossibleToRespawnInThis, isRandomlyTicking, isShapeFullBlock, playerDestroy, playerWillDestroy, popExperience, popResource, popResourceFromFace, propagatesSkylightDown, pushEntitiesUp, registerDefaultState, setPlacedBy, shouldRenderFace, spawnDestroyParticles, stateById, stepOn, toString, tryDropExperience, updateEntityAfterFallOn, updateFromNeighbourShapes, updateOrDestroy, updateOrDestroy, wasExploded, withPropertiesOf
Methods inherited from class net.minecraft.world.level.block.state.BlockBehaviour
attack, canBeReplaced, canBeReplaced, canSurvive, defaultDestroyTime, defaultMapColor, entityInside, getAnalogOutputSignal, getBlockSupportShape, getCollisionShape, getDestroyProgress, getDirectSignal, getDrops, getFluidState, getInteractionShape, getLightBlock, getLootTable, getMaxHorizontalOffset, getMaxVerticalOffset, getMenuProvider, getOcclusionShape, getRenderShape, getSeed, getShadeBrightness, getShape, getSignal, getVisualShape, hasAnalogOutputSignal, isAir, isCollisionShapeFullBlock, isOcclusionShapeFullBlock, isPathfindable, isSignalSource, mirror, neighborChanged, onPlace, onProjectileHit, randomTick, requiredFeatures, rotate, skipRendering, spawnAfterBreak, tick, triggerEvent, updateIndirectNeighbourShapes, updateShape, useShapeForLightOcclusion
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.minecraft.world.flag.FeatureElement
isEnabled
Methods inherited from interface net.minecraftforge.common.extensions.IForgeBlock
addLandingEffects, addRunningEffects, canBeHydrated, canConnectRedstone, canDropFromExplosion, canEntityDestroy, canHarvestBlock, canStickTo, collisionExtendsVertically, getAdjacentBlockPathType, getAppearance, getBeaconColorMultiplier, getBedDirection, getBlockPathType, getCloneItemStack, getEnchantPowerBonus, getExpDrop, getExplosionResistance, getFireSpreadSpeed, getFlammability, getFriction, getLightEmission, getMapColor, getPistonPushReaction, getRespawnPosition, getSoundType, getStateAtViewpoint, getToolModifiedState, getWeakChanges, hidesNeighborFace, isBed, isBurning, isConduitFrame, isFertile, isFireSource, isFlammable, isLadder, isPortalFrame, isScaffolding, isSlimeBlock, isStickyBlock, isValidSpawn, makesOpenTrapdoorAboveClimbable, onBlockExploded, onBlockStateChange, onCaughtFire, onDestroyedByPlayer, onNeighborChange, onTreeGrow, rotate, setBedOccupied, shouldCheckWeakPower, shouldDisplayFluidOverlay, supportsExternalFaceHiding
Methods inherited from interface org.moddingx.libx.registration.Registerable
registerClient, registerCommon
-
Field Details
-
Constructor Details
-
MenuBlockBE
-
MenuBlockBE
-
-
Method Details
-
registerAdditional
@OverridingMethodsMustInvokeSuper public void registerAdditional(RegistrationContext ctx, Registerable.EntryCollector builder) Description copied from interface:Registerable
Registers additional objects. Those may beRegisterable
as well. These objects will be registered with the id of this object and optionally a name suffix.- Specified by:
registerAdditional
in interfaceRegisterable
- Overrides:
registerAdditional
in classBlockBE<T extends net.minecraft.world.level.block.entity.BlockEntity>
-
initTracking
@OverridingMethodsMustInvokeSuper public void initTracking(RegistrationContext ctx, Registerable.TrackingCollector builder) throws ReflectiveOperationException Description copied from interface:Registerable
Adds fields with additional registry values to theRegistryTracker
. This called, unlessRegistrationBuilder.disableRegistryTracking()
()} is set.- Specified by:
initTracking
in interfaceRegisterable
- Overrides:
initTracking
in classBlockBE<T extends net.minecraft.world.level.block.entity.BlockEntity>
- Throws:
ReflectiveOperationException
-
use
@Nonnull public net.minecraft.world.InteractionResult use(@Nonnull net.minecraft.world.level.block.state.BlockState state, @Nonnull net.minecraft.world.level.Level level, @Nonnull net.minecraft.core.BlockPos pos, @Nonnull net.minecraft.world.entity.player.Player player, @Nonnull net.minecraft.world.InteractionHand hand, @Nonnull net.minecraft.world.phys.BlockHitResult hit) - Overrides:
use
in classnet.minecraft.world.level.block.state.BlockBehaviour
-