Skip to main content

ManifestAuraDef

Struct ManifestAuraDef 

Source
pub struct ManifestAuraDef {
Show 63 fields pub id: u32, pub proc_attributes: Vec<ManifestProcAttribute>, pub on: String, pub duration_ms: Option<ScalarRef>, pub no_pandemic: bool, pub refresh_behavior: Option<RefreshBehavior>, pub forwarded_effect_value: Option<ScalarRef>, pub damage_mult: Option<ScalarRef>, pub damage_mult_stacking: Option<StackingDamageMult>, pub pet_damage_mult: Option<ScalarRef>, pub damage_taken_from_caster_spells: Option<ScalarRef>, pub max_stacks: Option<ScalarRef>, pub haste_per_stack: Option<ScalarRef>, pub attack_speed_per_stack: Option<ScalarRef>, pub auto_attack_damage_per_stack: Option<ScalarRef>, pub resource_gain_mult_per_stack: Option<ScalarRef>, pub regen_percent_per_stack: Option<ScalarRef>, pub max_resource_per_stack: Option<ScalarRef>, pub crit_per_stack: Option<ScalarRef>, pub mastery_per_stack: Option<ScalarRef>, pub primary_stat_percent_per_stack: Option<ScalarRef>, pub attack_power_percent_per_stack: Option<ScalarRef>, pub crit_rating_per_stack: Option<ScalarRef>, pub haste_rating_per_stack: Option<ScalarRef>, pub mastery_rating_per_stack: Option<ScalarRef>, pub versatility_rating_per_stack: Option<ScalarRef>, pub primary_stat_per_stack: Option<ScalarRef>, pub split_across_stacks: bool, pub apply_at_max_stacks: bool, pub reverse: bool, pub freeze_stacks: bool, pub tick_behavior: Option<ManifestAuraTickBehavior>, pub tick_stack_change: Option<u8>, pub stack_tick_ms: Option<ScalarRef>, pub async_stacks: bool, pub periodic_damage_scales_with_stacks: bool, pub reapply_on_expire: bool, pub expire_hook: Option<String>, pub on_consume: Vec<EventEffectDef>, pub periodic_remove_stack: Option<PeriodicRemoveStack>, pub periodic_damage: Option<PeriodicDamage>, pub periodic_residual_damage: Option<PeriodicResidualDamage>, pub periodic_hasted: Option<bool>, pub periodic_partial_tick: bool, pub periodic_resource: Option<PeriodicResource>, pub periodic_resource_drain: Option<PeriodicResourceDrain>, pub periodic_apply_aura: Option<PeriodicApplyAura>, pub periodic_hook: Option<PeriodicHook>, pub tick_hook: Option<String>, pub precombat: bool, pub snapshot: bool, pub crit_chance_spells: Option<SpellScopedPct>, pub crit_damage_spells: Option<SpellScopedPct>, pub damage_percent_spells: Option<SpellScopedPct>, pub damage_percent_spells_linear: Option<SpellScopedPct>, pub cast_time_percent: Option<SpellScopedPct>, pub cast_time_percent_per_stack: Option<SpellScopedPct>, pub gcd_percent: Option<SpellScopedPct>, pub spell_cost_flat: Option<SpellScopedValue>, pub spell_cost_percent: Option<SpellScopedValue>, pub secondary_spell_cost_percent: Option<SpellScopedValue>, pub secondary_spell_cost_flat: Option<SpellScopedValue>, pub recharge_rate_percent: Vec<SpellScopedValue>,
}
Expand description

[auras.<name>] block describing a single registered aura.

Fields§

§id: u32§proc_attributes: Vec<ManifestProcAttribute>

Server-side spell_proc.AttributesMask identities absent from client DBC data.

§on: String§duration_ms: Option<ScalarRef>§no_pandemic: bool§refresh_behavior: Option<RefreshBehavior>§forwarded_effect_value: Option<ScalarRef>

Forwards a value into compatible zero-valued DBC effects while preserving their scope.

§damage_mult: Option<ScalarRef>§damage_mult_stacking: Option<StackingDamageMult>§pet_damage_mult: Option<ScalarRef>§damage_taken_from_caster_spells: Option<ScalarRef>

Percent points the debuffed target takes from the caster’s affected spells (aura 271); overrides a value-override talent’s zero DBC base.

§max_stacks: Option<ScalarRef>§haste_per_stack: Option<ScalarRef>§attack_speed_per_stack: Option<ScalarRef>

Percent points of auto-attack speed per stack (aura 319/342); swing frequency only.

§auto_attack_damage_per_stack: Option<ScalarRef>§resource_gain_mult_per_stack: Option<ScalarRef>

Percent points of extra primary-resource gain per stack (aura 213); discrete gains only.

§regen_percent_per_stack: Option<ScalarRef>§max_resource_per_stack: Option<ScalarRef>§crit_per_stack: Option<ScalarRef>§mastery_per_stack: Option<ScalarRef>§primary_stat_percent_per_stack: Option<ScalarRef>§attack_power_percent_per_stack: Option<ScalarRef>§crit_rating_per_stack: Option<ScalarRef>§haste_rating_per_stack: Option<ScalarRef>§mastery_rating_per_stack: Option<ScalarRef>§versatility_rating_per_stack: Option<ScalarRef>§primary_stat_per_stack: Option<ScalarRef>§split_across_stacks: bool§apply_at_max_stacks: bool§reverse: bool

Starts at maximum stacks and decrements instead of incrementing.

§freeze_stacks: bool

Prevents the periodic tick from changing stacks.

§tick_behavior: Option<ManifestAuraTickBehavior>

Whether reapplication restarts or preserves the current tick cadence.

§tick_stack_change: Option<u8>

Stack count added or removed by each stack-changing tick.

§stack_tick_ms: Option<ScalarRef>

Period used when stack mutation itself is the aura’s periodic effect.

§async_stacks: bool

Gives each stack an independent expiry; overflow displaces the oldest.

§periodic_damage_scales_with_stacks: bool§reapply_on_expire: bool§expire_hook: Option<String>

Resolves under the spec hook module; item hooks use a full function path.

§on_consume: Vec<EventEffectDef>§periodic_remove_stack: Option<PeriodicRemoveStack>§periodic_damage: Option<PeriodicDamage>§periodic_residual_damage: Option<PeriodicResidualDamage>§periodic_hasted: Option<bool>§periodic_partial_tick: bool

Fires tick_hook at natural expiry when time elapsed since the last tick.

§periodic_resource: Option<PeriodicResource>§periodic_resource_drain: Option<PeriodicResourceDrain>§periodic_apply_aura: Option<PeriodicApplyAura>§periodic_hook: Option<PeriodicHook>

Provides a hook-only periodic when game data or authored behavior did not register one.

§tick_hook: Option<String>

Resolves like expire_hook and requires a registered periodic.

§precombat: bool§snapshot: bool§crit_chance_spells: Option<SpellScopedPct>

Uses percent points; 100.0 guarantees critical strikes.

§crit_damage_spells: Option<SpellScopedPct>

Uses percent points; 25.0 raises a 2x critical strike to 2.25x.

§damage_percent_spells: Option<SpellScopedPct>§damage_percent_spells_linear: Option<SpellScopedPct>

Scales linearly as 1 + pct / 100 * stacks.

§cast_time_percent: Option<SpellScopedPct>§cast_time_percent_per_stack: Option<SpellScopedPct>§gcd_percent: Option<SpellScopedPct>§spell_cost_flat: Option<SpellScopedValue>§spell_cost_percent: Option<SpellScopedValue>§secondary_spell_cost_percent: Option<SpellScopedValue>§secondary_spell_cost_flat: Option<SpellScopedValue>§recharge_rate_percent: Vec<SpellScopedValue>

Implementations§

Source§

impl ManifestAuraDef

Source

pub fn scalar_refs(&self) -> impl Iterator<Item = &ScalarRef>

Returns every game-data scalar referenced by this aura: direct, spell-scoped, and event payloads.

Source

pub(crate) fn scoped_spell_names(&self) -> impl Iterator<Item = &String>

Trait Implementations§

Source§

impl Debug for ManifestAuraDef

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ManifestAuraDef

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<S, T> Upcast<T> for S
where T: UpcastFrom<S> + ?Sized, S: ?Sized,

Source§

fn upcast(&self) -> &T
where Self: ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider ref type within the Wasm bindgen generics type system. Read more
Source§

fn upcast_into(self) -> T
where Self: Sized + ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider type within the Wasm bindgen generics type system. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,