using System.Collections.Generic; using MinecraftClient.Inventory.ItemPalettes; using MinecraftClient.Protocol.Handlers.StructuredComponents.Core; namespace MinecraftClient.Protocol.Handlers.StructuredComponents.Components._1_20_6; public class EntityDataComponent(DataTypes dataTypes, ItemPalette itemPalette, SubComponentRegistry subComponentRegistry) : StructuredComponent(dataTypes, itemPalette, subComponentRegistry) { public Dictionary? Nbt { get; set; } public override void Parse(Queue data) { Nbt = DataTypes.ReadNextNbt(data); } public override Queue Serialize() { var data = new List(); data.AddRange(DataTypes.GetNbt(Nbt)); return new Queue(data); } } public class BucketEntityDataComponent(DataTypes dataTypes, ItemPalette itemPalette, SubComponentRegistry subComponentRegistry) : EntityDataComponent(dataTypes, itemPalette, subComponentRegistry) {} public class BlockEntityDataComponent(DataTypes dataTypes, ItemPalette itemPalette, SubComponentRegistry subComponentRegistry) : EntityDataComponent(dataTypes, itemPalette, subComponentRegistry) {}