package org.bukkit.craftbukkit.structure; import java.util.ArrayList; import java.util.List; import net.minecraft.world.level.levelgen.structure.templatesystem.DefinedStructure; import org.bukkit.block.BlockState; import org.bukkit.craftbukkit.block.CraftBlockStates; import org.bukkit.structure.Palette; public class CraftPalette implements Palette { private final DefinedStructure.a palette; public CraftPalette(DefinedStructure.a palette) { this.palette = palette; } @Override public List getBlocks() { List blocks = new ArrayList<>(); for (DefinedStructure.BlockInfo blockInfo : palette.blocks()) { blocks.add(CraftBlockStates.getBlockState(blockInfo.pos, blockInfo.state, blockInfo.nbt)); } return blocks; } @Override public int getBlockCount() { return palette.blocks().size(); } }