aboutsummaryrefslogtreecommitdiff
path: root/azalea-protocol/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'azalea-protocol/src/common')
-rw-r--r--azalea-protocol/src/common/recipe.rs25
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,
}