Class GantryShaftBlockEntity

All Implemented Interfaces:
IHaveCustomOverlayIcon, IHaveGoggleInformation, IHaveHoveringInformation, PartialSafeNBT, SpecialBlockEntityItemRequirement, IInteractionChecker, net.createmod.ponder.api.VirtualBlockEntity, net.neoforged.neoforge.attachment.IAttachmentHolder, net.neoforged.neoforge.common.extensions.IBlockEntityExtension

public class GantryShaftBlockEntity extends KineticBlockEntity
  • Constructor Details

    • GantryShaftBlockEntity

      public GantryShaftBlockEntity(net.minecraft.world.level.block.entity.BlockEntityType<?> typeIn, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state)
  • Method Details

    • syncSequenceContext

      protected boolean syncSequenceContext()
      Overrides:
      syncSequenceContext in class KineticBlockEntity
    • checkAttachedCarriageBlocks

      public void checkAttachedCarriageBlocks()
    • onSpeedChanged

      public void onSpeedChanged(float previousSpeed)
      Overrides:
      onSpeedChanged in class KineticBlockEntity
    • propagateRotationTo

      public float propagateRotationTo(KineticBlockEntity target, net.minecraft.world.level.block.state.BlockState stateFrom, net.minecraft.world.level.block.state.BlockState stateTo, net.minecraft.core.BlockPos diff, boolean connectedViaAxes, boolean connectedViaCogs)
      Description copied from class: KineticBlockEntity
      Specify ratio of transferred rotation from this kinetic component to a specific other.
      Overrides:
      propagateRotationTo in class KineticBlockEntity
      Parameters:
      target - other Kinetic BE to transfer to
      stateFrom - this BE's blockstate
      stateTo - other BE's blockstate
      diff - difference in position (to.pos - from.pos)
      connectedViaAxes - whether these kinetic blocks are connected via mutual IRotate.hasShaftTowards()
      connectedViaCogs - whether these kinetic blocks are connected via mutual IRotate.hasIntegratedCogwheel()
      Returns:
      factor of rotation speed from this BE to other. 0 if no rotation is transferred, or the standard rules apply (integrated shafts/cogs)
    • isCustomConnection

      public boolean isCustomConnection(KineticBlockEntity other, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.state.BlockState otherState)
      Description copied from class: KineticBlockEntity
      Specify whether this component can propagate speed to the other in any circumstance. Shaft and cogwheel connections are already handled by internal logic. Does not have to be specified on both ends, it is assumed that this relation is symmetrical.
      Overrides:
      isCustomConnection in class KineticBlockEntity
      Parameters:
      other -
      state -
      otherState -
      Returns:
      true if this and the other component should check their propagation factor and are not already connected via integrated cogs or shafts
    • canAssembleOn

      public boolean canAssembleOn()
    • getPinionMovementSpeed

      public float getPinionMovementSpeed()
    • isNoisy

      protected boolean isNoisy()
      Overrides:
      isNoisy in class KineticBlockEntity