UnionPropDistributionAsset class

Пакет: com.hypixel.hytale.builtin.hytalegenerator.assets.propdistribution

Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/propdistribution/UnionPropDistributionAsset.java

extends: PropDistributionAsset

Поля (1)

МодификаторыТипИмя
List var2

Методы (3)

МодификаторыВозвратСигнатура
abstract return new UnionPropDistributionreturn new UnionPropDistribution(var2)
for for(PropDistributionAsset var6 : this.propDistributionAssets)
for for(PropDistributionAsset var4 : this.propDistributionAssets)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.assets.propdistribution;

class="kw">import com.hypixel.hytale.builtin.hytalegenerator.propdistributions.EmptyPropDistribution;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.propdistributions.PropDistribution;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.propdistributions.UnionPropDistribution;
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.array.ArrayCodec;
class="kw">import java.util.ArrayList;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;

class="kw">public class UnionPropDistributionAsset class="kw">extends PropDistributionAsset {
   @Nonnull
   class="kw">public class="kw">static class="kw">final BuilderCodec<UnionPropDistributionAsset> CODEC = BuilderCodec.builder(
         UnionPropDistributionAsset.class, UnionPropDistributionAsset::new, PropDistributionAsset.ABSTRACT_CODEC
      )
      .append(
         new KeyedCodec<>("PropDistributions", new ArrayCodec<>(PropDistributionAsset.CODEC, PropDistributionAsset[]::new), true),
         (var0, var1) -> var0.propDistributionAssets = var1,
         var0 -> var0.propDistributionAssets
      )
      .add()
      .build();
   @Nonnull
   class="kw">private PropDistributionAsset[] propDistributionAssets = new PropDistributionAsset[0];

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

   @Nonnull
   @Override
   class="kw">public PropDistribution build(@Nonnull PropDistributionAsset.Argument var1) {
      if (super.isSkipped()) {
         class="kw">return EmptyPropDistribution.INSTANCE;
      }

      List var2 = new ArrayList<>(this.propDistributionAssets.length);

      for (PropDistributionAsset var6 : this.propDistributionAssets) {
         var2.add(var6.build(var1));
      }

      class="kw">return new UnionPropDistribution(var2);
   }

   @Override
   class="kw">public void cleanUp() {
      for (PropDistributionAsset var4 : this.propDistributionAssets) {
         var4.cleanUp();
      }
   }
}