DamageMultiplierRule class
Пакет: com.hypixel.hytale.builtin.triggervolumes.effect.builtin.rules
Файл: com/hypixel/hytale/builtin/triggervolumes/effect/builtin/rules/DamageMultiplierRule.java
extends: TriggerRule
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
RECEIVED,
DEALT, |
BOTH |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
Direction Direction() |
public |
boolean |
affectsboolean affects(@Nullable String var1) |
public |
float |
getMultiplierfloat getMultiplier() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.triggervolumes.effect.builtin.rules;
class="kw">import com.hypixel.hytale.builtin.triggervolumes.effect.TriggerRule;
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.EnumCodec;
class="kw">import com.hypixel.hytale.common.util.ArrayUtil;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class DamageMultiplierRule class="kw">extends TriggerRule {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<DamageMultiplierRule> CODEC = BuilderCodec.builder(DamageMultiplierRule.class, DamageMultiplierRule::new, BASE_CODEC)
.append(
new KeyedCodec<>("Multiplier", Codec.FLOAT, false),
(var0, var1) -> var0.multiplier = var1 != null ? Math.max(0.0F, var1) : 1.0F,
var0 -> var0.multiplier
)
.add()
.append(
new KeyedCodec<>("Direction", new EnumCodec<>(DamageMultiplierRule.Direction.class), false),
(var0, var1) -> var0.direction = var1 != null ? var1 : DamageMultiplierRule.Direction.RECEIVED,
var0 -> var0.direction
)
.add()
.append(
new KeyedCodec<>("EntityFilter", new EnumCodec<>(RuleEntityFilter.class), false),
(var0, var1) -> var0.entityFilter = var1 != null ? var1 : RuleEntityFilter.ALL,
var0 -> var0.entityFilter
)
.add()
.append(
new KeyedCodec<>("Entities", Codec.STRING_ARRAY, false),
(var0, var1) -> var0.entities = var1 != null ? var1 : ArrayUtil.EMPTY_STRING_ARRAY,
var0 -> var0.entities.length == 0 ? null : var0.entities
)
.add()
.build();
class="kw">private float multiplier = 1.0F;
@Nonnull
class="kw">private DamageMultiplierRule.Direction direction = DamageMultiplierRule.Direction.RECEIVED;
@Nonnull
class="kw">private RuleEntityFilter entityFilter = RuleEntityFilter.ALL;
@Nonnull
class="kw">private String[] entities = ArrayUtil.EMPTY_STRING_ARRAY;
class="kw">public DamageMultiplierRule() {
}
class="kw">public float getMultiplier() {
class="kw">return this.multiplier;
}
@Nonnull
class="kw">public DamageMultiplierRule.Direction getDirection() {
class="kw">return this.direction;
}
class="kw">public boolean affects(@Nullable String var1) {
class="kw">return this.entityFilter.appliesTo(var1, this.entities);
}
class="kw">public enum Direction {
RECEIVED,
DEALT,
BOTH;
Direction() {
}
}
}