CombatConfig class
Пакет: com.hypixel.hytale.server.core.asset.type.gameplay
Файл: com/hypixel/hytale/server/core/asset/type/gameplay/CombatConfig.java
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
int |
getStaminaBrokenEffectIndexint getStaminaBrokenEffectIndex() |
public |
boolean |
isDisplayCombatTextboolean isDisplayCombatText() |
public |
boolean |
isDisplayHealthBarsboolean isDisplayHealthBars() |
public |
boolean |
isNpcIncomingDamageDisabledboolean isNpcIncomingDamageDisabled() |
public |
boolean |
isPlayerIncomingDamageDisabledboolean isPlayerIncomingDamageDisabled() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.asset.type.gameplay;
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.validation.Validators;
class="kw">import com.hypixel.hytale.server.core.asset.type.entityeffect.config.EntityEffect;
class="kw">import java.time.Duration;
class="kw">import javax.annotation.Nonnull;
class="kw">public class CombatConfig {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<CombatConfig> CODEC = BuilderCodec.builder(CombatConfig.class, CombatConfig::new)
.appendInherited(
new KeyedCodec<>("OutOfCombatDelaySeconds", Codec.DURATION_SECONDS),
(var0, var1) -> var0.outOfCombatDelay = var1,
var0 -> var0.outOfCombatDelay,
(var0, var1) -> var0.outOfCombatDelay = var1.outOfCombatDelay
)
.documentation("Delay before an entity is considered out of combat. Expressed in seconds.")
.addValidator(Validators.greaterThanOrEqual(Duration.ZERO))
.add()
.<String>appendInherited(
new KeyedCodec<>("StaminaBrokenEffectId", Codec.STRING),
(var0, var1) -> var0.staminaBrokenEffectId = var1,
var0 -> var0.staminaBrokenEffectId,
(var0, var1) -> var0.staminaBrokenEffectId = var1.staminaBrokenEffectId
)
.documentation("The id of the EntityEffect to apply upon stamina being depleted due to damage.")
.addValidator(Validators.nonNull())
.addValidator(EntityEffect.VALIDATOR_CACHE.getValidator())
.add()
.<Boolean>appendInherited(
new KeyedCodec<>("DisplayHealthBars", Codec.BOOLEAN),
(var0, var1) -> var0.displayHealthBars = var1,
var0 -> var0.displayHealthBars,
(var0, var1) -> var0.displayHealthBars = var1.displayHealthBars
)
.documentation("Whether to display health bars above entities. Clients can still disable this in their settings.")
.add()
.<Boolean>appendInherited(
new KeyedCodec<>("DisplayCombatText", Codec.BOOLEAN),
(var0, var1) -> var0.displayCombatText = var1,
var0 -> var0.displayCombatText,
(var0, var1) -> var0.displayCombatText = var1.displayCombatText
)
.documentation("Whether to display combat text (damage numbers) on entities. Clients can still disable this in their settings.")
.add()
.afterDecode(var0 -> var0.staminaBrokenEffectIndex = EntityEffect.getAssetMap().getIndex(var0.staminaBrokenEffectId))
.<Boolean>appendInherited(
new KeyedCodec<>("DisableNPCIncomingDamage", Codec.BOOLEAN),
(var0, var1) -> var0.disableNpcIncomingDamage = var1,
var0 -> var0.disableNpcIncomingDamage,
(var0, var1) -> var0.disableNpcIncomingDamage = var1.disableNpcIncomingDamage
)
.documentation("Whether NPCs can take damage.")
.add()
.<Boolean>appendInherited(
new KeyedCodec<>("DisablePlayerIncomingDamage", Codec.BOOLEAN),
(var0, var1) -> var0.disablePlayerIncomingDamage = var1,
var0 -> var0.disablePlayerIncomingDamage,
(var0, var1) -> var0.disablePlayerIncomingDamage = var1.disablePlayerIncomingDamage
)
.documentation("Whether players can take damage.")
.add()
.build();
@Nonnull
class="kw">protected Duration outOfCombatDelay = Duration.ofSeconds(5L);
class="kw">protected String staminaBrokenEffectId = "Stamina_Broken";
class="kw">private int staminaBrokenEffectIndex;
class="kw">protected boolean displayHealthBars = true;
class="kw">protected boolean displayCombatText = true;
class="kw">protected boolean disableNpcIncomingDamage = false;
class="kw">protected boolean disablePlayerIncomingDamage = false;
class="kw">public CombatConfig() {
this.staminaBrokenEffectIndex = EntityEffect.getAssetMap().getIndex(this.staminaBrokenEffectId);
}
@Nonnull
class="kw">public Duration getOutOfCombatDelay() {
class="kw">return this.outOfCombatDelay;
}
class="kw">public int getStaminaBrokenEffectIndex() {
class="kw">return this.staminaBrokenEffectIndex;
}
class="kw">public boolean isDisplayHealthBars() {
class="kw">return this.displayHealthBars;
}
class="kw">public boolean isDisplayCombatText() {
class="kw">return this.displayCombatText;
}
class="kw">public boolean isNpcIncomingDamageDisabled() {
class="kw">return this.disableNpcIncomingDamage;
}
class="kw">public boolean isPlayerIncomingDamageDisabled() {
class="kw">return this.disablePlayerIncomingDamage;
}
}