classpublicPriority 3
UnionPositionProviderAsset
com.hypixel.hytale.builtin.hytalegenerator.assets.positionproviders.UnionPositionProviderAsset
extends PositionProviderAsset
2
Methods
2
Public Methods
1
Fields
1
Constructors
Constants
BuilderCodec<UnionPositionProviderAsset>CODEC= BuilderCodec.builder(
UnionPositionProviderAsset.class, UnionPositionProviderAsset::new,...
Constructors
public
UnionPositionProviderAsset()Methods
Public Methods (2)
public
PositionProvider build(PositionProviderAsset.Argument argument)@Nonnull@Override
public
void cleanUp()@Override
Fields
Private/Package Fields (1)
private
PositionProviderAsset[] positionProviderAssetsInheritance
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.positionproviders;
import com.hypixel.hytale.builtin.hytalegenerator.positionproviders.PositionProvider;
import com.hypixel.hytale.builtin.hytalegenerator.positionproviders.UnionPositionProvider;
import com.hypixel.hytale.codec.KeyedCodec;
import com.hypixel.hytale.codec.builder.BuilderCodec;
import com.hypixel.hytale.codec.codecs.array.ArrayCodec;
import java.util.ArrayList;
import javax.annotation.Nonnull;
public class UnionPositionProviderAsset extends PositionProviderAsset {
public static final BuilderCodec<UnionPositionProviderAsset> CODEC = BuilderCodec.builder(
UnionPositionProviderAsset.class, UnionPositionProviderAsset::new, PositionProviderAsset.ABSTRACT_CODEC
)
.append(
new KeyedCodec<>("Positions", new ArrayCodec<>(PositionProviderAsset.CODEC, PositionProviderAsset[]::new), true),
(asset, v) -> asset.positionProviderAssets = v,
asset -> asset.positionProviderAssets
)
.add()
.build();
private PositionProviderAsset[] positionProviderAssets = new PositionProviderAsset[0];
public UnionPositionProviderAsset() {
}
@Nonnull
@Override
public PositionProvider build(@Nonnull PositionProviderAsset.Argument argument) {
if (super.skip()) {
return PositionProvider.noPositionProvider();
} else {
ArrayList<PositionProvider> list = new ArrayList<>();
for (PositionProviderAsset asset : this.positionProviderAssets) {
PositionProvider positionProvider = asset.build(argument);
list.add(positionProvider);
}
return new UnionPositionProvider(list);
}
}
@Override
public void cleanUp() {
for (PositionProviderAsset positionProviderAsset : this.positionProviderAssets) {
positionProviderAsset.cleanUp();
}
}
}