classpublicPriority 3
QueueMaterialProvider
com.hypixel.hytale.builtin.hytalegenerator.materialproviders.QueueMaterialProvider
extends MaterialProvider
1
Methods
1
Public Methods
1
Fields
1
Constructors
Constructors
public
QueueMaterialProvider(List<MaterialProvider<V>> queue)Methods
Public Methods (1)
public
V getVoxelTypeAt(MaterialProvider.Context context)@Nullable@Override
Fields
Private/Package Fields (1)
private
MaterialProvider<V>[] queueInheritance
Parent
Current
Interface
Child
Use mouse wheel to zoom, drag to pan. Click nodes to navigate.
Source Code
package com.hypixel.hytale.builtin.hytalegenerator.materialproviders;
import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
public class QueueMaterialProvider<V> extends MaterialProvider<V> {
@Nonnull
private final MaterialProvider<V>[] queue;
public QueueMaterialProvider(@Nonnull List<MaterialProvider<V>> queue) {
this.queue = new MaterialProvider[queue.size()];
for (int i = 0; i < queue.size(); i++) {
MaterialProvider<V> l = queue.get(i);
if (l == null) {
throw new IllegalArgumentException("null element in layers");
}
this.queue[i] = l;
}
}
@Nullable
@Override
public V getVoxelTypeAt(@Nonnull MaterialProvider.Context context) {
for (MaterialProvider<V> layer : this.queue) {
V material = layer.getVoxelTypeAt(context);
if (material != null) {
return material;
}
}
return null;
}
}