Class PistonHeadBlock
- All Implemented Interfaces:
ItemConvertible
,ToggleableFeature
- Mappings:
Namespace Name official dbk
intermediary net/minecraft/class_2671
named net/minecraft/block/PistonHeadBlock
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.block.Block
Block.NeighborGroup
Nested classes/interfaces inherited from class net.minecraft.block.AbstractBlock
AbstractBlock.AbstractBlockState, AbstractBlock.ContextPredicate, AbstractBlock.Offsetter, AbstractBlock.OffsetType, AbstractBlock.Settings, AbstractBlock.TypedContextPredicate<A>
-
Field Summary
Modifier and TypeFieldDescriptionprotected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
static final float
protected static final float
protected static final float
protected static final float
private static final VoxelShape[]
protected static final VoxelShape
protected static final VoxelShape
static final BooleanProperty
protected static final VoxelShape
protected static final VoxelShape
private static final VoxelShape[]
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
static final EnumProperty<PistonType>
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
Fields inherited from class net.minecraft.block.FacingBlock
FACING
Fields inherited from class net.minecraft.block.Block
field_31022, field_31023, field_31024, field_31025, field_31035, FORCE_STATE, MOVED, NO_REDRAW, NOTIFY_ALL, NOTIFY_LISTENERS, NOTIFY_NEIGHBORS, REDRAW_ON_MAIN_THREAD, SKIP_DROPS, SKIP_LIGHTING_UPDATES, STATE_IDS, stateManager
Fields inherited from class net.minecraft.block.AbstractBlock
collidable, DIRECTIONS, dynamicBounds, jumpVelocityMultiplier, lootTableId, material, randomTicks, requiredFeatures, resistance, settings, slipperiness, soundGroup, velocityMultiplier
Fields inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeature
FEATURE_ENABLED_REGISTRY_KEYS
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
appendProperties
(StateManager.Builder<Block, BlockState> builder) Appends block state properties to this block.boolean
canPathfindThrough
(BlockState state, BlockView world, BlockPos pos, NavigationType type) Returns if an entity using navigation typetype
can navigate through this block.boolean
canPlaceAt
(BlockState state, WorldView world, BlockPos pos) Returns whether the block can be placed atpos
.private static VoxelShape
getHeadShape
(Direction direction, boolean shortHead) private static VoxelShape[]
getHeadShapes
(boolean shortHead) getOutlineShape
(BlockState state, BlockView world, BlockPos pos, ShapeContext context) getPickStack
(BlockView world, BlockPos pos, BlockState state) Returns the new item stack when using pick block functionality.getStateForNeighborUpdate
(BlockState state, Direction direction, BlockState neighborState, WorldAccess world, BlockPos pos, BlockPos neighborPos) Returns the state of the block after a neighboring block's state change.boolean
hasSidedTransparency
(BlockState state) Returns whether the block's transparency depends on the side of the block, like slabs.private boolean
isAttached
(BlockState headState, BlockState pistonState) mirror
(BlockState state, BlockMirror mirror) Returnsstate
mirrored bymirror
.void
neighborUpdate
(BlockState state, World world, BlockPos pos, Block sourceBlock, BlockPos sourcePos, boolean notify) Called when a neighboring block is updated.void
onBreak
(World world, BlockPos pos, BlockState state, PlayerEntity player) Called when a player breaks a block before the block is removed from the world.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.rotate
(BlockState state, BlockRotation rotation) Returnsstate
rotated byrotation
.Methods inherited from class net.minecraft.block.Block
afterBreak, appendTooltip, asBlock, asItem, canMobSpawnInside, cannotConnect, createCuboidShape, dropExperience, dropExperienceWhenMined, dropStack, dropStack, dropStacks, dropStacks, dropStacks, dropStacks, getBlastResistance, getBlockFromItem, getDefaultState, getDroppedStacks, getDroppedStacks, getJumpVelocityMultiplier, getName, getPlacementState, getRawIdFromState, getRegistryEntry, getShapesForStates, getSlipperiness, getSoundGroup, getStateFromRawId, getStateManager, getStateWithProperties, getTranslationKey, getVelocityMultiplier, hasDynamicBounds, hasRandomTicks, hasTopRim, isFaceFullSquare, isShapeFullCube, isTransparent, onBroken, onDestroyedByExplosion, onEntityLand, onLandedUpon, onPlaced, onSteppedOn, postProcessState, precipitationTick, pushEntitiesUpBeforeBlockChange, randomDisplayTick, replace, replace, setDefaultState, shouldDrawSide, shouldDropItemsOnExplosion, sideCoversSmallSquare, spawnBreakParticles, toString
Methods inherited from class net.minecraft.block.AbstractBlock
calcBlockBreakingDelta, canBucketPlace, canReplace, createScreenHandlerFactory, emitsRedstonePower, getAmbientOcclusionLightLevel, getCameraCollisionShape, getCollisionShape, getComparatorOutput, getCullingShape, getDefaultMapColor, getDroppedStacks, getFluidState, getHardness, getLootTableId, getMaxHorizontalModelOffset, getOpacity, getPistonBehavior, getRaycastShape, getRenderingSeed, getRenderType, getRequiredFeatures, getSidesShape, getStrongRedstonePower, getVerticalModelOffsetMultiplier, getWeakRedstonePower, hasComparatorOutput, isCullingShapeFullCube, isShapeFullCube, isSideInvisible, onBlockAdded, onBlockBreakStart, onEntityCollision, onProjectileHit, onStacksDropped, onSyncedBlockEvent, onUse, prepare, randomTick, scheduledTick
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeature
isEnabled
-
Field Details
-
TYPE
- Mappings:
Namespace Name Mixin selector official b
Ldbk;b:Ldcp;
intermediary field_12224
Lnet/minecraft/class_2671;field_12224:Lnet/minecraft/class_2754;
named TYPE
Lnet/minecraft/block/PistonHeadBlock;TYPE:Lnet/minecraft/state/property/EnumProperty;
-
SHORT
- Mappings:
Namespace Name Mixin selector official c
Ldbk;c:Ldci;
intermediary field_12227
Lnet/minecraft/class_2671;field_12227:Lnet/minecraft/class_2746;
named SHORT
Lnet/minecraft/block/PistonHeadBlock;SHORT:Lnet/minecraft/state/property/BooleanProperty;
-
field_31377
public static final float field_31377- See Also:
- Mappings:
Namespace Name Mixin selector official d
Ldbk;d:F
intermediary field_31377
Lnet/minecraft/class_2671;field_31377:F
named field_31377
Lnet/minecraft/block/PistonHeadBlock;field_31377:F
-
EAST_HEAD_SHAPE
- Mappings:
Namespace Name Mixin selector official e
Ldbk;e:Ledx;
intermediary field_12222
Lnet/minecraft/class_2671;field_12222:Lnet/minecraft/class_265;
named EAST_HEAD_SHAPE
Lnet/minecraft/block/PistonHeadBlock;EAST_HEAD_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
WEST_HEAD_SHAPE
- Mappings:
Namespace Name Mixin selector official f
Ldbk;f:Ledx;
intermediary field_12214
Lnet/minecraft/class_2671;field_12214:Lnet/minecraft/class_265;
named WEST_HEAD_SHAPE
Lnet/minecraft/block/PistonHeadBlock;WEST_HEAD_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SOUTH_HEAD_SHAPE
- Mappings:
Namespace Name Mixin selector official g
Ldbk;g:Ledx;
intermediary field_12228
Lnet/minecraft/class_2671;field_12228:Lnet/minecraft/class_265;
named SOUTH_HEAD_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SOUTH_HEAD_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
NORTH_HEAD_SHAPE
- Mappings:
Namespace Name Mixin selector official h
Ldbk;h:Ledx;
intermediary field_12213
Lnet/minecraft/class_2671;field_12213:Lnet/minecraft/class_265;
named NORTH_HEAD_SHAPE
Lnet/minecraft/block/PistonHeadBlock;NORTH_HEAD_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
UP_HEAD_SHAPE
- Mappings:
Namespace Name Mixin selector official i
Ldbk;i:Ledx;
intermediary field_12230
Lnet/minecraft/class_2671;field_12230:Lnet/minecraft/class_265;
named UP_HEAD_SHAPE
Lnet/minecraft/block/PistonHeadBlock;UP_HEAD_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
DOWN_HEAD_SHAPE
- Mappings:
Namespace Name Mixin selector official j
Ldbk;j:Ledx;
intermediary field_12220
Lnet/minecraft/class_2671;field_12220:Lnet/minecraft/class_265;
named DOWN_HEAD_SHAPE
Lnet/minecraft/block/PistonHeadBlock;DOWN_HEAD_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
field_31378
protected static final float field_31378- See Also:
- Mappings:
Namespace Name Mixin selector official k
Ldbk;k:F
intermediary field_31378
Lnet/minecraft/class_2671;field_31378:F
named field_31378
Lnet/minecraft/block/PistonHeadBlock;field_31378:F
-
field_31379
protected static final float field_31379- See Also:
- Mappings:
Namespace Name Mixin selector official l
Ldbk;l:F
intermediary field_31379
Lnet/minecraft/class_2671;field_31379:F
named field_31379
Lnet/minecraft/block/PistonHeadBlock;field_31379:F
-
field_31380
protected static final float field_31380- See Also:
- Mappings:
Namespace Name Mixin selector official m
Ldbk;m:F
intermediary field_31380
Lnet/minecraft/class_2671;field_31380:F
named field_31380
Lnet/minecraft/block/PistonHeadBlock;field_31380:F
-
UP_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official n
Ldbk;n:Ledx;
intermediary field_12215
Lnet/minecraft/class_2671;field_12215:Lnet/minecraft/class_265;
named UP_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;UP_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
DOWN_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official E
Ldbk;E:Ledx;
intermediary field_12226
Lnet/minecraft/class_2671;field_12226:Lnet/minecraft/class_265;
named DOWN_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;DOWN_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SOUTH_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official F
Ldbk;F:Ledx;
intermediary field_12221
Lnet/minecraft/class_2671;field_12221:Lnet/minecraft/class_265;
named SOUTH_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SOUTH_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
NORTH_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official G
Ldbk;G:Ledx;
intermediary field_12229
Lnet/minecraft/class_2671;field_12229:Lnet/minecraft/class_265;
named NORTH_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;NORTH_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
EAST_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official H
Ldbk;H:Ledx;
intermediary field_12218
Lnet/minecraft/class_2671;field_12218:Lnet/minecraft/class_265;
named EAST_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;EAST_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
WEST_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official I
Ldbk;I:Ledx;
intermediary field_12223
Lnet/minecraft/class_2671;field_12223:Lnet/minecraft/class_265;
named WEST_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;WEST_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_UP_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official J
Ldbk;J:Ledx;
intermediary field_12231
Lnet/minecraft/class_2671;field_12231:Lnet/minecraft/class_265;
named SHORT_UP_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SHORT_UP_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_DOWN_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official K
Ldbk;K:Ledx;
intermediary field_12217
Lnet/minecraft/class_2671;field_12217:Lnet/minecraft/class_265;
named SHORT_DOWN_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SHORT_DOWN_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_SOUTH_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official L
Ldbk;L:Ledx;
intermediary field_12216
Lnet/minecraft/class_2671;field_12216:Lnet/minecraft/class_265;
named SHORT_SOUTH_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SHORT_SOUTH_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_NORTH_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official M
Ldbk;M:Ledx;
intermediary field_12225
Lnet/minecraft/class_2671;field_12225:Lnet/minecraft/class_265;
named SHORT_NORTH_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SHORT_NORTH_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_EAST_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official N
Ldbk;N:Ledx;
intermediary field_12219
Lnet/minecraft/class_2671;field_12219:Lnet/minecraft/class_265;
named SHORT_EAST_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SHORT_EAST_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_WEST_ARM_SHAPE
- Mappings:
Namespace Name Mixin selector official O
Ldbk;O:Ledx;
intermediary field_12212
Lnet/minecraft/class_2671;field_12212:Lnet/minecraft/class_265;
named SHORT_WEST_ARM_SHAPE
Lnet/minecraft/block/PistonHeadBlock;SHORT_WEST_ARM_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SHORT_HEAD_SHAPES
- Mappings:
Namespace Name Mixin selector official P
Ldbk;P:[Ledx;
intermediary field_26660
Lnet/minecraft/class_2671;field_26660:[Lnet/minecraft/class_265;
named SHORT_HEAD_SHAPES
Lnet/minecraft/block/PistonHeadBlock;SHORT_HEAD_SHAPES:[Lnet/minecraft/util/shape/VoxelShape;
-
HEAD_SHAPES
- Mappings:
Namespace Name Mixin selector official Q
Ldbk;Q:[Ledx;
intermediary field_26661
Lnet/minecraft/class_2671;field_26661:[Lnet/minecraft/class_265;
named HEAD_SHAPES
Lnet/minecraft/block/PistonHeadBlock;HEAD_SHAPES:[Lnet/minecraft/util/shape/VoxelShape;
-
-
Constructor Details
-
PistonHeadBlock
- Mappings:
Namespace Name Mixin selector official <init>
Ldbp;<init>(Ldbp$d;)V
intermediary <init>
Lnet/minecraft/class_4970;<init>(Lnet/minecraft/class_4970$class_2251;)V
named <init>
Lnet/minecraft/block/AbstractBlock;<init>(Lnet/minecraft/block/AbstractBlock$Settings;)V
-
-
Method Details
-
getHeadShapes
- Mappings:
Namespace Name Mixin selector official a
Ldbk;a(Z)[Ledx;
intermediary method_31019
Lnet/minecraft/class_2671;method_31019(Z)[Lnet/minecraft/class_265;
named getHeadShapes
Lnet/minecraft/block/PistonHeadBlock;getHeadShapes(Z)[Lnet/minecraft/util/shape/VoxelShape;
-
getHeadShape
- Mappings:
Namespace Name Mixin selector official a
Ldbk;a(Lgz;Z)Ledx;
intermediary method_11520
Lnet/minecraft/class_2671;method_11520(Lnet/minecraft/class_2350;Z)Lnet/minecraft/class_265;
named getHeadShape
Lnet/minecraft/block/PistonHeadBlock;getHeadShape(Lnet/minecraft/util/math/Direction;Z)Lnet/minecraft/util/shape/VoxelShape;
-
hasSidedTransparency
Returns whether the block's transparency depends on the side of the block, like slabs.- Overrides:
hasSidedTransparency
in classAbstractBlock
- Returns:
- whether the block's transparency depends on the side of the block, like slabs
- Mappings:
Namespace Name Mixin selector official g_
Ldbp;g_(Ldbq;)Z
intermediary method_9526
Lnet/minecraft/class_4970;method_9526(Lnet/minecraft/class_2680;)Z
named hasSidedTransparency
Lnet/minecraft/block/AbstractBlock;hasSidedTransparency(Lnet/minecraft/block/BlockState;)Z
-
getOutlineShape
public VoxelShape getOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) - Overrides:
getOutlineShape
in classAbstractBlock
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lclo;Lgt;Ledj;)Ledx;
intermediary method_9530
Lnet/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;
named getOutlineShape
Lnet/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;
-
isAttached
- Mappings:
Namespace Name Mixin selector official a
Ldbk;a(Ldbq;Ldbq;)Z
intermediary method_26980
Lnet/minecraft/class_2671;method_26980(Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;)Z
named isAttached
Lnet/minecraft/block/PistonHeadBlock;isAttached(Lnet/minecraft/block/BlockState;Lnet/minecraft/block/BlockState;)Z
-
onBreak
Called when a player breaks a block before the block is removed from the world. Explosions do not trigger this.Default implementation spawns block breaking particles, angers piglins, and emits game events. Tall or wide blocks such as doors or beds should override this to break the other part (along with
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)
.)In most cases,
AbstractBlock.onStateReplaced(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, boolean)
orAbstractBlock.onStacksDropped(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.item.ItemStack, boolean)
should be used instead. Note that they are called when blocks are broken by explosions as well as players breaking them.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:
onBreak
in classBlock
- See Also:
-
AbstractBlock.onStateReplaced(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, boolean)
AbstractBlock.onStacksDropped(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.item.ItemStack, boolean)
Block.onBroken(net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState)
- Mappings:
Namespace Name Mixin selector official a
Lcpi;a(Lcmi;Lgt;Ldbq;Lbym;)V
intermediary method_9576
Lnet/minecraft/class_2248;method_9576(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_1657;)V
named onBreak
Lnet/minecraft/block/Block;onBreak(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Lnet/minecraft/entity/player/PlayerEntity;)V
-
onStateReplaced
public 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.- Overrides:
onStateReplaced
in classAbstractBlock
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcmi;Lgt;Ldbq;Z)V
intermediary method_9536
Lnet/minecraft/class_4970;method_9536(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)V
named onStateReplaced
Lnet/minecraft/block/AbstractBlock;onStateReplaced(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Z)V
-
getStateForNeighborUpdate
public BlockState getStateForNeighborUpdate(BlockState state, Direction direction, BlockState neighborState, WorldAccess world, BlockPos pos, BlockPos neighborPos) Returns the state of the block after a neighboring block's state change.Returning
Blocks.AIR
breaks the block. This is useful to implement supporting block requirement for blocks (if used along withAbstractBlock.canPlaceAt(net.minecraft.block.BlockState, net.minecraft.world.WorldView, net.minecraft.util.math.BlockPos)
).Side effects like activating a redstone component (but not scheduling a tick) should be performed in
AbstractBlock.neighborUpdate(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.Block, net.minecraft.util.math.BlockPos, boolean)
instead. If the block supports waterlogging and currently has water, this method should be overridden to tick the fluid at the block's position.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
. This is not called ifBlock.FORCE_STATE
flag is set in thesetBlockState
call.This method can be used for multiple purposes. Here are some examples:
FenceBlock
uses it to update the fence's connection when a horizontally neighboring block's state is changed.PlantBlock
uses it to break the plant if the state change causes it to lose its supporting block.DoorBlock
uses it to copy the state of the other half of the door.SlabBlock
uses it to schedule the fluid to tick if waterlogged.SoulSandBlock
uses it to schedule the water block above to tick so that it becomes a bubble column.FallingBlock
uses it to schedule the block to tick so that it can fall if needed.
- Overrides:
getStateForNeighborUpdate
in classAbstractBlock
- Parameters:
state
- the state of this blockdirection
- the direction from this block to the neighborneighborState
- the state of the updated neighbor blockworld
- the worldpos
- the position of this blockneighborPos
- the position of the neighbor block- Returns:
- the state of the block after a neighboring block's state change
- See Also:
-
AbstractBlock.neighborUpdate(net.minecraft.block.BlockState, net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.Block, net.minecraft.util.math.BlockPos, boolean)
AbstractBlock.prepare(net.minecraft.block.BlockState, net.minecraft.world.WorldAccess, net.minecraft.util.math.BlockPos, int, int)
AbstractBlock.canPlaceAt(net.minecraft.block.BlockState, net.minecraft.world.WorldView, net.minecraft.util.math.BlockPos)
Block.FORCE_STATE
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lgz;Ldbq;Lcmj;Lgt;Lgt;)Ldbq;
intermediary method_9559
Lnet/minecraft/class_4970;method_9559(Lnet/minecraft/class_2680;Lnet/minecraft/class_2350;Lnet/minecraft/class_2680;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2338;)Lnet/minecraft/class_2680;
named getStateForNeighborUpdate
Lnet/minecraft/block/AbstractBlock;getStateForNeighborUpdate(Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/Direction;Lnet/minecraft/block/BlockState;Lnet/minecraft/world/WorldAccess;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/BlockPos;)Lnet/minecraft/block/BlockState;
-
canPlaceAt
Returns whether the block can be placed atpos
.Blocks with supporting block requirements should override this method. Note that this should also be checked manually during
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)
in order to break the block that lost its supporting block.This is only checked during the use of block items or by endermen, falling blocks, etc that can place blocks. This does not affect block state changes performed through
World.setBlockState(BlockPos, BlockState)
call.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:
canPlaceAt
in classAbstractBlock
- Returns:
- whether the block can be placed at
pos
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcml;Lgt;)Z
intermediary method_9558
Lnet/minecraft/class_4970;method_9558(Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z
named canPlaceAt
Lnet/minecraft/block/AbstractBlock;canPlaceAt(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;)Z
-
neighborUpdate
public void neighborUpdate(BlockState state, World world, BlockPos pos, Block sourceBlock, BlockPos sourcePos, boolean notify) Called when a neighboring block is updated. This method should be overridden to perform an action with a side effect, most notably an activation of a redstone component. This can also be used to perform an action changing block states of other blocks, such asSpongeBlock
which absorbs water.To replace the state of the block itself, override
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)
instead.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:
neighborUpdate
in classAbstractBlock
- See Also:
-
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)
World.isReceivingRedstonePower(net.minecraft.util.math.BlockPos)
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcmi;Lgt;Lcpi;Lgt;Z)V
intermediary method_9612
Lnet/minecraft/class_4970;method_9612(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2248;Lnet/minecraft/class_2338;Z)V
named neighborUpdate
Lnet/minecraft/block/AbstractBlock;neighborUpdate(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/Block;Lnet/minecraft/util/math/BlockPos;Z)V
-
getPickStack
Returns the new item stack when using pick block functionality.Pick block is available via middle-clicking by default. Blocks without the corresponding
BlockItem
, such as crops, should override this method to return the correct item stack.- Overrides:
getPickStack
in classBlock
- Returns:
- the new item stack when using pick block functionality
- Mappings:
Namespace Name Mixin selector official a
Lcpi;a(Lclo;Lgt;Ldbq;)Lcfv;
intermediary method_9574
Lnet/minecraft/class_2248;method_9574(Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Lnet/minecraft/class_1799;
named getPickStack
Lnet/minecraft/block/Block;getPickStack(Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Lnet/minecraft/item/ItemStack;
-
rotate
Returnsstate
rotated byrotation
.By default, this returns the provided block state.
- Overrides:
rotate
in classAbstractBlock
- Returns:
state
rotated byrotation
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcvq;)Ldbq;
intermediary method_9598
Lnet/minecraft/class_4970;method_9598(Lnet/minecraft/class_2680;Lnet/minecraft/class_2470;)Lnet/minecraft/class_2680;
named rotate
Lnet/minecraft/block/AbstractBlock;rotate(Lnet/minecraft/block/BlockState;Lnet/minecraft/util/BlockRotation;)Lnet/minecraft/block/BlockState;
-
mirror
Returnsstate
mirrored bymirror
.By default, this returns the provided block state.
- Overrides:
mirror
in classAbstractBlock
- Returns:
state
mirrored bymirror
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcua;)Ldbq;
intermediary method_9569
Lnet/minecraft/class_4970;method_9569(Lnet/minecraft/class_2680;Lnet/minecraft/class_2415;)Lnet/minecraft/class_2680;
named mirror
Lnet/minecraft/block/AbstractBlock;mirror(Lnet/minecraft/block/BlockState;Lnet/minecraft/util/BlockMirror;)Lnet/minecraft/block/BlockState;
-
appendProperties
Appends block state properties to this block. To use this, override and callStateManager.Builder.add(net.minecraft.state.property.Property<?>[])
inside the method. SeeProperties
for the list of pre-defined properties.- Overrides:
appendProperties
in classBlock
- Mappings:
Namespace Name Mixin selector official a
Lcpi;a(Ldbr$a;)V
intermediary method_9515
Lnet/minecraft/class_2248;method_9515(Lnet/minecraft/class_2689$class_2690;)V
named appendProperties
Lnet/minecraft/block/Block;appendProperties(Lnet/minecraft/state/StateManager$Builder;)V
-