RegeneratingModifier class
Пакет: com.hypixel.hytale.server.core.modules.entitystats.asset.modifier
Файл: com/hypixel/hytale/server/core/modules/entitystats/asset/modifier/RegeneratingModifier.java
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
BuilderCodec<RegeneratingModifier> |
CODEC |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
float |
getModifierfloat getModifier(ComponentAccessor<EntityStore> var1, Ref<EntityStore> var2, Instant var3) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.entitystats.asset.modifier;
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.codecs.array.ArrayCodec;
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.entity.condition.Condition;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.time.Instant;
class="kw">import java.util.Arrays;
class="kw">import javax.annotation.Nonnull;
class="kw">public class RegeneratingModifier {
class="kw">public class="kw">static class="kw">final BuilderCodec<RegeneratingModifier> CODEC = BuilderCodec.builder(RegeneratingModifier.class, RegeneratingModifier::new)
.append(
new KeyedCodec<>("Conditions", new ArrayCodec<>(Condition.CODEC, Condition[]::new)), (var0, var1) -> var0.conditions = var1, var0 -> var0.conditions
)
.add()
.append(new KeyedCodec<>("Amount", Codec.FLOAT), (var0, var1) -> var0.amount = var1, var0 -> var0.amount)
.add()
.build();
class="kw">protected Condition[] conditions;
class="kw">protected float amount;
class="kw">protected RegeneratingModifier() {
}
class="kw">public RegeneratingModifier(Condition[] var1, float var2) {
this.conditions = var1;
this.amount = var2;
}
class="kw">public float getModifier(ComponentAccessor<EntityStore> var1, Ref<EntityStore> var2, Instant var3) {
class="kw">return Condition.allConditionsMet(var1, var2, var3, this.conditions) ? this.amount : 1.0F;
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "RegeneratingModifier{conditions=" + Arrays.toString(this.conditions) + ", amount=" + this.amount + "}";
}
}