BuilderBodyMotionWanderInCircle class

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

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

extends: BuilderBodyMotionWanderBase

Поля (1)

МодификаторыТипИмя
final DoubleHolder radius

Методы (4)

МодификаторыВозвратСигнатура
abstract return new BodyMotionWanderInCirclereturn new BodyMotionWanderInCircle(this, var1)
public double getRadiusdouble getRadius(@Nonnull BuilderSupport var1)
public boolean isFlockboolean isFlock()
public boolean isUseSphereboolean isUseSphere()

Исходный код

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

class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderDescriptorState;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderSupport;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.holder.DoubleHolder;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.validators.DoubleSingleValidator;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.movement.BodyMotionWanderInCircle;
class="kw">import javax.annotation.Nonnull;

class="kw">public class BuilderBodyMotionWanderInCircle class="kw">extends BuilderBodyMotionWanderBase {
   class="kw">protected class="kw">final DoubleHolder radius = new DoubleHolder();
   class="kw">protected boolean flock;
   class="kw">protected boolean useSphere;

   class="kw">public BuilderBodyMotionWanderInCircle() {
   }

   @Nonnull
   class="kw">public BodyMotionWanderInCircle build(@Nonnull BuilderSupport var1) {
      super.build(var1);
      class="kw">return new BodyMotionWanderInCircle(this, var1);
   }

   @Nonnull
   @Override
   class="kw">public String getShortDescription() {
      class="kw">return "Random movement in circle around spawn position";
   }

   @Nonnull
   @Override
   class="kw">public String getLongDescription() {
      class="kw">return "Random movement in short linear pieces inside circle around spawn position.";
   }

   @Nonnull
   @Override
   class="kw">public BuilderDescriptorState getBuilderDescriptorState() {
      class="kw">return BuilderDescriptorState.Stable;
   }

   @Nonnull
   class="kw">public BuilderBodyMotionWanderInCircle readConfig(@Nonnull JsonElement var1) {
      this.getDouble(var1, "Radius", this.radius, 10.0, DoubleSingleValidator.greater0(), BuilderDescriptorState.Stable, "Radius of circle to wander in", null);
      this.getBoolean(var1, "Flock", var1x -> this.flock = var1x, false, BuilderDescriptorState.Experimental, "Do not use", null);
      this.getBoolean(
         var1, "UseSphere", var1x -> this.useSphere = var1x, false, BuilderDescriptorState.Stable, "Use sphere", "Use a sphere instead of circle cylinder"
      );
      class="kw">return this;
   }

   class="kw">public double getRadius(@Nonnull BuilderSupport var1) {
      class="kw">return this.radius.get(var1.getExecutionContext());
   }

   class="kw">public boolean isFlock() {
      class="kw">return this.flock;
   }

   class="kw">public boolean isUseSphere() {
      class="kw">return this.useSphere;
   }
}