Class CropBlock
- All Implemented Interfaces:
- Fertilizable,- ItemConvertible,- ToggleableFeature
- Direct Known Subclasses:
- BeetrootsBlock,- CarrotsBlock,- PotatoesBlock,- TorchflowerBlock
- Mappings:
- Namespace - Name - named - net/minecraft/block/CropBlock- intermediary - net/minecraft/class_2302- official - dlj
- 
Nested Class SummaryNested classes/interfaces inherited from class net.minecraft.block.AbstractBlockAbstractBlock.AbstractBlockState, AbstractBlock.ContextPredicate, AbstractBlock.Offsetter, AbstractBlock.OffsetType, AbstractBlock.Settings, AbstractBlock.TypedContextPredicate<A>Nested classes/interfaces inherited from interface net.minecraft.block.FertilizableFertilizable.FertilizableType
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic final IntPropertyprivate static final VoxelShape[]static final com.mojang.serialization.MapCodec<CropBlock> static final intFields inherited from class net.minecraft.block.Blockfield_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, SKIP_REDSTONE_WIRE_STATE_REPLACEMENT, STATE_IDS, stateManagerFields inherited from class net.minecraft.block.AbstractBlockcollidable, DIRECTIONS, dynamicBounds, jumpVelocityMultiplier, lootTableKey, randomTicks, requiredFeatures, resistance, settings, slipperiness, soundGroup, translationKey, velocityMultiplierFields inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeatureFEATURE_ENABLED_REGISTRY_KEYS
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidappendProperties(StateManager.Builder<Block, BlockState> builder) Appends block state properties to this block.voidapplyGrowth(World world, BlockPos pos, BlockState state) booleancanGrow(World world, Random random, BlockPos pos, BlockState state) protected booleancanPlaceAt(BlockState state, WorldView world, BlockPos pos) Returns whether the block can be placed atpos.protected booleancanPlantOnTop(BlockState floor, BlockView world, BlockPos pos) intgetAge(BlockState state) protected IntPropertyprotected static floatgetAvailableMoisture(Block block, BlockView world, BlockPos pos) com.mojang.serialization.MapCodec<? extends CropBlock> getCodec()protected intgetGrowthAmount(World world) intprotected VoxelShapegetOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) protected ItemStackgetPickStack(WorldView world, BlockPos pos, BlockState state, boolean includeData) protected ItemConvertiblevoidgrow(ServerWorld world, Random random, BlockPos pos, BlockState state) protected static booleanhasEnoughLightAt(WorldView world, BlockPos pos) protected booleanhasRandomTicks(BlockState state) booleanisFertilizable(WorldView world, BlockPos pos, BlockState state) final booleanisMature(BlockState state) protected voidonEntityCollision(BlockState state, World world, BlockPos pos, Entity entity) Called when the entity's collision box intersects the block.protected voidrandomTick(BlockState state, ServerWorld world, BlockPos pos, Random random) Called server-side when a block gets ticked randomly.withAge(int age) Methods inherited from class net.minecraft.block.PlantBlockcanPathfindThrough, getStateForNeighborUpdate, isTransparentMethods inherited from class net.minecraft.block.BlockafterBreak, appendTooltip, asBlock, asItem, canMobSpawnInside, cannotConnect, createCuboidShape, dropExperience, dropExperienceWhenMined, dropStack, dropStack, dropStacks, dropStacks, dropStacks, getBlastResistance, getBlockFromItem, getDefaultState, getDroppedStacks, getDroppedStacks, getJumpVelocityMultiplier, getName, getPlacementState, getRawIdFromState, getRegistryEntry, getShapesForStates, getSlipperiness, getStateFromRawId, getStateManager, getStateWithProperties, 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.AbstractBlockcalcBlockBreakingDelta, canBucketPlace, canReplace, createCodec, createScreenHandlerFactory, createSettingsCodec, emitsRedstonePower, getAmbientOcclusionLightLevel, getCameraCollisionShape, getCollisionShape, getComparatorOutput, getCullingShape, getDefaultMapColor, getDroppedStacks, getFluidState, getHardness, getInsideCollisionShape, getLootTableKey, getMaxHorizontalModelOffset, getOpacity, getRaycastShape, getRenderingSeed, getRenderType, getRequiredFeatures, getSettings, getSidesShape, getSoundGroup, getStrongRedstonePower, getTranslationKey, getVerticalModelOffsetMultiplier, getWeakRedstonePower, hasComparatorOutput, hasSidedTransparency, isShapeFullCube, isSideInvisible, mirror, neighborUpdate, onBlockAdded, onBlockBreakStart, onExploded, onProjectileHit, onStacksDropped, onStateReplaced, onSyncedBlockEvent, onUse, onUseWithItem, prepare, rotate, scheduledTickMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraft.block.FertilizablegetFertilizableType, getFertilizeParticlePosMethods inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeatureisEnabled
- 
Field Details- 
CODEC- Mappings:
- Namespace - Name - Mixin selector - named - CODEC- Lnet/minecraft/block/CropBlock;CODEC:Lcom/mojang/serialization/MapCodec;- intermediary - field_46329- Lnet/minecraft/class_2302;field_46329:Lcom/mojang/serialization/MapCodec;- official - d- Ldlj;d:Lcom/mojang/serialization/MapCodec;
 
- 
MAX_AGEpublic static final int MAX_AGE- See Also:
- Mappings:
- Namespace - Name - Mixin selector - named - MAX_AGE- Lnet/minecraft/block/CropBlock;MAX_AGE:I- intermediary - field_31079- Lnet/minecraft/class_2302;field_31079:I- official - e- Ldlj;e:I
 
- 
AGE- Mappings:
- Namespace - Name - Mixin selector - named - AGE- Lnet/minecraft/block/CropBlock;AGE:Lnet/minecraft/state/property/IntProperty;- intermediary - field_10835- Lnet/minecraft/class_2302;field_10835:Lnet/minecraft/class_2758;- official - f- Ldlj;f:Ldxx;
 
- 
AGE_TO_SHAPE- Mappings:
- Namespace - Name - Mixin selector - named - AGE_TO_SHAPE- Lnet/minecraft/block/CropBlock;AGE_TO_SHAPE:[Lnet/minecraft/util/shape/VoxelShape;- intermediary - field_10836- Lnet/minecraft/class_2302;field_10836:[Lnet/minecraft/class_265;- official - a- Ldlj;a:[Lfbv;
 
 
- 
- 
Constructor Details- 
CropBlock- Mappings:
- Namespace - Name - Mixin selector - named - <init>- Lnet/minecraft/block/AbstractBlock;<init>(Lnet/minecraft/block/AbstractBlock$Settings;)V- intermediary - <init>- Lnet/minecraft/class_4970;<init>(Lnet/minecraft/class_4970$class_2251;)V- official - <init>- Ldwx;<init>(Ldwx$d;)V
 
 
- 
- 
Method Details- 
getCodec- Specified by:
- getCodecin class- PlantBlock
- Mappings:
- Namespace - Name - Mixin selector - named - getCodec- Lnet/minecraft/block/AbstractBlock;getCodec()Lcom/mojang/serialization/MapCodec;- intermediary - method_53969- Lnet/minecraft/class_4970;method_53969()Lcom/mojang/serialization/MapCodec;- official - a- Ldwx;a()Lcom/mojang/serialization/MapCodec;
 
- 
getOutlineShapeprotected VoxelShape getOutlineShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) - Overrides:
- getOutlineShapein class- AbstractBlock
- See Also:
- Mappings:
- Namespace - Name - Mixin selector - 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;- 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;- official - a- Ldwx;a(Ldwy;Ldfo;Lji;Lfbg;)Lfbv;
 
- 
canPlantOnTop- Overrides:
- canPlantOnTopin class- PlantBlock
- Mappings:
- Namespace - Name - Mixin selector - named - canPlantOnTop- Lnet/minecraft/block/PlantBlock;canPlantOnTop(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;)Z- intermediary - method_9695- Lnet/minecraft/class_2261;method_9695(Lnet/minecraft/class_2680;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)Z- official - b- Ldjx;b(Ldwy;Ldfo;Lji;)Z
 
- 
getAgeProperty- Mappings:
- Namespace - Name - Mixin selector - named - getAgeProperty- Lnet/minecraft/block/CropBlock;getAgeProperty()Lnet/minecraft/state/property/IntProperty;- intermediary - method_9824- Lnet/minecraft/class_2302;method_9824()Lnet/minecraft/class_2758;- official - b- Ldlj;b()Ldxx;
 
- 
getMaxAgepublic int getMaxAge()- Mappings:
- Namespace - Name - Mixin selector - named - getMaxAge- Lnet/minecraft/block/CropBlock;getMaxAge()I- intermediary - method_9827- Lnet/minecraft/class_2302;method_9827()I- official - c- Ldlj;c()I
 
- 
getAge- Mappings:
- Namespace - Name - Mixin selector - named - getAge- Lnet/minecraft/block/CropBlock;getAge(Lnet/minecraft/block/BlockState;)I- intermediary - method_9829- Lnet/minecraft/class_2302;method_9829(Lnet/minecraft/class_2680;)I- official - h- Ldlj;h(Ldwy;)I
 
- 
withAge- Mappings:
- Namespace - Name - Mixin selector - named - withAge- Lnet/minecraft/block/CropBlock;withAge(I)Lnet/minecraft/block/BlockState;- intermediary - method_9828- Lnet/minecraft/class_2302;method_9828(I)Lnet/minecraft/class_2680;- official - b- Ldlj;b(I)Ldwy;
 
- 
isMature- Mappings:
- Namespace - Name - Mixin selector - named - isMature- Lnet/minecraft/block/CropBlock;isMature(Lnet/minecraft/block/BlockState;)Z- intermediary - method_9825- Lnet/minecraft/class_2302;method_9825(Lnet/minecraft/class_2680;)Z- official - i- Ldlj;i(Ldwy;)Z
 
- 
hasRandomTicks- Overrides:
- hasRandomTicksin class- AbstractBlock
- Mappings:
- Namespace - Name - Mixin selector - named - hasRandomTicks- Lnet/minecraft/block/AbstractBlock;hasRandomTicks(Lnet/minecraft/block/BlockState;)Z- intermediary - method_9542- Lnet/minecraft/class_4970;method_9542(Lnet/minecraft/class_2680;)Z- official - f- Ldwx;f(Ldwy;)Z
 
- 
randomTickCalled server-side when a block gets ticked randomly. This can be overridden to implement various logics, most commonly plant growth. Default implementation does nothing. To control the rate of the action, userandom.Random tick speed is controlled by the game rule randomTickSpeedand can be disabled. Only blocks within 128-block cylinder (i.e. ignoring Y coordinates) around players receive random ticks.Blocks overriding this must use AbstractBlock.Settings.ticksRandomly()block settings.Here are some examples: - SugarCaneBlockuses this to grow sugar cane.
- OxidizableBlockuses this to oxidize.
- NetherPortalBlockuses this to spawn zombified piglins.
- LeavesBlockuses this to decay when far from logs.
 - Overrides:
- randomTickin class- AbstractBlock
- See Also:
- Mappings:
- Namespace - Name - Mixin selector - named - randomTick- Lnet/minecraft/block/AbstractBlock;randomTick(Lnet/minecraft/block/BlockState;Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)V- intermediary - method_9514- Lnet/minecraft/class_4970;method_9514(Lnet/minecraft/class_2680;Lnet/minecraft/class_3218;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)V- official - b- Ldwx;b(Ldwy;Lard;Lji;Lazh;)V
 
- 
applyGrowth- Mappings:
- Namespace - Name - Mixin selector - named - applyGrowth- Lnet/minecraft/block/CropBlock;applyGrowth(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V- intermediary - method_9826- Lnet/minecraft/class_2302;method_9826(Lnet/minecraft/class_1937;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V- official - a- Ldlj;a(Ldgj;Lji;Ldwy;)V
 
- 
getGrowthAmount- Mappings:
- Namespace - Name - Mixin selector - named - getGrowthAmount- Lnet/minecraft/block/CropBlock;getGrowthAmount(Lnet/minecraft/world/World;)I- intermediary - method_9831- Lnet/minecraft/class_2302;method_9831(Lnet/minecraft/class_1937;)I- official - a- Ldlj;a(Ldgj;)I
 
- 
getAvailableMoisture- Mappings:
- Namespace - Name - Mixin selector - named - getAvailableMoisture- Lnet/minecraft/block/CropBlock;getAvailableMoisture(Lnet/minecraft/block/Block;Lnet/minecraft/world/BlockView;Lnet/minecraft/util/math/BlockPos;)F- intermediary - method_9830- Lnet/minecraft/class_2302;method_9830(Lnet/minecraft/class_2248;Lnet/minecraft/class_1922;Lnet/minecraft/class_2338;)F- official - a- Ldlj;a(Ldjn;Ldfo;Lji;)F
 
- 
canPlaceAtReturns 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 PlantBlock.getStateForNeighborUpdate(net.minecraft.block.BlockState, net.minecraft.world.WorldView, net.minecraft.world.tick.ScheduledTickView, net.minecraft.util.math.BlockPos, net.minecraft.util.math.Direction, net.minecraft.util.math.BlockPos, net.minecraft.block.BlockState, net.minecraft.util.math.random.Random)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:
- canPlaceAtin class- PlantBlock
- Returns:
- whether the block can be placed at pos
- See Also:
- Mappings:
- Namespace - Name - Mixin selector - named - canPlaceAt- Lnet/minecraft/block/AbstractBlock;canPlaceAt(Lnet/minecraft/block/BlockState;Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;)Z- intermediary - method_9558- Lnet/minecraft/class_4970;method_9558(Lnet/minecraft/class_2680;Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z- official - a- Ldwx;a(Ldwy;Ldgm;Lji;)Z
 
- 
hasEnoughLightAt- Mappings:
- Namespace - Name - Mixin selector - named - hasEnoughLightAt- Lnet/minecraft/block/CropBlock;hasEnoughLightAt(Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;)Z- intermediary - method_52572- Lnet/minecraft/class_2302;method_52572(Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;)Z- official - a- Ldlj;a(Ldgm;Lji;)Z
 
- 
onEntityCollisionCalled 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: - CactusBlockdamages the entity.
- AbstractPressurePlateBlocktriggers.
- CobwebBlockslows the entity.
- EndPortalBlockteleports the entity.
- HopperBlockcollects the item entity.
 - Overrides:
- onEntityCollisionin class- AbstractBlock
- See Also:
- Mappings:
- Namespace - Name - Mixin selector - 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- 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- official - a- Ldwx;a(Ldwy;Ldgj;Lji;Lbum;)V
 
- 
getSeedsItem- Mappings:
- Namespace - Name - Mixin selector - named - getSeedsItem- Lnet/minecraft/block/CropBlock;getSeedsItem()Lnet/minecraft/item/ItemConvertible;- intermediary - method_9832- Lnet/minecraft/class_2302;method_9832()Lnet/minecraft/class_1935;- official - d- Ldlj;d()Ldgi;
 
- 
getPickStackprotected ItemStack getPickStack(WorldView world, BlockPos pos, BlockState state, boolean includeData) - Overrides:
- getPickStackin class- AbstractBlock
- Mappings:
- Namespace - Name - Mixin selector - named - getPickStack- Lnet/minecraft/block/AbstractBlock;getPickStack(Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Z)Lnet/minecraft/item/ItemStack;- intermediary - method_9574- Lnet/minecraft/class_4970;method_9574(Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Z)Lnet/minecraft/class_1799;- official - a- Ldwx;a(Ldgm;Lji;Ldwy;Z)Lcwq;
 
- 
isFertilizable- Specified by:
- isFertilizablein interface- Fertilizable
- Mappings:
- Namespace - Name - Mixin selector - named - isFertilizable- Lnet/minecraft/block/Fertilizable;isFertilizable(Lnet/minecraft/world/WorldView;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Z- intermediary - method_9651- Lnet/minecraft/class_2256;method_9651(Lnet/minecraft/class_4538;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z- official - a- Ldjq;a(Ldgm;Lji;Ldwy;)Z
 
- 
canGrow- Specified by:
- canGrowin interface- Fertilizable
- Mappings:
- Namespace - Name - Mixin selector - named - canGrow- Lnet/minecraft/block/Fertilizable;canGrow(Lnet/minecraft/world/World;Lnet/minecraft/util/math/random/Random;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Z- intermediary - method_9650- Lnet/minecraft/class_2256;method_9650(Lnet/minecraft/class_1937;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Z- official - a- Ldjq;a(Ldgj;Lazh;Lji;Ldwy;)Z
 
- 
grow- Specified by:
- growin interface- Fertilizable
- Mappings:
- Namespace - Name - Mixin selector - named - grow- Lnet/minecraft/block/Fertilizable;grow(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/util/math/random/Random;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V- intermediary - method_9652- Lnet/minecraft/class_2256;method_9652(Lnet/minecraft/class_3218;Lnet/minecraft/class_5819;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V- official - a- Ldjq;a(Lard;Lazh;Lji;Ldwy;)V
 
- 
appendPropertiesAppends 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 class- Block
- Mappings:
- Namespace - Name - Mixin selector - named - appendProperties- Lnet/minecraft/block/Block;appendProperties(Lnet/minecraft/state/StateManager$Builder;)V- intermediary - method_9515- Lnet/minecraft/class_2248;method_9515(Lnet/minecraft/class_2689$class_2690;)V- official - a- Ldjn;a(Ldwz$a;)V
 
 
-