SolidityMaterialProviderAsset class

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

Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/materialproviders/SolidityMaterialProviderAsset.java

extends: MaterialProviderAsset

Исходный код

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

class="kw">import com.hypixel.hytale.builtin.hytalegenerator.material.Material;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.materialproviders.MaterialProvider;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.materialproviders.SolidityMaterialProvider;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import javax.annotation.Nonnull;

class="kw">public class SolidityMaterialProviderAsset class="kw">extends MaterialProviderAsset {
   @Nonnull
   class="kw">public class="kw">static class="kw">final BuilderCodec<SolidityMaterialProviderAsset> CODEC = BuilderCodec.builder(
         SolidityMaterialProviderAsset.class, SolidityMaterialProviderAsset::new, MaterialProviderAsset.ABSTRACT_CODEC
      )
      .append(
         new KeyedCodec<>("Solid", MaterialProviderAsset.CODEC, true), (var0, var1) -> var0.solidMaterialProvider = var1, var0 -> var0.solidMaterialProvider
      )
      .add()
      .append(
         new KeyedCodec<>("Empty", MaterialProviderAsset.CODEC, true), (var0, var1) -> var0.emptyMaterialProvider = var1, var0 -> var0.emptyMaterialProvider
      )
      .add()
      .build();
   class="kw">private MaterialProviderAsset solidMaterialProvider = new ConstantMaterialProviderAsset();
   class="kw">private MaterialProviderAsset emptyMaterialProvider = new ConstantMaterialProviderAsset();

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

   @Nonnull
   @Override
   class="kw">public MaterialProvider<Material> build(@Nonnull MaterialProviderAsset.Argument var1) {
      class="kw">return super.skip()
         ? MaterialProvider.noMaterialProvider()
         : new SolidityMaterialProvider<>(this.solidMaterialProvider.build(var1), this.emptyMaterialProvider.build(var1));
   }

   @Override
   class="kw">public void cleanUp() {
      this.solidMaterialProvider.cleanUp();
      this.emptyMaterialProvider.cleanUp();
   }
}