RandomEdgeSelectorAsset class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.assets.graph.edgeselectors
Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/graph/edgeselectors/RandomEdgeSelectorAsset.java
extends: EdgeSelectorAsset
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.assets.graph.edgeselectors;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.graph.GraphGeneratorAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.graph.edgeselectors.AllEdgeSelector;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.graph.edgeselectors.EdgeSelector;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.graph.edgeselectors.RandomEdgeSelector;
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 com.hypixel.hytale.codec.validation.Validators;
class="kw">import javax.annotation.Nonnull;
class="kw">public class RandomEdgeSelectorAsset class="kw">extends EdgeSelectorAsset {
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<RandomEdgeSelectorAsset> CODEC = BuilderCodec.builder(
RandomEdgeSelectorAsset.class, RandomEdgeSelectorAsset::new, EdgeSelectorAsset.ABSTRACT_CODEC
)
.append(new KeyedCodec<>("Chance", Codec.DOUBLE, true), (var0, var1) -> var0.chance = var1, var0 -> var0.chance)
.addValidator(Validators.greaterThanOrEqual(0.0))
.add()
.append(new KeyedCodec<>("Seed", Codec.STRING, true), (var0, var1) -> var0.seed = var1, var0 -> var0.seed)
.add()
.build();
class="kw">private double chance = 0.0;
@Nonnull
class="kw">private String seed = "";
class="kw">public RandomEdgeSelectorAsset() {
}
@Nonnull
@Override
class="kw">public EdgeSelector build(@Nonnull GraphGeneratorAsset.Argument var1) {
class="kw">return super.skip() ? AllEdgeSelector.INSTANCE : new RandomEdgeSelector(this.chance, var1.parentSeed.child(this.seed).createSupplier().get());
}
}