Package net.minecraft.world.level.block
Class GrowingPlantHeadBlock
java.lang.Object
net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.Block
net.minecraft.world.level.block.GrowingPlantBlock
net.minecraft.world.level.block.GrowingPlantHeadBlock
- All Implemented Interfaces:
FeatureElement
,BonemealableBlock
,ItemLike
,IBlockExtension
- Direct Known Subclasses:
CaveVinesBlock
,KelpBlock
,TwistingVinesBlock
,WeepingVinesBlock
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.level.block.Block
Block.BlockStatePairKey
Nested classes/interfaces inherited from class net.minecraft.world.level.block.state.BlockBehaviour
BlockBehaviour.BlockStateBase, BlockBehaviour.OffsetFunction, BlockBehaviour.OffsetType, BlockBehaviour.Properties, BlockBehaviour.StateArgumentPredicate<A>, BlockBehaviour.StatePredicate
Nested classes/interfaces inherited from interface net.minecraft.world.level.block.BonemealableBlock
BonemealableBlock.Type
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final IntegerProperty
private final double
static final int
Fields inherited from class net.minecraft.world.level.block.GrowingPlantBlock
growthDirection, scheduleFluidTicks, shape
Fields inherited from class net.minecraft.world.level.block.Block
BLOCK_STATE_REGISTRY, CODEC, INDESTRUCTIBLE, INSTANT, stateDefinition, UPDATE_ALL, UPDATE_ALL_IMMEDIATE, UPDATE_CLIENTS, UPDATE_IMMEDIATE, UPDATE_INVISIBLE, UPDATE_KNOWN_SHAPE, UPDATE_LIMIT, UPDATE_MOVE_BY_PISTON, UPDATE_NEIGHBORS, UPDATE_NONE, UPDATE_SUPPRESS_DROPS
Fields inherited from class net.minecraft.world.level.block.state.BlockBehaviour
drops, dynamicShape, explosionResistance, friction, hasCollision, isRandomlyTicking, jumpFactor, properties, requiredFeatures, soundType, speedFactor, UPDATE_SHAPE_ORDER
Fields inherited from interface net.minecraft.world.flag.FeatureElement
FILTERED_REGISTRIES
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
GrowingPlantHeadBlock
(BlockBehaviour.Properties pProperties, Direction pGrowthDirection, VoxelShape pShape, boolean pScheduleFluidTicks, double pGrowPerTickProbability) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract boolean
canGrowInto
(BlockState pState) protected abstract com.mojang.serialization.MapCodec
<? extends GrowingPlantHeadBlock> codec()
protected void
protected abstract int
protected BlockState
getGrowIntoState
(BlockState pState, RandomSource pRandom) protected GrowingPlantHeadBlock
getMaxAgeState
(BlockState pState) getStateForPlacement
(LevelAccessor pLevel) boolean
isBonemealSuccess
(Level pLevel, RandomSource pRandom, BlockPos pPos, BlockState pState) boolean
isMaxAge
(BlockState pState) protected boolean
isRandomlyTicking
(BlockState pState) boolean
isValidBonemealTarget
(LevelReader pLevel, BlockPos pPos, BlockState pState) void
performBonemeal
(ServerLevel pLevel, RandomSource pRandom, BlockPos pPos, BlockState pState) protected void
randomTick
(BlockState pState, ServerLevel pLevel, BlockPos pPos, RandomSource pRandom) Performs a random tick on a block.protected BlockState
updateBodyAfterConvertedFromHead
(BlockState pHead, BlockState pBody) protected BlockState
updateShape
(BlockState pState, Direction pFacing, BlockState pFacingState, LevelAccessor pLevel, BlockPos pCurrentPos, BlockPos pFacingPos) Update the provided state given the provided neighbor direction and neighbor state, returning a new state.Methods inherited from class net.minecraft.world.level.block.GrowingPlantBlock
canAttachTo, canSurvive, getBodyBlock, getShape, getStateForPlacement, tick
Methods inherited from class net.minecraft.world.level.block.Block
animateTick, appendHoverText, asBlock, asItem, box, builtInRegistryHolder, byItem, canSupportCenter, canSupportRigidBlock, defaultBlockState, destroy, dropFromExplosion, dropResources, dropResources, dropResources, fallOn, getCloneItemStack, getDescriptionId, getDrops, getDrops, getExplosionResistance, getFriction, getId, getJumpFactor, getName, getShapeForEachState, getSpeedFactor, getStateDefinition, handlePrecipitation, hasDynamicShape, initializeClient, isExceptionForConnection, isFaceFull, isPossibleToRespawnInThis, isShapeFullBlock, playerDestroy, playerWillDestroy, popExperience, popResource, popResourceFromFace, pushEntitiesUp, registerDefaultState, setPlacedBy, shouldRenderFace, spawnDestroyParticles, stateById, stepOn, toString, tryDropExperience, updateEntityAfterFallOn, updateFromNeighbourShapes, updateOrDestroy, updateOrDestroy, wasExploded, withPropertiesOf
Methods inherited from class net.minecraft.world.level.block.state.BlockBehaviour
attack, canBeReplaced, canBeReplaced, defaultDestroyTime, defaultMapColor, entityInside, getAnalogOutputSignal, getBlockSupportShape, getCollisionShape, getDestroyProgress, getDirectSignal, getDrops, getFluidState, getInteractionShape, getLightBlock, getLootTable, getMaxHorizontalOffset, getMaxVerticalOffset, getMenuProvider, getOcclusionShape, getRenderShape, getSeed, getShadeBrightness, getSignal, getSoundType, getVisualShape, hasAnalogOutputSignal, isAir, isCollisionShapeFullBlock, isOcclusionShapeFullBlock, isPathfindable, isSignalSource, mirror, neighborChanged, onExplosionHit, onPlace, onProjectileHit, onRemove, propagatesSkylightDown, properties, propertiesCodec, requiredFeatures, rotate, simpleCodec, skipRendering, spawnAfterBreak, triggerEvent, updateIndirectNeighbourShapes, useItemOn, useShapeForLightOcclusion, useWithoutItem
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.minecraft.world.level.block.BonemealableBlock
getParticlePos, getType
Methods inherited from interface net.minecraft.world.flag.FeatureElement
isEnabled
Methods inherited from interface net.neoforged.neoforge.common.extensions.IBlockExtension
addLandingEffects, addRunningEffects, canBeHydrated, canConnectRedstone, canDropFromExplosion, canEntityDestroy, canHarvestBlock, canStickTo, canSustainPlant, collisionExtendsVertically, getAdjacentBlockPathType, getAppearance, getBeaconColorMultiplier, getBedDirection, getBlockPathType, getBubbleColumnDirection, getCloneItemStack, getEnchantPowerBonus, getExpDrop, getExplosionResistance, getFireSpreadSpeed, getFlammability, getFriction, getLightEmission, getMapColor, getPistonPushReaction, getRespawnPosition, getSoundType, getStateAtViewpoint, getToolModifiedState, getWeakChanges, hasDynamicLightEmission, hidesNeighborFace, isBed, isBurning, isConduitFrame, isEmpty, isFertile, isFireSource, isFlammable, isLadder, isPortalFrame, isScaffolding, isSlimeBlock, isStickyBlock, makesOpenTrapdoorAboveClimbable, onBlockExploded, onBlockStateChange, onCaughtFire, onDestroyedByPlayer, onDestroyedByPushReaction, onNeighborChange, onTreeGrow, rotate, setBedOccupied, shouldCheckWeakPower, shouldDisplayFluidOverlay, shouldHideAdjacentFluidFace, supportsExternalFaceHiding
-
Field Details
-
AGE
-
MAX_AGE
public static final int MAX_AGE- See Also:
-
growPerTickProbability
private final double growPerTickProbability
-
-
Constructor Details
-
GrowingPlantHeadBlock
protected GrowingPlantHeadBlock(BlockBehaviour.Properties pProperties, Direction pGrowthDirection, VoxelShape pShape, boolean pScheduleFluidTicks, double pGrowPerTickProbability)
-
-
Method Details
-
codec
- Specified by:
codec
in classGrowingPlantBlock
-
getStateForPlacement
- Overrides:
getStateForPlacement
in classGrowingPlantBlock
-
isRandomlyTicking
- Overrides:
isRandomlyTicking
in classBlockBehaviour
-
randomTick
protected void randomTick(BlockState pState, ServerLevel pLevel, BlockPos pPos, RandomSource pRandom) Performs a random tick on a block.- Overrides:
randomTick
in classBlockBehaviour
-
getGrowIntoState
-
getMaxAgeState
-
isMaxAge
-
updateBodyAfterConvertedFromHead
-
updateShape
protected BlockState updateShape(BlockState pState, Direction pFacing, BlockState pFacingState, LevelAccessor pLevel, BlockPos pCurrentPos, BlockPos pFacingPos) Update the provided state given the provided neighbor direction and neighbor state, returning a new state. For example, fences make their connections to the passed in state if possible, and wet concrete powder immediately returns its solidified counterpart. Note that this method should ideally consider only the specific direction passed in.- Overrides:
updateShape
in classBlockBehaviour
-
createBlockStateDefinition
- Overrides:
createBlockStateDefinition
in classBlock
-
isValidBonemealTarget
- Specified by:
isValidBonemealTarget
in interfaceBonemealableBlock
-
isBonemealSuccess
public boolean isBonemealSuccess(Level pLevel, RandomSource pRandom, BlockPos pPos, BlockState pState) - Specified by:
isBonemealSuccess
in interfaceBonemealableBlock
-
performBonemeal
public void performBonemeal(ServerLevel pLevel, RandomSource pRandom, BlockPos pPos, BlockState pState) - Specified by:
performBonemeal
in interfaceBonemealableBlock
-
getBlocksToGrowWhenBonemealed
-
canGrowInto
-
getHeadBlock
- Specified by:
getHeadBlock
in classGrowingPlantBlock
-