Class SingleShaftAssemblageBlock

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.multiPart.CreateMultiPartBlock<AssemblagePart>
petrolpark.mc.library.compat.create.core.world.block.composite.MultiPartCompositeKineticBlock<AssemblagePart>
petrolpark.mc.petrolsparts.content.kinetics.assemblage.AssemblageBlock
petrolpark.mc.petrolsparts.content.kinetics.assemblage.SingleShaftAssemblageBlock
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

public non-sealed class SingleShaftAssemblageBlock extends AssemblageBlock
  • Nested Class Summary

    Nested classes/interfaces inherited from class petrolpark.mc.petrolsparts.content.kinetics.assemblage.AssemblageBlock

    AssemblageBlock.Factory<B extends AssemblageBlock>

    Nested classes/interfaces inherited from class petrolpark.mc.library.compat.create.core.world.block.multiPart.CreateMultiPartBlock

    petrolpark.mc.library.compat.create.core.world.block.multiPart.CreateMultiPartBlock.ICreatePart

    Nested 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.IPart

    Nested classes/interfaces inherited from class net.minecraft.world.level.block.Block

    net.minecraft.world.level.block.Block.BlockStatePairKey

    Nested 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.StatePredicate

    Nested 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, shapeCache

    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

    Fields 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_HALF

    Fields inherited from interface com.simibubi.create.foundation.block.ProperWaterloggedBlock

    WATERLOGGED
  • Constructor Summary

    Constructors
    Constructor
    Description
    SingleShaftAssemblageBlock(Supplier<AssemblageSet> set, net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    getParts(net.minecraft.world.level.block.state.BlockState state)
     
    boolean
    hasBottomShaft(net.minecraft.world.level.block.state.BlockState state)
     
    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)
     
    boolean
    hasTopShaft(net.minecraft.world.level.block.state.BlockState state)
     
    net.minecraft.world.level.block.state.BlockState
    withoutPart(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, switchBlockState, updateIndirectNeighbourShapes

    Methods inherited from class petrolpark.mc.library.compat.create.core.world.block.multiPart.CreateMultiPartBlock

    getRequiredItems, onSneakWrenched

    Methods inherited from class petrolpark.mc.library.core.world.block.multiPart.MultiPartBlock

    canSurviveWithout, dropPartResources, getBlockSupportShape, getCloneItemStack, getCollisionShape, getDrops, getFullShape, getPartDrops, getPartDrops, getRenderShape, getShape, getTargetedPart, getVisualShape, onDestroyedByPlayer

    Methods 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, withPropertiesOf

    Methods inherited from class net.minecraft.world.level.block.state.BlockBehaviour

    attack, canBeReplaced, 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, useWithoutItem

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.simibubi.create.content.decoration.encasing.EncasableBlock

    playEncaseSound, tryEncase

    Methods inherited from interface net.minecraft.world.level.block.EntityBlock

    getListener

    Methods inherited from interface net.minecraft.world.flag.FeatureElement

    isEnabled

    Methods inherited from interface petrolpark.mc.petrolsparts.content.kinetics.assemblage.IAssemblageBlock

    canDiagonalBevelCogWheelSurvive, getCogType, getRotatedBlockState, transform

    Methods inherited from interface com.simibubi.create.foundation.block.IBE

    getBlockEntity, getBlockEntityOptional, getTicker, newBlockEntity, onBlockEntityUse, onBlockEntityUseItemOn, withBlockEntityDo

    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, 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, supportsExternalFaceHiding

    Methods inherited from interface net.neoforged.neoforge.common.extensions.IBucketPickupExtension

    getPickupSound

    Methods inherited from interface petrolpark.mc.library.compat.create.core.world.block.composite.ICompositeKineticBlock

    onWrenched, setPlacedBy, updateIndirectNeighbourShapes

    Methods inherited from interface com.simibubi.create.content.kinetics.base.IRotate

    getMinimumRequiredSpeedLevel, hideStressImpact, showCapacityWithAnnotation

    Methods inherited from interface com.simibubi.create.content.equipment.wrench.IWrenchable

    onSneakWrenched, updateAfterWrenched

    Methods inherited from interface com.simibubi.create.foundation.block.ProperWaterloggedBlock

    fluidState, updateWater, withWater

    Methods inherited from interface net.minecraft.world.level.block.SimpleWaterloggedBlock

    canPlaceLiquid, getPickupSound, pickupBlock, placeLiquid
  • Constructor Details

    • SingleShaftAssemblageBlock

      public SingleShaftAssemblageBlock(Supplier<AssemblageSet> set, net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
  • Method Details

    • getParts

      public List<AssemblagePart> getParts(net.minecraft.world.level.block.state.BlockState state)
      Overrides:
      getParts in class AssemblageBlock
    • withoutPart

      public net.minecraft.world.level.block.state.BlockState withoutPart(net.minecraft.world.level.block.state.BlockState state, AssemblagePart part)
      Overrides:
      withoutPart in class AssemblageBlock
    • hasTopShaft

      public boolean hasTopShaft(net.minecraft.world.level.block.state.BlockState state)
    • hasBottomShaft

      public boolean hasBottomShaft(net.minecraft.world.level.block.state.BlockState state)
    • 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:
      hasShaftTowards in interface com.simibubi.create.content.kinetics.base.IRotate
      Overrides:
      hasShaftTowards in class AssemblageBlock