BodyMotionLeave class

Пакет: com.hypixel.hytale.server.npc.corecomponents.movement

Файл: com/hypixel/hytale/server/npc/corecomponents/movement/BodyMotionLeave.java

extends: BodyMotionFindBase<AStarBase>

Поля (2)

МодификаторыТипИмя
final double distanceSquared
double var3

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.corecomponents.movement;

class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderSupport;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.movement.builders.BuilderBodyMotionLeave;
class="kw">import com.hypixel.hytale.server.npc.movement.controllers.MotionController;
class="kw">import com.hypixel.hytale.server.npc.navigation.AStarBase;
class="kw">import com.hypixel.hytale.server.npc.navigation.AStarNode;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;

class="kw">public class BodyMotionLeave class="kw">extends BodyMotionFindBase<AStarBase> {
   class="kw">protected class="kw">final double distanceSquared;

   class="kw">public BodyMotionLeave(@Nonnull BuilderBodyMotionLeave var1, @Nonnull BuilderSupport var2) {
      super(var1, var2, new AStarBase());
      double var3 = var1.getDistance(var2);
      this.distanceSquared = var3 * var3;
   }

   @Override
   class="kw">public boolean isGoalReached(Ref<EntityStore> var1, @Nonnull MotionController var2, Vector3d var3, ComponentAccessor<EntityStore> var4) {
      class="kw">return var2.waypointDistanceSquared(this.aStar.getStartPosition(), var3) >= this.distanceSquared;
   }

   @Override
   class="kw">public boolean isGoalReached(
      Ref<EntityStore> var1, @Nonnull AStarBase var2, @Nonnull AStarNode var3, @Nonnull MotionController var4, ComponentAccessor<EntityStore> var5
   ) {
      class="kw">return var4.waypointDistanceSquared(var2.getStartPosition(), var3.getPosition()) >= this.distanceSquared;
   }

   @Override
   class="kw">public float estimateToGoal(AStarBase var1, Vector3d var2, MotionController var3) {
      class="kw">return 0.0F;
   }

   @Override
   class="kw">public void findBestPath(@Nonnull AStarBase var1, MotionController var2) {
      var1.buildFurthestPath();
   }
}