wow_world_base/extended/wrath/
mod.rs1#[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;