ConditionalBlockSound class

Пакет: com.hypixel.hytale.server.core.asset.type.blocktype.config

Файл: com/hypixel/hytale/server/core/asset/type/blocktype/config/ConditionalBlockSound.java

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

Поля (2)

МодификаторыТипИмя
final BuilderCodec<ConditionalBlockSound> CODEC
com.hypixel.hytale.protocol.ConditionalBlockSound var1

Методы (5)

МодификаторыВозвратСигнатура
public String getAmbienceFXIdString getAmbienceFXId()
public String getSoundEventIdString getSoundEventId()
if if(this.soundEventId != null)
if if(this.ambienceFXId != null)
protected void processConfigvoid processConfig()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.asset.type.blocktype.config;

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.ambiencefx.config.AmbienceFX;
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.io.NetworkSerializable;
class="kw">import javax.annotation.Nonnull;

class="kw">public class ConditionalBlockSound class="kw">implements NetworkSerializable<com.hypixel.hytale.protocol.ConditionalBlockSound> {
   class="kw">public class="kw">static class="kw">final BuilderCodec<ConditionalBlockSound> CODEC = BuilderCodec.builder(ConditionalBlockSound.class, ConditionalBlockSound::new)
      .append(new KeyedCodec<>("SoundEventId", Codec.STRING), (var0, var1) -> var0.soundEventId = var1, var0 -> var0.soundEventId)
      .addValidator(Validators.nonNull())
      .addValidator(SoundEvent.VALIDATOR_CACHE.getValidator())
      .addValidator(SoundEventValidators.MONO)
      .addValidator(SoundEventValidators.LOOPING)
      .add()
      .<String>append(new KeyedCodec<>("AmbienceFXId", Codec.STRING), (var0, var1) -> var0.ambienceFXId = var1, var0 -> var0.ambienceFXId)
      .addValidator(Validators.nonNull())
      .addValidator(AmbienceFX.VALIDATOR_CACHE.getValidator())
      .add()
      .afterDecode(ConditionalBlockSound::processConfig)
      .build();
   class="kw">protected String soundEventId;
   class="kw">protected class="kw">transient int soundEventIndex;
   class="kw">protected String ambienceFXId;
   class="kw">protected class="kw">transient int ambienceFXIndex;

   class="kw">public ConditionalBlockSound(String var1, String var2) {
      this.soundEventId = var1;
      this.ambienceFXId = var2;
   }

   class="kw">protected ConditionalBlockSound() {
   }

   @Nonnull
   class="kw">public com.hypixel.hytale.protocol.ConditionalBlockSound toPacket() {
      com.hypixel.hytale.protocol.ConditionalBlockSound var1 = new com.hypixel.hytale.protocol.ConditionalBlockSound();
      var1.soundEventIndex = this.soundEventIndex;
      var1.ambienceFXIndex = this.ambienceFXIndex;
      class="kw">return var1;
   }

   class="kw">public String getSoundEventId() {
      class="kw">return this.soundEventId;
   }

   class="kw">public String getAmbienceFXId() {
      class="kw">return this.ambienceFXId;
   }

   class="kw">protected void processConfig() {
      if (this.soundEventId != null) {
         this.soundEventIndex = SoundEvent.getAssetMap().getIndex(this.soundEventId);
      }

      if (this.ambienceFXId != null) {
         this.ambienceFXIndex = AmbienceFX.getAssetMap().getIndex(this.ambienceFXId);
      }
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "ConditionalBlockSound{soundEventId='"
         + this.soundEventId
         + "', soundEventIndex="
         + this.soundEventIndex
         + ", ambienceFXId='"
         + this.ambienceFXId
         + "', ambienceFXIndex="
         + this.ambienceFXIndex
         + "}";
   }
}