PropRuntimeAsset class

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

Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/propruntime/PropRuntimeAsset.java

implements: Cleanable, JsonAssetWithMap<String, DefaultAssetMap<String, PropRuntimeAsset>>

Поля (3)

МодификаторыТипИмя
PositionProvider var7
PositionsPropDistribution var8
Assignments var9

Методы (7)

МодификаторыВозвратСигнатура
abstract return new AssignedPropDistributionreturn new AssignedPropDistribution(var8, var9, true)
public Assignments buildAssignments_deprecatedAssignments buildAssignments_deprecated(@Nonnull SeedBox var1, @Nonnull MaterialCache var2, @Nonnull ReferenceBundle var3, @Nonnull WorkerIndexer.Id var4, @Nonnull ThreadBridge var5)
public PositionProvider buildPositionProvider_deprecatedPositionProvider buildPositionProvider_deprecated(@Nonnull SeedBox var1, @Nonnull ReferenceBundle var2, @Nonnull WorkerIndexer.Id var3, @Nonnull ThreadBridge var4)
public String getIdString getId()
public int getRuntimeint getRuntime()
if if(this.propDistributionAsset == NoPropDistributionAsset.INSTANCE)
public boolean isSkipboolean isSkip()

Исходный код

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

class="kw">import com.hypixel.hytale.assetstore.AssetExtraInfo;
class="kw">import com.hypixel.hytale.assetstore.codec.AssetBuilderCodec;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.assetstore.map.JsonAssetWithMap;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.Cleanable;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.ThreadBridge;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.assignments.AssignmentsAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.assignments.ConstantAssignmentsAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.positionproviders.ListPositionProviderAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.positionproviders.PositionProviderAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.propdistribution.NoPropDistributionAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.propdistribution.PropDistributionAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assignments.Assignments;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.material.MaterialCache;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.positionproviders.PositionProvider;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.propdistributions.AssignedPropDistribution;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.propdistributions.PositionsPropDistribution;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.propdistributions.PropDistribution;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.referencebundle.ReferenceBundle;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.rng.SeedBox;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.workerindexer.WorkerIndexer;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import javax.annotation.Nonnull;

class="kw">public class PropRuntimeAsset class="kw">implements Cleanable, JsonAssetWithMap<String, DefaultAssetMap<String, PropRuntimeAsset>> {
   @Nonnull
   class="kw">public class="kw">static class="kw">final AssetBuilderCodec<String, PropRuntimeAsset> CODEC = AssetBuilderCodec.builder(
         PropRuntimeAsset.class,
         PropRuntimeAsset::new,
         Codec.STRING,
         (var0, var1) -> var0.id = var1,
         var0 -> var0.id,
         (var0, var1) -> var0.data = var1,
         var0 -> var0.data
      )
      .append(new KeyedCodec<>("Runtime", Codec.INTEGER, true), (var0, var1) -> var0.runtime = var1, var0 -> var0.runtime)
      .add()
      .append(
         new KeyedCodec<>("Positions", PositionProviderAsset.CODEC, true),
         (var0, var1) -> var0.positionProviderAsset = var1,
         var0 -> var0.positionProviderAsset
      )
      .add()
      .append(new KeyedCodec<>("Assignments", AssignmentsAsset.CODEC, true), (var0, var1) -> var0.assignmentsAsset = var1, var0 -> var0.assignmentsAsset)
      .add()
      .append(
         new KeyedCodec<>("PropDistribution", PropDistributionAsset.CODEC, true),
         (var0, var1) -> var0.propDistributionAsset = var1,
         var0 -> var0.propDistributionAsset
      )
      .add()
      .append(new KeyedCodec<>("Skip", Codec.BOOLEAN, false), (var0, var1) -> var0.skip = var1, var0 -> var0.skip)
      .add()
      .build();
   class="kw">private String id;
   class="kw">private AssetExtraInfo.Data data;
   class="kw">private boolean skip = false;
   class="kw">private int runtime = 0;
   class="kw">private PositionProviderAsset positionProviderAsset = ListPositionProviderAsset.INSTANCE;
   class="kw">private AssignmentsAsset assignmentsAsset = new ConstantAssignmentsAsset();
   class="kw">private PropDistributionAsset propDistributionAsset = NoPropDistributionAsset.INSTANCE;

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

   class="kw">public boolean isSkip() {
      class="kw">return this.skip;
   }

   @Override
   class="kw">public void cleanUp() {
      this.positionProviderAsset.cleanUp();
      this.assignmentsAsset.cleanUp();
      this.propDistributionAsset.cleanUp();
   }

   class="kw">public PositionProvider buildPositionProvider_deprecated(
      @Nonnull SeedBox var1, @Nonnull ReferenceBundle var2, @Nonnull WorkerIndexer.Id var3, @Nonnull ThreadBridge var4
   ) {
      class="kw">return this.positionProviderAsset.build(new PositionProviderAsset.Argument(var1, var2, var3, var4));
   }

   class="kw">public Assignments buildAssignments_deprecated(
      @Nonnull SeedBox var1, @Nonnull MaterialCache var2, @Nonnull ReferenceBundle var3, @Nonnull WorkerIndexer.Id var4, @Nonnull ThreadBridge var5
   ) {
      class="kw">return this.assignmentsAsset.build(new AssignmentsAsset.Argument(var1, var2, var3, var4, var5));
   }

   @Nonnull
   class="kw">public PropDistribution buildPropDistribution(
      @Nonnull SeedBox var1, @Nonnull MaterialCache var2, int var3, @Nonnull ReferenceBundle var4, @Nonnull WorkerIndexer.Id var5, @Nonnull ThreadBridge var6
   ) {
      if (this.propDistributionAsset == NoPropDistributionAsset.INSTANCE) {
         PositionProvider var7 = this.buildPositionProvider_deprecated(var1, var4, var5, var6);
         PositionsPropDistribution var8 = new PositionsPropDistribution(var7);
         Assignments var9 = this.buildAssignments_deprecated(var1, var2, var4, var5, var6);
         class="kw">return new AssignedPropDistribution(var8, var9, true);
      } else {
         class="kw">return this.propDistributionAsset.build(new PropDistributionAsset.Argument(var1, var2, var4, var5, var6));
      }
   }

   class="kw">public int getRuntime() {
      class="kw">return this.runtime;
   }

   class="kw">public String getId() {
      class="kw">return this.id;
   }
}