public static BannerPattern fromNBT(List<CompoundTag> tag) { BannerPattern.Builder builder = BannerPattern.builder(); for (CompoundTag layer : tag) { BannerPattern.LayerTexture type = BannerPattern.LayerTexture.getByCode(layer.getString("Pattern")); DyeColor color = DyeColor.getByDyeData((byte) layer.getInt("Color")); builder.layer(type, color); } return builder.build(); }
public static List<CompoundTag> toNBT(BannerPattern pattern) { List<CompoundTag> patterns = new ArrayList<>(); for (BannerPattern.BannerLayer layer : pattern.getLayers()) { CompoundTag layerTag = new CompoundTag(); layerTag.putString("Pattern", layer.getTexture().getCode()); layerTag.putInt("Color", layer.getColor().getDyeData()); patterns.add(layerTag); } return patterns; }