Interface KineticBehaviourExtension
- All Superinterfaces:
BehaviourExtension
Allows behaviours to add additional propagation locations to a kinetic block entity.
-
Method Summary
Modifier and TypeMethodDescriptiondefault List<net.minecraft.core.BlockPos> addExtraPropagationLocations(com.simibubi.create.content.kinetics.base.IRotate block, net.minecraft.world.level.block.state.BlockState state, List<net.minecraft.core.BlockPos> neighbours) Allows a behaviour to add to (or modify) the neighbors list in kinetic propagationdefault voiddefault voiddefault floatforcePropagateRotationTo(com.simibubi.create.content.kinetics.base.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) Provides a high level propagation value for a kinetic propagation (i.e.net.minecraft.world.level.block.entity.BlockEntitydefault floatpropagateRotationTo(com.simibubi.create.content.kinetics.base.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) Provides a base level propagation value for a kinetic propagation (i.e.default void
-
Method Details
-
addExtraPropagationLocations
default List<net.minecraft.core.BlockPos> addExtraPropagationLocations(com.simibubi.create.content.kinetics.base.IRotate block, net.minecraft.world.level.block.state.BlockState state, List<net.minecraft.core.BlockPos> neighbours) Allows a behaviour to add to (or modify) the neighbors list in kinetic propagation- Returns:
- an array list of the neighbors by default
-
propagateRotationTo
default float propagateRotationTo(com.simibubi.create.content.kinetics.base.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) Provides a base level propagation value for a kinetic propagation (i.e. instead of 0). If you want to override the base propagation value from the block entity, useforcePropagateRotationTo(com.simibubi.create.content.kinetics.base.KineticBlockEntity, net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.block.state.BlockState, net.minecraft.core.BlockPos, boolean, boolean)instead.- Returns:
- the propagated rotation to use instead of 0
-
forcePropagateRotationTo
default float forcePropagateRotationTo(com.simibubi.create.content.kinetics.base.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) Provides a high level propagation value for a kinetic propagation (i.e. instead of whatever the block entity wants). If you just want to provide the base propagation value of the block entity, usepropagateRotationTo(com.simibubi.create.content.kinetics.base.KineticBlockEntity, net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.block.state.BlockState, net.minecraft.core.BlockPos, boolean, boolean)instead.- Returns:
- the propagated rotation to use, ignored if 0
-
detachKinetics
default void detachKinetics() -
attachKinetics
default void attachKinetics() -
repropagateKinetics
default void repropagateKinetics() -
getBlockEntity
net.minecraft.world.level.block.entity.BlockEntity getBlockEntity()
-