Skip to main content

ManifestSpellDef

Struct ManifestSpellDef 

Source
pub struct ManifestSpellDef {
Show 42 fields pub id: u32, pub proc_attributes: Vec<ManifestProcAttribute>, pub cooldown: Option<ScalarRef>, pub cost: Option<ScalarRef>, pub gain: Option<ScalarRef>, pub damage: Option<ManifestDamageDef>, pub infer_damage: bool, pub infer_primary_damage: bool, pub damage_effects: Vec<DamageEffectDef>, pub trigger_program_predicates: Vec<TriggerProgramPredicateDef>, pub usable_while_casting: bool, pub travel_time_ms: Option<ScalarRef>, pub cast_time_ms: Option<ScalarRef>, pub gcd_ms: Option<ScalarRef>, pub charges: Option<ScalarRef>, pub charge_cd: Option<ScalarRef>, pub cooldown_hasted: Option<bool>, pub applies_aura: Option<String>, pub infer_applies_aura: bool, pub applies_auras: Vec<String>, pub extends_auras: Vec<ExtendAuraDef>, pub reduces_cd: Option<Vec<ReducesCd>>, pub reduces_cd_chance: Option<ReducesCdChance>, pub resets_cd_while: Option<ResetsCdWhile>, pub hook: Option<String>, pub breaks_stealth: bool, pub aoe: Option<AoeDef>, pub channel: Option<ChannelDef>, pub empower: Option<EmpowerDef>, pub requires_aura_id: Option<u32>, pub requires_aura_min_stacks: Option<u8>, pub cost_free_when_aura: Option<u32>, pub consume_aura_on_cast: Option<u32>, pub cooldown_bypass_when_aura: Option<String>, pub execute_below_pct: Option<f64>, pub instant_when_aura: Option<String>, pub override_when_aura: Option<String>, pub override_with_spell: Option<String>, pub override_aura_min_stacks: Option<u8>, pub override_shares_base_cooldown: bool, pub override_preserves_aura: bool, pub guaranteed_crit: bool,
}
Expand description

[spells.<name>] block describing a single registered spell.

use wowlab_manifest_schema::{ManifestAuraDef, ManifestSpellDef};

fn lower_aura(_: &ManifestAuraDef) {}
fn invalid(spell: &ManifestSpellDef) {
    lower_aura(spell);
}

Fields§

§id: u32§proc_attributes: Vec<ManifestProcAttribute>

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

§cooldown: Option<ScalarRef>§cost: Option<ScalarRef>§gain: Option<ScalarRef>§damage: Option<ManifestDamageDef>§infer_damage: bool§infer_primary_damage: bool§damage_effects: Vec<DamageEffectDef>§trigger_program_predicates: Vec<TriggerProgramPredicateDef>§usable_while_casting: bool§travel_time_ms: Option<ScalarRef>§cast_time_ms: Option<ScalarRef>§gcd_ms: Option<ScalarRef>§charges: Option<ScalarRef>§charge_cd: Option<ScalarRef>§cooldown_hasted: Option<bool>§applies_aura: Option<String>§infer_applies_aura: bool§applies_auras: Vec<String>§extends_auras: Vec<ExtendAuraDef>§reduces_cd: Option<Vec<ReducesCd>>§reduces_cd_chance: Option<ReducesCdChance>§resets_cd_while: Option<ResetsCdWhile>§hook: Option<String>§breaks_stealth: bool§aoe: Option<AoeDef>§channel: Option<ChannelDef>§empower: Option<EmpowerDef>§requires_aura_id: Option<u32>§requires_aura_min_stacks: Option<u8>§cost_free_when_aura: Option<u32>§consume_aura_on_cast: Option<u32>§cooldown_bypass_when_aura: Option<String>§execute_below_pct: Option<f64>§instant_when_aura: Option<String>§override_when_aura: Option<String>§override_with_spell: Option<String>§override_aura_min_stacks: Option<u8>§override_shares_base_cooldown: bool§override_preserves_aura: bool§guaranteed_crit: bool

Implementations§

Source§

impl ManifestSpellDef

Source

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

Returns every scalar game-data reference used by spell-level overrides.

Trait Implementations§

Source§

impl Debug for ManifestSpellDef

Source§

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

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

impl<'de> Deserialize<'de> for ManifestSpellDef

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>,