Class ButtonBlock
- All Implemented Interfaces:
ItemConvertible
,ToggleableFeature
- Mappings:
Namespace Name official cpq
intermediary net/minecraft/class_2269
named net/minecraft/block/ButtonBlock
-
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 TypeFieldDescriptionprivate final BlockSetType
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
private static final int
private static final int
protected static final int
protected static final int
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 BooleanProperty
private final int
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
protected static final VoxelShape
private final boolean
Fields inherited from class net.minecraft.block.WallMountedBlock
FACE
Fields inherited from class net.minecraft.block.HorizontalFacingBlock
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
ModifierConstructorDescriptionprotected
ButtonBlock
(AbstractBlock.Settings settings, BlockSetType blockSetType, int pressTicks, boolean wooden) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
appendProperties
(StateManager.Builder<Block, BlockState> builder) Appends block state properties to this block.boolean
emitsRedstonePower
(BlockState state) Returns whether the block is capable of emitting redstone power.protected SoundEvent
getClickSound
(boolean powered) getOutlineShape
(BlockState state, BlockView world, BlockPos pos, ShapeContext context) int
getStrongRedstonePower
(BlockState state, BlockView world, BlockPos pos, Direction direction) Returns the strong redstone power emitted from the block.int
getWeakRedstonePower
(BlockState state, BlockView world, BlockPos pos, Direction direction) Returns the weak redstone power emitted from the block.void
onEntityCollision
(BlockState state, World world, BlockPos pos, Entity entity) Called when the entity's collision box intersects the block.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.onUse
(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) Called when this block is used by a player.protected void
playClickSound
(@Nullable PlayerEntity player, WorldAccess world, BlockPos pos, boolean powered) void
powerOn
(BlockState state, World world, BlockPos pos) void
scheduledTick
(BlockState state, ServerWorld world, BlockPos pos, Random random) Called server-side when a block receives a scheduled tick.protected void
tryPowerWithProjectiles
(BlockState state, World world, BlockPos pos) private void
updateNeighbors
(BlockState state, World world, BlockPos pos) Methods inherited from class net.minecraft.block.WallMountedBlock
canPlaceAt, canPlaceAt, getDirection, getPlacementState, getStateForNeighborUpdate
Methods inherited from class net.minecraft.block.HorizontalFacingBlock
mirror, rotate
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, getPickStack, getRawIdFromState, getRegistryEntry, getShapesForStates, getSlipperiness, getSoundGroup, getStateFromRawId, getStateManager, getStateWithProperties, getTranslationKey, getVelocityMultiplier, hasDynamicBounds, hasRandomTicks, hasTopRim, isFaceFullSquare, isShapeFullCube, isTransparent, onBreak, 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, canPathfindThrough, canReplace, createScreenHandlerFactory, getAmbientOcclusionLightLevel, getCameraCollisionShape, getCollisionShape, getComparatorOutput, getCullingShape, getDefaultMapColor, getDroppedStacks, getFluidState, getHardness, getLootTableId, getMaxHorizontalModelOffset, getOpacity, getPistonBehavior, getRaycastShape, getRenderingSeed, getRenderType, getRequiredFeatures, getSidesShape, getVerticalModelOffsetMultiplier, hasComparatorOutput, hasSidedTransparency, isCullingShapeFullCube, isShapeFullCube, isSideInvisible, neighborUpdate, onBlockAdded, onBlockBreakStart, onProjectileHit, onStacksDropped, onSyncedBlockEvent, prepare, randomTick
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
-
POWERED
- Mappings:
Namespace Name Mixin selector official a
Lcpq;a:Ldci;
intermediary field_10729
Lnet/minecraft/class_2269;field_10729:Lnet/minecraft/class_2746;
named POWERED
Lnet/minecraft/block/ButtonBlock;POWERED:Lnet/minecraft/state/property/BooleanProperty;
-
field_31040
private static final int field_31040- See Also:
- Mappings:
Namespace Name Mixin selector official K
Lcpq;K:I
intermediary field_31040
Lnet/minecraft/class_2269;field_31040:I
named field_31040
Lnet/minecraft/block/ButtonBlock;field_31040:I
-
field_31041
private static final int field_31041- See Also:
- Mappings:
Namespace Name Mixin selector official L
Lcpq;L:I
intermediary field_31041
Lnet/minecraft/class_2269;field_31041:I
named field_31041
Lnet/minecraft/block/ButtonBlock;field_31041:I
-
field_31042
protected static final int field_31042- See Also:
- Mappings:
Namespace Name Mixin selector official b
Lcpq;b:I
intermediary field_31042
Lnet/minecraft/class_2269;field_31042:I
named field_31042
Lnet/minecraft/block/ButtonBlock;field_31042:I
-
field_31043
protected static final int field_31043- See Also:
- Mappings:
Namespace Name Mixin selector official c
Lcpq;c:I
intermediary field_31043
Lnet/minecraft/class_2269;field_31043:I
named field_31043
Lnet/minecraft/block/ButtonBlock;field_31043:I
-
CEILING_X_SHAPE
- Mappings:
Namespace Name Mixin selector official d
Lcpq;d:Ledx;
intermediary field_10721
Lnet/minecraft/class_2269;field_10721:Lnet/minecraft/class_265;
named CEILING_X_SHAPE
Lnet/minecraft/block/ButtonBlock;CEILING_X_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
CEILING_Z_SHAPE
- Mappings:
Namespace Name Mixin selector official e
Lcpq;e:Ledx;
intermediary field_10727
Lnet/minecraft/class_2269;field_10727:Lnet/minecraft/class_265;
named CEILING_Z_SHAPE
Lnet/minecraft/block/ButtonBlock;CEILING_Z_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
FLOOR_X_SHAPE
- Mappings:
Namespace Name Mixin selector official f
Lcpq;f:Ledx;
intermediary field_10723
Lnet/minecraft/class_2269;field_10723:Lnet/minecraft/class_265;
named FLOOR_X_SHAPE
Lnet/minecraft/block/ButtonBlock;FLOOR_X_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
FLOOR_Z_SHAPE
- Mappings:
Namespace Name Mixin selector official g
Lcpq;g:Ledx;
intermediary field_10716
Lnet/minecraft/class_2269;field_10716:Lnet/minecraft/class_265;
named FLOOR_Z_SHAPE
Lnet/minecraft/block/ButtonBlock;FLOOR_Z_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
NORTH_SHAPE
- Mappings:
Namespace Name Mixin selector official h
Lcpq;h:Ledx;
intermediary field_10728
Lnet/minecraft/class_2269;field_10728:Lnet/minecraft/class_265;
named NORTH_SHAPE
Lnet/minecraft/block/ButtonBlock;NORTH_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SOUTH_SHAPE
- Mappings:
Namespace Name Mixin selector official i
Lcpq;i:Ledx;
intermediary field_10715
Lnet/minecraft/class_2269;field_10715:Lnet/minecraft/class_265;
named SOUTH_SHAPE
Lnet/minecraft/block/ButtonBlock;SOUTH_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
WEST_SHAPE
- Mappings:
Namespace Name Mixin selector official j
Lcpq;j:Ledx;
intermediary field_10731
Lnet/minecraft/class_2269;field_10731:Lnet/minecraft/class_265;
named WEST_SHAPE
Lnet/minecraft/block/ButtonBlock;WEST_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
EAST_SHAPE
- Mappings:
Namespace Name Mixin selector official k
Lcpq;k:Ledx;
intermediary field_10720
Lnet/minecraft/class_2269;field_10720:Lnet/minecraft/class_265;
named EAST_SHAPE
Lnet/minecraft/block/ButtonBlock;EAST_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
CEILING_X_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official l
Lcpq;l:Ledx;
intermediary field_10717
Lnet/minecraft/class_2269;field_10717:Lnet/minecraft/class_265;
named CEILING_X_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;CEILING_X_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
CEILING_Z_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official m
Lcpq;m:Ledx;
intermediary field_10726
Lnet/minecraft/class_2269;field_10726:Lnet/minecraft/class_265;
named CEILING_Z_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;CEILING_Z_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
FLOOR_X_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official n
Lcpq;n:Ledx;
intermediary field_10722
Lnet/minecraft/class_2269;field_10722:Lnet/minecraft/class_265;
named FLOOR_X_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;FLOOR_X_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
FLOOR_Z_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official E
Lcpq;E:Ledx;
intermediary field_10730
Lnet/minecraft/class_2269;field_10730:Lnet/minecraft/class_265;
named FLOOR_Z_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;FLOOR_Z_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
NORTH_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official F
Lcpq;F:Ledx;
intermediary field_10719
Lnet/minecraft/class_2269;field_10719:Lnet/minecraft/class_265;
named NORTH_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;NORTH_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
SOUTH_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official G
Lcpq;G:Ledx;
intermediary field_10724
Lnet/minecraft/class_2269;field_10724:Lnet/minecraft/class_265;
named SOUTH_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;SOUTH_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
WEST_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official H
Lcpq;H:Ledx;
intermediary field_10732
Lnet/minecraft/class_2269;field_10732:Lnet/minecraft/class_265;
named WEST_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;WEST_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
EAST_PRESSED_SHAPE
- Mappings:
Namespace Name Mixin selector official I
Lcpq;I:Ledx;
intermediary field_10718
Lnet/minecraft/class_2269;field_10718:Lnet/minecraft/class_265;
named EAST_PRESSED_SHAPE
Lnet/minecraft/block/ButtonBlock;EAST_PRESSED_SHAPE:Lnet/minecraft/util/shape/VoxelShape;
-
blockSetType
- Mappings:
Namespace Name Mixin selector official M
Lcpq;M:Ldcg;
intermediary field_42753
Lnet/minecraft/class_2269;field_42753:Lnet/minecraft/class_8177;
named blockSetType
Lnet/minecraft/block/ButtonBlock;blockSetType:Lnet/minecraft/block/BlockSetType;
-
pressTicks
private final int pressTicks- Mappings:
Namespace Name Mixin selector official N
Lcpq;N:I
intermediary field_40298
Lnet/minecraft/class_2269;field_40298:I
named pressTicks
Lnet/minecraft/block/ButtonBlock;pressTicks:I
-
wooden
private final boolean wooden- Mappings:
Namespace Name Mixin selector official O
Lcpq;O:Z
intermediary field_40299
Lnet/minecraft/class_2269;field_40299:Z
named wooden
Lnet/minecraft/block/ButtonBlock;wooden:Z
-
-
Constructor Details
-
ButtonBlock
protected ButtonBlock(AbstractBlock.Settings settings, BlockSetType blockSetType, int pressTicks, boolean wooden) - Mappings:
Namespace Name Mixin selector official <init>
Lcpq;<init>(Ldbp$d;Ldcg;IZ)V
intermediary <init>
Lnet/minecraft/class_2269;<init>(Lnet/minecraft/class_4970$class_2251;Lnet/minecraft/class_8177;IZ)V
named <init>
Lnet/minecraft/block/ButtonBlock;<init>(Lnet/minecraft/block/AbstractBlock$Settings;Lnet/minecraft/block/BlockSetType;IZ)V
-
-
Method Details
-
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;
-
onUse
public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) Called when this block is used by a player. This, by default, is bound to using the right mouse button.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()
.If the action result is successful on a logical client, then the action will be sent to the logical server for processing.
- Overrides:
onUse
in classAbstractBlock
- Returns:
- an action result that specifies if using the block was successful.
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcmi;Lgt;Lbym;Lbdx;Leda;)Lbdy;
intermediary method_9534
Lnet/minecraft/class_4970;method_9534(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_1269;
named onUse
Lnet/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/Hand;Lnet/minecraft/util/hit/BlockHitResult;)Lnet/minecraft/util/ActionResult;
-
powerOn
- Mappings:
Namespace Name Mixin selector official d
Lcpq;d(Ldbq;Lcmi;Lgt;)V
intermediary method_21845
Lnet/minecraft/class_2269;method_21845(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V
named powerOn
Lnet/minecraft/block/ButtonBlock;powerOn(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)V
-
playClickSound
protected void playClickSound(@Nullable @Nullable PlayerEntity player, WorldAccess world, BlockPos pos, boolean powered) - Mappings:
Namespace Name Mixin selector official a
Lcpq;a(Lbym;Lcmj;Lgt;Z)V
intermediary method_9714
Lnet/minecraft/class_2269;method_9714(Lnet/minecraft/class_1657;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Z)V
named playClickSound
Lnet/minecraft/block/ButtonBlock;playClickSound(Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/world/WorldAccess;Lnet/minecraft/util/math/BlockPos;Z)V
-
getClickSound
- Mappings:
Namespace Name Mixin selector official a
Lcpq;a(Z)Lamq;
intermediary method_9712
Lnet/minecraft/class_2269;method_9712(Z)Lnet/minecraft/class_3414;
named getClickSound
Lnet/minecraft/block/ButtonBlock;getClickSound(Z)Lnet/minecraft/sound/SoundEvent;
-
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
-
getWeakRedstonePower
public 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
AbstractBlock.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,
RedstoneBlock
andTargetBlock
emits weak redstone power only.LeverBlock
andButtonBlock
emits both weak and strong redstone power depending on the direction.- Overrides:
getWeakRedstonePower
in classAbstractBlock
- Returns:
- the weak redstone power emitted from the block
- See Also:
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lclo;Lgt;Lgz;)I
intermediary method_9524
Lnet/minecraft/class_4970;method_9524(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I
named getWeakRedstonePower
Lnet/minecraft/block/AbstractBlock;getWeakRedstonePower(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)I
-
getStrongRedstonePower
public 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
AbstractBlock.emitsRedstonePower(net.minecraft.block.BlockState)
to returntrue
.AbstractBlock.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,
RedstoneBlock
andTargetBlock
emits weak redstone power only.LeverBlock
andButtonBlock
emits both weak and strong redstone power.- Overrides:
getStrongRedstonePower
in classAbstractBlock
- Returns:
- the strong redstone power emitted from the block
- See Also:
- Mappings:
Namespace Name Mixin selector official b
Ldbp;b(Ldbq;Lclo;Lgt;Lgz;)I
intermediary method_9603
Lnet/minecraft/class_4970;method_9603(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)I
named getStrongRedstonePower
Lnet/minecraft/block/AbstractBlock;getStrongRedstonePower(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)I
-
emitsRedstonePower
Returns whether the block is capable of emitting redstone power.This does not return whether the block is currently emitting redstone power. Use
World.isEmittingRedstonePower(net.minecraft.util.math.BlockPos, net.minecraft.util.math.Direction)
in that case.- Overrides:
emitsRedstonePower
in classAbstractBlock
- Returns:
- whether the block is capable of emitting redstone power
- See Also:
- Mappings:
Namespace Name Mixin selector official f_
Ldbp;f_(Ldbq;)Z
intermediary method_9506
Lnet/minecraft/class_4970;method_9506(Lnet/minecraft/class_2680;)Z
named emitsRedstonePower
Lnet/minecraft/block/AbstractBlock;emitsRedstonePower(Lnet/minecraft/block/BlockState;)Z
-
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)
. Additionally,AbstractBlock.randomTick(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.util.math.random.Random)
by default calls this method; overrideAbstractBlock.randomTick(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.util.math.random.Random)
to disable this behavior.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:
SugarCaneBlock
checks the placement requirement.DispenserBlock
dispenses its content.CommandBlock
executes its command.FrogspawnBlock
spawns a tadpole.SoulSandBlock
updates a bubble column.FallingBlock
tries to fall.
- Overrides:
scheduledTick
in classAbstractBlock
- See Also:
-
WorldAccess.scheduleBlockTick(BlockPos, Block, int)
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)
AbstractBlock.randomTick(net.minecraft.block.BlockState, net.minecraft.server.world.ServerWorld, net.minecraft.util.math.BlockPos, net.minecraft.util.math.random.Random)
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Laip;Lgt;Lapo;)V
intermediary method_9588
Lnet/minecraft/class_4970;method_9588(Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V
named scheduledTick
Lnet/minecraft/block/AbstractBlock;scheduledTick(Lnet/minecraft/block/BlockState;Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)V
-
onEntityCollision
Called when the entity's collision box intersects the block. Therefore, this method is not called for blocks with a collision; useBlock.onSteppedOn(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, net.minecraft.entity.Entity)
for those blocks.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
.Here are some examples:
CactusBlock
damages the entity.AbstractPressurePlateBlock
triggers.CobwebBlock
slows the entity.EndPortalBlock
teleports the entity.HopperBlock
collects the item entity.
- Overrides:
onEntityCollision
in classAbstractBlock
- See Also:
-
Block.onSteppedOn(net.minecraft.world.World, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, net.minecraft.entity.Entity)
AbstractBlock.onProjectileHit(net.minecraft.world.World, net.minecraft.block.BlockState, net.minecraft.util.hit.BlockHitResult, net.minecraft.entity.projectile.ProjectileEntity)
- Mappings:
Namespace Name Mixin selector official a
Ldbp;a(Ldbq;Lcmi;Lgt;Lbfh;)V
intermediary method_9548
Lnet/minecraft/class_4970;method_9548(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_1297;)V
named onEntityCollision
Lnet/minecraft/block/AbstractBlock;onEntityCollision(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/entity/Entity;)V
-
tryPowerWithProjectiles
- Mappings:
Namespace Name Mixin selector official e
Lcpq;e(Ldbq;Lcmi;Lgt;)V
intermediary method_9715
Lnet/minecraft/class_2269;method_9715(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V
named tryPowerWithProjectiles
Lnet/minecraft/block/ButtonBlock;tryPowerWithProjectiles(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)V
-
updateNeighbors
- Mappings:
Namespace Name Mixin selector official f
Lcpq;f(Ldbq;Lcmi;Lgt;)V
intermediary method_9713
Lnet/minecraft/class_2269;method_9713(Lnet/minecraft/class_2680;Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;)V
named updateNeighbors
Lnet/minecraft/block/ButtonBlock;updateNeighbors(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;)V
-
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
-