diff options
Diffstat (limited to 'azalea-protocol/src/common')
| -rw-r--r-- | azalea-protocol/src/common/recipe.rs | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/azalea-protocol/src/common/recipe.rs b/azalea-protocol/src/common/recipe.rs index e0e10ecc..5e1f93c9 100644 --- a/azalea-protocol/src/common/recipe.rs +++ b/azalea-protocol/src/common/recipe.rs @@ -1,6 +1,11 @@ use azalea_buf::AzBuf; use azalea_inventory::ItemStack; -use azalea_registry::{HolderSet, builtin::ItemKind, data::TrimPattern, identifier::Identifier}; +use azalea_registry::{ + HolderSet, + builtin::{DataComponentKind, ItemKind}, + data::TrimPattern, + identifier::Identifier, +}; /// [`azalea_registry::builtin::RecipeDisplay`] #[derive(AzBuf, Clone, Debug, PartialEq)] @@ -63,15 +68,28 @@ pub struct Ingredient { pub enum SlotDisplayData { Empty, AnyFuel, + WithAnyPotion(Box<WithAnyPotionSlotDisplay>), + OnlyWithComponent(Box<OnlyWithComponentSlotDisplay>), Item(ItemSlotDisplay), ItemStack(ItemStackSlotDisplay), Tag(TagSlotDisplay), + Dyed(Box<DyedSlotDemo>), SmithingTrim(Box<SmithingTrimDemoSlotDisplay>), WithRemainder(Box<WithRemainderSlotDisplay>), Composite(CompositeSlotDisplay), } #[derive(AzBuf, Clone, Debug, PartialEq)] +pub struct WithAnyPotionSlotDisplay { + pub contents: SlotDisplayData, +} +#[derive(AzBuf, Clone, Debug, PartialEq)] +pub struct OnlyWithComponentSlotDisplay { + pub contents: SlotDisplayData, + pub component: DataComponentKind, +} + +#[derive(AzBuf, Clone, Debug, PartialEq)] pub struct ItemSlotDisplay { pub item: ItemKind, } @@ -80,6 +98,11 @@ pub struct ItemStackSlotDisplay { pub stack: ItemStack, } #[derive(AzBuf, Clone, Debug, PartialEq)] +pub struct DyedSlotDemo { + pub dye: SlotDisplayData, + pub target: SlotDisplayData, +} +#[derive(AzBuf, Clone, Debug, PartialEq)] pub struct TagSlotDisplay { pub tag: Identifier, } |
