ResistanceModifier class
Пакет: com.hypixel.hytale.server.core.modules.entity.damage
Файл: com/hypixel/hytale/server/core/modules/entity/damage/ResistanceModifier.java
implements: NetworkSerializable<com.hypixel.hytale.protocol.ResistanceModifier>
Поля (5)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
BuilderCodec<ResistanceModifier> |
CODEC |
|
FLAT, |
PERCENT |
|
com.hypixel.hytale.protocol.ResistanceModifier |
var1 |
|
int |
var1 |
|
ResistanceModifier |
var2 |
Методы (4)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
ResistanceCalculationType ResistanceCalculationType() |
public |
float |
getAmountfloat getAmount() |
public |
ResistanceModifier.ResistanceCalculationType |
getCalculationTypeResistanceModifier.ResistanceCalculationType getCalculationType() |
|
|
if if(this == var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.modules.entity.damage;
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.codec.validation.Validators;
class="kw">import com.hypixel.hytale.server.core.io.NetworkSerializable;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class ResistanceModifier class="kw">implements NetworkSerializable<com.hypixel.hytale.protocol.ResistanceModifier> {
class="kw">public class="kw">static class="kw">final BuilderCodec<ResistanceModifier> CODEC = BuilderCodec.builder(ResistanceModifier.class, ResistanceModifier::new)
.append(
new KeyedCodec<>("CalculationType", new EnumCodec<>(ResistanceModifier.ResistanceCalculationType.class)),
(var0, var1) -> var0.calculationType = var1,
var0 -> var0.calculationType
)
.addValidator(Validators.nonNull())
.documentation("When using 'Percent', the amount represents a percentage reduction. For example, 0.25 equals 25% reduction.")
.add()
.append(new KeyedCodec<>("Amount", Codec.FLOAT), (var0, var1) -> var0.amount = var1, var0 -> var0.amount)
.add()
.build();
class="kw">protected ResistanceModifier.ResistanceCalculationType calculationType;
class="kw">protected float amount;
class="kw">protected ResistanceModifier() {
}
class="kw">public ResistanceModifier(ResistanceModifier.ResistanceCalculationType var1, float var2) {
this.calculationType = var1;
this.amount = var2;
}
class="kw">public ResistanceModifier.ResistanceCalculationType getCalculationType() {
class="kw">return this.calculationType;
}
class="kw">public float getAmount() {
class="kw">return this.amount;
}
@Nonnull
class="kw">public com.hypixel.hytale.protocol.ResistanceModifier toPacket() {
com.hypixel.hytale.protocol.ResistanceModifier var1 = new com.hypixel.hytale.protocol.ResistanceModifier();
var1.calculationType = class="kw">switch (this.calculationType) {
case FLAT -> com.hypixel.hytale.protocol.ResistanceCalculationType.Flat;
case PERCENT -> com.hypixel.hytale.protocol.ResistanceCalculationType.Percent;
};
var1.amount = this.amount;
class="kw">return var1;
}
@Override
class="kw">public boolean equals(@Nullable Object var1) {
if (this == var1) {
class="kw">return true;
} else if (var1 != null && this.getClass() == var1.getClass()) {
ResistanceModifier var2 = (ResistanceModifier)var1;
class="kw">return Float.compare(var2.amount, this.amount) != 0 ? false : this.calculationType == var2.calculationType;
} else {
class="kw">return false;
}
}
@Override
class="kw">public int hashCode() {
int var1 = this.calculationType != null ? this.calculationType.hashCode() : 0;
class="kw">return 31 * var1 + (this.amount != 0.0F ? Float.floatToIntBits(this.amount) : 0);
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "ResistanceModifier{calculationType=" + this.calculationType + ", amount=" + this.amount + "}";
}
class="kw">public enum ResistanceCalculationType {
FLAT,
PERCENT;
ResistanceCalculationType() {
}
}
}