diff --git a/beet/library/data_pack.py b/beet/library/data_pack.py index 4c7ae26d..a0407ea8 100644 --- a/beet/library/data_pack.py +++ b/beet/library/data_pack.py @@ -5,6 +5,7 @@ "DamageType", "ChatType", "BannerPattern", + "WolfVariant", "Function", "ItemModifier", "LootTable", @@ -80,6 +81,13 @@ class BannerPattern(JsonFile): extension: ClassVar[str] = ".json" +class WolfVariant(JsonFile): + """Class representing a wolf variant.""" + + scope: ClassVar[Tuple[str, ...]] = ("wolf_variant",) + extension: ClassVar[str] = ".json" + + @dataclass(eq=False, repr=False) class Function(TextFileBase[List[str]]): """Class representing a function.""" @@ -316,6 +324,7 @@ class DataPackNamespace(Namespace): chat_type: NamespacePin[ChatType] = NamespacePin(ChatType) damage_type: NamespacePin[DamageType] = NamespacePin(DamageType) banner_patterns: NamespacePin[BannerPattern] = NamespacePin(BannerPattern) + wolf_variants: NamespacePin[WolfVariant] = NamespacePin(WolfVariant) block_tags: NamespacePin[BlockTag] = NamespacePin(BlockTag) entity_type_tags: NamespacePin[EntityTypeTag] = NamespacePin(EntityTypeTag) fluid_tags: NamespacePin[FluidTag] = NamespacePin(FluidTag) @@ -357,6 +366,7 @@ class DataPack(Pack[DataPackNamespace]): chat_type: NamespaceProxyDescriptor[ChatType] = NamespaceProxyDescriptor(ChatType) damage_type: NamespaceProxyDescriptor[DamageType] = NamespaceProxyDescriptor(DamageType) banner_patterns: NamespaceProxyDescriptor[BannerPattern] = NamespaceProxyDescriptor(BannerPattern) + wolf_variants: NamespaceProxyDescriptor[WolfVariant] = NamespaceProxyDescriptor(WolfVariant) block_tags: NamespaceProxyDescriptor[BlockTag] = NamespaceProxyDescriptor(BlockTag) entity_type_tags: NamespaceProxyDescriptor[EntityTypeTag] = NamespaceProxyDescriptor(EntityTypeTag) fluid_tags: NamespaceProxyDescriptor[FluidTag] = NamespaceProxyDescriptor(FluidTag)