Class MotionControllerWalk
java.lang.Object
com.hypixel.hytale.server.npc.movement.controllers.MotionControllerBase
com.hypixel.hytale.server.npc.movement.controllers.MotionControllerWalk
- All Implemented Interfaces:
com.hypixel.hytale.server.npc.movement.controllers.MotionController
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enumNested classes/interfaces inherited from class com.hypixel.hytale.server.npc.movement.controllers.MotionControllerBase
MotionControllerBase.AppliedVelocityNested classes/interfaces inherited from interface com.hypixel.hytale.server.npc.movement.controllers.MotionController
com.hypixel.hytale.server.npc.movement.controllers.MotionController.VerticalRange -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final doubleprotected final MotionControllerWalk.AscentAnimationTypeprotected com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockTypeprotected intprotected final doubleprotected final floatprotected doublestatic final doublestatic final doubleprotected final Vector3dprotected doubleprotected final doubleprotected final doubleprotected final doubleprotected final Vector3dprotected doubleprotected static final intprotected doubleprotected doubleprotected doubleprotected doubleprotected final doubleprotected final doubleprotected final MotionControllerWalk.DescentAnimationTypeprotected final doubleprotected final doublestatic final doubleprotected doubleprotected doubleprotected final intprotected final booleanprotected int[]protected booleanprotected short[]protected final Vector3dprotected byte[]protected doubleprotected final floatprotected final doubleprotected booleanprotected booleanstatic final doubleprotected final doubleprotected doubleprotected final doubleprotected final doubleprotected final Vector3dprotected doubleprotected final doubleprotected final doubleprotected booleanprotected doubleprotected final doubleprotected final doubleprotected final doubleprotected final floatprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doubleprotected final doublestatic final doubleprotected booleanprotected doubleprotected static final EnumSet<MotionKind> protected final Vector2dprotected final Vector3dprotected final Vector3dprotected final Vector3dprotected final CollisionResultprotected doublestatic final Stringprotected static final EnumSet<MotionKind> protected final com.hypixel.hytale.server.npc.movement.controllers.MotionController.VerticalRangeprotected static final intprotected static final intFields inherited from class com.hypixel.hytale.server.npc.movement.controllers.MotionControllerBase
appliedForce, appliedVelocities, BISECT_DIST, bisectInvalidPosition, bisectValidPosition, blendHeading, blendHeadingPosition, blendLevelAtTargetPosition, cachedMovementBlocked, collisionBoundingBox, collisionResult, componentSelector, DEBUG_APPLIED_FORCES, debugModeBlockCollisions, debugModeCollisions, debugModeMove, debugModeOverlaps, debugModeProbeBlockCollisions, debugModeSteer, debugModeValidateMath, debugModeValidatePositions, DEFAULT_BLOCK_DRAG, DOT_PRODUCT_EPSILON, effectHorizontalSpeedMultiplier, enableBlockDamage, enableTriggers, entity, epsilonAngle, epsilonSpeed, fastMotionKind, fastMotionThreshold, fastMotionThresholdRange, FILTER_COEFFICIENT, FORCE_SCALE, forceVelocity, forceVelocityDamping, gravity, haveBlendHeadingPosition, havePreciseMovementTarget, horizontalIdleKind, idleMotionKind, ignoreDamping, inertia, isAvoidingBlockDamage, isBlendingHeading, isObstructed, isReceivingBlockDamage, isRelaxedMoveConstraints, knockbackScale, lastMovementStateUpdatedMotionKind, lastValidPosition, LOGGER, maxHeadRotationSpeed, maxHorizontalSpeed, motionKind, movementSettings, moveSpeed, navState, planarComponentSelector, position, preciseMovementTarget, previousMotionKind, previousSpeed, recomputePath, requiresDepthProbing, requiresPreciseMovement, role, targetDeltaSquared, throttleDuration, translation, type, worldAntiNormal, worldNormal -
Constructor Summary
ConstructorsConstructorDescriptionMotionControllerWalk(BuilderMotionControllerWalk builder, BuilderSupport builderSupport) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidadjustReadPosition(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor) protected voidadjustWritePosition(Ref<EntityStore> ref, double dt, ComponentAccessor<EntityStore> componentAccessor) private doublebisect(Vector3d validPosition, Vector3d invalidPosition, Vector3d result, ComponentAccessor<EntityStore> componentAccessor) booleancanAct(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor) booleanprivate floatcomputeBlendHeading(float heading, float moveHeading, double dt, double speedEstimate, double relativeTurnSpeed) private floatcomputeBlendHeading(float heading, float moveHeading, double dt, double speedEstimate, float turnAngle, double relativeTurnSpeed) private floatcomputeBlendTurnAngle(float heading, float moveHeading) private doublecomputeClimbHeight(Vector3d position, Vector3d direction, double height, double forward, Vector3d targetPosition, Vector2d results, boolean acknowledgeDamage, boolean relaxMoveConstraints, ComponentAccessor<EntityStore> componentAccessor) private doublecomputeClimbMove(Vector3d climbDirection, double climbDistance, double distance, Vector3d translation) private doublecomputeClimbSpeed(double walkSpeed) private voidcomputeDescendDirection(Vector3d translation) protected floatcomputeHeading(float desiredAngle, double relativeTurnSpeed, float heading, double dt, boolean updateFullyRotated, boolean stopIfTurnedTooFar) protected doublecomputeMove(Ref<EntityStore> ref, Role role, Steering steering, double dt, Vector3d translation, ComponentAccessor<EntityStore> componentAccessor) private doublecomputeNewFallSpeed(double dt, double fallSpeed) voidconstrainRotations(Role role, TransformComponent transform) private BlockCollisionDatadiscardIgnorableSlideCollisions(CollisionResult collisionResult, BlockCollisionData startCollision, boolean acknowledgeDamage) private doubledropDistance(Vector3d position, double maxTestDistance, ComponentAccessor<EntityStore> componentAccessor) booleanestimateVelocity(Steering steering, Vector3d velocityOut) protected doubleexecuteMove(Ref<EntityStore> ref, Role role, double dt, Vector3d translation, ComponentAccessor<EntityStore> componentAccessor) private BlockCollisionDatafindDropBlockCollision(Vector3d position, double maxTestDistance, ComponentAccessor<EntityStore> componentAccessor) voidforceVelocity(Vector3d velocity, VelocityConfig velocityConfig, boolean ignoreDamping) doubledoubledoubledoublecom.hypixel.hytale.server.npc.movement.controllers.MotionController.VerticalRangegetDesiredVerticalRange(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor) private BlockCollisionDatagetFirstCollision(CollisionResult collisionResult, boolean acknowledgeDamage) doublefloatdoublefloatgetType()doublebooleaninAir()protected booleaninitiateDescend(Vector3d translation, boolean wasOnGround, String logName, ComponentAccessor<EntityStore> componentAccessor) booleaninWater()booleanis2D()private booleanisClimbable(com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType blockType, Fluid fluid, boolean avoidDamageBlocks) private booleanisDropBlocked(Vector3d position, double maxDropHeight, boolean updatePosition, boolean acknowledgeDamage, boolean relaxedMoveConstraints, ComponentAccessor<EntityStore> componentAccessor) booleanisFastMotionKind(double speed) booleanprivate booleanisValidWalkPosition(Ref<ChunkStore> chunkRef, ComponentAccessor<ChunkStore> chunkStore, double x, double y, double z, boolean acknowledgeDamage, boolean relaxedMoveConstraints) private booleanisValidWalkPosition(ChunkStore chunkStore, double x, double y, double z, boolean acknowledgeDamage, boolean relaxedMoveConstraints) private voidlockOrientation(Steering steering, Vector3d translation, float heading) private doublemaxMoveFactor(Vector3d position, Vector3d velocity, boolean acknowledgeDamage, ComponentAccessor<EntityStore> componentAccessor) booleanonGround()protected voidvoidpostReadPosition(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor) doubleprobeMove(Ref<EntityStore> ref, ProbeMoveData probeMoveData, ComponentAccessor<EntityStore> componentAccessor) voidsetMotionKind(MotionKind motionKind) private doubleshortenMovement(double triggerScale) private doubleshortenMovement(Vector3d start, Vector3d end, Vector3d result) private doubleshortenSlide(Vector3d translation, double endSlide) voidspawned()booleanstandingOnBlockOfType(int blockSet) booleantouchesWater(boolean defaultValue, ComponentAccessor<EntityStore> componentAccessor) inttranslateToAccessiblePosition(Vector3d position, double minYValue, double maxYValue, ComponentAccessor<EntityStore> componentAccessor) booleantranslateToAccessiblePosition(Vector3d position, Box boundingBox, double minYValue, double maxYValue, ComponentAccessor<EntityStore> componentAccessor) private booleantryClimb(Vector3d translation, boolean avoidingBlockDamage, boolean relaxMoveConstraints, ComponentAccessor<EntityStore> componentAccessor) protected voidupdateAscendingStates(Ref<EntityStore> ref, MovementStates movementStates, boolean fastMotionKind, boolean horizontalIdleKind, ComponentAccessor<EntityStore> componentAccessor) protected voidupdateDescendingStates(Ref<EntityStore> ref, MovementStates movementStates, boolean fastMotionKind, boolean hovering, ComponentAccessor<EntityStore> componentAccessor) voidupdateModelParameters(Ref<EntityStore> ref, Model model, Box boundingBox, ComponentAccessor<EntityStore> componentAccessor) protected doubleupdateMovementVector(Vector3d probePosition, Vector3d probeMovement, Vector3d targetPosition, Vector3d directionComponentSelector) private voidvalidateSpeeds(Ref<EntityStore> ref, String kind, ComponentAccessor<EntityStore> componentAccessor) private voidvalidateTranslation(Vector3d translation, String kind) Methods inherited from class com.hypixel.hytale.server.npc.movement.controllers.MotionControllerBase
activate, addForce, beforeInstructionMotion, beforeInstructionSensorsAndActions, bisect, bisect, blendBodyYaw, calculatePitch, calculateRoll, calculateYaw, clearBlendHeading, clearForce, clearRequireDepthProbing, clearRequirePreciseMovement, dampForceVelocity, deactivate, dumpCollisionResults, enableHeadingBlending, enableHeadingBlending, getComponentSelector, getEpsilonAngle, getEpsilonSpeed, getForce, getGravity, getInvalidOverlapMaterials, getMotionKind, getNavState, getPitch, getPlanarComponentSelector, getRole, getRoll, getTargetDeltaSquared, getThrottleDuration, getWorldAntiNormal, getWorldNormal, getYaw, isAlive, isAvoidingBlockDamage, isDebugMode, isForceRecomputePath, isHorizontalIdle, isMovementBlocked, isObstructed, isProcessTriggersHasMoved, isRelaxedMoveConstraints, isRequiresDepthProbing, isRequiresPreciseMovement, isValidPosition, isValidPosition, moveEntity, probeMove, processTriggers, readEntityPosition, requireDepthProbing, requirePreciseMovement, resetNavState, resetObstructedFlags, saveMotionKind, setAvoidingBlockDamage, setComponentSelector, setEnableBlockDamage, setEnableTriggers, setForceRecomputePath, setGravity, setInertia, setKnockbackScale, setNavState, setRelaxedMoveConstraints, setRole, shouldAlwaysUseGroundResistance, shouldDampenAppliedVelocitiesY, steer, steer0, switchedToMotionKind, updateDroppingStates, updateFlyingStates, updateMovementState, updateMovingStates, updatePhysicsValues, updateStandingStates, updateSwimmingStates, waypointDistance, waypointDistance, waypointDistanceSquared, waypointDistanceSquared, willReceiveBlockDamageMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.hypixel.hytale.server.npc.movement.controllers.MotionController
clearOverrides, getSquaredDistance, matchesType
-
Field Details
-
TYPE
- See Also:
-
CLIMB_FORWARD_DISTANCE
public static final double CLIMB_FORWARD_DISTANCE- See Also:
-
CLIMB_FORWARD_DISTANCE_SQUARED
public static final double CLIMB_FORWARD_DISTANCE_SQUARED- See Also:
-
JUMP_FORWARD_DISTANCE
public static final double JUMP_FORWARD_DISTANCE- See Also:
-
ONE_PLUS_THRESHOLD
public static final double ONE_PLUS_THRESHOLD- See Also:
-
DROP_MIN_STOP_DIST
public static final double DROP_MIN_STOP_DIST- See Also:
-
STATE_CAN_HOVER
-
VALID_MOTIONS
-
COLLISION_MATERIALS
protected static final int COLLISION_MATERIALS- See Also:
-
WALKING_MATERIALS
protected static final int WALKING_MATERIALS- See Also:
-
WALKING_MATERIALS_RELAXED
protected static final int WALKING_MATERIALS_RELAXED- See Also:
-
minHorizontalSpeed
protected final double minHorizontalSpeed -
maxVerticalSpeed
protected final double maxVerticalSpeed -
maxVerticalSpeedFluid
protected final double maxVerticalSpeedFluid -
acceleration
protected final double acceleration -
maxRotationSpeed
protected final double maxRotationSpeed -
maxMoveTurnAngle
protected final float maxMoveTurnAngle -
blendRestTurnAngle
protected final float blendRestTurnAngle -
blendRestRelativeSpeed
protected final double blendRestRelativeSpeed -
maxClimbHeight
protected final double maxClimbHeight -
jumpHeight
protected final double jumpHeight -
minJumpHeight
protected final double minJumpHeight -
minJumpDistance
protected final double minJumpDistance -
jumpForce
protected final double jumpForce -
jumpDescentSteepness
protected final double jumpDescentSteepness -
jumpBlending
protected final double jumpBlending -
jumpDescentBlending
protected final double jumpDescentBlending -
climbSpeedMult
protected final double climbSpeedMult -
climbSpeedPow
protected final double climbSpeedPow -
climbSpeedConst
protected final double climbSpeedConst -
maxDropHeight
protected final double maxDropHeight -
minDescentAnimationHeight
protected final double minDescentAnimationHeight -
descendFlatness
protected final double descendFlatness -
descendSpeedCompensation
protected final double descendSpeedCompensation -
descentSteepness
protected final double descentSteepness -
descentBlending
protected final double descentBlending -
descentAnimationType
-
ascentAnimationType
-
maxWalkSpeedAfterHitMultiplier
protected final double maxWalkSpeedAfterHitMultiplier -
fenceBlockSet
protected final int fenceBlockSet -
minHover
protected final double minHover -
maxHover
protected final double maxHover -
hoverFreq
protected final double hoverFreq -
hoverCycle
protected final float hoverCycle -
minHoverClimb
protected final double minHoverClimb -
minHoverDrop
protected final double minHoverDrop -
floatsDown
protected final boolean floatsDown -
onGround
protected boolean onGround -
inWater
protected boolean inWater -
horizontalSpeedMultiplier
protected double horizontalSpeedMultiplier -
fallStartHeight
protected double fallStartHeight -
fallSpeed
protected double fallSpeed -
currentRelativeSpeed
protected double currentRelativeSpeed -
isFullyRotated
protected boolean isFullyRotated -
belowBlockType
@Nullable protected com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType belowBlockType -
belowBlockTypeId
protected int belowBlockTypeId -
footingBlocks
protected int[] footingBlocks -
footingFillers
protected short[] footingFillers -
footingRotations
protected byte[] footingRotations -
footingPosition
-
footingBlocksValid
protected boolean footingBlocksValid -
breathingDepth
protected double breathingDepth -
constraintDepth
protected double constraintDepth -
climbUpDistance
protected double climbUpDistance -
currentJumpHeight
protected double currentJumpHeight -
jumpDropHeight
protected double jumpDropHeight -
jumpBlockHeight
protected double jumpBlockHeight -
predictedFallHeight
protected double predictedFallHeight -
jumpDropDirection
-
climbUpDirection
-
currentClimbForwardDistance
protected double currentClimbForwardDistance -
maxClimbForwardDistance
protected double maxClimbForwardDistance -
totalDropDistance
protected double totalDropDistance -
climbForwardDirection
-
climbSpeed
protected double climbSpeed -
jumping
protected boolean jumping -
verticalRange
protected final com.hypixel.hytale.server.npc.movement.controllers.MotionController.VerticalRange verticalRange -
tmpClimbPosition
-
tmpClimbMovement
-
tmpMovePosition
-
tmpResults
-
tmpClimbHeightResults
-
-
Constructor Details
-
MotionControllerWalk
public MotionControllerWalk(@Nonnull BuilderMotionControllerWalk builder, @Nonnull BuilderSupport builderSupport)
-
-
Method Details
-
getType
-
spawned
public void spawned() -
getWanderVerticalMovementRatio
public double getWanderVerticalMovementRatio() -
getDesiredVerticalRange
@Nonnull public com.hypixel.hytale.server.npc.movement.controllers.MotionController.VerticalRange getDesiredVerticalRange(@Nonnull Ref<EntityStore> ref, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
adjustReadPosition
protected void adjustReadPosition(Ref<EntityStore> ref, ComponentAccessor<EntityStore> componentAccessor) - Overrides:
adjustReadPositionin classMotionControllerBase
-
adjustWritePosition
protected void adjustWritePosition(Ref<EntityStore> ref, double dt, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Overrides:
adjustWritePositionin classMotionControllerBase
-
updateAscendingStates
protected void updateAscendingStates(@Nonnull Ref<EntityStore> ref, @Nonnull MovementStates movementStates, boolean fastMotionKind, boolean horizontalIdleKind, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Overrides:
updateAscendingStatesin classMotionControllerBase
-
updateDescendingStates
protected void updateDescendingStates(@Nonnull Ref<EntityStore> ref, @Nonnull MovementStates movementStates, boolean fastMotionKind, boolean hovering, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Overrides:
updateDescendingStatesin classMotionControllerBase
-
isFastMotionKind
public boolean isFastMotionKind(double speed) - Specified by:
isFastMotionKindin classMotionControllerBase
-
isInProgress
public boolean isInProgress()- Specified by:
isInProgressin interfacecom.hypixel.hytale.server.npc.movement.controllers.MotionController- Overrides:
isInProgressin classMotionControllerBase
-
canAct
public boolean canAct(@Nonnull Ref<EntityStore> ref, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Specified by:
canActin interfacecom.hypixel.hytale.server.npc.movement.controllers.MotionController- Overrides:
canActin classMotionControllerBase
-
updateModelParameters
public void updateModelParameters(Ref<EntityStore> ref, Model model, @Nonnull Box boundingBox, ComponentAccessor<EntityStore> componentAccessor) - Specified by:
updateModelParametersin interfacecom.hypixel.hytale.server.npc.movement.controllers.MotionController- Overrides:
updateModelParametersin classMotionControllerBase
-
constrainRotations
-
forceVelocity
public void forceVelocity(@Nonnull Vector3d velocity, VelocityConfig velocityConfig, boolean ignoreDamping) - Specified by:
forceVelocityin interfacecom.hypixel.hytale.server.npc.movement.controllers.MotionController- Overrides:
forceVelocityin classMotionControllerBase
-
inAir
public boolean inAir() -
onGround
public boolean onGround() -
standingOnBlockOfType
public boolean standingOnBlockOfType(int blockSet) - Specified by:
standingOnBlockOfTypein interfacecom.hypixel.hytale.server.npc.movement.controllers.MotionController- Overrides:
standingOnBlockOfTypein classMotionControllerBase
-
inWater
public boolean inWater() -
touchesWater
public boolean touchesWater(boolean defaultValue, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Overrides:
touchesWaterin classMotionControllerBase
-
getCurrentSpeed
public double getCurrentSpeed() -
getCurrentTurnRadius
public double getCurrentTurnRadius() -
getMaxClimbAngle
public float getMaxClimbAngle() -
getMaxSinkAngle
public float getMaxSinkAngle() -
getMaximumSpeed
public double getMaximumSpeed() -
is2D
public boolean is2D() -
canRestAtPlace
public boolean canRestAtPlace() -
getDesiredAltitudeWeight
public double getDesiredAltitudeWeight() -
getHeightOverGround
public double getHeightOverGround() -
estimateVelocity
-
setMotionKind
- Overrides:
setMotionKindin classMotionControllerBase
-
postReadPosition
public void postReadPosition(@Nonnull Ref<EntityStore> ref, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Overrides:
postReadPositionin classMotionControllerBase
-
translateToAccessiblePosition
public boolean translateToAccessiblePosition(@Nonnull Vector3d position, @Nullable Box boundingBox, double minYValue, double maxYValue, ComponentAccessor<EntityStore> componentAccessor) - Specified by:
translateToAccessiblePositionin interfacecom.hypixel.hytale.server.npc.movement.controllers.MotionController- Overrides:
translateToAccessiblePositionin classMotionControllerBase
-
translateToAccessiblePosition
public int translateToAccessiblePosition(@Nonnull Vector3d position, double minYValue, double maxYValue, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
computeMove
protected double computeMove(@Nonnull Ref<EntityStore> ref, @Nonnull Role role, @Nonnull Steering steering, double dt, @Nonnull Vector3d translation, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Specified by:
computeMovein classMotionControllerBase
-
computeNewFallSpeed
private double computeNewFallSpeed(double dt, double fallSpeed) -
executeMove
protected double executeMove(@Nonnull Ref<EntityStore> ref, @Nonnull Role role, double dt, @Nonnull Vector3d translation, @Nonnull ComponentAccessor<EntityStore> componentAccessor) - Specified by:
executeMovein classMotionControllerBase
-
probeMove
public double probeMove(@Nonnull Ref<EntityStore> ref, @Nonnull ProbeMoveData probeMoveData, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
postExecuteMove
protected void postExecuteMove()- Overrides:
postExecuteMovein classMotionControllerBase
-
getCurrentMaxBodyRotationSpeed
public double getCurrentMaxBodyRotationSpeed() -
computeHeading
protected float computeHeading(float desiredAngle, double relativeTurnSpeed, float heading, double dt, boolean updateFullyRotated, boolean stopIfTurnedTooFar) -
initiateDescend
protected boolean initiateDescend(@Nonnull Vector3d translation, boolean wasOnGround, String logName, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
updateMovementVector
-
discardIgnorableSlideCollisions
@Nullable private BlockCollisionData discardIgnorableSlideCollisions(@Nonnull CollisionResult collisionResult, @Nullable BlockCollisionData startCollision, boolean acknowledgeDamage) -
getFirstCollision
@Nullable private BlockCollisionData getFirstCollision(@Nonnull CollisionResult collisionResult, boolean acknowledgeDamage) -
bisect
private double bisect(@Nonnull Vector3d validPosition, @Nonnull Vector3d invalidPosition, @Nonnull Vector3d result, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
shortenSlide
-
shortenMovement
-
shortenMovement
private double shortenMovement(double triggerScale) -
validateTranslation
-
validateSpeeds
private void validateSpeeds(@Nonnull Ref<EntityStore> ref, @Nonnull String kind, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
lockOrientation
-
computeBlendHeading
private float computeBlendHeading(float heading, float moveHeading, double dt, double speedEstimate, double relativeTurnSpeed) -
computeBlendHeading
private float computeBlendHeading(float heading, float moveHeading, double dt, double speedEstimate, float turnAngle, double relativeTurnSpeed) -
computeBlendTurnAngle
private float computeBlendTurnAngle(float heading, float moveHeading) -
computeClimbMove
-
computeDescendDirection
-
computeClimbSpeed
private double computeClimbSpeed(double walkSpeed) -
tryClimb
private boolean tryClimb(@Nonnull Vector3d translation, boolean avoidingBlockDamage, boolean relaxMoveConstraints, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
computeClimbHeight
private double computeClimbHeight(@Nonnull Vector3d position, @Nonnull Vector3d direction, double height, double forward, @Nullable Vector3d targetPosition, @Nonnull Vector2d results, boolean acknowledgeDamage, boolean relaxMoveConstraints, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
isDropBlocked
private boolean isDropBlocked(@Nonnull Vector3d position, double maxDropHeight, boolean updatePosition, boolean acknowledgeDamage, boolean relaxedMoveConstraints, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
dropDistance
private double dropDistance(@Nonnull Vector3d position, double maxTestDistance, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
findDropBlockCollision
@Nullable private BlockCollisionData findDropBlockCollision(@Nonnull Vector3d position, double maxTestDistance, @Nonnull ComponentAccessor<EntityStore> componentAccessor) -
isClimbable
private boolean isClimbable(@Nonnull com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType blockType, @Nonnull Fluid fluid, boolean avoidDamageBlocks) -
isValidWalkPosition
private boolean isValidWalkPosition(@Nonnull Ref<ChunkStore> chunkRef, @Nonnull ComponentAccessor<ChunkStore> chunkStore, double x, double y, double z, boolean acknowledgeDamage, boolean relaxedMoveConstraints) -
isValidWalkPosition
private boolean isValidWalkPosition(@Nonnull ChunkStore chunkStore, double x, double y, double z, boolean acknowledgeDamage, boolean relaxedMoveConstraints) -
maxMoveFactor
private double maxMoveFactor(@Nonnull Vector3d position, @Nonnull Vector3d velocity, boolean acknowledgeDamage, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
-