Class LecternBlock
- All Implemented Interfaces:
BlockEntityProvider,ItemConvertible,ToggleableFeature
- Mappings:
Namespace Name named net/minecraft/block/LecternBlockintermediary net/minecraft/class_3715official dkj
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.block.Block
Block.NeighborGroupNested classes/interfaces inherited from class net.minecraft.block.AbstractBlock
AbstractBlock.AbstractBlockState, AbstractBlock.ContextPredicate, AbstractBlock.Offsetter, AbstractBlock.OffsetType, AbstractBlock.Settings, AbstractBlock.TypedContextPredicate<A> -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final VoxelShapestatic final VoxelShapestatic final com.mojang.serialization.MapCodec<LecternBlock> static final VoxelShapestatic final VoxelShapestatic final VoxelShapestatic final DirectionPropertystatic final BooleanPropertystatic final VoxelShapestatic final VoxelShapestatic final BooleanPropertyprivate static final intstatic final VoxelShapestatic final VoxelShapeFields inherited from class net.minecraft.block.Block
field_31023, field_31024, field_31025, field_31035, FORCE_STATE, MOVED, NO_REDRAW, NOTIFY_ALL, NOTIFY_ALL_AND_REDRAW, NOTIFY_LISTENERS, NOTIFY_NEIGHBORS, REDRAW_ON_MAIN_THREAD, SKIP_DROPS, STATE_IDS, stateManagerFields inherited from class net.minecraft.block.AbstractBlock
collidable, DIRECTIONS, dynamicBounds, jumpVelocityMultiplier, lootTableKey, randomTicks, requiredFeatures, resistance, settings, slipperiness, soundGroup, velocityMultiplierFields inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeature
FEATURE_ENABLED_REGISTRY_KEYS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidappendProperties(StateManager.Builder<Block, BlockState> builder) Appends block state properties to this block.protected booleancanPathfindThrough(BlockState state, NavigationType type) Returns if an entity using navigation typetypecan navigate through this block.createBlockEntity(BlockPos pos, BlockState state) Returns a new block entity instance.protected @Nullable NamedScreenHandlerFactorycreateScreenHandlerFactory(BlockState state, World world, BlockPos pos) Returns the screen handler factory ornullif screen handler cannot be created.private voiddropBook(BlockState state, World world, BlockPos pos) protected booleanemitsRedstonePower(BlockState state) Returns whether the block is capable of emitting redstone power.com.mojang.serialization.MapCodec<LecternBlock> getCodec()protected VoxelShapegetCollisionShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) protected intgetComparatorOutput(BlockState state, World world, BlockPos pos) Returns the comparator output of the block, from0to15.protected VoxelShapegetCullingShape(BlockState state, BlockView world, BlockPos pos) protected VoxelShapegetOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) protected BlockRenderTypegetRenderType(BlockState state) Returns the block's render type (invisible, animated, model).protected intgetStrongRedstonePower(BlockState state, BlockView world, BlockPos pos, Direction direction) Returns the strong redstone power emitted from the block.protected intgetWeakRedstonePower(BlockState state, BlockView world, BlockPos pos, Direction direction) Returns the weak redstone power emitted from the block.protected booleanhasComparatorOutput(BlockState state) Returns whether the block can have a comparator output.protected booleanhasSidedTransparency(BlockState state) Returns whether the block's transparency depends on the side of the block, like slabs.protected BlockStatemirror(BlockState state, BlockMirror mirror) Returnsstatemirrored bymirror.protected voidonStateReplaced(BlockState state, World world, BlockPos pos, BlockState newState, boolean moved) Called server-side on the old block when the block state is changed.protected ActionResultonUse(BlockState state, World world, BlockPos pos, PlayerEntity player, BlockHitResult hit) protected ItemActionResultonUseWithItem(ItemStack stack, BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) private voidopenScreen(World world, BlockPos pos, PlayerEntity player) private static voidputBook(@Nullable LivingEntity user, World world, BlockPos pos, BlockState state, ItemStack stack) static booleanputBookIfAbsent(@Nullable LivingEntity user, World world, BlockPos pos, BlockState state, ItemStack stack) protected BlockStaterotate(BlockState state, BlockRotation rotation) Returnsstaterotated byrotation.protected voidscheduledTick(BlockState state, ServerWorld world, BlockPos pos, Random random) Called server-side when a block receives a scheduled tick.static voidsetHasBook(@Nullable Entity user, World world, BlockPos pos, BlockState state, boolean hasBook) static voidsetPowered(World world, BlockPos pos, BlockState state) private static voidsetPowered(World world, BlockPos pos, BlockState state, boolean powered) private static voidupdateNeighborAlways(World world, BlockPos pos, BlockState state) Methods inherited from class net.minecraft.block.BlockWithEntity
onSyncedBlockEvent, validateTickerMethods inherited from class net.minecraft.block.Block
afterBreak, appendTooltip, asBlock, asItem, canMobSpawnInside, cannotConnect, createCuboidShape, dropExperience, dropExperienceWhenMined, dropStack, dropStack, dropStacks, dropStacks, dropStacks, getBlastResistance, getBlockFromItem, getDefaultState, getDroppedStacks, getDroppedStacks, getJumpVelocityMultiplier, getName, getPickStack, getRawIdFromState, getRegistryEntry, getShapesForStates, getSlipperiness, getStateFromRawId, getStateManager, getStateWithProperties, getTranslationKey, getVelocityMultiplier, hasDynamicBounds, hasTopRim, isFaceFullSquare, isShapeFullCube, onBreak, onBroken, onDestroyedByExplosion, onEntityLand, onLandedUpon, onPlaced, onSteppedOn, postProcessState, precipitationTick, pushEntitiesUpBeforeBlockChange, randomDisplayTick, replace, replace, setDefaultState, shouldDrawSide, shouldDropItemsOnExplosion, sideCoversSmallSquare, spawnBreakParticles, toStringMethods inherited from class net.minecraft.block.AbstractBlock
calcBlockBreakingDelta, canBucketPlace, canPlaceAt, canReplace, createCodec, createSettingsCodec, getAmbientOcclusionLightLevel, getCameraCollisionShape, getDefaultMapColor, getDroppedStacks, getFluidState, getHardness, getLootTableKey, getMaxHorizontalModelOffset, getOpacity, getRaycastShape, getRenderingSeed, getRequiredFeatures, getSettings, getSidesShape, getSoundGroup, getStateForNeighborUpdate, getVerticalModelOffsetMultiplier, hasRandomTicks, isCullingShapeFullCube, isShapeFullCube, isSideInvisible, isTransparent, neighborUpdate, onBlockAdded, onBlockBreakStart, onEntityCollision, onExploded, onProjectileHit, onStacksDropped, prepare, randomTickMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraft.block.BlockEntityProvider
getGameEventListener, getTickerMethods inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeature
isEnabled
-
Field Details
-
CODEC
- Mappings:
Namespace Name Mixin selector named CODECLnet/minecraft/block/LecternBlock;CODEC:Lcom/mojang/serialization/MapCodec;intermediary field_46386Lnet/minecraft/class_3715;field_46386:Lcom/mojang/serialization/MapCodec;official aLdkj;a:Lcom/mojang/serialization/MapCodec;
-
FACING
- Mappings:
Namespace Name Mixin selector named FACINGLnet/minecraft/block/LecternBlock;FACING:Lnet/minecraft/state/property/DirectionProperty;intermediary field_16404Lnet/minecraft/class_3715;field_16404:Lnet/minecraft/class_2753;official bLdkj;b:Ldtw;
-
POWERED
- Mappings:
Namespace Name Mixin selector named POWEREDLnet/minecraft/block/LecternBlock;POWERED:Lnet/minecraft/state/property/BooleanProperty;intermediary field_17365Lnet/minecraft/class_3715;field_17365:Lnet/minecraft/class_2746;official cLdkj;c:Ldtt;
-
HAS_BOOK
- Mappings:
Namespace Name Mixin selector named HAS_BOOKLnet/minecraft/block/LecternBlock;HAS_BOOK:Lnet/minecraft/state/property/BooleanProperty;intermediary field_17366Lnet/minecraft/class_3715;field_17366:Lnet/minecraft/class_2746;official dLdkj;d:Ldtt;
-
BOTTOM_SHAPE
- Mappings:
Namespace Name Mixin selector named BOTTOM_SHAPELnet/minecraft/block/LecternBlock;BOTTOM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_16406Lnet/minecraft/class_3715;field_16406:Lnet/minecraft/class_265;official eLdkj;e:Lexv;
-
MIDDLE_SHAPE
- Mappings:
Namespace Name Mixin selector named MIDDLE_SHAPELnet/minecraft/block/LecternBlock;MIDDLE_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_16405Lnet/minecraft/class_3715;field_16405:Lnet/minecraft/class_265;official fLdkj;f:Lexv;
-
BASE_SHAPE
- Mappings:
Namespace Name Mixin selector named BASE_SHAPELnet/minecraft/block/LecternBlock;BASE_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_16403Lnet/minecraft/class_3715;field_16403:Lnet/minecraft/class_265;official gLdkj;g:Lexv;
-
COLLISION_SHAPE_TOP
- Mappings:
Namespace Name Mixin selector named COLLISION_SHAPE_TOPLnet/minecraft/block/LecternBlock;COLLISION_SHAPE_TOP:Lnet/minecraft/util/shape/VoxelShape;intermediary field_17367Lnet/minecraft/class_3715;field_17367:Lnet/minecraft/class_265;official hLdkj;h:Lexv;
-
COLLISION_SHAPE
- Mappings:
Namespace Name Mixin selector named COLLISION_SHAPELnet/minecraft/block/LecternBlock;COLLISION_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_17368Lnet/minecraft/class_3715;field_17368:Lnet/minecraft/class_265;official iLdkj;i:Lexv;
-
WEST_SHAPE
- Mappings:
Namespace Name Mixin selector named WEST_SHAPELnet/minecraft/block/LecternBlock;WEST_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_17369Lnet/minecraft/class_3715;field_17369:Lnet/minecraft/class_265;official jLdkj;j:Lexv;
-
NORTH_SHAPE
- Mappings:
Namespace Name Mixin selector named NORTH_SHAPELnet/minecraft/block/LecternBlock;NORTH_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_17370Lnet/minecraft/class_3715;field_17370:Lnet/minecraft/class_265;official kLdkj;k:Lexv;
-
EAST_SHAPE
- Mappings:
Namespace Name Mixin selector named EAST_SHAPELnet/minecraft/block/LecternBlock;EAST_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_17371Lnet/minecraft/class_3715;field_17371:Lnet/minecraft/class_265;official lLdkj;l:Lexv;
-
SOUTH_SHAPE
- Mappings:
Namespace Name Mixin selector named SOUTH_SHAPELnet/minecraft/block/LecternBlock;SOUTH_SHAPE:Lnet/minecraft/util/shape/VoxelShape;intermediary field_17372Lnet/minecraft/class_3715;field_17372:Lnet/minecraft/class_265;official mLdkj;m:Lexv;
-
SCHEDULED_TICK_DELAY
private static final int SCHEDULED_TICK_DELAY- See Also:
- Mappings:
Namespace Name Mixin selector named SCHEDULED_TICK_DELAYLnet/minecraft/block/LecternBlock;SCHEDULED_TICK_DELAY:Iintermediary field_31113Lnet/minecraft/class_3715;field_31113:Iofficial nLdkj;n:I
-
-
Constructor Details
-
LecternBlock
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/block/AbstractBlock;<init>(Lnet/minecraft/block/AbstractBlock$Settings;)Vintermediary <init>Lnet/minecraft/class_4970;<init>(Lnet/minecraft/class_4970$class_2251;)Vofficial <init>Ldtb;<init>(Ldtb$d;)V
-
-
Method Details
-
getCodec
- Specified by:
getCodecin classBlockWithEntity- Mappings:
Namespace Name Mixin selector named getCodecLnet/minecraft/block/AbstractBlock;getCodec()Lcom/mojang/serialization/MapCodec;intermediary method_53969Lnet/minecraft/class_4970;method_53969()Lcom/mojang/serialization/MapCodec;official aLdtb;a()Lcom/mojang/serialization/MapCodec;
-
getRenderType
Returns the block's render type (invisible, animated, model).- Overrides:
getRenderTypein classBlockWithEntity- Returns:
- the block's render type (invisible, animated, model)
- See Also:
- API Note:
BlockWithEntityoverrides this to returnBlockRenderType.INVISIBLE; therefore, custom blocks extending that class must override it again to render the block.- Mappings:
Namespace Name Mixin selector named getRenderTypeLnet/minecraft/block/AbstractBlock;getRenderType(Lnet/minecraft/block/BlockState;)Lnet/minecraft/block/BlockRenderType;intermediary method_9604Lnet/minecraft/class_4970;method_9604(Lnet/minecraft/class_2680;)Lnet/minecraft/class_2464;official a_Ldtb;a_(Ldtc;)Ldmf;
-
getCullingShape
- Overrides:
getCullingShapein classAbstractBlock- See Also:
- Mappings:
Namespace Name Mixin selector named getCullingShapeLnet/minecraft/block/AbstractBlock;getCullingShape(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/util/shape/VoxelShape;intermediary method_9571Lnet/minecraft/class_4970;method_9571(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Lnet/minecraft/class_265;official fLdtb;f(Ldtc;Ldcc;Ljd;)Lexv;
-
hasSidedTransparency
Returns whether the block's transparency depends on the side of the block, like slabs.- Overrides:
hasSidedTransparencyin classAbstractBlock- Returns:
- whether the block's transparency depends on the side of the block, like slabs
- See Also:
- Mappings:
Namespace Name Mixin selector named hasSidedTransparencyLnet/minecraft/block/AbstractBlock;hasSidedTransparency(Lnet/minecraft/block/BlockState;)Zintermediary method_9526Lnet/minecraft/class_4970;method_9526(Lnet/minecraft/class_2680;)Zofficial f_Ldtb;f_(Ldtc;)Z
-
getPlacementState
- Overrides:
getPlacementStatein classBlock- Mappings:
Namespace Name Mixin selector named getPlacementStateLnet/minecraft/block/Block;getPlacementState(Lnet/minecraft/item/ItemPlacementContext;)Lnet/minecraft/block/BlockState;intermediary method_9605Lnet/minecraft/class_2248;method_9605(Lnet/minecraft/class_1750;)Lnet/minecraft/class_2680;official aLdfy;a(Lcyd;)Ldtc;
-
getCollisionShape
protected VoxelShape getCollisionShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) - Overrides:
getCollisionShapein classAbstractBlock- See Also:
- Mappings:
Namespace Name Mixin selector named getCollisionShapeLnet/minecraft/block/AbstractBlock;getCollisionShape(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/ShapeContext;)Lnet/minecraft/util/shape/VoxelShape;intermediary method_9549Lnet/minecraft/class_4970;method_9549(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265;official bLdtb;b(Ldtc;Ldcc;Ljd;Lexh;)Lexv;
-
getOutlineShape
protected VoxelShape getOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) - Overrides:
getOutlineShapein classAbstractBlock- See Also:
- Mappings:
Namespace Name Mixin selector named getOutlineShapeLnet/minecraft/block/AbstractBlock;getOutlineShape(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/ShapeContext;)Lnet/minecraft/util/shape/VoxelShape;intermediary method_9530Lnet/minecraft/class_4970;method_9530(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_3726;)Lnet/minecraft/class_265;official aLdtb;a(Ldtc;Ldcc;Ljd;Lexh;)Lexv;
-
rotate
Returnsstaterotated byrotation.By default, this returns the provided block state.
- Overrides:
rotatein classAbstractBlock- Returns:
staterotated byrotation- See Also:
- Mappings:
Namespace Name Mixin selector named rotateLnet/minecraft/block/AbstractBlock;rotate(Lnet/minecraft/block/BlockState;Lnet/minecraft/util/BlockRotation;)Lnet/minecraft/block/BlockState;intermediary method_9598Lnet/minecraft/class_4970;method_9598(Lnet/minecraft/class_2680;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2680;official aLdtb;a(Ldtc;Ldmm;)Ldtc;
-
mirror
Returnsstatemirrored bymirror.By default, this returns the provided block state.
- Overrides:
mirrorin classAbstractBlock- Returns:
statemirrored bymirror- See Also:
- Mappings:
Namespace Name Mixin selector named mirrorLnet/minecraft/block/AbstractBlock;mirror(Lnet/minecraft/block/BlockState;Lnet/minecraft/util/BlockMirror;)Lnet/minecraft/block/BlockState;intermediary method_9569Lnet/minecraft/class_4970;method_9569(Lnet/minecraft/class_2680;Lnet/minecraft/class_2415;)Lnet/minecraft/class_2680;official aLdtb;a(Ldtc;Ldkv;)Ldtc;
-
appendProperties
Appends block state properties to this block. To use this, override and callStateManager.Builder.add(net.minecraft.state.property.Property<?>[])inside the method. SeePropertiesfor the list of pre-defined properties.- Overrides:
appendPropertiesin classBlock- Mappings:
Namespace Name Mixin selector named appendPropertiesLnet/minecraft/block/Block;appendProperties(Lnet/minecraft/state/StateManager$Builder;)Vintermediary method_9515Lnet/minecraft/class_2248;method_9515(Lnet/minecraft/class_2689$class_2690;)Vofficial aLdfy;a(Ldtd$a;)V
-
createBlockEntity
Returns a new block entity instance.For example:
@Override public BlockEntity createBlockEntity(BlockPos pos, BlockState state) { return new MyBlockEntity(pos, state); }- Returns:
- a new block entity instance
- Implementation Note:
- While this is marked as nullable, in practice this should never return
null.PistonExtensionBlockis the only block in vanilla that returnsnullinside the implementation. - Mappings:
Namespace Name Mixin selector named createBlockEntityLnet/minecraft/block/BlockEntityProvider;createBlockEntity(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Lnet/minecraft/block/entity/BlockEntity;intermediary method_10123Lnet/minecraft/class_2343;method_10123(Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_2586;official aLdiq;a(Ljd;Ldtc;)Ldqh;
-
putBookIfAbsent
public static boolean putBookIfAbsent(@Nullable @Nullable LivingEntity user, World world, BlockPos pos, BlockState state, ItemStack stack) - Mappings:
Namespace Name Mixin selector named putBookIfAbsentLnet/minecraft/block/LecternBlock;putBookIfAbsent(Lnet/minecraft/entity/LivingEntity;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/item/ItemStack;)Zintermediary method_17472Lnet/minecraft/class_3715;method_17472(Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;)Zofficial aLdkj;a(Lbtn;Ldcw;Ljd;Ldtc;Lcuq;)Z
-
putBook
private static void putBook(@Nullable @Nullable LivingEntity user, World world, BlockPos pos, BlockState state, ItemStack stack) - Mappings:
Namespace Name Mixin selector named putBookLnet/minecraft/block/LecternBlock;putBook(Lnet/minecraft/entity/LivingEntity;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/item/ItemStack;)Vintermediary method_17475Lnet/minecraft/class_3715;method_17475(Lnet/minecraft/class_1309;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1799;)Vofficial bLdkj;b(Lbtn;Ldcw;Ljd;Ldtc;Lcuq;)V
-
setHasBook
public static void setHasBook(@Nullable @Nullable Entity user, World world, BlockPos pos, BlockState state, boolean hasBook) - Mappings:
Namespace Name Mixin selector named setHasBookLnet/minecraft/block/LecternBlock;setHasBook(Lnet/minecraft/entity/Entity;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Z)Vintermediary method_17473Lnet/minecraft/class_3715;method_17473(Lnet/minecraft/class_1297;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)Vofficial aLdkj;a(Lbsr;Ldcw;Ljd;Ldtc;Z)V
-
setPowered
- Mappings:
Namespace Name Mixin selector named setPoweredLnet/minecraft/block/LecternBlock;setPowered(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Vintermediary method_17471Lnet/minecraft/class_3715;method_17471(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Vofficial aLdkj;a(Ldcw;Ljd;Ldtc;)V
-
setPowered
- Mappings:
Namespace Name Mixin selector named setPoweredLnet/minecraft/block/LecternBlock;setPowered(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Z)Vintermediary method_17476Lnet/minecraft/class_3715;method_17476(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)Vofficial aLdkj;a(Ldcw;Ljd;Ldtc;Z)V
-
updateNeighborAlways
- Mappings:
Namespace Name Mixin selector named updateNeighborAlwaysLnet/minecraft/block/LecternBlock;updateNeighborAlways(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Vintermediary method_17474Lnet/minecraft/class_3715;method_17474(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Vofficial bLdkj;b(Ldcw;Ljd;Ldtc;)V
-
scheduledTick
Called server-side when a block receives a scheduled tick. This can be used like a timer. Scheduled ticks are added usingWorldAccess.scheduleBlockTick(BlockPos, Block, int).Scheduled ticks are often used inside
AbstractBlock.getStateForNeighborUpdate(net.minecraft.block.BlockState, net.minecraft.util.math.Direction, net.minecraft.block.BlockState, net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos, net.minecraft.util.math.BlockPos).Here are some examples:
SugarCaneBlockchecks the placement requirement.DispenserBlockdispenses its content.CommandBlockexecutes its command.FrogspawnBlockspawns a tadpole.SoulSandBlockupdates a bubble column.FallingBlocktries to fall.
- Overrides:
scheduledTickin classAbstractBlock- See Also:
- Mappings:
Namespace Name Mixin selector named scheduledTickLnet/minecraft/block/AbstractBlock;scheduledTick(Lnet/minecraft/block/BlockState;Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)Vintermediary method_9588Lnet/minecraft/class_4970;method_9588(Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Vofficial aLdtb;a(Ldtc;Laqu;Ljd;Layw;)V
-
onStateReplaced
protected void onStateReplaced(BlockState state, World world, BlockPos pos, BlockState newState, boolean moved) Called server-side on the old block when the block state is changed. This includes block removal. This is used to update neighboring blocks when an active redstone power source is removed, or to drop the contents of an inventory. The checkstate.isOf(newState.getBlock())can be used to see if the block was removed or not.For most block entities,
ItemScatterer.onStateReplaced(net.minecraft.block.BlockState, net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos)provides a good implementation of this method. Make sure to callsuper.onStateReplaced(state, world, pos, newState, moved);after invokingItemScatterermethods.- Overrides:
onStateReplacedin classAbstractBlock- See Also:
- Mappings:
Namespace Name Mixin selector named onStateReplacedLnet/minecraft/block/AbstractBlock;onStateReplaced(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Z)Vintermediary method_9536Lnet/minecraft/class_4970;method_9536(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)Vofficial aLdtb;a(Ldtc;Ldcw;Ljd;Ldtc;Z)V
-
dropBook
- Mappings:
Namespace Name Mixin selector named dropBookLnet/minecraft/block/LecternBlock;dropBook(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)Vintermediary method_17477Lnet/minecraft/class_3715;method_17477(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Vofficial dLdkj;d(Ldtc;Ldcw;Ljd;)V
-
emitsRedstonePower
Returns whether the block is capable of emitting redstone power.This does not return whether the block is currently emitting redstone power. Use
RedstoneView.isEmittingRedstonePower(net.minecraft.util.math.BlockPos, net.minecraft.util.math.Direction)in that case.- Overrides:
emitsRedstonePowerin classAbstractBlock- Returns:
- whether the block is capable of emitting redstone power
- See Also:
- Mappings:
Namespace Name Mixin selector named emitsRedstonePowerLnet/minecraft/block/AbstractBlock;emitsRedstonePower(Lnet/minecraft/block/BlockState;)Zintermediary method_9506Lnet/minecraft/class_4970;method_9506(Lnet/minecraft/class_2680;)Zofficial e_Ldtb;e_(Ldtc;)Z
-
getWeakRedstonePower
protected int getWeakRedstonePower(BlockState state, BlockView world, BlockPos pos, Direction direction) Returns the weak redstone power emitted from the block.When overriding this, make sure to also override
emitsRedstonePower(net.minecraft.block.BlockState)to returntrue.Weak redstone power is a power that cannot power a redstone wire when a solid block is in between. For example,
RedstoneBlockandTargetBlockemits weak redstone power only.LeverBlockandButtonBlockemits both weak and strong redstone power depending on the direction.- Overrides:
getWeakRedstonePowerin classAbstractBlock- Returns:
- the weak redstone power emitted from the block
- See Also:
- Mappings:
Namespace Name Mixin selector named getWeakRedstonePowerLnet/minecraft/block/AbstractBlock;getWeakRedstonePower(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)Iintermediary method_9524Lnet/minecraft/class_4970;method_9524(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Iofficial aLdtb;a(Ldtc;Ldcc;Ljd;Lji;)I
-
getStrongRedstonePower
protected int getStrongRedstonePower(BlockState state, BlockView world, BlockPos pos, Direction direction) Returns the strong redstone power emitted from the block.When overriding this, make sure to also override
emitsRedstonePower(net.minecraft.block.BlockState)to returntrue.getWeakRedstonePower(net.minecraft.block.BlockState, net.minecraft.world.BlockView, net.minecraft.util.math.BlockPos, net.minecraft.util.math.Direction)might also need to be overridden.Strong redstone power is a power that can power a redstone wire when a solid block is in between. For example,
RedstoneBlockandTargetBlockemits weak redstone power only.LeverBlockandButtonBlockemits both weak and strong redstone power.- Overrides:
getStrongRedstonePowerin classAbstractBlock- Returns:
- the strong redstone power emitted from the block
- See Also:
- Mappings:
Namespace Name Mixin selector named getStrongRedstonePowerLnet/minecraft/block/AbstractBlock;getStrongRedstonePower(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)Iintermediary method_9603Lnet/minecraft/class_4970;method_9603(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Iofficial bLdtb;b(Ldtc;Ldcc;Ljd;Lji;)I
-
hasComparatorOutput
Returns whether the block can have a comparator output.This does not check the current comparator output of the block. Use
getComparatorOutput(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos)in that case.- Overrides:
hasComparatorOutputin classAbstractBlock- Returns:
- whether the block can have a comparator output
- See Also:
- Mappings:
Namespace Name Mixin selector named hasComparatorOutputLnet/minecraft/block/AbstractBlock;hasComparatorOutput(Lnet/minecraft/block/BlockState;)Zintermediary method_9498Lnet/minecraft/class_4970;method_9498(Lnet/minecraft/class_2680;)Zofficial c_Ldtb;c_(Ldtc;)Z
-
getComparatorOutput
Returns the comparator output of the block, from0to15.When overriding this,
hasComparatorOutput(net.minecraft.block.BlockState)must also be overridden.- Overrides:
getComparatorOutputin classAbstractBlock- Returns:
- the comparator output of the block, from
0to15 - See Also:
- Mappings:
Namespace Name Mixin selector named getComparatorOutputLnet/minecraft/block/AbstractBlock;getComparatorOutput(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)Iintermediary method_9572Lnet/minecraft/class_4970;method_9572(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Iofficial aLdtb;a(Ldtc;Ldcw;Ljd;)I
-
onUseWithItem
protected ItemActionResult onUseWithItem(ItemStack stack, BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) - Overrides:
onUseWithItemin classAbstractBlock- Mappings:
Namespace Name Mixin selector named onUseWithItemLnet/minecraft/block/AbstractBlock;onUseWithItem(Lnet/minecraft/item/ItemStack;Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;Lnet/minecraft/util/hit/BlockHitResult;)Lnet/minecraft/util/ItemActionResult;intermediary method_55765Lnet/minecraft/class_4970;method_55765(Lnet/minecraft/class_1799;Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;Lnet/minecraft/class_3965;)Lnet/minecraft/class_9062;official aLdtb;a(Lcuq;Ldtc;Ldcw;Ljd;Lcmx;Lbqq;Lewy;)Lbqt;
-
onUse
protected ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, BlockHitResult hit) - Overrides:
onUsein classAbstractBlock- Mappings:
Namespace Name Mixin selector named onUseLnet/minecraft/block/AbstractBlock;onUse(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/hit/BlockHitResult;)Lnet/minecraft/util/ActionResult;intermediary method_55766Lnet/minecraft/class_4970;method_55766(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;Lnet/minecraft/class_3965;)Lnet/minecraft/class_1269;official aLdtb;a(Ldtc;Ldcw;Ljd;Lcmx;Lewy;)Lbqr;
-
createScreenHandlerFactory
@Nullable protected @Nullable NamedScreenHandlerFactory createScreenHandlerFactory(BlockState state, World world, BlockPos pos) Returns the screen handler factory ornullif screen handler cannot be created.This method should be overridden for blocks with screen handlers, such as anvils. The created screen handler is usually passed to
PlayerEntity.openHandledScreen(net.minecraft.screen.NamedScreenHandlerFactory). SeeAnvilBlock.createScreenHandlerFactory(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos)for basic usage.BlockWithEntitydelegates this logic to the block entity implementingNamedScreenHandlerFactory. For example, anyBlockWithEntitywhose block entity extendsLockableContainerBlockEntityneeds to overrideLockableContainerBlockEntity.createScreenHandler(int, net.minecraft.entity.player.PlayerInventory)instead of this method.This method is called on both the logical client and logical server, so take caution when overriding this method. The logical side can be checked using
World.isClient.- Overrides:
createScreenHandlerFactoryin classBlockWithEntity- Returns:
- the screen handler factory or
nullif screen handler cannot be created - See Also:
- Mappings:
Namespace Name Mixin selector named createScreenHandlerFactoryLnet/minecraft/block/AbstractBlock;createScreenHandlerFactory(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/screen/NamedScreenHandlerFactory;intermediary method_17454Lnet/minecraft/class_4970;method_17454(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)Lnet/minecraft/class_3908;official bLdtb;b(Ldtc;Ldcw;Ljd;)Lbqv;
-
openScreen
- Mappings:
Namespace Name Mixin selector named openScreenLnet/minecraft/block/LecternBlock;openScreen(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/player/PlayerEntity;)Vintermediary method_17470Lnet/minecraft/class_3715;method_17470(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1657;)Vofficial aLdkj;a(Ldcw;Ljd;Lcmx;)V
-