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();
}
}