Skip to main content

wowlab_engine_gamedata/game_data/
scaling_access.rs

1//! Character and item-scaling access to resolved game data.
2
3use super::{ResolvedCurves, ResolvedGameData, ResolvedGameTables};
4
5impl ResolvedGameData {
6    #[must_use]
7    pub fn curves(&self) -> &ResolvedCurves {
8        &self.inner.scaling.curves
9    }
10
11    /// Character level this data was resolved at; `0` for default/introspection data.
12    #[must_use]
13    pub fn level(&self) -> u32 {
14        self.inner.scaling.level
15    }
16
17    #[must_use]
18    pub fn game_tables(&self) -> &ResolvedGameTables {
19        &self.inner.scaling.game_tables
20    }
21
22    /// Health granted per point of Stamina at `level`; `None` when the level row is absent.
23    #[must_use]
24    pub fn health_per_stamina(&self, level: u32) -> Option<f64> {
25        self.inner.scaling.game_tables.health_per_stamina(level)
26    }
27}