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! {
10enum WolfVariant {
11    Pale => "minecraft:wolf",
12    Spotted => "minecraft:wolf_spotted",
13    Snowy => "minecraft:wolf_snowy",
14    Black => "minecraft:wolf_black",
15    Ashen => "minecraft:wolf_ashen",
16    Rusty => "minecraft:wolf_rusty",
17    Woods => "minecraft:wolf_woods",
18    Chestnut => "minecraft:wolf_chestnut",
19    Striped => "minecraft:wolf_striped",
20}
21}
22
23#[allow(clippy::derivable_impls)]
24impl Default for WolfVariant {
25    fn default() -> Self {
26        WolfVariant::Pale
27    }
28}
29
30registry! {
31enum TrimMaterial {
32    Quartz => "minecraft:quartz",
33    Iron => "minecraft:iron",
34    Netherite => "minecraft:netherite",
35    Redstone => "minecraft:redstone",
36    Copper => "minecraft:copper",
37    Gold => "minecraft:gold",
38    Emerald => "minecraft:emerald",
39    Diamond => "minecraft:diamond",
40    Lapis => "minecraft:lapis",
41    Amethyst => "minecraft:amethyst",
42}
43}
44
45registry! {
46enum TrimPattern {
47    Sentry => "sentry",
48    Dune => "dune",
49    Coast => "coast",
50    Wild => "wild",
51    Ward => "ward",
52    Eye => "eye",
53    Vex => "vex",
54    Tide => "tide",
55    Snout => "snout",
56    Rib => "rib",
57    Spire => "spire",
58    Wayfinder => "wayfinder",
59    Shaper => "shaper",
60    Silence => "silence",
61    Raiser => "raiser",
62    Host => "host",
63    Flow => "flow",
64    Bolt => "bolt",
65}
66}
67
68registry! {
69enum JukeboxSong {
70    Thirteen => "13",
71    Cat => "cat",
72    Blocks => "blocks",
73    Chirp => "chirp",
74    Far => "far",
75    Mall => "mall",
76    Mellohi => "mellohi",
77    Stal => "stal",
78    Strad => "strad",
79    Ward => "ward",
80    Eleven => "11",
81    Wait => "wait",
82    Pigstep => "pigstep",
83    Otherside => "otherside",
84    Five => "5",
85    Relic => "relic",
86    Precipice => "precipice",
87    Creator => "creator",
88    CreatorMusicBox => "creator_music_box",
89}
90}
91
92registry! {
93enum ChatType {
94    Chat => "chat",
95    SayCommand => "say_command",
96    MsgCommandIncoming => "msg_command_incoming",
97    MsgCommandOutgoing => "msg_command_outgoing",
98    TeamMsgCommandIncoming => "team_msg_command_incoming",
99    TeamMsgCommandOutgoing => "team_msg_command_outgoing",
100    EmoteCommand => "emote_command",
101}
102}
103impl ChatType {
104    #[must_use]
105    pub fn chat_translation_key(self) -> &'static str {
106        match self {
107            ChatType::Chat => "chat.type.text",
108            ChatType::SayCommand => "chat.type.announcement",
109            ChatType::MsgCommandIncoming => "commands.message.display.incoming",
110            ChatType::MsgCommandOutgoing => "commands.message.display.outgoing",
111            ChatType::TeamMsgCommandIncoming => "chat.type.team.text",
112            ChatType::TeamMsgCommandOutgoing => "chat.type.team.sent",
113            ChatType::EmoteCommand => "chat.type.emote",
114        }
115    }
116
117    #[must_use]
118    pub fn narrator_translation_key(self) -> &'static str {
119        match self {
120            ChatType::EmoteCommand => "chat.type.emote",
121            _ => "chat.type.text.narrate",
122        }
123    }
124}
125
126registry! {
127enum Instrument {
128    PonderGoatHorn => "minecraft:ponder_goat_horn",
129    SingGoatHorn => "minecraft:sing_goat_horn",
130    SeekGoatHorn => "minecraft:seek_goat_horn",
131    FeelGoatHorn => "minecraft:feel_goat_horn",
132    AdmireGoatHorn => "minecraft:admire_goat_horn",
133    CallGoatHorn => "minecraft:call_goat_horn",
134    YearnGoatHorn => "minecraft:yearn_goat_horn",
135    DreamGoatHorn => "minecraft:dream_goat_horn",
136}
137}
138
139registry! {
140enum PaintingVariant {
141    Kebab => "minecraft:kebab",
142    Aztec => "minecraft:aztec",
143    Alban => "minecraft:alban",
144    Aztec2 => "minecraft:aztec2",
145    Bomb => "minecraft:bomb",
146    Plant => "minecraft:plant",
147    Wasteland => "minecraft:wasteland",
148    Pool => "minecraft:pool",
149    Courbet => "minecraft:courbet",
150    Sea => "minecraft:sea",
151    Sunset => "minecraft:sunset",
152    Creebet => "minecraft:creebet",
153    Wanderer => "minecraft:wanderer",
154    Graham => "minecraft:graham",
155    Match => "minecraft:match",
156    Bust => "minecraft:bust",
157    Stage => "minecraft:stage",
158    Void => "minecraft:void",
159    SkullAndRoses => "minecraft:skull_and_roses",
160    Wither => "minecraft:wither",
161    Fighters => "minecraft:fighters",
162    Pointer => "minecraft:pointer",
163    Pigscene => "minecraft:pigscene",
164    BurningSkull => "minecraft:burning_skull",
165    Skeleton => "minecraft:skeleton",
166    Earth => "minecraft:earth",
167    Wind => "minecraft:wind",
168    Water => "minecraft:water",
169    Fire => "minecraft:fire",
170    DonkeyKong => "minecraft:donkey_kong",
171}
172}