Class SculkVeinBlock
- All Implemented Interfaces:
FluidDrainable,FluidFillable,SculkSpreadable,Waterloggable,ItemConvertible,ToggleableFeature
- Mappings:
Namespace Name named net/minecraft/block/SculkVeinBlockintermediary net/minecraft/class_7130official dmv
-
Nested Class Summary
Nested ClassesNested 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 TypeFieldDescriptionprivate final LichenGrowerstatic final com.mojang.serialization.MapCodec<SculkVeinBlock> private final LichenGrowerprivate static final BooleanPropertyFields inherited from class net.minecraft.block.MultifaceGrowthBlock
DIRECTIONSFields 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, dynamicBounds, jumpVelocityMultiplier, lootTableKey, randomTicks, requiredFeatures, resistance, settings, slipperiness, soundGroup, velocityMultiplierFields inherited from interface net.minecraft.block.SculkSpreadable
VEIN_ONLY_SPREADERFields 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 booleancanReplace(BlockState state, ItemPlacementContext context) Returns whether the item can replace the block.private booleanconvertToBlock(SculkSpreadManager spreadManager, WorldAccess world, BlockPos pos, Random random) com.mojang.serialization.MapCodec<SculkVeinBlock> getCodec()protected FluidStategetFluidState(BlockState state) Returns the state's associated fluid state.protected BlockStategetStateForNeighborUpdate(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.static booleanplace(WorldAccess world, BlockPos pos, BlockState state, Collection<Direction> directions) intspread(SculkSpreadManager.Cursor cursor, WorldAccess world, BlockPos catalystPos, Random random, SculkSpreadManager spreadManager, boolean shouldConvertToBlock) voidspreadAtSamePosition(WorldAccess world, BlockState state, BlockPos pos, Random random) static booleanveinCoversSculkReplaceable(WorldAccess world, BlockState state, BlockPos pos) Methods inherited from class net.minecraft.block.MultifaceGrowthBlock
canGrowOn, canGrowWithDirection, canHaveDirection, canPlaceAt, collectDirections, directionsToFlag, flagToDirections, getOutlineShape, getPlacementState, getProperty, hasAnyDirection, hasDirection, mirror, rotate, withDirectionMethods 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, canPathfindThrough, createCodec, createScreenHandlerFactory, createSettingsCodec, emitsRedstonePower, getAmbientOcclusionLightLevel, getCameraCollisionShape, getCollisionShape, getComparatorOutput, getCullingShape, getDefaultMapColor, getDroppedStacks, getHardness, getLootTableKey, getMaxHorizontalModelOffset, getOpacity, getRaycastShape, getRenderingSeed, getRenderType, getRequiredFeatures, getSettings, getSidesShape, getSoundGroup, getStrongRedstonePower, getVerticalModelOffsetMultiplier, getWeakRedstonePower, hasComparatorOutput, hasRandomTicks, hasSidedTransparency, isCullingShapeFullCube, isShapeFullCube, isSideInvisible, isTransparent, neighborUpdate, onBlockAdded, onBlockBreakStart, onEntityCollision, onExploded, onProjectileHit, onStacksDropped, onStateReplaced, onSyncedBlockEvent, onUse, onUseWithItem, prepare, randomTick, scheduledTickMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraft.block.SculkSpreadable
getDecay, getUpdate, method_41470, shouldConvertToSpreadable, spreadMethods inherited from interface net.minecraft.resource.featuretoggle.ToggleableFeature
isEnabledMethods inherited from interface net.minecraft.block.Waterloggable
canFillWithFluid, getBucketFillSound, tryDrainFluid, tryFillWithFluid
-
Field Details
-
CODEC
- Mappings:
Namespace Name Mixin selector named CODECLnet/minecraft/block/SculkVeinBlock;CODEC:Lcom/mojang/serialization/MapCodec;intermediary field_46437Lnet/minecraft/class_7130;field_46437:Lcom/mojang/serialization/MapCodec;official cLdmv;c:Lcom/mojang/serialization/MapCodec;
-
WATERLOGGED
- Mappings:
Namespace Name Mixin selector named WATERLOGGEDLnet/minecraft/block/SculkVeinBlock;WATERLOGGED:Lnet/minecraft/state/property/BooleanProperty;intermediary field_37631Lnet/minecraft/class_7130;field_37631:Lnet/minecraft/class_2746;official dLdmv;d:Ldtt;
-
allGrowTypeGrower
- Mappings:
Namespace Name Mixin selector named allGrowTypeGrowerLnet/minecraft/block/SculkVeinBlock;allGrowTypeGrower:Lnet/minecraft/block/LichenGrower;intermediary field_37632Lnet/minecraft/class_7130;field_37632:Lnet/minecraft/class_7118;official eLdmv;e:Ldkz;
-
samePositionOnlyGrower
- Mappings:
Namespace Name Mixin selector named samePositionOnlyGrowerLnet/minecraft/block/SculkVeinBlock;samePositionOnlyGrower:Lnet/minecraft/block/LichenGrower;intermediary field_37633Lnet/minecraft/class_7130;field_37633:Lnet/minecraft/class_7118;official fLdmv;f:Ldkz;
-
-
Constructor Details
-
SculkVeinBlock
- 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 classMultifaceGrowthBlock- 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;
-
getGrower
- Specified by:
getGrowerin classMultifaceGrowthBlock- Mappings:
Namespace Name Mixin selector named getGrowerLnet/minecraft/block/MultifaceGrowthBlock;getGrower()Lnet/minecraft/block/LichenGrower;intermediary method_41432Lnet/minecraft/class_5778;method_41432()Lnet/minecraft/class_7118;official cLdky;c()Ldkz;
-
getSamePositionOnlyGrower
- Mappings:
Namespace Name Mixin selector named getSamePositionOnlyGrowerLnet/minecraft/block/SculkVeinBlock;getSamePositionOnlyGrower()Lnet/minecraft/block/LichenGrower;intermediary method_41516Lnet/minecraft/class_7130;method_41516()Lnet/minecraft/class_7118;official mLdmv;m()Ldkz;
-
place
public static boolean place(WorldAccess world, BlockPos pos, BlockState state, Collection<Direction> directions) - Mappings:
Namespace Name Mixin selector named placeLnet/minecraft/block/SculkVeinBlock;place(Lnet/minecraft/world/WorldAccess;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;Ljava/util/Collection;)Zintermediary method_41514Lnet/minecraft/class_7130;method_41514(Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Ljava/util/Collection;)Zofficial aLdmv;a(Ldcx;Ljd;Ldtc;Ljava/util/Collection;)Z
-
spreadAtSamePosition
- Specified by:
spreadAtSamePositionin interfaceSculkSpreadable- Mappings:
Namespace Name Mixin selector named spreadAtSamePositionLnet/minecraft/block/SculkSpreadable;spreadAtSamePosition(Lnet/minecraft/world/WorldAccess;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)Vintermediary method_41468Lnet/minecraft/class_7124;method_41468(Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Vofficial aLdmp;a(Ldcx;Ldtc;Ljd;Layw;)V
-
spread
public int spread(SculkSpreadManager.Cursor cursor, WorldAccess world, BlockPos catalystPos, Random random, SculkSpreadManager spreadManager, boolean shouldConvertToBlock) - Specified by:
spreadin interfaceSculkSpreadable- Mappings:
Namespace Name Mixin selector named spreadLnet/minecraft/block/SculkSpreadable;spread(Lnet/minecraft/block/entity/SculkSpreadManager$Cursor;Lnet/minecraft/world/WorldAccess;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;Lnet/minecraft/block/entity/SculkSpreadManager;Z)Iintermediary method_41471Lnet/minecraft/class_7124;method_41471(Lnet/minecraft/class_7128$class_7129;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;Lnet/minecraft/class_7128;Z)Iofficial aLdmp;a(Ldmu$a;Ldcx;Ljd;Layw;Ldmu;Z)I
-
convertToBlock
private boolean convertToBlock(SculkSpreadManager spreadManager, WorldAccess world, BlockPos pos, Random random) - Mappings:
Namespace Name Mixin selector named convertToBlockLnet/minecraft/block/SculkVeinBlock;convertToBlock(Lnet/minecraft/block/entity/SculkSpreadManager;Lnet/minecraft/world/WorldAccess;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/random/Random;)Zintermediary method_41515Lnet/minecraft/class_7130;method_41515(Lnet/minecraft/class_7128;Lnet/minecraft/class_1936;Lnet/minecraft/class_2338;Lnet/minecraft/class_5819;)Zofficial aLdmv;a(Ldmu;Ldcx;Ljd;Layw;)Z
-
veinCoversSculkReplaceable
- Mappings:
Namespace Name Mixin selector named veinCoversSculkReplaceableLnet/minecraft/block/SculkVeinBlock;veinCoversSculkReplaceable(Lnet/minecraft/world/WorldAccess;Lnet/minecraft/block/BlockState;Lnet/minecraft/util/math/BlockPos;)Zintermediary method_41513Lnet/minecraft/class_7130;method_41513(Lnet/minecraft/class_1936;Lnet/minecraft/class_2680;Lnet/minecraft/class_2338;)Zofficial aLdmv;a(Ldcx;Ldtc;Ljd;)Z
-
getStateForNeighborUpdate
protected 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.AIRbreaks the block. This is useful to implement supporting block requirement for blocks (if used along withMultifaceGrowthBlock.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_STATEflag is set in thesetBlockStatecall.This method can be used for multiple purposes. Here are some examples:
FenceBlockuses it to update the fence's connection when a horizontally neighboring block's state is changed.PlantBlockuses it to break the plant if the state change causes it to lose its supporting block.DoorBlockuses it to copy the state of the other half of the door.SlabBlockuses it to schedule the fluid to tick if waterlogged.SoulSandBlockuses it to schedule the water block above to tick so that it becomes a bubble column.FallingBlockuses it to schedule the block to tick so that it can fall if needed.
- Overrides:
getStateForNeighborUpdatein classMultifaceGrowthBlock- 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:
- Mappings:
Namespace Name Mixin selector named getStateForNeighborUpdateLnet/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;intermediary method_9559Lnet/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;official aLdtb;a(Ldtc;Lji;Ldtc;Ldcx;Ljd;Ljd;)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 classMultifaceGrowthBlock- 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
-
canReplace
Returns whether the item can replace the block.By default, this checks if the block allows replacing and whether the item differs from the block's item. Items composed of multiple blocks, such as candles, vines, or snow layers, should override this to implement additional checks.
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
.invalid reference
World#isClient- Overrides:
canReplacein classMultifaceGrowthBlock- Returns:
- whether the item can replace the block
- See Also:
- Mappings:
Namespace Name Mixin selector named canReplaceLnet/minecraft/block/AbstractBlock;canReplace(Lnet/minecraft/block/BlockState;Lnet/minecraft/item/ItemPlacementContext;)Zintermediary method_9616Lnet/minecraft/class_4970;method_9616(Lnet/minecraft/class_2680;Lnet/minecraft/class_1750;)Zofficial aLdtb;a(Ldtc;Lcyd;)Z
-
getFluidState
Returns the state's associated fluid state.Waterloggable blocks must override this to return
Fluids.WATER.getStill(false)when waterlogged.- Overrides:
getFluidStatein classAbstractBlock- Returns:
- the state's associated fluid state
- See Also:
- Mappings:
Namespace Name Mixin selector named getFluidStateLnet/minecraft/block/AbstractBlock;getFluidState(Lnet/minecraft/block/BlockState;)Lnet/minecraft/fluid/FluidState;intermediary method_9545Lnet/minecraft/class_4970;method_9545(Lnet/minecraft/class_2680;)Lnet/minecraft/class_3610;official b_Ldtb;b_(Ldtc;)Lepe;
-