azalea_registry/
extra.rs

1//! These registries are sent by the server during the configuration state so
2//! you should be relying on those if possible, but these are provided for your
3//! convenience anyways.
4
5use azalea_registry_macros::registry;
6
7use crate::Registry;
8
9registry! {
10#[derive(Default)]
11enum FoxVariant {
12    #[default]
13    Red => "minecraft:red",
14    Snow => "minecraft:snow",
15}
16}
17
18registry! {
19enum ParrotVariant {
20    RedBlue => "minecraft:red_blue",
21    Blue => "minecraft:blue",
22    Green => "minecraft:green",
23    YellowBlue => "minecraft:yellow_blue",
24    Gray => "minecraft:gray",
25}
26}
27
28registry! {
29#[derive(Default)]
30enum MooshroomVariant {
31    #[default]
32    Red => "minecraft:red",
33    Brown => "minecraft:brown",
34}
35}
36
37registry! {
38#[derive(Default)]
39enum RabbitVariant {
40    #[default]
41    Brown => "minecraft:brown",
42    White => "minecraft:white",
43    Black => "minecraft:black",
44    WhiteSplotched => "minecraft:white_splotched",
45    Gold => "minecraft:gold",
46    Salt => "minecraft:salt",
47    Evil => "minecraft:evil",
48}
49}
50
51registry! {
52#[derive(Default)]
53enum HorseVariant {
54    #[default]
55    White => "minecraft:white",
56    Creamy => "minecraft:creamy",
57    Chestnut => "minecraft:chestnut",
58    Brown => "minecraft:brown",
59    Black => "minecraft:black",
60    Gray => "minecraft:gray",
61    DarkBrown => "minecraft:dark_brown",
62}
63}
64
65registry! {
66#[derive(Default)]
67enum LlamaVariant {
68    #[default]
69    Creamy => "minecraft:creamy",
70    White => "minecraft:white",
71    Brown => "minecraft:brown",
72    Gray => "minecraft:gray",
73}
74}
75
76registry! {
77#[derive(Default)]
78enum AxolotlVariant {
79    #[default]
80    Lucy => "minecraft:lucy",
81    Wild => "minecraft:wild",
82    Gold => "minecraft:gold",
83    Cyan => "minecraft:cyan",
84    Blue => "minecraft:blue",
85}
86}
87
88registry! {
89enum TrimMaterial {
90    Quartz => "minecraft:quartz",
91    Iron => "minecraft:iron",
92    Netherite => "minecraft:netherite",
93    Redstone => "minecraft:redstone",
94    Copper => "minecraft:copper",
95    Gold => "minecraft:gold",
96    Emerald => "minecraft:emerald",
97    Diamond => "minecraft:diamond",
98    Lapis => "minecraft:lapis",
99    Amethyst => "minecraft:amethyst",
100}
101}
102
103registry! {
104enum TrimPattern {
105    Sentry => "sentry",
106    Dune => "dune",
107    Coast => "coast",
108    Wild => "wild",
109    Ward => "ward",
110    Eye => "eye",
111    Vex => "vex",
112    Tide => "tide",
113    Snout => "snout",
114    Rib => "rib",
115    Spire => "spire",
116    Wayfinder => "wayfinder",
117    Shaper => "shaper",
118    Silence => "silence",
119    Raiser => "raiser",
120    Host => "host",
121    Flow => "flow",
122    Bolt => "bolt",
123}
124}
125
126registry! {
127enum JukeboxSong {
128    Thirteen => "13",
129    Cat => "cat",
130    Blocks => "blocks",
131    Chirp => "chirp",
132    Far => "far",
133    Mall => "mall",
134    Mellohi => "mellohi",
135    Stal => "stal",
136    Strad => "strad",
137    Ward => "ward",
138    Eleven => "11",
139    Wait => "wait",
140    Pigstep => "pigstep",
141    Otherside => "otherside",
142    Five => "5",
143    Relic => "relic",
144    Precipice => "precipice",
145    Creator => "creator",
146    CreatorMusicBox => "creator_music_box",
147}
148}
149
150registry! {
151enum ChatType {
152    Chat => "chat",
153    SayCommand => "say_command",
154    MsgCommandIncoming => "msg_command_incoming",
155    MsgCommandOutgoing => "msg_command_outgoing",
156    TeamMsgCommandIncoming => "team_msg_command_incoming",
157    TeamMsgCommandOutgoing => "team_msg_command_outgoing",
158    EmoteCommand => "emote_command",
159}
160}
161impl ChatType {
162    #[must_use]
163    pub fn chat_translation_key(self) -> &'static str {
164        match self {
165            ChatType::Chat => "chat.type.text",
166            ChatType::SayCommand => "chat.type.announcement",
167            ChatType::MsgCommandIncoming => "commands.message.display.incoming",
168            ChatType::MsgCommandOutgoing => "commands.message.display.outgoing",
169            ChatType::TeamMsgCommandIncoming => "chat.type.team.text",
170            ChatType::TeamMsgCommandOutgoing => "chat.type.team.sent",
171            ChatType::EmoteCommand => "chat.type.emote",
172        }
173    }
174
175    #[must_use]
176    pub fn narrator_translation_key(self) -> &'static str {
177        match self {
178            ChatType::EmoteCommand => "chat.type.emote",
179            _ => "chat.type.text.narrate",
180        }
181    }
182}
183
184registry! {
185enum Instrument {
186    PonderGoatHorn => "minecraft:ponder_goat_horn",
187    SingGoatHorn => "minecraft:sing_goat_horn",
188    SeekGoatHorn => "minecraft:seek_goat_horn",
189    FeelGoatHorn => "minecraft:feel_goat_horn",
190    AdmireGoatHorn => "minecraft:admire_goat_horn",
191    CallGoatHorn => "minecraft:call_goat_horn",
192    YearnGoatHorn => "minecraft:yearn_goat_horn",
193    DreamGoatHorn => "minecraft:dream_goat_horn",
194}
195}