ApplicationEffects class
Пакет: com.hypixel.hytale.server.core.asset.type.entityeffect.config
Файл: com/hypixel/hytale/server/core/asset/type/entityeffect/config/ApplicationEffects.java
implements: NetworkSerializable<com.hypixel.hytale.protocol.ApplicationEffects>
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
com.hypixel.hytale.protocol.ApplicationEffects |
var1 |
|
IndexedLookupTableAssetMap |
var1 |
Методы (11)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(int var2 = 0; var2 < this.particles.length; var2++) |
|
|
for for(int var3 = 0; var3 < this.firstPersonParticles.length; var3++) |
public |
float |
getHorizontalSpeedMultiplierfloat getHorizontalSpeedMultiplier() |
public |
float |
getKnockbackMultiplierfloat getKnockbackMultiplier() |
|
|
if if(this.particles != null && this.particles.length > 0) |
|
|
if if(this.firstPersonParticles != null && this.firstPersonParticles.length > 0) |
|
|
if if(this.movementEffects != null) |
|
|
if if(this.abilityEffects != null) |
|
|
if if(this.soundEventIdLocal != null) |
|
|
if if(this.soundEventIdWorld != null) |
protected |
void |
processConfigvoid processConfig() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.asset.type.entityeffect.config;
class="kw">import com.hypixel.hytale.assetstore.map.IndexedLookupTableAssetMap;
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.protocol.Color;
class="kw">import com.hypixel.hytale.server.core.asset.common.CommonAssetValidator;
class="kw">import com.hypixel.hytale.server.core.asset.modifiers.MovementEffects;
class="kw">import com.hypixel.hytale.server.core.asset.type.model.config.ModelParticle;
class="kw">import com.hypixel.hytale.server.core.asset.type.modelvfx.config.ModelVFX;
class="kw">import com.hypixel.hytale.server.core.asset.type.soundevent.config.SoundEvent;
class="kw">import com.hypixel.hytale.server.core.asset.type.soundevent.validator.SoundEventValidators;
class="kw">import com.hypixel.hytale.server.core.codec.ProtocolCodecs;
class="kw">import com.hypixel.hytale.server.core.io.NetworkSerializable;
class="kw">import java.util.Arrays;
class="kw">import javax.annotation.Nonnull;
class="kw">public class ApplicationEffects class="kw">implements NetworkSerializable<com.hypixel.hytale.protocol.ApplicationEffects> {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<ApplicationEffects> CODEC = BuilderCodec.builder(ApplicationEffects.class, ApplicationEffects::new)
.appendInherited(
new KeyedCodec<>("EntityBottomTint", ProtocolCodecs.COLOR),
(var0, var1) -> var0.entityBottomTint = var1,
var0 -> var0.entityBottomTint,
(var0, var1) -> var0.entityBottomTint = var1.entityBottomTint
)
.add()
.appendInherited(
new KeyedCodec<>("EntityTopTint", ProtocolCodecs.COLOR),
(var0, var1) -> var0.entityTopTint = var1,
var0 -> var0.entityTopTint,
(var0, var1) -> var0.entityTopTint = var1.entityTopTint
)
.add()
.appendInherited(
new KeyedCodec<>("EntityAnimationId", Codec.STRING),
(var0, var1) -> var0.entityAnimationId = var1,
var0 -> var0.entityAnimationId,
(var0, var1) -> var0.entityAnimationId = var1.entityAnimationId
)
.add()
.appendInherited(
new KeyedCodec<>("Particles", ModelParticle.ARRAY_CODEC),
(var0, var1) -> var0.particles = var1,
var0 -> var0.particles,
(var0, var1) -> var0.particles = var1.particles
)
.add()
.appendInherited(
new KeyedCodec<>("FirstPersonParticles", ModelParticle.ARRAY_CODEC),
(var0, var1) -> var0.firstPersonParticles = var1,
var0 -> var0.firstPersonParticles,
(var0, var1) -> var0.firstPersonParticles = var1.firstPersonParticles
)
.add()
.<String>appendInherited(
new KeyedCodec<>("ScreenEffect", Codec.STRING),
(var0, var1) -> var0.screenEffect = var1,
var0 -> var0.screenEffect,
(var0, var1) -> var0.screenEffect = var1.screenEffect
)
.addValidator(CommonAssetValidator.UI_SCREEN_EFFECT)
.add()
.<Double>appendInherited(
new KeyedCodec<>("HorizontalSpeedMultiplier", Codec.DOUBLE),
(var0, var1) -> var0.horizontalSpeedMultiplier = var1.floatValue(),
var0 -> (double)var0.horizontalSpeedMultiplier,
(var0, var1) -> var0.horizontalSpeedMultiplier = var1.horizontalSpeedMultiplier
)
.addValidator(Validators.greaterThanOrEqual(0.0))
.add()
.<Double>appendInherited(
new KeyedCodec<>("KnockbackMultiplier", Codec.DOUBLE),
(var0, var1) -> var0.knockbackMultiplier = var1.floatValue(),
var0 -> (double)var0.knockbackMultiplier,
(var0, var1) -> var0.knockbackMultiplier = var1.knockbackMultiplier
)
.addValidator(Validators.greaterThanOrEqual(0.0))
.add()
.<String>appendInherited(
new KeyedCodec<>("LocalSoundEventId", Codec.STRING),
(var0, var1) -> var0.soundEventIdLocal = var1,
var0 -> var0.soundEventIdLocal,
(var0, var1) -> var0.soundEventIdLocal = var1.soundEventIdLocal
)
.documentation("Local sound event played to the affected player")
.addValidator(SoundEvent.VALIDATOR_CACHE.getValidator())
.add()
.<String>appendInherited(
new KeyedCodec<>("WorldSoundEventId", Codec.STRING),
(var0, var1) -> var0.soundEventIdWorld = var1,
var0 -> var0.soundEventIdWorld,
(var0, var1) -> var0.soundEventIdWorld = var1.soundEventIdWorld
)
.documentation("World sound event played to surrounding players")
.addValidator(SoundEvent.VALIDATOR_CACHE.getValidator())
.addValidator(SoundEventValidators.MONO)
.add()
.afterDecode(ApplicationEffects::processConfig)
.<String>appendInherited(
new KeyedCodec<>("ModelVFXId", Codec.STRING),
(var0, var1) -> var0.modelVFXId = var1,
var0 -> var0.modelVFXId,
(var0, var1) -> var0.modelVFXId = var1.modelVFXId
)
.addValidator(ModelVFX.VALIDATOR_CACHE.getValidator())
.add()
.appendInherited(
new KeyedCodec<>("MovementEffects", MovementEffects.CODEC),
(var0, var1) -> var0.movementEffects = var1,
var0 -> var0.movementEffects,
(var0, var1) -> var0.movementEffects = var1.movementEffects
)
.add()
.<AbilityEffects>appendInherited(
new KeyedCodec<>("AbilityEffects", AbilityEffects.CODEC),
(var0, var1) -> var0.abilityEffects = var1,
var0 -> var0.abilityEffects,
(var0, var1) -> var0.abilityEffects = var1.abilityEffects
)
.documentation("Handles any effects applied that are affiliated with abilities")
.add()
.<Float>appendInherited(
new KeyedCodec<>("MouseSensitivityAdjustmentTarget", Codec.FLOAT),
(var0, var1) -> var0.mouseSensitivityAdjustmentTarget = var1,
var0 -> var0.mouseSensitivityAdjustmentTarget,
(var0, var1) -> var0.mouseSensitivityAdjustmentTarget = var1.mouseSensitivityAdjustmentTarget
)
.documentation("What is the target modifier to apply to mouse sensitivity while this interaction is active.")
.addValidator(Validators.range(0.0F, 1.0F))
.add()
.<Float>appendInherited(
new KeyedCodec<>("MouseSensitivityAdjustmentDuration", Codec.FLOAT),
(var0, var1) -> var0.mouseSensitivityAdjustmentDuration = var1,
var0 -> var0.mouseSensitivityAdjustmentDuration,
(var0, var1) -> var0.mouseSensitivityAdjustmentDuration = var1.mouseSensitivityAdjustmentDuration
)
.documentation("Override the global linear modifier adjustment with this as the time to go from 1.0 to 0.0.")
.add()
.build();
class="kw">protected Color entityBottomTint;
class="kw">protected Color entityTopTint;
class="kw">protected String entityAnimationId;
class="kw">protected ModelParticle[] particles;
class="kw">protected ModelParticle[] firstPersonParticles;
class="kw">protected String screenEffect;
class="kw">protected float horizontalSpeedMultiplier = 1.0F;
class="kw">protected float knockbackMultiplier = 1.0F;
class="kw">protected String soundEventIdLocal;
class="kw">protected class="kw">transient int soundEventIndexLocal = 0;
class="kw">protected String soundEventIdWorld;
class="kw">protected class="kw">transient int soundEventIndexWorld = 0;
class="kw">protected String modelVFXId;
class="kw">protected MovementEffects movementEffects;
class="kw">protected AbilityEffects abilityEffects;
class="kw">private float mouseSensitivityAdjustmentTarget;
class="kw">private float mouseSensitivityAdjustmentDuration;
class="kw">protected ApplicationEffects() {
}
@Nonnull
class="kw">public com.hypixel.hytale.protocol.ApplicationEffects toPacket() {
com.hypixel.hytale.protocol.ApplicationEffects var1 = new com.hypixel.hytale.protocol.ApplicationEffects();
var1.entityBottomTint = this.entityBottomTint;
var1.entityTopTint = this.entityTopTint;
var1.entityAnimationId = this.entityAnimationId;
if (this.particles != null && this.particles.length > 0) {
var1.particles = new com.hypixel.hytale.protocol.ModelParticle[this.particles.length];
for (int var2 = 0; var2 < this.particles.length; var2++) {
var1.particles[var2] = this.particles[var2].toPacket();
}
}
if (this.firstPersonParticles != null && this.firstPersonParticles.length > 0) {
var1.firstPersonParticles = new com.hypixel.hytale.protocol.ModelParticle[this.firstPersonParticles.length];
for (int var3 = 0; var3 < this.firstPersonParticles.length; var3++) {
var1.firstPersonParticles[var3] = this.firstPersonParticles[var3].toPacket();
}
}
var1.screenEffect = this.screenEffect;
var1.horizontalSpeedMultiplier = this.horizontalSpeedMultiplier;
var1.soundEventIndexLocal = this.soundEventIndexLocal != 0 ? this.soundEventIndexLocal : this.soundEventIndexWorld;
var1.soundEventIndexWorld = this.soundEventIndexWorld;
var1.modelVFXId = this.modelVFXId;
if (this.movementEffects != null) {
var1.movementEffects = this.movementEffects.toPacket();
}
if (this.abilityEffects != null) {
var1.abilityEffects = this.abilityEffects.toPacket();
}
var1.mouseSensitivityAdjustmentDuration = this.mouseSensitivityAdjustmentDuration;
var1.mouseSensitivityAdjustmentTarget = this.mouseSensitivityAdjustmentTarget;
class="kw">return var1;
}
class="kw">public float getHorizontalSpeedMultiplier() {
class="kw">return this.horizontalSpeedMultiplier;
}
class="kw">public float getKnockbackMultiplier() {
class="kw">return this.knockbackMultiplier;
}
class="kw">protected void processConfig() {
IndexedLookupTableAssetMap var1 = SoundEvent.getAssetMap();
if (this.soundEventIdLocal != null) {
this.soundEventIndexLocal = var1.getIndex(this.soundEventIdLocal);
}
if (this.soundEventIdWorld != null) {
this.soundEventIndexWorld = var1.getIndex(this.soundEventIdWorld);
}
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return "ApplicationEffects{entityBottomTint="
+ this.entityBottomTint
+ ", entityTopTint="
+ this.entityTopTint
+ ", entityAnimationId='"
+ this.entityAnimationId
+ "', particles="
+ Arrays.toString(this.particles)
+ ", firstPersonParticles="
+ Arrays.toString(this.firstPersonParticles)
+ ", screenEffect='"
+ this.screenEffect
+ "', horizontalSpeedMultiplier="
+ this.horizontalSpeedMultiplier
+ ", soundEventIndexLocal="
+ this.soundEventIndexLocal
+ ", soundEventIndexWorld="
+ this.soundEventIndexWorld
+ ", movementEffects="
+ this.movementEffects
+ ", abilityEffects="
+ this.abilityEffects
+ "}";
}
}