Class AbstractCornerShaftBlock

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.kinetics.cornerShaft.AbstractCornerShaftBlock
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<CornerShaftBlockEntity>, net.minecraft.world.flag.FeatureElement, net.minecraft.world.level.block.EntityBlock, net.minecraft.world.level.ItemLike, net.neoforged.neoforge.common.extensions.IBlockExtension
Direct Known Subclasses:
CornerShaftBlock, EncasedCornerShaftBlock

public abstract class AbstractCornerShaftBlock extends com.simibubi.create.content.kinetics.base.DirectionalAxisKineticBlock implements com.simibubi.create.foundation.block.IBE<CornerShaftBlockEntity>
  • 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
    AbstractCornerShaftBlock(net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected boolean
    areStatesKineticallyEquivalent(net.minecraft.world.level.block.state.BlockState oldState, net.minecraft.world.level.block.state.BlockState newState)
     
     
    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.level.block.state.BlockState
    getStateForPlacement(net.minecraft.world.item.context.BlockPlaceContext context)
     
    static boolean
    hasShaftTowards(net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.Direction face)
     
    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

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

    • AbstractCornerShaftBlock

      public AbstractCornerShaftBlock(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 static boolean hasShaftTowards(net.minecraft.world.level.block.state.BlockState state, net.minecraft.core.Direction face)
    • 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
    • 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 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
    • areStatesKineticallyEquivalent

      protected boolean areStatesKineticallyEquivalent(net.minecraft.world.level.block.state.BlockState oldState, net.minecraft.world.level.block.state.BlockState newState)
      Overrides:
      areStatesKineticallyEquivalent in class com.simibubi.create.content.kinetics.base.KineticBlock
    • getBlockEntityClass

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