Class AssemblageBlock
java.lang.Object
net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.Block
petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock<AssemblagePart>
petrolpark.mc.library.compat.create.core.world.block.CreateMultiPartBlock<AssemblagePart>
petrolpark.mc.library.compat.create.core.world.block.composite.MultiPartCompositeKineticBlock<AssemblagePart>
petrolpark.mc.petrolsparts.content.kinetics.assemblage.AssemblageBlock
- All Implemented Interfaces:
com.simibubi.create.api.contraption.transformable.TransformableBlock,com.simibubi.create.api.schematic.requirement.SpecialBlockItemRequirement,com.simibubi.create.content.decoration.encasing.EncasableBlock,com.simibubi.create.content.equipment.wrench.IWrenchable,com.simibubi.create.content.kinetics.base.IRotate,com.simibubi.create.foundation.block.IBE<AssemblageBlockEntity>,com.simibubi.create.foundation.block.ProperWaterloggedBlock,net.minecraft.world.flag.FeatureElement,net.minecraft.world.level.block.BucketPickup,net.minecraft.world.level.block.EntityBlock,net.minecraft.world.level.block.LiquidBlockContainer,net.minecraft.world.level.block.SimpleWaterloggedBlock,net.minecraft.world.level.ItemLike,net.neoforged.neoforge.common.extensions.IBlockExtension,net.neoforged.neoforge.common.extensions.IBucketPickupExtension,petrolpark.mc.library.compat.create.core.world.block.composite.ICompositeKineticBlock,petrolpark.mc.library.compat.create.core.world.block.IReplaceableBlock,IAssemblageBlock,IFaceAlignedCogWheelBlock,IStateDependentCogWheelBlock
- Direct Known Subclasses:
SeparateShaftHalvesAssemblageBlock,SingleShaftAssemblageBlock
public abstract sealed class AssemblageBlock
extends petrolpark.mc.library.compat.create.core.world.block.composite.MultiPartCompositeKineticBlock<AssemblagePart>
implements com.simibubi.create.foundation.block.IBE<AssemblageBlockEntity>, com.simibubi.create.foundation.block.ProperWaterloggedBlock, IAssemblageBlock, com.simibubi.create.content.decoration.encasing.EncasableBlock, petrolpark.mc.library.compat.create.core.world.block.IReplaceableBlock
permits SeparateShaftHalvesAssemblageBlock, SingleShaftAssemblageBlock
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceAssemblageBlock.Factory<B extends AssemblageBlock>Nested classes/interfaces inherited from class petrolpark.mc.library.compat.create.core.world.block.CreateMultiPartBlock
petrolpark.mc.library.compat.create.core.world.block.CreateMultiPartBlock.ICreatePartNested classes/interfaces inherited from class petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock
petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock.Clipper<PART extends petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock.IPart>, petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock.IPartNested classes/interfaces inherited from class net.minecraft.world.level.block.Block
net.minecraft.world.level.block.Block.BlockStatePairKeyNested classes/interfaces inherited from class net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.state.BlockBehaviour.BlockStateBase, net.minecraft.world.level.block.state.BlockBehaviour.OffsetFunction, net.minecraft.world.level.block.state.BlockBehaviour.OffsetType, net.minecraft.world.level.block.state.BlockBehaviour.Properties, net.minecraft.world.level.block.state.BlockBehaviour.StateArgumentPredicate<A>, net.minecraft.world.level.block.state.BlockBehaviour.StatePredicateNested classes/interfaces inherited from interface com.simibubi.create.content.kinetics.base.IRotate
com.simibubi.create.content.kinetics.base.IRotate.SpeedLevel, com.simibubi.create.content.kinetics.base.IRotate.StressImpact -
Field Summary
Fields inherited from class petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock
clipperCache, shapeCacheFields 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_DROPSFields inherited from class net.minecraft.world.level.block.state.BlockBehaviour
drops, dynamicShape, explosionResistance, friction, hasCollision, isRandomlyTicking, jumpFactor, properties, requiredFeatures, soundType, speedFactor, UPDATE_SHAPE_ORDERFields inherited from interface net.minecraft.world.flag.FeatureElement
FILTERED_REGISTRIESFields inherited from interface petrolpark.mc.petrolsparts.content.kinetics.assemblage.IAssemblageBlock
AXIS, BOTTOM_COG, BOTTOM_SHAFT_HALF, COG_PROPERTIES, MIDDLE_COG, SHAFT_HALF_PROPERTIES, TOP_COG, TOP_SHAFT_HALFFields inherited from interface com.simibubi.create.foundation.block.ProperWaterloggedBlock
WATERLOGGED -
Constructor Summary
ConstructorsConstructorDescriptionAssemblageBlock(Supplier<AssemblageSet> set, net.minecraft.world.level.block.state.BlockBehaviour.Properties properties) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancanBeReplaced(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.item.context.BlockPlaceContext useContext) booleancanBeReplaced(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState existingState, net.minecraft.world.level.block.state.BlockState newState, net.minecraft.world.entity.player.Player player) booleancanDiagonalBevelCogWheelSurvive(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.LevelReader level, net.minecraft.core.BlockPos pos) static final <B extends AssemblageBlock>
com.tterrag.registrate.util.nullness.NonNullFunction<net.minecraft.world.level.block.state.BlockBehaviour.Properties, B> create(Supplier<AssemblageSet> set, AssemblageBlock.Factory<B> factory) protected voidcreateBlockStateDefinition(net.minecraft.world.level.block.state.StateDefinition.Builder<net.minecraft.world.level.block.Block, net.minecraft.world.level.block.state.BlockState> builder) net.minecraft.world.level.block.entity.BlockEntityType<? extends AssemblageBlockEntity> protected net.minecraft.world.level.material.FluidStategetFluidState(net.minecraft.world.level.block.state.BlockState state) getParts(net.minecraft.world.level.block.state.BlockState state) net.minecraft.world.level.block.state.BlockStategetReplacedState(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState existingState, net.minecraft.world.level.block.state.BlockState newState, net.minecraft.world.entity.player.Player player) net.minecraft.core.Direction.AxisgetRotationAxis(net.minecraft.world.level.block.state.BlockState state) getSet()net.minecraft.world.level.block.state.BlockStategetStateForPlacement(net.minecraft.world.item.context.BlockPlaceContext context) getTargetedKineticPart(AssemblageBlockEntity be, net.minecraft.world.entity.player.Player player) booleanhasShaftTowards(net.minecraft.world.level.LevelReader world, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.Direction face) protected net.minecraft.world.level.block.state.BlockStatemirror(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Mirror mirror) voidonPlace(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState oldState, boolean movedByPiston) protected net.minecraft.world.level.block.state.BlockStaterotate(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Rotation rotation) protected net.minecraft.world.level.block.state.BlockStateupdateShape(net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.Direction direction, net.minecraft.world.level.block.state.BlockState neighborState, net.minecraft.world.level.LevelAccessor level, net.minecraft.core.BlockPos pos, net.minecraft.core.BlockPos neighborPos) protected net.minecraft.world.ItemInteractionResultuseItemOn(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand, net.minecraft.world.phys.BlockHitResult hitResult) net.minecraft.world.level.block.state.BlockStatewithoutPart(net.minecraft.world.level.block.state.BlockState state, AssemblagePart part) Methods inherited from class petrolpark.mc.library.compat.create.core.world.block.composite.MultiPartCompositeKineticBlock
onRemove, setPlacedBy, updateIndirectNeighbourShapesMethods inherited from class petrolpark.mc.library.compat.create.core.world.block.CreateMultiPartBlock
getRequiredItems, onSneakWrenchedMethods inherited from class petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock
canSurviveWithout, dropPartResources, getBlockSupportShape, getCloneItemStack, getCollisionShape, getDrops, getFullShape, getPartDrops, getPartDrops, getRenderShape, getShape, getTargetedPart, getVisualShape, onDestroyedByPlayerMethods inherited from class net.minecraft.world.level.block.Block
animateTick, appendHoverText, asBlock, asItem, box, builtInRegistryHolder, byItem, canSupportCenter, canSupportRigidBlock, codec, defaultBlockState, destroy, dropFromExplosion, dropResources, dropResources, dropResources, fallOn, getCloneItemStack, getDrops, getDrops, getExplosionResistance, getFriction, getId, getJumpFactor, getName, getShapeForEachState, getSpeedFactor, getStateDefinition, handlePrecipitation, hasDynamicShape, initializeClient, isExceptionForConnection, isFaceFull, isPossibleToRespawnInThis, isShapeFullBlock, playerDestroy, playerWillDestroy, popExperience, popResource, popResourceFromFace, pushEntitiesUp, registerDefaultState, shouldRenderFace, spawnDestroyParticles, stateById, stepOn, toString, tryDropExperience, updateEntityAfterFallOn, updateFromNeighbourShapes, updateOrDestroy, updateOrDestroy, wasExploded, withPropertiesOfMethods inherited from class net.minecraft.world.level.block.state.BlockBehaviour
attack, canBeReplaced, canSurvive, defaultDestroyTime, defaultMapColor, entityInside, getAnalogOutputSignal, getDestroyProgress, getDirectSignal, getInteractionShape, getLightBlock, getLootTable, getMaxHorizontalOffset, getMaxVerticalOffset, getMenuProvider, getOcclusionShape, getSeed, getShadeBrightness, getSignal, getSoundType, hasAnalogOutputSignal, isAir, isCollisionShapeFullBlock, isOcclusionShapeFullBlock, isPathfindable, isRandomlyTicking, isSignalSource, neighborChanged, onExplosionHit, onProjectileHit, propagatesSkylightDown, properties, propertiesCodec, randomTick, requiredFeatures, simpleCodec, skipRendering, spawnAfterBreak, tick, triggerEvent, useShapeForLightOcclusion, useWithoutItemMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.simibubi.create.content.decoration.encasing.EncasableBlock
playEncaseSound, tryEncaseMethods inherited from interface net.minecraft.world.level.block.EntityBlock
getListenerMethods inherited from interface net.minecraft.world.flag.FeatureElement
isEnabledMethods inherited from interface petrolpark.mc.petrolsparts.content.kinetics.assemblage.IAssemblageBlock
getCogType, getRotatedBlockState, hasBottomShaft, hasTopShaft, transformMethods inherited from interface com.simibubi.create.foundation.block.IBE
getBlockEntity, getBlockEntityOptional, getTicker, newBlockEntity, onBlockEntityUse, onBlockEntityUseItemOn, withBlockEntityDoMethods 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, getEnchantPowerBonus, getExpDrop, getExplosionResistance, getFireSpreadSpeed, getFlammability, getFriction, getLightEmission, getMapColor, getPistonPushReaction, getRespawnPosition, getSoundType, getStateAtViewpoint, getToolModifiedState, getWeakChanges, hasDynamicLightEmission, hidesNeighborFace, ignitedByLava, isBed, isBurning, isConduitFrame, isEmpty, isFertile, isFireSource, isFlammable, isLadder, isPortalFrame, isScaffolding, isSlimeBlock, isStickyBlock, makesOpenTrapdoorAboveClimbable, onBlockExploded, onBlockStateChange, onCaughtFire, onDestroyedByPushReaction, onNeighborChange, onTreeGrow, rotate, setBedOccupied, shouldCheckWeakPower, shouldDisplayFluidOverlay, shouldHideAdjacentFluidFace, supportsExternalFaceHidingMethods inherited from interface net.neoforged.neoforge.common.extensions.IBucketPickupExtension
getPickupSoundMethods inherited from interface petrolpark.mc.library.compat.create.core.world.block.composite.ICompositeKineticBlock
setPlacedBy, updateIndirectNeighbourShapesMethods inherited from interface com.simibubi.create.content.kinetics.base.IRotate
getMinimumRequiredSpeedLevel, hideStressImpact, showCapacityWithAnnotationMethods inherited from interface com.simibubi.create.content.equipment.wrench.IWrenchable
onSneakWrenched, onWrenched, updateAfterWrenchedMethods inherited from interface com.simibubi.create.foundation.block.ProperWaterloggedBlock
fluidState, updateWater, withWaterMethods inherited from interface net.minecraft.world.level.block.SimpleWaterloggedBlock
canPlaceLiquid, getPickupSound, pickupBlock, placeLiquid
-
Constructor Details
-
AssemblageBlock
public AssemblageBlock(Supplier<AssemblageSet> set, net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
-
-
Method Details
-
create
public static final <B extends AssemblageBlock> com.tterrag.registrate.util.nullness.NonNullFunction<net.minecraft.world.level.block.state.BlockBehaviour.Properties,B> create(Supplier<AssemblageSet> set, AssemblageBlock.Factory<B> factory) -
createBlockStateDefinition
protected void createBlockStateDefinition(net.minecraft.world.level.block.state.StateDefinition.Builder<net.minecraft.world.level.block.Block, net.minecraft.world.level.block.state.BlockState> builder) - Overrides:
createBlockStateDefinitionin classnet.minecraft.world.level.block.Block
-
getSet
- Specified by:
getSetin interfaceIAssemblageBlock
-
getFluidState
protected net.minecraft.world.level.material.FluidState getFluidState(net.minecraft.world.level.block.state.BlockState state) - Overrides:
getFluidStatein classnet.minecraft.world.level.block.state.BlockBehaviour
-
getRotationAxis
public net.minecraft.core.Direction.Axis getRotationAxis(net.minecraft.world.level.block.state.BlockState state) - Specified by:
getRotationAxisin interfacecom.simibubi.create.content.kinetics.base.IRotate
-
getParts
- Specified by:
getPartsin classpetrolpark.mc.library.core.world.block.multiPart.MultiPartBlock<AssemblagePart>
-
withoutPart
public net.minecraft.world.level.block.state.BlockState withoutPart(net.minecraft.world.level.block.state.BlockState state, AssemblagePart part) - Specified by:
withoutPartin classpetrolpark.mc.library.core.world.block.multiPart.MultiPartBlock<AssemblagePart>
-
canBeReplaced
protected boolean canBeReplaced(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.item.context.BlockPlaceContext useContext) - Overrides:
canBeReplacedin classnet.minecraft.world.level.block.state.BlockBehaviour
-
getStateForPlacement
public net.minecraft.world.level.block.state.BlockState getStateForPlacement(net.minecraft.world.item.context.BlockPlaceContext context) - Overrides:
getStateForPlacementin classnet.minecraft.world.level.block.Block
-
getReplacedState
public net.minecraft.world.level.block.state.BlockState getReplacedState(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState existingState, net.minecraft.world.level.block.state.BlockState newState, net.minecraft.world.entity.player.Player player) - Specified by:
getReplacedStatein interfacepetrolpark.mc.library.compat.create.core.world.block.IReplaceableBlock
-
canBeReplaced
public boolean canBeReplaced(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState existingState, net.minecraft.world.level.block.state.BlockState newState, net.minecraft.world.entity.player.Player player) - Specified by:
canBeReplacedin interfacepetrolpark.mc.library.compat.create.core.world.block.IReplaceableBlock
-
canDiagonalBevelCogWheelSurvive
public boolean canDiagonalBevelCogWheelSurvive(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.LevelReader level, net.minecraft.core.BlockPos pos) - Specified by:
canDiagonalBevelCogWheelSurvivein interfaceIAssemblageBlock
-
onPlace
public void onPlace(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState oldState, boolean movedByPiston) - Specified by:
onPlacein interfacepetrolpark.mc.library.compat.create.core.world.block.composite.ICompositeKineticBlock- Overrides:
onPlacein classpetrolpark.mc.library.compat.create.core.world.block.composite.MultiPartCompositeKineticBlock<AssemblagePart>
-
useItemOn
protected net.minecraft.world.ItemInteractionResult useItemOn(net.minecraft.world.item.ItemStack stack, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.Level level, net.minecraft.core.BlockPos pos, net.minecraft.world.entity.player.Player player, net.minecraft.world.InteractionHand hand, net.minecraft.world.phys.BlockHitResult hitResult) - Overrides:
useItemOnin classnet.minecraft.world.level.block.state.BlockBehaviour
-
updateShape
protected net.minecraft.world.level.block.state.BlockState updateShape(net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.Direction direction, net.minecraft.world.level.block.state.BlockState neighborState, net.minecraft.world.level.LevelAccessor level, net.minecraft.core.BlockPos pos, net.minecraft.core.BlockPos neighborPos) - Overrides:
updateShapein classnet.minecraft.world.level.block.state.BlockBehaviour
-
getDescriptionId
- Overrides:
getDescriptionIdin classnet.minecraft.world.level.block.Block
-
getTargetedKineticPart
public AssemblageBlockEntity.AssemblageBlockEntityPart getTargetedKineticPart(AssemblageBlockEntity be, net.minecraft.world.entity.player.Player player) - Specified by:
getTargetedKineticPartin interfaceIAssemblageBlock
-
hasShaftTowards
public boolean hasShaftTowards(net.minecraft.world.level.LevelReader world, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.Direction face) - Specified by:
hasShaftTowardsin interfacepetrolpark.mc.library.compat.create.core.world.block.composite.ICompositeKineticBlock- Specified by:
hasShaftTowardsin interfacecom.simibubi.create.content.kinetics.base.IRotate
-
rotate
protected net.minecraft.world.level.block.state.BlockState rotate(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Rotation rotation) - Overrides:
rotatein classnet.minecraft.world.level.block.state.BlockBehaviour
-
mirror
protected net.minecraft.world.level.block.state.BlockState mirror(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Mirror mirror) - Overrides:
mirrorin classnet.minecraft.world.level.block.state.BlockBehaviour
-
getBlockEntityClass
- Specified by:
getBlockEntityClassin interfacecom.simibubi.create.foundation.block.IBE<AssemblageBlockEntity>
-
getBlockEntityType
public net.minecraft.world.level.block.entity.BlockEntityType<? extends AssemblageBlockEntity> getBlockEntityType()- Specified by:
getBlockEntityTypein interfacecom.simibubi.create.foundation.block.IBE<AssemblageBlockEntity>
-