
com.github.sanctum.labyrinth.gui.unity.impl.FillerElement Maven / Gradle / Ivy
The newest version!
package com.github.sanctum.labyrinth.gui.unity.impl;
import com.github.sanctum.labyrinth.gui.unity.construct.Menu;
import java.util.HashSet;
import java.util.Set;
import java.util.function.Consumer;
import java.util.stream.Collectors;
public class FillerElement extends Menu.Element>> {
private T t;
private final InventoryElement element;
public FillerElement(InventoryElement element) {
this.element = element;
this.t = null;
}
public FillerElement setData(R t) {
this.t = (T) t;
return (FillerElement) this;
}
public FillerElement add(Consumer> edit) {
for (int i : getElement().getParent().getSize().getSlots(Menu.Panel.MIDDLE)) {
ItemElement e = new ItemElement<>(t).setType(ItemElement.ControlType.ITEM_FILLER).setParent(element).setSlot(i);
edit.accept(e);
addElement(e);
}
return this;
}
@Override
public InventoryElement getElement() {
return this.element;
}
@Override
public Set> getAttachment() {
return this.getElements().stream().filter(e -> e instanceof ItemElement).map(element1 -> (ItemElement>)element1).collect(Collectors.toSet());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy