RangeThicknessAsset class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.spaceanddepth.layerassets
Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/materialproviders/spaceanddepth/layerassets/RangeThicknessAsset.java
extends: LayerAsset
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
MaterialProvider |
var2 |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.spaceanddepth.layerassets;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.ConstantMaterialProviderAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.MaterialProviderAsset;
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.spaceanddepth.SpaceAndDepthMaterialProvider;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.materialproviders.spaceanddepth.layers.RangedThicknessLayer;
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 javax.annotation.Nonnull;
class="kw">public class RangeThicknessAsset class="kw">extends LayerAsset {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<RangeThicknessAsset> CODEC = BuilderCodec.builder(
RangeThicknessAsset.class, RangeThicknessAsset::new, LayerAsset.ABSTRACT_CODEC
)
.append(new KeyedCodec<>("RangeMin", Codec.INTEGER, true), (var0, var1) -> var0.rangeMin = var1, var0 -> var0.rangeMin)
.add()
.append(new KeyedCodec<>("RangeMax", Codec.INTEGER, true), (var0, var1) -> var0.rangeMax = var1, var0 -> var0.rangeMax)
.add()
.append(
new KeyedCodec<>("Material", MaterialProviderAsset.CODEC, true), (var0, var1) -> var0.materialProviderAsset = var1, var0 -> var0.materialProviderAsset
)
.add()
.append(new KeyedCodec<>("Seed", Codec.STRING, true), (var0, var1) -> var0.seed = var1, var0 -> var0.seed)
.add()
.afterDecode(var0 -> var0.rangeMax = Math.max(var0.rangeMin, var0.rangeMax))
.build();
class="kw">private MaterialProviderAsset materialProviderAsset = new ConstantMaterialProviderAsset();
class="kw">private String seed = "";
class="kw">private int rangeMin;
class="kw">private int rangeMax;
class="kw">public RangeThicknessAsset() {
}
@Nonnull
@Override
class="kw">public SpaceAndDepthMaterialProvider.Layer<Material> build(@Nonnull MaterialProviderAsset.Argument var1) {
MaterialProvider var2 = this.materialProviderAsset.build(var1);
class="kw">return new RangedThicknessLayer<>(this.rangeMin, this.rangeMax, var1.parentSeed.child(this.seed), var2);
}
@Override
class="kw">public void cleanUp() {
this.materialProviderAsset.cleanUp();
}
}