pub struct AbilityInfo {
pub damage: Option<f64>,
pub dot: Option<f64>,
pub hot: Option<f64>,
pub effect_duration: Option<f64>,
pub duration: Option<i64>,
pub crit_chance_bonus: Option<f64>,
pub vampiric: Option<f64>,
pub projectiles: Option<i64>,
pub max_targets: Option<i64>,
}Expand description
The typed result of the per-ability ability_info(level) closures. Each
struct holds every key that appears across the 18 bespoke ability infos, with
None for keys a given ability does not set.
PartialEq + Serialize so it can be diffed/logged if ever surfaced directly.
The downstream description_values fn reads individual fields, computing
floor(ability_info.<field> * 100).
Fields§
§damage: Option<f64>damage — instant damage component. Present on all damage abilities.
dot: Option<f64>dot — damage-over-time component.
hot: Option<f64>hot — heal-over-time component.
effect_duration: Option<f64>effect_duration — buff/debuff duration (seconds), from
balance::effect_duration.
duration: Option<i64>duration — integer tick/second duration literal.
crit_chance_bonus: Option<f64>crit_chance_bonus — added crit chance (fraction).
vampiric: Option<f64>vampiric — life-steal fraction.
projectiles: Option<i64>projectiles — projectile count (integer).
max_targets: Option<i64>max_targets — AoE cap (from the ability template config field). None
= unlimited; the band/cone AoE behaviors take the first N band-eligible
targets in deterministic order.
Implementations§
Source§impl AbilityInfo
impl AbilityInfo
Sourcepub fn apply_stone_mods(&mut self, mods: &AbilityStoneMods)
pub fn apply_stone_mods(&mut self, mods: &AbilityStoneMods)
Rescales the ability’s numbers by the stones active on it. Damage-like keys share one multiplier, applied-effect durations share another, and the AoE cap grows by the socketed target bonus. The multipliers are identity when nothing is socketed, so a stoneless character reads exactly the config numbers.
Trait Implementations§
Source§impl Clone for AbilityInfo
impl Clone for AbilityInfo
Source§fn clone(&self) -> AbilityInfo
fn clone(&self) -> AbilityInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more