2021-03-03 01:56:19 +01:00
|
|
|
package de.ellpeck.prettypipes.pipe.modules.modifier;
|
|
|
|
|
|
|
|
import de.ellpeck.prettypipes.misc.ItemFilter;
|
|
|
|
import de.ellpeck.prettypipes.pipe.containers.AbstractPipeContainer;
|
2021-12-02 16:55:04 +01:00
|
|
|
import net.minecraft.core.BlockPos;
|
2021-12-02 12:31:04 +01:00
|
|
|
import net.minecraft.resources.ResourceLocation;
|
2021-12-02 16:55:04 +01:00
|
|
|
import net.minecraft.world.entity.player.Player;
|
|
|
|
import net.minecraft.world.inventory.MenuType;
|
|
|
|
import net.minecraft.world.item.ItemStack;
|
2021-03-03 01:56:19 +01:00
|
|
|
|
|
|
|
import javax.annotation.Nullable;
|
|
|
|
import java.util.HashSet;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.Set;
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
public class FilterModifierModuleContainer extends AbstractPipeContainer<FilterModifierModuleItem> {
|
|
|
|
|
2021-12-02 16:55:04 +01:00
|
|
|
public FilterModifierModuleContainer(@Nullable MenuType<?> type, int id, Player player, BlockPos pos, int moduleIndex) {
|
2021-03-03 01:56:19 +01:00
|
|
|
super(type, id, player, pos, moduleIndex);
|
|
|
|
}
|
|
|
|
|
|
|
|
public List<ResourceLocation> getTags() {
|
|
|
|
Set<ResourceLocation> unsortedTags = new HashSet<>();
|
2021-12-02 17:46:56 +01:00
|
|
|
for (var filter : this.tile.getFilters()) {
|
|
|
|
for (var i = 0; i < filter.getSlots(); i++) {
|
|
|
|
var stack = filter.getStackInSlot(i);
|
2021-03-03 01:56:19 +01:00
|
|
|
unsortedTags.addAll(stack.getItem().getTags());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return unsortedTags.stream().sorted().collect(Collectors.toList());
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
protected void addSlots() {
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|