Class ControlledContraptionEntity
java.lang.Object
net.neoforged.neoforge.attachment.AttachmentHolder
net.minecraft.world.entity.Entity
com.simibubi.create.content.contraptions.AbstractContraptionEntity
com.simibubi.create.content.contraptions.ControlledContraptionEntity
- All Implemented Interfaces:
net.minecraft.commands.CommandSource,net.minecraft.network.syncher.SyncedDataHolder,net.minecraft.world.level.entity.EntityAccess,net.minecraft.world.Nameable,net.minecraft.world.scores.ScoreHolder,net.neoforged.neoforge.attachment.IAttachmentHolder,net.neoforged.neoforge.common.extensions.IEntityExtension,net.neoforged.neoforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>,net.neoforged.neoforge.entity.IEntityWithComplexSpawn
Ex: Pistons, bearings
Controlled Contraption Entities can rotate around one axis and translate.
They are bound to an
Controlled Contraption Entities can rotate around one axis and translate.
They are bound to an
IControlContraption-
Nested Class Summary
Nested classes/interfaces inherited from class com.simibubi.create.content.contraptions.AbstractContraptionEntity
AbstractContraptionEntity.ContraptionRotationStateNested classes/interfaces inherited from class net.minecraft.world.entity.Entity
net.minecraft.world.entity.Entity.MoveFunction, net.minecraft.world.entity.Entity.MovementEmission, net.minecraft.world.entity.Entity.RemovalReasonNested classes/interfaces inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
net.neoforged.neoforge.attachment.AttachmentHolder.AsField -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected floatprotected floatprotected net.minecraft.core.BlockPosprotected floatprotected net.minecraft.core.Direction.AxisFields inherited from class com.simibubi.create.content.contraptions.AbstractContraptionEntity
collidingEntities, contraption, initialized, prevPosInvalid, staleTicksFields inherited from class net.minecraft.world.entity.Entity
BASE_SAFE_FALL_DISTANCE, BASE_TICKS_REQUIRED_TO_FREEZE, blocksBuilding, BOARDING_COOLDOWN, boardingCooldown, CONTENTS_SLOT_INDEX, DATA_POSE, DATA_SHARED_FLAGS_ID, DEFAULT_BB_HEIGHT, DEFAULT_BB_WIDTH, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_2, DELTA_AFFECTED_BY_BLOCKS_BELOW_0_5, DELTA_AFFECTED_BY_BLOCKS_BELOW_1_0, ENTITY_COUNTER, entityData, fallDistance, firstTick, FLAG_FALL_FLYING, FLAG_GLOWING, FLAG_ONFIRE, fluidHeight, flyDist, forgeFluidTypeHeight, FREEZE_HURT_FREQUENCY, hasImpulse, horizontalCollision, hurtMarked, ID_TAG, invulnerableTime, isInPowderSnow, mainSupportingBlockPos, MAX_ENTITY_TAG_COUNT, minorHorizontalCollision, moveDist, noCulling, noPhysics, PASSENGERS_TAG, portalProcess, random, removalReason, stringUUID, stuckSpeedMultiplier, tickCount, TOTAL_AIR_SUPPLY, uuid, UUID_TAG, verticalCollision, verticalCollisionBelow, walkDist, walkDistO, wasEyeInWater, wasInPowderSnow, wasOnFire, wasTouchingWater, xo, xOld, xRotO, yo, yOld, yRotO, zo, zOldFields inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
ATTACHMENTS_NBT_KEYFields inherited from interface net.minecraft.commands.CommandSource
NULLFields inherited from interface net.minecraft.world.scores.ScoreHolder
WILDCARD, WILDCARD_NAME -
Constructor Summary
ConstructorsConstructorDescriptionControlledContraptionEntity(net.minecraft.world.entity.EntityType<?> type, net.minecraft.world.level.Level world) -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyLocalTransforms(com.mojang.blaze3d.vertex.PoseStack matrixStack, float partialTicks) net.minecraft.world.phys.Vec3applyRotation(net.minecraft.world.phys.Vec3 localPos, float partialTicks) static ControlledContraptionEntitycreate(net.minecraft.world.level.Level world, IControlContraption controller, Contraption contraption) floatgetAngle(float partialTicks) net.minecraft.world.phys.Vec3getContactPointMotion(net.minecraft.world.phys.Vec3 globalContactPoint) protected IControlContraptionnet.minecraft.core.Direction.Axisprotected floatprotected voidhandleStallInformation(double x, double y, double z, float angle) voidlerpTo(double pX, double pY, double pZ, float pYRot, float pXRot, int pSteps) protected StructureTransformprotected voidprotected voidreadAdditional(net.minecraft.nbt.CompoundTag compound, boolean spawnPacket) net.minecraft.world.phys.Vec3reverseRotation(net.minecraft.world.phys.Vec3 localPos, float partialTicks) voidsetAngle(float angle) protected voidsetContraption(Contraption contraption) voidsetPos(double x, double y, double z) voidsetRotationAxis(net.minecraft.core.Direction.Axis rotationAxis) protected booleanshouldActorTrigger(MovementContext context, net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate.StructureBlockInfo blockInfo, MovementBehaviour actor, net.minecraft.world.phys.Vec3 actorPosition, net.minecraft.core.BlockPos gridPosition) voidteleportTo(double p_70634_1_, double p_70634_3_, double p_70634_5_) protected voidprotected voidwriteAdditional(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries, boolean spawnPacket) Methods inherited from class com.simibubi.create.content.contraptions.AbstractContraptionEntity
addAdditionalSaveData, addSittingPassenger, alignPassenger, build, canAddPassenger, canCollideWith, collisionEnabled, contraptionInitialize, control, defineSynchedData, disassemble, doWaterSplashEffect, fireImmune, getAnchorVec, getContraption, getContraptionName, getControllingPlayer, getDismountLocationForPassenger, getPassengerPosition, getPistonPushReaction, getPrevAnchorVec, getPrevPositionVec, getYawOffset, handleBlockChange, handlePlayerInteraction, hasExactlyOnePlayerPassenger, hurt, igniteForTicks, isActorActive, isAliveOrStale, isIgnoringBlockTriggers, isPickable, isPrevPosInvalid, isReadyForRender, isStalled, kill, move, move, onBelowWorld, onRemovedFromLevel, pitchFromVector, positionRider, readAdditionalSaveData, readSpawnData, refreshPSIs, registerColliding, remove, removePassenger, saveWithoutId, setBlock, setContraptionMotion, setControllingPlayer, setDeltaMovement, startControlling, stopControlling, supportsTerrainCollision, tick, tickActors, toGlobalVector, toGlobalVector, toLocalVector, toLocalVector, updateInWaterStateAndDoFluidPushing, writeSpawnData, yawFromVectorMethods inherited from class net.minecraft.world.entity.Entity
absMoveTo, absMoveTo, absRotateTo, acceptsFailure, acceptsSuccess, addDeltaMovement, addPassenger, addTag, adjustSpawnLocation, animateHurt, applyGravity, awardKillScore, baseTick, blockPosition, broadcastToPlayer, calculateUpVector, calculateViewVector, canBeCollidedWith, canBeHitByProjectile, canChangeDimensions, canControlVehicle, canFreeze, canRide, canSpawnSprintParticle, canSprint, canTrample, canUsePortal, captureDrops, captureDrops, causeFallDamage, changeDimension, checkBelowWorld, checkDespawn, checkFallDamage, checkInsideBlocks, checkSlowFallDistance, checkSupportingBlock, chunkPosition, clearFire, closerThan, closerThan, collideBoundingBox, copyPosition, couldAcceptPassenger, countPlayerPassengers, createCommandSourceStack, createHoverEvent, damageSources, dampensVibrations, deflection, discard, dismountsUnderwater, dismountTo, displayFireAnimation, distanceTo, distanceToSqr, distanceToSqr, distanceToSqr, ejectPassengers, equals, extinguishFire, fillCrashReportCategory, fixupDimensions, fudgePositionAfterSizeChange, gameEvent, gameEvent, getAddEntityPacket, getAirSupply, getAttachments, getBbHeight, getBbWidth, getBlockExplosionResistance, getBlockJumpFactor, getBlockPosBelowThatAffectsMyMovement, getBlockSpeedFactor, getBlockStateOn, getBlockStateOnLegacy, getBlockX, getBlockY, getBlockZ, getBoundingBox, getBoundingBoxForCulling, getCapability, getCapability, getCollisionHorizontalEscapeVector, getCommandSenderWorld, getControlledVehicle, getControllingPassenger, getCustomName, getDefaultGravity, getDefaultPassengerAttachmentPoint, getDeltaMovement, getDimensionChangingDelay, getDimensions, getDirection, getDisplayName, getEncodeId, getEntityData, getEyeHeight, getEyeHeight, getEyeInFluidType, getEyePosition, getEyePosition, getEyeY, getFireImmuneTicks, getFirstPassenger, getFluidHeight, getFluidJumpThreshold, getFluidTypeHeight, getForward, getGravity, getHandHoldingItemAngle, getId, getInBlockState, getIndirectPassengers, getKnownMovement, getLeashOffset, getLeashOffset, getLightLevelDependentMagicValue, getLightProbePosition, getLookAngle, getMaxAirSupply, getMaxFallDistance, getMaxHeightFluidType, getMotionDirection, getMovementEmission, getName, getNearestViewDirection, getOnPos, getOnPos, getOnPosLegacy, getPassengerAttachmentPoint, getPassengerRidingPosition, getPassengers, getPassengersAndSelf, getPercentFrozen, getPermissionLevel, getPersistentData, getPickRadius, getPickResult, getPortalCooldown, getPose, getPosition, getPositionCodec, getPreciseBodyRotation, getPrimaryStepSoundBlockPos, getRandom, getRandomX, getRandomY, getRandomZ, getRelativePortalPosition, getRemainingFireTicks, getRemovalReason, getRootVehicle, getRopeHoldPosition, getRotationVector, getScoreboardName, getSelfAndPassengers, getServer, getSharedFlag, getSlot, getSoundSource, getStringUUID, getSwimHighSpeedSplashSound, getSwimSound, getSwimSplashSound, getTags, getTeam, getTeamColor, getTicksFrozen, getTicksRequiredToFreeze, getType, getTypeName, getUpVector, getUUID, getVehicle, getVehicleAttachmentPoint, getViewScale, getViewVector, getViewXRot, getViewYRot, getVisualRotationYInDegrees, getWeaponItem, getX, getX, getXRot, getY, getY, getYHeadRot, getYRot, getZ, getZ, handleDamageEvent, handleEntityEvent, handlePortal, hasControllingPassenger, hasCustomName, hasGlowingTag, hashCode, hasIndirectPassenger, hasPassenger, hasPassenger, hasPermissions, hasPose, igniteForSeconds, ignoreExplosion, interact, interactAt, is, isAddedToLevel, isAlive, isAlliedTo, isAlliedTo, isAlwaysTicking, isAttackable, isColliding, isControlledByLocalInstance, isCrouching, isCurrentlyGlowing, isCustomNameVisible, isDescending, isDiscrete, isEffectiveAi, isEyeInFluid, isFlapping, isFree, isFreezing, isFullyFrozen, isHorizontalCollisionMinor, isInFluidType, isInFluidType, isInLava, isInLiquid, isInvisible, isInvisibleTo, isInvulnerable, isInvulnerableTo, isInWall, isInWater, isInWaterOrBubble, isInWaterOrRain, isInWaterRainOrBubble, isNoGravity, isOnFire, isOnPortalCooldown, isOnRails, isPassenger, isPassengerOfSameVehicle, isPushable, isPushedByFluid, isRemoved, isShiftKeyDown, isSilent, isSpectator, isSprinting, isSteppingCarefully, isSupportedBy, isSuppressingBounce, isSwimming, isUnderWater, isVehicle, isVisuallyCrawling, isVisuallySwimming, killedEntity, lavaHurt, lerpHeadTo, lerpMotion, lerpPositionAndRotationStep, lerpTargetX, lerpTargetXRot, lerpTargetY, lerpTargetYRot, lerpTargetZ, level, limitPistonMovement, load, lookAt, makeBoundingBox, makeStuckInBlock, markHurt, maxUpStep, maybeBackOffFromEdge, mayInteract, mirror, moveRelative, moveTo, moveTo, moveTo, moveTo, moveTo, moveTowardsClosestSpace, newDoubleList, newFloatList, nextStep, onAboveBubbleCol, onAddedToLevel, onClientRemoval, onExplosionHit, onFlap, onGround, onInsideBlock, onInsideBubbleColumn, onlyOpCanSetNbt, onPassengerTurned, onSyncedDataUpdated, onSyncedDataUpdated, pick, placePortalTicket, playCombinationStepSounds, playEntityOnFireExtinguishedSound, playerTouch, playMuffledStepSound, playSound, playSound, playStepSound, playSwimSound, position, positionRider, processFlappingMovement, processPortalCooldown, push, push, push, reapplyPosition, recreateFromPacket, refreshDimensions, registryAccess, removeAfterChangingDimensions, removeTag, removeVehicle, repositionEntityAfterLoad, resetFallDistance, restoreFrom, revive, rideTick, rotate, save, saveAsPassenger, sendSystemMessage, setAirSupply, setAsInsidePortal, setBoundingBox, setCustomName, setCustomNameVisible, setData, setDeltaMovement, setFluidTypeHeight, setGlowingTag, setId, setInvisible, setInvulnerable, setIsInPowderSnow, setLevel, setLevelCallback, setNoGravity, setOldPosAndRot, setOnGround, setOnGroundWithMovement, setPortalCooldown, setPortalCooldown, setPos, setPose, setPosRaw, setRemainingFireTicks, setRemoved, setRot, setSharedFlag, setSharedFlagOnFire, setShiftKeyDown, setSilent, setSprinting, setSwimming, setTicksFrozen, setUUID, setViewScale, setXRot, setYBodyRot, setYHeadRot, setYRot, shouldBeSaved, shouldBlockExplode, shouldInformAdmins, shouldRender, shouldRenderAtSqrDistance, shouldShowName, showVehicleHealth, skipAttackInteraction, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnAtLocation, spawnSprintParticle, startRiding, startRiding, startSeenByPlayer, stopRiding, stopSeenByPlayer, syncData, syncPacketPositionCodec, teleportRelative, teleportTo, thunderHit, toString, touchingUnloadedChunk, trackingPosition, tryCheckInsideBlocks, turn, unRide, unsetRemoved, updateDynamicGameEventListener, updateFluidHeightAndDoFluidPushing, updateFluidHeightAndDoFluidPushing, updateSwimming, waterSwimSoundMethods inherited from class net.neoforged.neoforge.attachment.AttachmentHolder
deserializeAttachments, getData, getExistingDataOrNull, hasAttachments, hasData, removeData, serializeAttachmentsMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface net.minecraft.commands.CommandSource
alwaysAcceptsMethods inherited from interface net.neoforged.neoforge.attachment.IAttachmentHolder
getData, getExistingData, getExistingData, getExistingDataOrNull, hasData, removeData, setData, syncDataMethods inherited from interface net.neoforged.neoforge.common.extensions.IEntityExtension
canBeRiddenUnderFluidType, canFluidExtinguish, canHydrateInFluidType, canRiderInteract, canStartSwimming, canSwimInFluidType, copyAttachmentsFrom, deserializeNBT, getClassification, getFluidFallDistanceModifier, getFluidMotionScale, getParts, getPickedResult, getSoundFromFluidType, hasCustomOutlineRendering, isEyeInFluidType, isInFluidType, isInFluidType, isInFluidType, isMultipartEntity, isPushedByFluid, sendPairingData, serializeNBT, shouldRiderSitMethods inherited from interface net.minecraft.world.scores.ScoreHolder
getFeedbackDisplayName
-
Field Details
-
controllerPos
protected net.minecraft.core.BlockPos controllerPos -
rotationAxis
protected net.minecraft.core.Direction.Axis rotationAxis -
prevAngle
protected float prevAngle -
angle
protected float angle -
angleDelta
protected float angleDelta
-
-
Constructor Details
-
ControlledContraptionEntity
public ControlledContraptionEntity(net.minecraft.world.entity.EntityType<?> type, net.minecraft.world.level.Level world)
-
-
Method Details
-
create
public static ControlledContraptionEntity create(net.minecraft.world.level.Level world, IControlContraption controller, Contraption contraption) -
setPos
public void setPos(double x, double y, double z) - Overrides:
setPosin classAbstractContraptionEntity
-
getContactPointMotion
public net.minecraft.world.phys.Vec3 getContactPointMotion(net.minecraft.world.phys.Vec3 globalContactPoint) - Overrides:
getContactPointMotionin classAbstractContraptionEntity
-
setContraption
- Overrides:
setContraptionin classAbstractContraptionEntity
-
readAdditional
protected void readAdditional(net.minecraft.nbt.CompoundTag compound, boolean spawnPacket) - Overrides:
readAdditionalin classAbstractContraptionEntity
-
writeAdditional
protected void writeAdditional(net.minecraft.nbt.CompoundTag compound, net.minecraft.core.HolderLookup.Provider registries, boolean spawnPacket) - Overrides:
writeAdditionalin classAbstractContraptionEntity
-
getRotationState
- Specified by:
getRotationStatein classAbstractContraptionEntity
-
applyRotation
public net.minecraft.world.phys.Vec3 applyRotation(net.minecraft.world.phys.Vec3 localPos, float partialTicks) - Specified by:
applyRotationin classAbstractContraptionEntity
-
reverseRotation
public net.minecraft.world.phys.Vec3 reverseRotation(net.minecraft.world.phys.Vec3 localPos, float partialTicks) - Specified by:
reverseRotationin classAbstractContraptionEntity
-
setAngle
public void setAngle(float angle) -
getAngle
public float getAngle(float partialTicks) -
setRotationAxis
public void setRotationAxis(net.minecraft.core.Direction.Axis rotationAxis) -
getRotationAxis
public net.minecraft.core.Direction.Axis getRotationAxis() -
teleportTo
public void teleportTo(double p_70634_1_, double p_70634_3_, double p_70634_5_) - Overrides:
teleportToin classnet.minecraft.world.entity.Entity
-
lerpTo
public void lerpTo(double pX, double pY, double pZ, float pYRot, float pXRot, int pSteps) - Overrides:
lerpToin classnet.minecraft.world.entity.Entity
-
tickContraption
protected void tickContraption()- Specified by:
tickContraptionin classAbstractContraptionEntity
-
shouldActorTrigger
protected boolean shouldActorTrigger(MovementContext context, net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate.StructureBlockInfo blockInfo, MovementBehaviour actor, net.minecraft.world.phys.Vec3 actorPosition, net.minecraft.core.BlockPos gridPosition) - Overrides:
shouldActorTriggerin classAbstractContraptionEntity
-
getController
-
makeStructureTransform
- Specified by:
makeStructureTransformin classAbstractContraptionEntity
-
onContraptionStalled
protected void onContraptionStalled()- Overrides:
onContraptionStalledin classAbstractContraptionEntity
-
getStalledAngle
protected float getStalledAngle()- Specified by:
getStalledAnglein classAbstractContraptionEntity
-
handleStallInformation
protected void handleStallInformation(double x, double y, double z, float angle) - Specified by:
handleStallInformationin classAbstractContraptionEntity
-
applyLocalTransforms
public void applyLocalTransforms(com.mojang.blaze3d.vertex.PoseStack matrixStack, float partialTicks) - Specified by:
applyLocalTransformsin classAbstractContraptionEntity
-