BuilderActionBase class
Пакет: com.hypixel.hytale.server.npc.corecomponents.builders
Файл: com/hypixel/hytale/server/npc/corecomponents/builders/BuilderActionBase.java
extends: BuilderBase<Action>
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
protected |
boolean |
once |
|
PositionSource[] |
var3 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
boolean |
isOnceboolean isOnce() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.corecomponents.builders;
class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.Builder;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderBase;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderDescriptorState;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.Feature;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.holder.BooleanHolder;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.PositionSource;
class="kw">import com.hypixel.hytale.server.npc.instructions.Action;
class="kw">import com.hypixel.hytale.server.npc.util.expression.ExecutionContext;
class="kw">import javax.annotation.Nonnull;
class="kw">public class="kw">abstract class BuilderActionBase class="kw">extends BuilderBase<Action> {
class="kw">protected boolean once;
class="kw">protected class="kw">final BooleanHolder enabled = new BooleanHolder();
class="kw">public BuilderActionBase() {
}
@Override
class="kw">public boolean canRequireFeature() {
class="kw">return true;
}
@Nonnull
@Override
class="kw">public Builder<Action> readCommonConfig(@Nonnull JsonElement var1) {
super.readCommonConfig(var1);
this.getBoolean(var1, "Once", var1x -> this.once = var1x, false, BuilderDescriptorState.Stable, "Execute only once", null);
this.getBoolean(var1, "Enabled", this.enabled, true, BuilderDescriptorState.Stable, "Whether this action should be enabled on the NPC", null);
class="kw">return this;
}
@Nonnull
@Override
class="kw">public class="kw">final Class<Action> category() {
class="kw">return Action.class;
}
@Override
class="kw">public class="kw">final boolean isEnabled(ExecutionContext var1) {
class="kw">return this.enabled.get(var1);
}
class="kw">public boolean isOnce() {
class="kw">return this.once;
}
@Nonnull
class="kw">protected PositionSource readPositionSource(@Nonnull JsonElement var1, @Nonnull String var2) {
PositionSource[] var3 = new PositionSource[]{PositionSource.Self};
this.getEnum(var1, "PositionSource", var1x -> var3[0] = var1x, PositionSource.class, PositionSource.Self, BuilderDescriptorState.Stable, var2, null);
this.requireFeatureIf("PositionSource", PositionSource.Sensor, var3[0], Feature.AnyPosition);
class="kw">return var3[0];
}
}