Condition class
Пакет: com.hypixel.hytale.server.core.modules.entity.condition
Файл: com/hypixel/hytale/server/core/modules/entity/condition/Condition.java
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
|
|
break |
|
boolean |
var4 |
|
|
var4 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
boolean |
allConditionsMetboolean allConditionsMet(@Nonnull ComponentAccessor<EntityStore> var0, @Nonnull Ref<EntityStore> var1, @Nonnull Instant var2, @Nonnull EntityStatType.Regenerating var3) |
static |
boolean |
allConditionsMetboolean allConditionsMet(@Nonnull ComponentAccessor<EntityStore> var0, @Nonnull Ref<EntityStore> var1, @Nonnull Instant var2, @Nonnull Condition[] var3) |
public |
boolean |
evalboolean eval(@Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Ref<EntityStore> var2, @Nonnull Instant var3) |
abstract abstract |
boolean |
eval0boolean eval0(@Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Ref<EntityStore> var2, @Nonnull Instant var3) |
|
|
for for(Condition var8 : var3) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.entity.condition;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.codec.lookup.CodecMapCodec;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.server.core.modules.entitystats.asset.EntityStatType;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.time.Instant;
class="kw">import javax.annotation.Nonnull;
class="kw">public class="kw">abstract class Condition {
@Nonnull
class="kw">public class="kw">static class="kw">final CodecMapCodec<Condition> CODEC = new CodecMapCodec<>();
@Nonnull
class="kw">protected class="kw">static class="kw">final BuilderCodec<Condition> BASE_CODEC = BuilderCodec.abstractBuilder(Condition.class)
.append(new KeyedCodec<>("Inverse", Codec.BOOLEAN), (var0, var1) -> var0.inverse = var1, var0 -> var0.inverse)
.documentation("Determines whether the condition is inverted.")
.add()
.build();
class="kw">protected boolean inverse;
class="kw">protected Condition() {
this.inverse = false;
}
class="kw">public Condition(boolean var1) {
this.inverse = var1;
}
class="kw">public boolean eval(@Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Ref<EntityStore> var2, @Nonnull Instant var3) {
class="kw">return this.inverse != this.eval0(var1, var2, var3);
}
class="kw">public class="kw">abstract boolean eval0(@Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Ref<EntityStore> var2, @Nonnull Instant var3);
class="kw">public class="kw">static boolean allConditionsMet(
@Nonnull ComponentAccessor<EntityStore> var0, @Nonnull Ref<EntityStore> var1, @Nonnull Instant var2, @Nonnull EntityStatType.Regenerating var3
) {
class="kw">return var3.getConditions() == null ? true : allConditionsMet(var0, var1, var2, var3.getConditions());
}
class="kw">public class="kw">static boolean allConditionsMet(
@Nonnull ComponentAccessor<EntityStore> var0, @Nonnull Ref<EntityStore> var1, @Nonnull Instant var2, @Nonnull Condition[] var3
) {
boolean var4 = true;
for (Condition var8 : var3) {
if (!var8.eval(var0, var1, var2)) {
var4 = false;
break;
}
}
class="kw">return var4;
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "Condition{inverse=" + this.inverse + "}";
}
}