Class GantryShaftBlockEntity
java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.level.block.entity.BlockEntity
com.simibubi.create.foundation.blockEntity.SyncedBlockEntity
com.simibubi.create.foundation.blockEntity.CachedRenderBBBlockEntity
com.simibubi.create.foundation.blockEntity.SmartBlockEntity
com.simibubi.create.content.kinetics.base.KineticBlockEntity
com.simibubi.create.content.kinetics.gantry.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
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.level.block.entity.BlockEntity
net.minecraft.world.level.block.entity.BlockEntity.DataComponentInputNested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
net.neoforged.neoforge.attachment.AttachmentHolder.AsField -
Field Summary
Fields inherited from class com.simibubi.create.content.kinetics.base.KineticBlockEntity
capacity, effects, lastCapacityProvided, lastStressApplied, network, networkDirty, overStressed, preventSpeedUpdate, sequenceContext, source, speed, stress, updateSpeed, wasMovedFields inherited from class com.simibubi.create.foundation.blockEntity.SmartBlockEntity
lazyTickCounter, lazyTickRateFields inherited from class net.minecraft.world.level.block.entity.BlockEntity
level, remove, worldPositionFields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
ATTACHMENTS_NBT_KEY -
Constructor Summary
ConstructorsConstructorDescriptionGantryShaftBlockEntity(net.minecraft.world.level.block.entity.BlockEntityType<?> typeIn, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) -
Method Summary
Modifier and TypeMethodDescriptionbooleanvoidfloatbooleanisCustomConnection(KineticBlockEntity other, net.minecraft.world.level.block.state.BlockState state, net.minecraft.world.level.block.state.BlockState otherState) Specify whether this component can propagate speed to the other in any circumstance.protected booleanisNoisy()voidonSpeedChanged(float previousSpeed) floatpropagateRotationTo(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) Specify ratio of transferred rotation from this kinetic component to a specific other.protected booleanMethods inherited from class com.simibubi.create.content.kinetics.base.KineticBlockEntity
addBehaviours, addPropagationLocations, addStressImpactStats, addToGoggleTooltip, addToTooltip, attachKinetics, calculateAddedStressCapacity, calculateStressApplied, canPropagateDiagonally, clearKineticInformation, convertToAngular, convertToDirection, convertToLinear, copySequenceContextFrom, detachKinetics, getFlickerScore, getGeneratedSpeed, getOrCreateNetwork, getRotationAngleOffset, getSpeed, getStressConfigKey, getTheoreticalSpeed, hasNetwork, hasSource, initialize, isOverStressed, isSource, isSpeedRequirementFulfilled, makeComputerKineticsChangeEvent, needsSpeedUpdate, read, remove, removeSource, requestModelDataUpdate, setNetwork, setSource, setSpeed, switchToBlockState, tick, tickAudio, updateFromNetwork, warnOfMovement, writeMethods inherited from class com.simibubi.create.foundation.blockEntity.SmartBlockEntity
addBehavioursDeferred, attachBehaviourLate, award, awardIfNear, canPlayerUse, destroy, forEachBehaviour, getAllBehaviours, getBehaviour, getRequiredItems, invalidate, isChunkUnloaded, isVirtual, lazyTick, loadAdditional, markVirtual, onChunkUnloaded, readClient, refreshBlockState, registerAwardables, removeBehaviour, saveAdditional, sendToMenu, setLazyTickRate, setRemoved, writeClient, writeSafeMethods inherited from class com.simibubi.create.foundation.blockEntity.CachedRenderBBBlockEntity
createRenderBoundingBox, getRenderBoundingBox, invalidateRenderBoundingBoxMethods inherited from class com.simibubi.create.foundation.blockEntity.SyncedBlockEntity
blockHolderGetter, getUpdatePacket, getUpdateTag, handleUpdateTag, notifyUpdate, onDataPacket, sendDataMethods inherited from class net.minecraft.world.level.block.entity.BlockEntity
addEntityType, applyComponents, applyComponentsFromItemStack, applyImplicitComponents, clearRemoved, collectComponents, collectImplicitComponents, components, fillCrashReportCategory, getBlockPos, getBlockState, getLevel, getPersistentData, getPosFromTag, getType, hasLevel, isRemoved, isValidBlockState, loadCustomOnly, loadStatic, loadWithComponents, onlyOpCanSetNbt, parseCustomNameSafe, removeComponentsFromTag, removeData, saveCustomAndMetadata, saveCustomOnly, saveToItem, saveWithFullMetadata, saveWithId, saveWithoutMetadata, setBlockState, setChanged, setChanged, setComponents, setData, setLevel, syncData, triggerEventMethods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, serializeAttachmentsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IBlockEntityExtension
getModelData, hasCustomOutlineRendering, invalidateCapabilities, onLoadMethods inherited from interface com.simibubi.create.api.equipment.goggles.IHaveCustomOverlayIcon
getIconMethods inherited from interface com.simibubi.create.api.equipment.goggles.IHaveGoggleInformation
containedFluidTooltip
-
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:
syncSequenceContextin classKineticBlockEntity
-
checkAttachedCarriageBlocks
public void checkAttachedCarriageBlocks() -
onSpeedChanged
public void onSpeedChanged(float previousSpeed) - Overrides:
onSpeedChangedin classKineticBlockEntity
-
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:KineticBlockEntitySpecify ratio of transferred rotation from this kinetic component to a specific other.- Overrides:
propagateRotationToin classKineticBlockEntity- Parameters:
target- other Kinetic BE to transfer tostateFrom- this BE's blockstatestateTo- other BE's blockstatediff- 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:KineticBlockEntitySpecify 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:
isCustomConnectionin classKineticBlockEntity- 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:
isNoisyin classKineticBlockEntity
-