Class SimpleMultiBlock

java.lang.Object
net.minecraft.world.level.block.state.BlockBehaviour
net.minecraft.world.level.block.Block
net.nikdo53.tinymultiblocklib.block.AbstractMultiBlock
net.nikdo53.tinymultiblocklib.test.SimpleMultiBlock
All Implemented Interfaces:
net.minecraft.world.flag.FeatureElement, net.minecraft.world.level.block.EntityBlock, net.minecraft.world.level.ItemLike, IExpandingMultiblock, IMBStateSharer, IMovableMultiblock, IMultiBlock, IPreviewableMultiblock
Direct Known Subclasses:
TestBlock

public class SimpleMultiBlock extends AbstractMultiBlock implements IPreviewableMultiblock
  • 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 extends Object>, net.minecraft.world.level.block.state.BlockBehaviour.StatePredicate
  • Field Summary

    Fields inherited from class net.nikdo53.tinymultiblocklib.block.AbstractMultiBlock

    CENTER

    Fields inherited from class net.minecraft.world.level.block.Block

    BLOCK_STATE_REGISTRY, 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
    SimpleMultiBlock(net.minecraft.world.level.block.state.BlockBehaviour.Properties properties)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    net.minecraft.world.level.block.RenderShape
    getMultiblockRenderShape(net.minecraft.world.level.block.state.BlockState state, boolean isCenter)
    Sorry for forcing everyone to override this, but its kinda important for performance and fixing visual glitches
    List<net.minecraft.core.BlockPos>
    makeFullBlockShape(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos center, net.minecraft.world.level.block.state.BlockState state, @Nullable net.minecraft.world.level.block.entity.BlockEntity blockEntity, @Nullable net.minecraft.core.Direction direction)
    Returns a BlockPos Stream of every block in this multiblock.

    Methods inherited from class net.minecraft.world.level.block.Block

    animateTick, appendHoverText, asBlock, asItem, box, builtInRegistryHolder, byItem, canSupportCenter, canSupportRigidBlock, defaultBlockState, destroy, dropFromExplosion, dropResources, dropResources, dropResources, fallOn, getCloneItemStack, getDescriptionId, getDrops, getDrops, getExplosionResistance, getFriction, getId, getJumpFactor, getName, getShapeForEachState, getSoundType, getSpeedFactor, getStateDefinition, handlePrecipitation, hasDynamicShape, isExceptionForConnection, isFaceFull, isPossibleToRespawnInThis, isRandomlyTicking, isShapeFullBlock, playerDestroy, popExperience, popResource, popResourceFromFace, propagatesSkylightDown, pushEntitiesUp, registerDefaultState, setPlacedBy, 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, defaultDestroyTime, defaultMapColor, entityInside, getAnalogOutputSignal, getBlockSupportShape, getCollisionShape, getDestroyProgress, getDirectSignal, getDrops, getFluidState, getInteractionShape, getLightBlock, getLootTable, getMaxHorizontalOffset, getMaxVerticalOffset, getMenuProvider, getOcclusionShape, getSeed, getShadeBrightness, getShape, getSignal, getVisualShape, hasAnalogOutputSignal, isCollisionShapeFullBlock, isOcclusionShapeFullBlock, isPathfindable, isSignalSource, mirror, neighborChanged, onProjectileHit, onRemove, randomTick, requiredFeatures, rotate, skipRendering, spawnAfterBreak, tick, triggerEvent, updateIndirectNeighbourShapes, use, useShapeForLightOcclusion

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

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

    isEnabled

    Methods inherited from interface net.nikdo53.tinymultiblocklib.block.IMBStateSharer

    createSharedBlockStates, getSharedStateProperties, getSharedStatePropertiesBuilder, shareBlockStates

    Methods inherited from interface net.nikdo53.tinymultiblocklib.block.IMovableMultiblock

    gatherStates, moveMultiblock

    Methods inherited from interface net.nikdo53.tinymultiblocklib.block.IPreviewableMultiblock

    getBlockEntityForPreviews, getDefaultStateForPreviews, shouldPreview, skipJsonRendering
  • Constructor Details

    • SimpleMultiBlock

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

    • makeFullBlockShape

      public List<net.minecraft.core.BlockPos> makeFullBlockShape(net.minecraft.world.level.Level level, net.minecraft.core.BlockPos center, net.minecraft.world.level.block.state.BlockState state, @Nullable @Nullable net.minecraft.world.level.block.entity.BlockEntity blockEntity, @Nullable @Nullable net.minecraft.core.Direction direction)
      Description copied from interface: IMultiBlock
      Returns a BlockPos Stream of every block in this multiblock.

      Should only be used for overriding

      Specified by:
      makeFullBlockShape in interface IMultiBlock
      center - The center pos of the multiblock, aka the 1st block placed
      blockEntity - null when being placed
      direction - present only when IMultiBlock.getDirectionProperty() is overridden with a valid property
      See Also:
    • getMultiblockRenderShape

      public net.minecraft.world.level.block.RenderShape getMultiblockRenderShape(net.minecraft.world.level.block.state.BlockState state, boolean isCenter)
      Description copied from class: AbstractMultiBlock
      Sorry for forcing everyone to override this, but its kinda important for performance and fixing visual glitches

      If your block is a JSON model, return RenderShape.MODEL

      If your block has a BlockEntity renderer, return RenderShape.ENTITYBLOCK_ANIMATED for that specific block and RenderShape.INVISIBLE everywhere else

      Specified by:
      getMultiblockRenderShape in class AbstractMultiBlock
      See Also: