wowlab_engine_domain/dbc/semantics/difficulty.rs
1//! Canonical DBC difficulty identities used by spell-row selection.
2
3/// `Difficulty.ID` stored on difficulty-specific spell tables.
4#[derive(Clone, Copy, Debug, Default, Eq, PartialEq, num_enum::TryFromPrimitive)]
5#[repr(i32)]
6#[non_exhaustive]
7pub enum DifficultyId {
8 /// Base row used when no encounter difficulty override is requested.
9 #[default]
10 Base = 0,
11 /// Mythic Keystone dungeon difficulty.
12 MythicPlus = 8,
13}
14
15impl DifficultyId {
16 #[must_use]
17 pub const fn as_u32(&self) -> u32 {
18 *self as u32
19 }
20}