Interface IFaceAlignedCogWheelBlockEntity

All Known Implementing Classes:
AssemblageBlockEntity.AssemblageBlockEntityPart, FrictionHeaterBlockEntity.Part, RedstoneTransmissionBlockEntity

public interface IFaceAlignedCogWheelBlockEntity
  • Method Summary

    Modifier and Type
    Method
    Description
    static boolean
    cannotSetRatio(com.simibubi.create.content.kinetics.base.KineticBlockEntity from, com.google.common.util.concurrent.AtomicDouble ratio, double newRatio)
     
    static CogType
    getCogType(com.simibubi.create.content.kinetics.base.KineticBlockEntity kbe, net.minecraft.core.Direction face)
     
    getCogType(net.minecraft.core.Direction face)
    For internal implementation only.
    static CogType
    getPossibleCogType(net.minecraft.world.level.block.entity.BlockEntity be, net.minecraft.core.Direction face)
     
    static boolean
    isLargeToSmallCog(net.minecraft.core.Direction.Axis axisFrom, net.minecraft.core.BlockPos diff)
     
    static boolean
    isValidFaceAlignedCogwheelPosition(boolean large, net.minecraft.world.level.LevelReader worldIn, net.minecraft.core.BlockPos pos, net.minecraft.core.Direction cogFace)
     
    static float
    propagateFaceAlignedCogwheels(com.simibubi.create.content.kinetics.base.KineticBlockEntity from, com.simibubi.create.content.kinetics.base.KineticBlockEntity to, 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)
     
    default boolean
    In AssemblageCogWheelBlockItem.PlacementHelper, attempt to place on the other two Cogwheel positions; not just just the one hovered
  • Method Details

    • getPossibleCogType

      static CogType getPossibleCogType(net.minecraft.world.level.block.entity.BlockEntity be, net.minecraft.core.Direction face)
    • getCogType

      static CogType getCogType(com.simibubi.create.content.kinetics.base.KineticBlockEntity kbe, net.minecraft.core.Direction face)
    • isValidFaceAlignedCogwheelPosition

      static boolean isValidFaceAlignedCogwheelPosition(boolean large, net.minecraft.world.level.LevelReader worldIn, net.minecraft.core.BlockPos pos, net.minecraft.core.Direction cogFace)
    • getCogType

      CogType getCogType(net.minecraft.core.Direction face)
      For internal implementation only. Use getCogType(KineticBlockEntity, Direction) externally.
      Parameters:
      face -
    • tryToPlaceOnOtherFaces

      default boolean tryToPlaceOnOtherFaces()
      In AssemblageCogWheelBlockItem.PlacementHelper, attempt to place on the other two Cogwheel positions; not just just the one hovered
    • propagateFaceAlignedCogwheels

      static float propagateFaceAlignedCogwheels(com.simibubi.create.content.kinetics.base.KineticBlockEntity from, com.simibubi.create.content.kinetics.base.KineticBlockEntity to, 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)
    • cannotSetRatio

      static boolean cannotSetRatio(com.simibubi.create.content.kinetics.base.KineticBlockEntity from, com.google.common.util.concurrent.AtomicDouble ratio, double newRatio)
      Parameters:
      from -
      ratio -
      newRatio -
      Returns:
      true if different Cogwheel components of this block rotate at different speeds
    • isLargeToSmallCog

      static boolean isLargeToSmallCog(net.minecraft.core.Direction.Axis axisFrom, net.minecraft.core.BlockPos diff)