abstract class MotionControllerBase implements MotionController
Class MotionControllerBase. Provides motioncontrollerbase functionality for the Hytale server.
java.lang.Object > MotionControllerBase
Field Summary
role
Field role.
inertia
Field inertia.
knockbackScale
Field knockbackScale.
gravity
Field gravity.
debugModeSteer
Field debugModeSteer.
debugModeMove
Field debugModeMove.
debugModeCollisions
Field debugModeCollisions.
debugModeBlockCollisions
Field debugModeBlockCollisions.
debugModeProbeBlockCollisions
Field debugModeProbeBlockCollisions.
debugModeValidatePositions
Field debugModeValidatePositions.
debugModeOverlaps
Field debugModeOverlaps.
debugModeValidateMath
Field debugModeValidateMath.
ignoreDamping
Field ignoreDamping.
isObstructed
Field isObstructed.
navState
Field navState.
throttleDuration
Field throttleDuration.
targetDeltaSquared
Field targetDeltaSquared.
recomputePath
Field recomputePath.
enableTriggers
Field enableTriggers.
enableBlockDamage
Field enableBlockDamage.
isReceivingBlockDamage
Field isReceivingBlockDamage.
isAvoidingBlockDamage
Field isAvoidingBlockDamage.
requiresPreciseMovement
Field requiresPreciseMovement.
requiresDepthProbing
Field requiresDepthProbing.
havePreciseMovementTarget
Field havePreciseMovementTarget.
preciseMovementTarget
Field preciseMovementTarget.
isRelaxedMoveConstraints
Field isRelaxedMoveConstraints.
isBlendingHeading
Field isBlendingHeading.
blendHeading
Field blendHeading.
haveBlendHeadingPosition
Field haveBlendHeadingPosition.
blendHeadingPosition
Field blendHeadingPosition.
blendLevelAtTargetPosition
Field blendLevelAtTargetPosition.
fastMotionKind
Field fastMotionKind.
idleMotionKind
Field idleMotionKind.
horizontalIdleKind
Field horizontalIdleKind.
moveSpeed
Field moveSpeed.
previousSpeed
Field previousSpeed.
motionKind
Field motionKind.
lastMovementStateUpdatedMotionKind
Field lastMovementStateUpdatedMotionKind.
previousMotionKind
Field previousMotionKind.
effectHorizontalSpeedMultiplier
Field effectHorizontalSpeedMultiplier.
cachedMovementBlocked
Field cachedMovementBlocked.
yaw
Field yaw.
pitch
Field pitch.
roll
Field roll.
processTriggersHasMoved
Field processTriggersHasMoved.
movementSettings
Field movementSettings.
transformComponent
Field transformComponent.
bodyRotation
Field bodyRotation.
world
Field world.
chunkStore
Field chunkStore.
chunkIndex
Field chunkIndex.
chunkRef
Field chunkRef.
worldChunkComponent
Field worldChunkComponent.
blockX
Field blockX.
blockY
Field blockY.
blockZ
Field blockZ.
fluidId
Field fluidId.
lastFastMotion
Field lastFastMotion.
npcComponent
Field npcComponent.
st
Field st.
t
Field t.
l
Field l.
v
Field v.
maxBodyRotation
Field maxBodyRotation.
maxHeadRotation
Field maxHeadRotation.
headRotationComponent
Field headRotationComponent.
headRotation
Field headRotation.
movementThresholdSquared
Field movementThresholdSquared.
clientTps
Field clientTps.
serverTps
Field serverTps.
rate
Field rate.
dampenY
Field dampenY.
useGroundResistance
Field useGroundResistance.
entry
Field entry.
len
Field len.
mul
Field mul.
resistanceScale
Field resistanceScale.
velocity
Field velocity.
velocity2
Field velocity2.
velocity3
Field velocity3.
hasHeadSteering
Field hasHeadSteering.
modelComponent
Field modelComponent.
currentYaw
Field currentYaw.
targetYaw
Field targetYaw.
turnAngle
Field turnAngle.
yawOffset
Field yawOffset.
headRotationRestrictions
Field headRotationRestrictions.
yawRange
Field yawRange.
initialBodyYaw
Field initialBodyYaw.
currentBodyYaw
Field currentBodyYaw.
targetBodyYaw
Field targetBodyYaw.
bodyTurnAngle
Field bodyTurnAngle.
currentPitch
Field currentPitch.
targetPitch
Field targetPitch.
bodyPitch
Field bodyPitch.
pitchOffset
Field pitchOffset.
pitchRange
Field pitchRange.
horizontalSpeed
Field horizontalSpeed.
velocityEpsilon
Field velocityEpsilon.
newValue
Field newValue.
interactionManager
Field interactionManager.
movementBlocked
Field movementBlocked.
movementEffects
Field movementEffects.
distance
Field distance.
scale
Field scale.
horzMul
Field horzMul.
cd
Field cd.
materialName
Field materialName.
typeName
Field typeName.
hitboxName
Field hitboxName.
blockRotation
Field blockRotation.
count
Field count.
interactionManagerComponent
Field interactionManagerComponent.
damageToEntity
Field damageToEntity.
damage
Field damage.
dx
Field dx.
dy
Field dy.
dz
Field dz.
position
Field position.
module
Field module.
config
Field config.
saveDebugModeOverlaps
Field saveDebugModeOverlaps.
isValid
Field isValid.
canClear
Field canClear.
Method Detail
MotionControllerBase
public
MotionControllerBase
(@Nonnull final BuilderSupport builderSupport, @Nonnull final BuilderMotionControllerBase builder)
Method MotionControllerBase.
- Parameters:
@Nonnull final BuilderSupportbuilderSupport@Nonnull final BuilderMotionControllerBasebuilder
setInertia
void
setInertia
(final double inertia)
Method setInertia.
- Parameters:
final doubleinertia
setKnockbackScale
void
setKnockbackScale
(final double knockbackScale)
Method setKnockbackScale.
- Parameters:
final doubleknockbackScale
updateModelParameters
void
updateModelParameters
(final Ref ref, final Model model, @Nonnull final Box boundingBox, final ComponentAccessor componentAccessor)
Method updateModelParameters.
- Parameters:
final Refreffinal Modelmodel@Nonnull final BoxboundingBoxfinal ComponentAccessorcomponentAccessor
readEntityPosition
void
readEntityPosition
(@Nonnull final Ref ref, @Nonnull final ComponentAccessor componentAccessor)
Method readEntityPosition.
- Parameters:
@Nonnull final Refref@Nonnull final ComponentAccessorcomponentAccessor
postReadPosition
Method postReadPosition.
- Parameters:
final Refreffinal ComponentAccessorcomponentAccessor
moveEntity
void
moveEntity
(@Nonnull final Ref ref, final double dt, @Nonnull final ComponentAccessor componentAccessor)
Method moveEntity.
- Parameters:
@Nonnull final Refreffinal doubledt@Nonnull final ComponentAccessorcomponentAccessor
getYaw
float
getYaw
()
Method getYaw.
getPitch
float
getPitch
()
Method getPitch.
getRoll
float
getRoll
()
Method getRoll.
touchesWater
boolean
touchesWater
(final boolean defaultValue, @Nonnull final ComponentAccessor componentAccessor)
Method touchesWater.
- Parameters:
final booleandefaultValue@Nonnull final ComponentAccessorcomponentAccessor
updateMovementState
void
updateMovementState
(@Nonnull final Ref ref, @Nonnull final MovementStates movementStates, @Nonnull final Steering steering, @Nonnull final Vector3d velocity, @Nonnull final ComponentAccessor componentAccessor)
Method updateMovementState.
- Parameters:
@Nonnull final Refref@Nonnull final MovementStatesmovementStates@Nonnull final Steeringsteering@Nonnull final Vector3dvelocity@Nonnull final ComponentAccessorcomponentAccessor
updateFlyingStates
void
updateFlyingStates
(@Nonnull final MovementStates movementStates, final boolean idle, final boolean fastMotionKind)
Method updateFlyingStates.
- Parameters:
@Nonnull final MovementStatesmovementStatesfinal booleanidlefinal booleanfastMotionKind
updateSwimmingStates
void
updateSwimmingStates
(@Nonnull final MovementStates movementStates, final boolean idle, final boolean fastMotionKind, final boolean horizontalIdleKind)
Method updateSwimmingStates.
- Parameters:
@Nonnull final MovementStatesmovementStatesfinal booleanidlefinal booleanfastMotionKindfinal booleanhorizontalIdleKind
updateMovingStates
void
updateMovingStates
(@Nonnull final Ref ref, @Nonnull final MovementStates movementStates, final boolean fastMotionKind, @Nonnull final ComponentAccessor componentAccessor)
Method updateMovingStates.
- Parameters:
@Nonnull final Refref@Nonnull final MovementStatesmovementStatesfinal booleanfastMotionKind@Nonnull final ComponentAccessorcomponentAccessor
updateAscendingStates
void
updateAscendingStates
(@Nonnull final Ref ref, @Nonnull final MovementStates movementStates, final boolean fastMotionKind, final boolean horizontalIdleKind, @Nonnull final ComponentAccessor componentAccessor)
Method updateAscendingStates.
- Parameters:
@Nonnull final Refref@Nonnull final MovementStatesmovementStatesfinal booleanfastMotionKindfinal booleanhorizontalIdleKind@Nonnull final ComponentAccessorcomponentAccessor
updateDescendingStates
void
updateDescendingStates
(@Nonnull final Ref ref, @Nonnull final MovementStates movementStates, final boolean fastMotionKind, final boolean hovering, @Nonnull final ComponentAccessor componentAccessor)
Method updateDescendingStates.
- Parameters:
@Nonnull final Refref@Nonnull final MovementStatesmovementStatesfinal booleanfastMotionKindfinal booleanhovering@Nonnull final ComponentAccessorcomponentAccessor
updateDroppingStates
Method updateDroppingStates.
- Parameters:
@Nonnull final MovementStatesmovementStates
updateStandingStates
void
updateStandingStates
(@Nonnull final MovementStates movementStates, @Nonnull final MotionKind motionKind, final boolean hovering)
Method updateStandingStates.
- Parameters:
@Nonnull final MovementStatesmovementStates@Nonnull final MotionKindmotionKindfinal booleanhovering
steer
double
steer
(@Nonnull final Ref ref, @Nonnull final Role role, @Nonnull final Steering bodySteering, @Nonnull final Steering headSteering, final double interval, @Nonnull final ComponentAccessor componentAccessor)
Method steer.
- Parameters:
@Nonnull final Refref@Nonnull final Rolerole@Nonnull final SteeringbodySteering@Nonnull final SteeringheadSteeringfinal doubleinterval@Nonnull final ComponentAccessorcomponentAccessor
steer0
double
steer0
(@Nonnull final Ref ref, @Nonnull final Role role, @Nonnull final Steering bodySteering, @Nonnull final Steering headSteering, final double interval, @Nonnull final ComponentAccessor componentAccessor)
Method steer0.
- Parameters:
@Nonnull final Refref@Nonnull final Rolerole@Nonnull final SteeringbodySteering@Nonnull final SteeringheadSteeringfinal doubleinterval@Nonnull final ComponentAccessorcomponentAccessor
IllegalArgumentException
new
IllegalArgumentException
(String.valueOf(this.translation)
Method IllegalArgumentException.
- Parameters:
String.valueOf(this.translationString.valueOf(this.translation
shouldDampenAppliedVelocitiesY
boolean
shouldDampenAppliedVelocitiesY
()
Method shouldDampenAppliedVelocitiesY.
shouldAlwaysUseGroundResistance
boolean
shouldAlwaysUseGroundResistance
()
Method shouldAlwaysUseGroundResistance.
calculateYaw
void
calculateYaw
(@Nonnull final Ref ref, @Nonnull final Steering bodySteering, @Nonnull final Steering headSteering, final float maxHeadRotation, final float maxBodyRotation, @Nonnull final ComponentAccessor componentAccessor)
Method calculateYaw.
- Parameters:
@Nonnull final Refref@Nonnull final SteeringbodySteering@Nonnull final SteeringheadSteeringfinal floatmaxHeadRotationfinal floatmaxBodyRotation@Nonnull final ComponentAccessorcomponentAccessor
if
else
if
(NPCPhysicsMath.dotProduct(this.translation.x, 0.0, this.translation.z)
Method if.
- Parameters:
NPCPhysicsMath.dotProduct(this.translation.xNPCPhysicsMath.dotProduct(this.translation.x0.00.0this.translation.zthis.translation.z
blendBodyYaw
float
blendBodyYaw
(@Nonnull final Ref ref, final float yawOffset, final float maxBodyRotation, @Nonnull final ComponentAccessor componentAccessor)
Method blendBodyYaw.
- Parameters:
@Nonnull final Refreffinal floatyawOffsetfinal floatmaxBodyRotation@Nonnull final ComponentAccessorcomponentAccessor
calculatePitch
void
calculatePitch
(@Nonnull final Ref ref, @Nonnull final Steering bodySteering, @Nonnull final Steering headSteering, final float maxHeadRotation, @Nonnull final ComponentAccessor componentAccessor)
Method calculatePitch.
- Parameters:
@Nonnull final Refref@Nonnull final SteeringbodySteering@Nonnull final SteeringheadSteeringfinal floatmaxHeadRotation@Nonnull final ComponentAccessorcomponentAccessor
calculateRoll
void
calculateRoll
(@Nonnull final Steering bodySteering, @Nonnull final Steering headSteering)
Method calculateRoll.
- Parameters:
@Nonnull final SteeringbodySteering@Nonnull final SteeringheadSteering
dampForceVelocity
void
dampForceVelocity
(@Nonnull final Vector3d forceVelocity, final double forceVelocityDamping, final double interval, final ComponentAccessor componentAccessor)
Method dampForceVelocity.
- Parameters:
@Nonnull final Vector3dforceVelocityfinal doubleforceVelocityDampingfinal doubleintervalfinal ComponentAccessorcomponentAccessor
convertToNewRange
double
convertToNewRange
(final double value, final double oldMinRange, final double oldMaxRange, final double newMinRange, final double newMaxRange)
Method convertToNewRange.
- Parameters:
final doublevaluefinal doubleoldMinRangefinal doubleoldMaxRangefinal doublenewMinRangefinal doublenewMaxRange
probeMove
double
probeMove
(@Nonnull final Ref ref, @Nonnull final Vector3d position, @Nonnull final Vector3d direction, @Nonnull final ProbeMoveData probeMoveData, @Nonnull final ComponentAccessor componentAccessor)
Method probeMove.
- Parameters:
@Nonnull final Refref@Nonnull final Vector3dposition@Nonnull final Vector3ddirection@Nonnull final ProbeMoveDataprobeMoveData@Nonnull final ComponentAccessorcomponentAccessor
postExecuteMove
void
postExecuteMove
()
Method postExecuteMove.
adjustReadPosition
Method adjustReadPosition.
- Parameters:
final Refreffinal ComponentAccessorcomponentAccessor
adjustWritePosition
void
adjustWritePosition
(final Ref ref, final double dt, @Nonnull final ComponentAccessor componentAccessor)
Method adjustWritePosition.
- Parameters:
final Refreffinal doubledt@Nonnull final ComponentAccessorcomponentAccessor
isInProgress
boolean
isInProgress
()
Method isInProgress.
isObstructed
boolean
isObstructed
()
Method isObstructed.
getThrottleDuration
double
getThrottleDuration
()
Method getThrottleDuration.
getTargetDeltaSquared
double
getTargetDeltaSquared
()
Method getTargetDeltaSquared.
isForceRecomputePath
boolean
isForceRecomputePath
()
Method isForceRecomputePath.
setForceRecomputePath
void
setForceRecomputePath
(final boolean recomputePath)
Method setForceRecomputePath.
- Parameters:
final booleanrecomputePath
beforeInstructionSensorsAndActions
void
beforeInstructionSensorsAndActions
(final double physicsTickDuration)
Method beforeInstructionSensorsAndActions.
- Parameters:
final doublephysicsTickDuration
beforeInstructionMotion
void
beforeInstructionMotion
(final double physicsTickDuration)
Method beforeInstructionMotion.
- Parameters:
final doublephysicsTickDuration
isHorizontalIdle
boolean
isHorizontalIdle
(final double speed)
Method isHorizontalIdle.
- Parameters:
final doublespeed
canAct
Method canAct.
- Parameters:
@Nonnull final Refref@Nonnull final ComponentAccessorcomponentAccessor
isMovementBlocked
boolean
isMovementBlocked
(@Nonnull final Ref ref, @Nonnull final ComponentAccessor componentAccessor)
Method isMovementBlocked.
- Parameters:
@Nonnull final Refref@Nonnull final ComponentAccessorcomponentAccessor
bisect
double
bisect
(@Nonnull final Vector3d validPosition, @Nonnull final Vector3d invalidPosition, @Nonnull final T t, @Nonnull final BiPredicate validate, @Nonnull final Vector3d result)
Method bisect.
- Parameters:
@Nonnull final Vector3dvalidPosition@Nonnull final Vector3dinvalidPosition@Nonnull final Tt@Nonnull final BiPredicatevalidate@Nonnull final Vector3dresult
addForce
Method addForce.
- Parameters:
@Nonnull final Vector3dforcefinal VelocityConfigvelocityConfig
AppliedVelocity
new
AppliedVelocity
(new Vector3d(force.x * scale, force.y * scale, force.z * scale)
Method AppliedVelocity.
- Parameters:
force.z *scale
forceVelocity
void
forceVelocity
(@Nonnull final Vector3d velocity, @Nullable final VelocityConfig velocityConfig, final boolean ignoreDamping)
Method forceVelocity.
- Parameters:
@Nonnull final Vector3dvelocity@Nullable final VelocityConfigvelocityConfigfinal booleanignoreDamping
clearForce
void
clearForce
()
Method clearForce.
dumpCollisionResults
void
dumpCollisionResults
()
Method dumpCollisionResults.
setEnableTriggers
void
setEnableTriggers
(final boolean enableTriggers)
Method setEnableTriggers.
- Parameters:
final booleanenableTriggers
setEnableBlockDamage
void
setEnableBlockDamage
(final boolean enableBlockDamage)
Method setEnableBlockDamage.
- Parameters:
final booleanenableBlockDamage
willReceiveBlockDamage
boolean
willReceiveBlockDamage
()
Method willReceiveBlockDamage.
setAvoidingBlockDamage
void
setAvoidingBlockDamage
(final boolean avoid)
Method setAvoidingBlockDamage.
- Parameters:
final booleanavoid
isAvoidingBlockDamage
boolean
isAvoidingBlockDamage
()
Method isAvoidingBlockDamage.
processTriggers
void
processTriggers
(@Nonnull final Ref ref, @Nonnull final CollisionResult collisionResult, final double t, @Nonnull final ComponentAccessor componentAccessor)
Method processTriggers.
- Parameters:
@Nonnull final Refref@Nonnull final CollisionResultcollisionResultfinal doublet@Nonnull final ComponentAccessorcomponentAccessor
Damage
new
Damage
(Damage.NULL_SOURCE, DamageCause.ENVIRONMENT, (float)
Method Damage.
- Parameters:
Damage.NULL_SOURCEDamage.NULL_SOURCEDamageCause.ENVIRONMENTDamageCause.ENVIRONMENT(float(float
isProcessTriggersHasMoved
boolean
isProcessTriggersHasMoved
()
Method isProcessTriggersHasMoved.
isAlive
boolean
isAlive
(@Nonnull final Ref ref, @Nonnull final ComponentAccessor componentAccessor)
Method isAlive.
- Parameters:
@Nonnull final Refref@Nonnull final ComponentAccessorcomponentAccessor
activate
void
activate
()
Method activate.
resetObstructedFlags
void
resetObstructedFlags
()
Method resetObstructedFlags.
deactivate
void
deactivate
()
Method deactivate.
getEpsilonSpeed
double
getEpsilonSpeed
()
Method getEpsilonSpeed.
getEpsilonAngle
float
getEpsilonAngle
()
Method getEpsilonAngle.
getPlanarComponentSelector
Method getPlanarComponentSelector.
setComponentSelector
Method setComponentSelector.
- Parameters:
@Nonnull final Vector3dcomponentSelector
waypointDistance
Method waypointDistance.
- Parameters:
@Nonnull final Vector3dp@Nonnull final Vector3dq
waypointDistanceSquared
Method waypointDistanceSquared.
- Parameters:
@Nonnull final Vector3dp@Nonnull final Vector3dq
isValidPosition
boolean
isValidPosition
(@Nonnull final Vector3d position, @Nonnull final ComponentAccessor componentAccessor)
Method isValidPosition.
- Parameters:
@Nonnull final Vector3dposition@Nonnull final ComponentAccessorcomponentAccessor
getInvalidOverlapMaterials
int
getInvalidOverlapMaterials
()
Method getInvalidOverlapMaterials.
saveMotionKind
void
saveMotionKind
()
Method saveMotionKind.
getGravity
double
getGravity
()
Method getGravity.
setGravity
void
setGravity
(final double gravity)
Method setGravity.
- Parameters:
final doublegravity
translateToAccessiblePosition
boolean
translateToAccessiblePosition
(final Vector3d position, final Box boundingBox, final double minYValue, final double maxYValue, final ComponentAccessor componentAccessor)
Method translateToAccessiblePosition.
- Parameters:
final Vector3dpositionfinal BoxboundingBoxfinal doubleminYValuefinal doublemaxYValuefinal ComponentAccessorcomponentAccessor
standingOnBlockOfType
boolean
standingOnBlockOfType
(final int blockSet)
Method standingOnBlockOfType.
- Parameters:
final intblockSet
requirePreciseMovement
Method requirePreciseMovement.
- Parameters:
@Nullable final Vector3dpositionHint
clearRequirePreciseMovement
void
clearRequirePreciseMovement
()
Method clearRequirePreciseMovement.
isRequiresPreciseMovement
boolean
isRequiresPreciseMovement
()
Method isRequiresPreciseMovement.
requireDepthProbing
void
requireDepthProbing
()
Method requireDepthProbing.
clearRequireDepthProbing
void
clearRequireDepthProbing
()
Method clearRequireDepthProbing.
isRequiresDepthProbing
boolean
isRequiresDepthProbing
()
Method isRequiresDepthProbing.
enableHeadingBlending
void
enableHeadingBlending
(final double heading, @Nullable final Vector3d targetPosition, final double blendLevel)
Method enableHeadingBlending.
- Parameters:
final doubleheading@Nullable final Vector3dtargetPositionfinal doubleblendLevel
clearBlendHeading
void
clearBlendHeading
()
Method clearBlendHeading.
setRelaxedMoveConstraints
void
setRelaxedMoveConstraints
(final boolean relax)
Method setRelaxedMoveConstraints.
- Parameters:
final booleanrelax
isRelaxedMoveConstraints
boolean
isRelaxedMoveConstraints
()
Method isRelaxedMoveConstraints.