SplitterEdgeActionAsset class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.assets.graph.edgeactions
Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/graph/edgeactions/SplitterEdgeActionAsset.java
extends: EdgeActionAsset
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
SplitterEdgeActionAsset |
INSTANCE |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.assets.graph.edgeactions;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.graph.GraphGeneratorAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.graph.contentsuppliers.ConstantContentSupplierAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.graph.contentsuppliers.ContentSupplierAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.graph.edgeactions.EdgeAction;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.graph.edgeactions.SplitterEdgeAction;
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 SplitterEdgeActionAsset class="kw">extends EdgeActionAsset {
class="kw">public class="kw">static class="kw">final SplitterEdgeActionAsset INSTANCE = new SplitterEdgeActionAsset();
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<SplitterEdgeActionAsset> CODEC = BuilderCodec.builder(
SplitterEdgeActionAsset.class, SplitterEdgeActionAsset::new, EdgeActionAsset.ABSTRACT_CODEC
)
.append(new KeyedCodec<>("NodeCount", Codec.INTEGER, true), (var0, var1) -> var0.nodeCount = var1, var0 -> var0.nodeCount)
.addValidator(Validators.greaterThanOrEqual(0))
.add()
.append(
new KeyedCodec<>("Content", ContentSupplierAsset.CODEC, true), (var0, var1) -> var0.contentSupplierAsset = var1, var0 -> var0.contentSupplierAsset
)
.add()
.build();
class="kw">private int nodeCount = 0;
@Nonnull
class="kw">private ContentSupplierAsset contentSupplierAsset = ConstantContentSupplierAsset.INSTANCE;
class="kw">public SplitterEdgeActionAsset() {
}
@Nonnull
@Override
class="kw">public EdgeAction build(@Nonnull GraphGeneratorAsset.Argument var1) {
assert this.nodeCount >= 0;
class="kw">return new SplitterEdgeAction(this.contentSupplierAsset.build(var1), this.nodeCount);
}
@Override
class="kw">public void cleanUp() {
this.contentSupplierAsset.cleanUp();
}
}