Class DoubleCardanShaftBlock

java.lang.Object
net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.Block
com.simibubi.create.content.kinetics.base.KineticBlock
com.simibubi.create.content.kinetics.base.DirectionalKineticBlock
com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock
com.petrolpark.petrolsparts.content.double_cardan_shaft.DoubleCardanShaftBlock
All Implemented Interfaces:
com.simibubi.create.api.contraption.transformable.TransformableBlock, com.simibubi.create.content.equipment.wrench.IWrenchable, com.simibubi.create.content.kinetics.base.IRotate, com.simibubi.create.foundation.block.IBE<DoubleCardanShaftBlockEntity>, net.minecraft.world.flag.FeatureElement, net.minecraft.world.level.block.EntityBlock, net.minecraft.world.level.ItemLike, net.neoforged.neoforge.common.extensions.IBlockExtension

public class DoubleCardanShaftBlock extends com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock implements com.simibubi.create.foundation.block.IBE<DoubleCardanShaftBlockEntity>
  • Nested Class Summary

    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 com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock

    AXIS_ALONG_FIRST_COORDINATE

    Fields inherited from class com.simibubi.create.content.kinetics.base.DirectionalKineticBlock

    FACING

    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

    Constructors
    Constructor
    Description
    DoubleCardanShaftBlock(net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    net.minecraft.world.level.block.entity.BlockEntityType<? extends DoubleCardanShaftBlockEntity>
     
    static net.minecraft.world.level.block.state.BlockState
    getBlockstateConnectingDirections(net.minecraft.core.Direction direction1, net.minecraft.core.Direction direction2)
     
    static net.minecraft.core.Direction[]
    getDirectionsConnectedByState(net.minecraft.world.level.block.state.BlockState state)
    XYZXYZ Considering the above list, with the Axis of facing excluded: If axisAlongFirst is true, the shaft connects facing and the Axis to the right in the same direction. If axisAlongFirst is false, the shaft connects facing and the Axis to the left in the opposite direction.
    net.minecraft.world.level.block.state.BlockState
    getRotatedBlockState(net.minecraft.world.level.block.state.BlockState originalState, net.minecraft.core.Direction targetedFace)
     
    net.minecraft.world.phys.shapes.VoxelShape
    getShape(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.BlockGetter worldIn, net.minecraft.core.BlockPos pos, net.minecraft.world.phys.shapes.CollisionContext context)
     
    net.minecraft.world.level.block.state.BlockState
    getStateForPlacement(net.minecraft.world.item.context.BlockPlaceContext context)
     
    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)
     
    static boolean
    isPositiveDirection(net.minecraft.core.Direction direction)
     
    net.minecraft.world.level.block.state.BlockState
    mirror(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Mirror mirror)
     
    net.minecraft.world.level.block.state.BlockState
    rotate(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Rotation rot)
     
    net.minecraft.world.level.block.state.BlockState
    transform(net.minecraft.world.level.block.state.BlockState state, com.simibubi.create.content.contraptions.StructureTransform transform)
     

    Methods inherited from class com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock

    createBlockStateDefinition, getAxisAlignmentForPlacement, getFacingForPlacement, getRotationAxis, prefersConnectionTo

    Methods inherited from class com.simibubi.create.content.kinetics.base.DirectionalKineticBlock

    getPreferredFacing

    Methods inherited from class com.simibubi.create.content.kinetics.base.KineticBlock

    areStatesKineticallyEquivalent, getParticleInitialRadius, getParticleTargetRadius, onPlace, onRemove, setPlacedBy, updateIndirectNeighbourShapes

    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, 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, 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, canSurvive, 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, isRandomlyTicking, isSignalSource, neighborChanged, onExplosionHit, onProjectileHit, propagatesSkylightDown, properties, propertiesCodec, randomTick, requiredFeatures, simpleCodec, skipRendering, spawnAfterBreak, tick, triggerEvent, updateShape, 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.EntityBlock

    getListener

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

    isEnabled

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

    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, onWrenched, updateAfterWrenched
  • Constructor Details

    • DoubleCardanShaftBlock

      public DoubleCardanShaftBlock(net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
  • Method Details

    • getStateForPlacement

      public net.minecraft.world.level.block.state.BlockState getStateForPlacement(net.minecraft.world.item.context.BlockPlaceContext context)
      Overrides:
      getStateForPlacement in class com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock
    • 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 com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock
    • getRotatedBlockState

      public net.minecraft.world.level.block.state.BlockState getRotatedBlockState(net.minecraft.world.level.block.state.BlockState originalState, net.minecraft.core.Direction targetedFace)
      Specified by:
      getRotatedBlockState in interface com.simibubi.create.content.equipment.wrench.IWrenchable
    • getShape

      public net.minecraft.world.phys.shapes.VoxelShape getShape(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.BlockGetter worldIn, net.minecraft.core.BlockPos pos, net.minecraft.world.phys.shapes.CollisionContext context)
      Overrides:
      getShape in class net.minecraft.world.level.block.state.BlockBehaviour
    • getDirectionsConnectedByState

      public static net.minecraft.core.Direction[] getDirectionsConnectedByState(net.minecraft.world.level.block.state.BlockState state)
      XYZXYZ Considering the above list, with the Axis of facing excluded:
      • If axisAlongFirst is true, the shaft connects facing and the Axis to the right in the same direction.
      • If axisAlongFirst is false, the shaft connects facing and the Axis to the left in the opposite direction.
    • getBlockstateConnectingDirections

      public static net.minecraft.world.level.block.state.BlockState getBlockstateConnectingDirections(net.minecraft.core.Direction direction1, net.minecraft.core.Direction direction2)
    • isPositiveDirection

      public static boolean isPositiveDirection(net.minecraft.core.Direction direction)
    • rotate

      public net.minecraft.world.level.block.state.BlockState rotate(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Rotation rot)
      Overrides:
      rotate in class com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock
    • mirror

      public net.minecraft.world.level.block.state.BlockState mirror(net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.Mirror mirror)
      Overrides:
      mirror in class com.simibubi.create.content.kinetics.base.DirectionalKineticBlock
    • transform

      public net.minecraft.world.level.block.state.BlockState transform(net.minecraft.world.level.block.state.BlockState state, com.simibubi.create.content.contraptions.StructureTransform transform)
      Specified by:
      transform in interface com.simibubi.create.api.contraption.transformable.TransformableBlock
      Overrides:
      transform in class com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock
    • getBlockEntityClass

      public Class<DoubleCardanShaftBlockEntity> getBlockEntityClass()
      Specified by:
      getBlockEntityClass in interface com.simibubi.create.foundation.block.IBE<DoubleCardanShaftBlockEntity>
    • getBlockEntityType

      public net.minecraft.world.level.block.entity.BlockEntityType<? extends DoubleCardanShaftBlockEntity> getBlockEntityType()
      Specified by:
      getBlockEntityType in interface com.simibubi.create.foundation.block.IBE<DoubleCardanShaftBlockEntity>