Class PathFollower

java.lang.Object
com.hypixel.hytale.server.npc.navigation.PathFollower

public class PathFollower extends Object
  • Field Details

    • currentWaypoint

      @Nullable protected IWaypoint currentWaypoint
    • currentWaypointDistanceSquared

      protected double currentWaypointDistanceSquared
    • frozenWaypoint

      protected PathFollower.FrozenWaypoint frozenWaypoint
    • isWaypointFrozen

      protected boolean isWaypointFrozen
    • lastWaypointPosition

      protected final Vector3d lastWaypointPosition
    • direction

      protected final Vector3d direction
    • tempVector

      protected final Vector3d tempVector
    • tempPath

      protected final Vector3d tempPath
    • projection

      protected final Vector3d projection
    • rejection

      protected final Vector3d rejection
    • pathSmoothing

      protected int pathSmoothing
    • blendHeading

      protected double blendHeading
    • relativeSpeed

      protected double relativeSpeed
    • relativeSpeedWaypoint

      protected double relativeSpeedWaypoint
    • waypointRadius

      protected double waypointRadius
    • rejectionWeight

      protected double rejectionWeight
    • waypointRadiusSquared

      protected double waypointRadiusSquared
    • debugNodes

      protected boolean debugNodes
    • shouldSmoothPath

      protected boolean shouldSmoothPath
  • Constructor Details

    • PathFollower

      public PathFollower()
  • Method Details

    • setPathSmoothing

      public void setPathSmoothing(int pathSmoothing)
    • getRelativeSpeed

      public double getRelativeSpeed()
    • setRelativeSpeed

      public void setRelativeSpeed(double relativeSpeed)
    • setRelativeSpeedWaypoint

      public void setRelativeSpeedWaypoint(double relativeSpeedWaypoint)
    • setWaypointRadius

      public void setWaypointRadius(double waypointRadius)
    • setDebugNodes

      public void setDebugNodes(boolean debugNodes)
    • shouldSmoothPath

      public boolean shouldSmoothPath()
    • setRejectionWeight

      public void setRejectionWeight(double rejectionWeight)
    • setBlendHeading

      public void setBlendHeading(double blendHeading)
    • getCurrentWaypoint

      @Nullable public IWaypoint getCurrentWaypoint()
    • getCurrentWaypointPosition

      @Nullable public Vector3d getCurrentWaypointPosition()
    • getNextWaypoint

      @Nullable public IWaypoint getNextWaypoint()
    • getNextWaypointPosition

      @Nullable public Vector3d getNextWaypointPosition()
    • setPath

      public void setPath(IWaypoint firstWaypoint, @Nonnull Vector3d startPosition)
    • clearPath

      public void clearPath()
    • pathInFinalStage

      public boolean pathInFinalStage()
    • freezeWaypoint

      public boolean freezeWaypoint()
    • isWaypointFrozen

      public boolean isWaypointFrozen()
    • setWaypointFrozen

      public void setWaypointFrozen(boolean waypointFrozen)
    • executePath

      public void executePath(@Nonnull Vector3d currentPosition, @Nonnull com.hypixel.hytale.server.npc.movement.controllers.MotionController activeMotionController, @Nonnull Steering desiredSteering)
    • computeRejection

      public void computeRejection(@Nonnull Vector3d currentPosition, @Nonnull Vector3d target, @Nonnull com.hypixel.hytale.server.npc.movement.controllers.MotionController activeMotionController)
    • updateCurrentTarget

      public boolean updateCurrentTarget(@Nonnull Vector3d entityPosition, @Nonnull com.hypixel.hytale.server.npc.movement.controllers.MotionController motionController)
    • smoothPath

      public void smoothPath(@Nonnull Ref<EntityStore> ref, @Nonnull Vector3d position, @Nonnull com.hypixel.hytale.server.npc.movement.controllers.MotionController motionController, @Nonnull ProbeMoveData probeMoveData, @Nonnull ComponentAccessor<EntityStore> componentAccessor)
    • canMoveTo

      protected boolean canMoveTo(@Nonnull Ref<EntityStore> ref, @Nonnull com.hypixel.hytale.server.npc.movement.controllers.MotionController motionController, @Nonnull Vector3d position, @Nonnull Vector3d targetPosition, @Nonnull ProbeMoveData probeMoveData, @Nonnull ComponentAccessor<EntityStore> componentAccessor)