classpublicPriority 3
RangeThicknessAsset
com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.spaceanddepth.layerassets.RangeThicknessAsset
extends LayerAsset
2
Methods
2
Public Methods
3
Fields
1
Constructors
Constants
BuilderCodec<RangeThicknessAsset>CODEC= BuilderCodec.builder(
RangeThicknessAsset.class, RangeThicknessAsset::new, LayerAsset.AB...
Constructors
public
RangeThicknessAsset()Methods
Public Methods (2)
public
SpaceAndDepthMaterialProvider.Layer<Material> build(MaterialProviderAsset.Argument argument)@Nonnull@Override
public
void cleanUp()@Override
Fields
Private/Package Fields (3)
private
int rangeMaxprivate
int rangeMinprivate
String seedInheritance
Parent
Current
Interface
Child
Use mouse wheel to zoom, drag to pan. Click nodes to navigate.
Related Classes
Source Code
package com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.spaceanddepth.layerassets;
import com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.ConstantMaterialProviderAsset;
import com.hypixel.hytale.builtin.hytalegenerator.assets.materialproviders.MaterialProviderAsset;
import com.hypixel.hytale.builtin.hytalegenerator.material.Material;
import com.hypixel.hytale.builtin.hytalegenerator.materialproviders.MaterialProvider;
import com.hypixel.hytale.builtin.hytalegenerator.materialproviders.spaceanddepth.SpaceAndDepthMaterialProvider;
import com.hypixel.hytale.builtin.hytalegenerator.materialproviders.spaceanddepth.layers.RangedThicknessLayer;
import com.hypixel.hytale.codec.Codec;
import com.hypixel.hytale.codec.KeyedCodec;
import com.hypixel.hytale.codec.builder.BuilderCodec;
import javax.annotation.Nonnull;
public class RangeThicknessAsset extends LayerAsset {
public static final BuilderCodec<RangeThicknessAsset> CODEC = BuilderCodec.builder(
RangeThicknessAsset.class, RangeThicknessAsset::new, LayerAsset.ABSTRACT_CODEC
)
.append(new KeyedCodec<>("RangeMin", Codec.INTEGER, true), (t, k) -> t.rangeMin = k, k -> k.rangeMin)
.add()
.append(new KeyedCodec<>("RangeMax", Codec.INTEGER, true), (t, k) -> t.rangeMax = k, k -> k.rangeMax)
.add()
.append(new KeyedCodec<>("Material", MaterialProviderAsset.CODEC, true), (t, k) -> t.materialProviderAsset = k, k -> k.materialProviderAsset)
.add()
.append(new KeyedCodec<>("Seed", Codec.STRING, true), (t, k) -> t.seed = k, k -> k.seed)
.add()
.afterDecode(asset -> asset.rangeMax = Math.max(asset.rangeMin, asset.rangeMax))
.build();
private MaterialProviderAsset materialProviderAsset = new ConstantMaterialProviderAsset();
private String seed = "";
private int rangeMin = 0;
private int rangeMax = 0;
public RangeThicknessAsset() {
}
@Nonnull
@Override
public SpaceAndDepthMaterialProvider.Layer<Material> build(@Nonnull MaterialProviderAsset.Argument argument) {
MaterialProvider<Material> materialProvider = this.materialProviderAsset.build(argument);
return new RangedThicknessLayer<>(this.rangeMin, this.rangeMax, argument.parentSeed.child(this.seed), materialProvider);
}
@Override
public void cleanUp() {
this.materialProviderAsset.cleanUp();
}
}