wow_world_base/extended/wrath/
mod.rs

1#[rustfmt::skip]
2mod actions;
3mod base_stats;
4pub mod character_features;
5mod class;
6#[rustfmt::skip]
7mod creature_family;
8#[rustfmt::skip]
9pub mod exp;
10mod item;
11mod item_quality;
12mod item_set;
13mod items;
14mod map;
15pub mod position;
16mod skill;
17#[rustfmt::skip]
18mod skills;
19#[rustfmt::skip]
20mod spells;
21pub mod stats;
22pub mod trigger;
23
24pub use items::*;
25
26macro_rules! wrath_race_class_match {
27    ($function:ident, $ret_type:ty, $race_class:ty) => {
28        impl $race_class {
29            pub const fn $function(&self) -> $ret_type {
30                match self {
31                    Self::DwarfHunter => DWARF_HUNTER,
32                    Self::DwarfPaladin => DWARF_PALADIN,
33                    Self::DwarfPriest => DWARF_PRIEST,
34                    Self::DwarfRogue => DWARF_ROGUE,
35                    Self::DwarfWarrior => DWARF_WARRIOR,
36                    Self::GnomeMage => GNOME_MAGE,
37                    Self::GnomeRogue => GNOME_ROGUE,
38                    Self::GnomeWarlock => GNOME_WARLOCK,
39                    Self::GnomeWarrior => GNOME_WARRIOR,
40                    Self::HumanMage => HUMAN_MAGE,
41                    Self::HumanPaladin => HUMAN_PALADIN,
42                    Self::HumanPriest => HUMAN_PRIEST,
43                    Self::HumanRogue => HUMAN_ROGUE,
44                    Self::HumanWarlock => HUMAN_WARLOCK,
45                    Self::HumanWarrior => HUMAN_WARRIOR,
46                    Self::NightElfDruid => NIGHT_ELF_DRUID,
47                    Self::NightElfHunter => NIGHT_ELF_HUNTER,
48                    Self::NightElfPriest => NIGHT_ELF_PRIEST,
49                    Self::NightElfRogue => NIGHT_ELF_ROGUE,
50                    Self::NightElfWarrior => NIGHT_ELF_WARRIOR,
51                    Self::OrcHunter => ORC_HUNTER,
52                    Self::OrcRogue => ORC_ROGUE,
53                    Self::OrcShaman => ORC_SHAMAN,
54                    Self::OrcWarlock => ORC_WARLOCK,
55                    Self::OrcWarrior => ORC_WARRIOR,
56                    Self::TaurenDruid => TAUREN_DRUID,
57                    Self::TaurenHunter => TAUREN_HUNTER,
58                    Self::TaurenShaman => TAUREN_SHAMAN,
59                    Self::TaurenWarrior => TAUREN_WARRIOR,
60                    Self::TrollHunter => TROLL_HUNTER,
61                    Self::TrollMage => TROLL_MAGE,
62                    Self::TrollPriest => TROLL_PRIEST,
63                    Self::TrollRogue => TROLL_ROGUE,
64                    Self::TrollShaman => TROLL_SHAMAN,
65                    Self::TrollWarrior => TROLL_WARRIOR,
66                    Self::UndeadMage => UNDEAD_MAGE,
67                    Self::UndeadPriest => UNDEAD_PRIEST,
68                    Self::UndeadRogue => UNDEAD_ROGUE,
69                    Self::UndeadWarlock => UNDEAD_WARLOCK,
70                    Self::UndeadWarrior => UNDEAD_WARRIOR,
71                    Self::DraeneiWarrior => DRAENEI_WARRIOR,
72                    Self::DraeneiPaladin => DRAENEI_PALADIN,
73                    Self::DraeneiHunter => DRAENEI_HUNTER,
74                    Self::DraeneiPriest => DRAENEI_PRIEST,
75                    Self::DraeneiShaman => DRAENEI_SHAMAN,
76                    Self::DraeneiMage => DRAENEI_MAGE,
77                    Self::BloodElfPaladin => BLOOD_ELF_PALADIN,
78                    Self::BloodElfHunter => BLOOD_ELF_HUNTER,
79                    Self::BloodElfRogue => BLOOD_ELF_ROGUE,
80                    Self::BloodElfPriest => BLOOD_ELF_PRIEST,
81                    Self::BloodElfMage => BLOOD_ELF_MAGE,
82                    Self::BloodElfWarlock => BLOOD_ELF_WARLOCK,
83                    Self::HumanDeathKnight => HUMAN_DEATH_KNIGHT,
84                    Self::OrcDeathKnight => ORC_DEATH_KNIGHT,
85                    Self::DwarfDeathKnight => DWARF_DEATH_KNIGHT,
86                    Self::NightElfDeathKnight => NIGHT_ELF_DEATH_KNIGHT,
87                    Self::UndeadDeathKnight => UNDEAD_DEATH_KNIGHT,
88                    Self::TaurenDeathKnight => TAUREN_DEATH_KNIGHT,
89                    Self::GnomeDeathKnight => GNOME_DEATH_KNIGHT,
90                    Self::TrollDeathKnight => TROLL_DEATH_KNIGHT,
91                    Self::BloodElfDeathKnight => BLOOD_ELF_DEATH_KNIGHT,
92                    Self::DraeneiDeathKnight => DRAENEI_DEATH_KNIGHT,
93                }
94            }
95        }
96    };
97}
98pub(crate) use wrath_race_class_match;