Entries class
Пакет: com.hypixel.hytale.builtin.hytalegenerator.assets.framework
Файл: com/hypixel/hytale/builtin/hytalegenerator/assets/framework/PositionsFrameworkAsset.java
extends: HashMap<String, PositionProviderAsset>
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
PositionsFrameworkAsset.Entries |
var2 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public static PositionsFrameworkAsset.Entries |
getpublic static PositionsFrameworkAsset.Entries get(@Nonnull ReferenceBundle var0) |
|
public static PositionProviderAsset |
getpublic static PositionProviderAsset get(@Nonnull String var0, @Nonnull ReferenceBundle var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.hytalegenerator.assets.framework;
class="kw">import com.hypixel.hytale.assetstore.AssetExtraInfo;
class="kw">import com.hypixel.hytale.assetstore.codec.AssetBuilderCodec;
class="kw">import com.hypixel.hytale.assetstore.map.DefaultAssetMap;
class="kw">import com.hypixel.hytale.assetstore.map.JsonAssetWithMap;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.positionproviders.ListPositionProviderAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.positionproviders.PositionProviderAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.assets.worldstructures.WorldStructureAsset;
class="kw">import com.hypixel.hytale.builtin.hytalegenerator.referencebundle.ReferenceBundle;
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.codecs.array.ArrayCodec;
class="kw">import java.util.HashMap;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class PositionsFrameworkAsset class="kw">extends FrameworkAsset {
@Nonnull
class="kw">public class="kw">static class="kw">final String NAME = "Positions";
@Nonnull
class="kw">public class="kw">static class="kw">final Class<PositionsFrameworkAsset.Entries> CLASS = PositionsFrameworkAsset.Entries.class;
@Nonnull
class="kw">public class="kw">static class="kw">final BuilderCodec<PositionsFrameworkAsset> CODEC = BuilderCodec.builder(
PositionsFrameworkAsset.class, PositionsFrameworkAsset::new, FrameworkAsset.ABSTRACT_CODEC
)
.append(
new KeyedCodec<>("Entries", new ArrayCodec<>(PositionsFrameworkAsset.EntryAsset.CODEC, PositionsFrameworkAsset.EntryAsset[]::new), true),
(var0, var1) -> var0.entryAssets = var1,
var0 -> var0.entryAssets
)
.add()
.build();
class="kw">private String id;
class="kw">private AssetExtraInfo.Data data;
class="kw">private PositionsFrameworkAsset.EntryAsset[] entryAssets = new PositionsFrameworkAsset.EntryAsset[0];
class="kw">private PositionsFrameworkAsset() {
}
@Override
class="kw">public String getId() {
class="kw">return this.id;
}
@Override
class="kw">public void build(@Nonnull WorldStructureAsset.Argument var1, @Nonnull ReferenceBundle var2) {
PositionsFrameworkAsset.Entries var3 = new PositionsFrameworkAsset.Entries();
for (PositionsFrameworkAsset.EntryAsset var7 : this.entryAssets) {
var3.put(var7.name, var7.positionProviderAsset);
}
var2.put("Positions", var3, CLASS);
}
class="kw">public class="kw">static class Entries class="kw">extends HashMap<String, PositionProviderAsset> {
class="kw">public Entries() {
}
@Nullable
class="kw">public class="kw">static PositionsFrameworkAsset.Entries get(@Nonnull ReferenceBundle var0) {
class="kw">return var0.get("Positions", PositionsFrameworkAsset.CLASS);
}
@Nullable
class="kw">public class="kw">static PositionProviderAsset get(@Nonnull String var0, @Nonnull ReferenceBundle var1) {
PositionsFrameworkAsset.Entries var2 = get(var1);
class="kw">return var2 == null ? null : var2.get(var0);
}
}
class="kw">public class="kw">static class EntryAsset class="kw">implements JsonAssetWithMap<String, DefaultAssetMap<String, PositionsFrameworkAsset.EntryAsset>> {
@Nonnull
class="kw">public class="kw">static class="kw">final AssetBuilderCodec<String, PositionsFrameworkAsset.EntryAsset> CODEC = AssetBuilderCodec.builder(
PositionsFrameworkAsset.EntryAsset.class,
PositionsFrameworkAsset.EntryAsset::new,
Codec.STRING,
(var0, var1) -> var0.id = var1,
var0 -> var0.id,
(var0, var1) -> var0.data = var1,
var0 -> var0.data
)
.append(new KeyedCodec<>("Name", Codec.STRING, true), (var0, var1) -> var0.name = var1, var0 -> var0.name)
.add()
.append(
new KeyedCodec<>("Positions", PositionProviderAsset.CODEC, true),
(var0, var1) -> var0.positionProviderAsset = var1,
var0 -> var0.positionProviderAsset
)
.add()
.build();
class="kw">private String id;
class="kw">private AssetExtraInfo.Data data;
class="kw">private String name = "";
class="kw">private PositionProviderAsset positionProviderAsset = ListPositionProviderAsset.INSTANCE;
class="kw">public EntryAsset() {
}
class="kw">public String getId() {
class="kw">return this.id;
}
}
}