ClampConfig class

Пакет: com.hypixel.hytale.builtin.adventure.camera.asset

Файл: com/hypixel/hytale/builtin/adventure/camera/asset/NoiseConfig.java

implements: NetworkSerializable<com.hypixel.hytale.protocol.ClampConfig>

Поля (6)

МодификаторыТипИмя
public static final BuilderCodec<NoiseConfig.ClampConfig> CODEC
public static final NoiseConfig.ClampConfig NONE
protected float max
protected float min
protected boolean normalize
float var2

Методы (2)

МодификаторыВозвратСигнатура
public com.hypixel.hytale.protocol.ClampConfig toPacketpublic com.hypixel.hytale.protocol.ClampConfig toPacket()
public String toStringpublic String toString()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.camera.asset;

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.codecs.array.ArrayCodec;
class="kw">import com.hypixel.hytale.codec.schema.metadata.ui.UIDefaultCollapsedState;
class="kw">import com.hypixel.hytale.codec.validation.Validators;
class="kw">import com.hypixel.hytale.protocol.NoiseType;
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 NoiseConfig class="kw">implements NetworkSerializable<com.hypixel.hytale.protocol.NoiseConfig> {
   @Nonnull
   class="kw">public class="kw">static class="kw">final Codec<NoiseType> NOISE_TYPE_CODEC = new EnumCodec<>(NoiseType.class);
   @Nonnull
   class="kw">public class="kw">static class="kw">final BuilderCodec<NoiseConfig> CODEC = BuilderCodec.builder(NoiseConfig.class, NoiseConfig::new)
      .appendInherited(new KeyedCodec<>("Seed", Codec.INTEGER), (var0, var1) -> var0.seed = var1, var0 -> var0.seed, (var0, var1) -> var0.seed = var1.seed)
      .documentation("The value used to seed the noise source")
      .add()
      .<NoiseType>appendInherited(
         new KeyedCodec<>("Type", NOISE_TYPE_CODEC), (var0, var1) -> var0.type = var1, var0 -> var0.type, (var0, var1) -> var0.type = var1.type
      )
      .documentation("The type of noise used to move the camera")
      .addValidator(Validators.nonNull())
      .add()
      .<Float>appendInherited(
         new KeyedCodec<>("Frequency", Codec.FLOAT),
         (var0, var1) -> var0.frequency = var1,
         var0 -> var0.frequency,
         (var0, var1) -> var0.frequency = var1.frequency
      )
      .documentation("The frequency at which the noise source is sampled")
      .add()
      .<Float>appendInherited(
         new KeyedCodec<>("Amplitude", Codec.FLOAT),
         (var0, var1) -> var0.amplitude = var1,
         var0 -> var0.amplitude,
         (var0, var1) -> var0.amplitude = var1.amplitude
      )
      .documentation("The maximum extent of the noise source output")
      .add()
      .<NoiseConfig.ClampConfig>appendInherited(
         new KeyedCodec<>("Clamp", NoiseConfig.ClampConfig.CODEC),
         (var0, var1) -> var0.clamp = var1,
         var0 -> var0.clamp,
         (var0, var1) -> var0.clamp = var1.clamp
      )
      .documentation("Restricts the range of values that the noise source can output")
      .metadata(UIDefaultCollapsedState.UNCOLLAPSED)
      .add()
      .build();
   @Nonnull
   class="kw">public class="kw">static class="kw">final ArrayCodec<NoiseConfig> ARRAY_CODEC = ArrayCodec.ofBuilderCodec(CODEC, NoiseConfig[]::new);
   @Nonnull
   class="kw">public class="kw">static class="kw">final com.hypixel.hytale.protocol.NoiseConfig[] NOISE_CONFIGS = new com.hypixel.hytale.protocol.NoiseConfig[0];
   class="kw">protected int seed;
   @Nonnull
   class="kw">protected NoiseType type = NoiseType.Sin;
   @Nonnull
   class="kw">protected NoiseConfig.ClampConfig clamp = NoiseConfig.ClampConfig.NONE;
   class="kw">protected float frequency;
   class="kw">protected float amplitude;

   class="kw">public NoiseConfig() {
   }

   @Nonnull
   class="kw">public com.hypixel.hytale.protocol.NoiseConfig toPacket() {
      class="kw">return new com.hypixel.hytale.protocol.NoiseConfig(this.seed, this.type, this.frequency, this.amplitude, this.clamp.toPacket());
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "NoiseConfig{seed="
         + this.seed
         + ", type="
         + this.type
         + ", clamp="
         + this.clamp
         + ", frequency="
         + this.frequency
         + ", amplitude="
         + this.amplitude
         + "}";
   }

   @Nonnull
   class="kw">public class="kw">static com.hypixel.hytale.protocol.NoiseConfig[] toPacket(@Nullable NoiseConfig[] var0) {
      if (var0 != null && var0.length != 0) {
         com.hypixel.hytale.protocol.NoiseConfig[] var1 = new com.hypixel.hytale.protocol.NoiseConfig[var0.length];

         for (int var2 = 0; var2 < var0.length; var2++) {
            NoiseConfig var3 = var0[var2];
            if (var3 != null) {
               var1[var2] = var3.toPacket();
            }
         }

         class="kw">return var1;
      } else {
         class="kw">return NOISE_CONFIGS;
      }
   }

   class="kw">public class="kw">static class ClampConfig class="kw">implements NetworkSerializable<com.hypixel.hytale.protocol.ClampConfig> {
      @Nonnull
      class="kw">public class="kw">static class="kw">final BuilderCodec<NoiseConfig.ClampConfig> CODEC = BuilderCodec.builder(NoiseConfig.ClampConfig.class, NoiseConfig.ClampConfig::new)
         .appendInherited(new KeyedCodec<>("Min", Codec.FLOAT), (var0, var1) -> var0.min = var1, var0 -> var0.min, (var0, var1) -> var0.min = var1.min)
         .documentation("The inclusive minimum value of the clamp range")
         .addValidator(Validators.range(-1.0F, 1.0F))
         .add()
         .<Float>appendInherited(new KeyedCodec<>("Max", Codec.FLOAT), (var0, var1) -> var0.max = var1, var0 -> var0.max, (var0, var1) -> var0.max = var1.max)
         .documentation("The inclusive maximum value of the clamp range")
         .addValidator(Validators.range(-1.0F, 1.0F))
         .add()
         .<Boolean>appendInherited(
            new KeyedCodec<>("Normalize", Codec.BOOLEAN),
            (var0, var1) -> var0.normalize = var1,
            var0 -> var0.normalize,
            (var0, var1) -> var0.normalize = var1.normalize
         )
         .documentation("Rescales the clamped output value back to the range -1 to 1")
         .add()
         .afterDecode(var0 -> {
            float var1 = Math.min(var0.min, var0.max);
            float var2 = Math.max(var0.min, var0.max);
            var0.min = var1;
            var0.max = var2;
         })
         .build();
      @Nonnull
      class="kw">public class="kw">static class="kw">final NoiseConfig.ClampConfig NONE = new NoiseConfig.ClampConfig();
      class="kw">protected float min = -1.0F;
      class="kw">protected float max = 1.0F;
      class="kw">protected boolean normalize = true;

      class="kw">public ClampConfig() {
      }

      @Nonnull
      class="kw">public com.hypixel.hytale.protocol.ClampConfig toPacket() {
         class="kw">return new com.hypixel.hytale.protocol.ClampConfig(this.min, this.max, this.normalize);
      }

      @Nonnull
      @Override
      class="kw">public String toString() {
         class="kw">return "ClampConfig{min=" + this.min + ", max=" + this.max + ", normalize=" + this.normalize + "}";
      }
   }
}