Skip to main content

BuilderSpellDef

Struct BuilderSpellDef 

Source
pub(crate) struct BuilderSpellDef {
Show 100 fields pub(crate) spell_id: u32, pub(crate) name: String, pub(crate) cast_time_ms: u32, pub(crate) empower_cast_times_ms: Vec<u32>, pub(crate) max_empower_aura_id: u32, pub(crate) cooldown_hasted: bool, pub(crate) gcd_haste_type: GcdHasteType, pub(crate) start_recovery_category: Option<CooldownCategoryId>, pub(crate) usable_while_casting: bool, pub(crate) usable_while_moving: bool, pub(crate) explicit_target_mask: u32, pub(crate) required_explicit_target_mask: u32, pub(crate) shapeshift_required_mask: u64, pub(crate) shapeshift_excluded_mask: u64, pub(crate) caster_aura_spell: i32, pub(crate) caster_aura_state: Option<AuraState>, pub(crate) exclude_caster_aura_spell: i32, pub(crate) exclude_caster_aura_state: Option<AuraState>, pub(crate) target_aura_spell: i32, pub(crate) target_aura_state: Option<AuraState>, pub(crate) exclude_target_aura_spell: i32, pub(crate) exclude_target_aura_state: Option<AuraState>, pub(crate) travel: SpellTravelData, pub(crate) gcd_ms: u32, pub(crate) cooldown: Option<CooldownDef>, pub(crate) resource_cost: f64, pub(crate) optional_resource_cost: f64, pub(crate) resource_cost_pct: ResourceCostPercent, pub(crate) maximum_resource_cost_pct: ResourceCostPercent, pub(crate) optional_resource_cost_pct: ResourceCostPercent, pub(crate) resource_gain: f64, pub(crate) secondary_resource_cost: f64, pub(crate) secondary_optional_resource_cost: f64, pub(crate) secondary_resource_gain: f64, pub(crate) health_cost: f64, pub(crate) health_cost_pct: f64, pub(crate) health_max_cost_pct: f64, pub(crate) health_optional_cost: f64, pub(crate) health_optional_cost_pct: ResourceCostPercent, pub(crate) damage: BuilderDamageDef, pub(crate) damage_may_crit: bool, pub(crate) damage_attribute_flags: DamageFlags, pub(crate) damage_effect: DamageEffectRef, pub(crate) base_points: f64, pub(crate) applies_aura: Option<LocalAuraIdx>, pub(crate) followup_effects: Vec<BuilderSpellEffect>, pub(crate) trigger_program_predicates: Vec<BuilderTriggerProgramPredicate>, pub(crate) infer_data_damage: bool, pub(crate) cdr_effects: Vec<CdrEffect>, pub(crate) is_pet: bool, pub(crate) requires_unshifted: bool, pub(crate) allow_while_unshifted: bool, pub(crate) requires_stealth: bool, pub(crate) requires_behind_target: bool, pub(crate) requires_main_hand: bool, pub(crate) requires_off_hand: bool, pub(crate) equipped_item_requirement: Option<EquippedItemRequirement>, pub(crate) breaks_stealth: bool, pub(crate) aoe_max_targets: u8, pub(crate) aoe_reduced_targets: u8, pub(crate) aoe_full_targets: u8, pub(crate) aoe_base_mult: f64, pub(crate) chain_targeting: bool, pub(crate) chain_multiplier: f64, pub(crate) split: bool, pub(crate) is_aoe: bool, pub(crate) is_channel: bool, pub(crate) channel_tick_count: u8, pub(crate) channel_tick_interval_ms: u32, pub(crate) channel_tick_zero: bool, pub(crate) channel_tick_is_periodic: bool, pub(crate) channel_hasted_ticks: bool, pub(crate) channel_duration_hasted: bool, pub(crate) channel_tick_damage: BuilderDamageDef, pub(crate) channel_tick_may_crit: bool, pub(crate) channel_tick_spell_id: u32, pub(crate) channel_tick_damage_alt: BuilderDamageDef, pub(crate) channel_tick_damage_alt_may_crit: bool, pub(crate) channel_tick_damage_alt_spell_id: u32, pub(crate) channel_tick_damage_aura: u32, pub(crate) channel_tick_cost: f64, pub(crate) channel_tick_cost_alt: f64, pub(crate) channel_tick_cost_aura: u32, pub(crate) channel_tick_effects: Vec<BuilderSpellEffect>, pub(crate) channel_complete_effects: Vec<BuilderSpellEffect>, pub(crate) channel_gcd_on_start: bool, pub(crate) channel_apply_lag: bool, pub(crate) gating_aura_id: u32, pub(crate) gating_aura_min_stacks: u8, pub(crate) cost_bypass_aura_id: u32, pub(crate) consume_aura_on_cast_id: u32, pub(crate) cooldown_bypass_aura_id: u32, pub(crate) execute_below_pct: f64, pub(crate) instant_cast_aura_id: u32, pub(crate) override_aura_id: u32, pub(crate) override_spell_id: u32, pub(crate) override_aura_min_stacks: u8, pub(crate) override_shares_base_cooldown: bool, pub(crate) override_preserves_aura: bool, pub(crate) guaranteed_crit: bool,
}

Fields§

§spell_id: u32§name: String§cast_time_ms: u32§empower_cast_times_ms: Vec<u32>§max_empower_aura_id: u32§cooldown_hasted: bool§gcd_haste_type: GcdHasteType§start_recovery_category: Option<CooldownCategoryId>§usable_while_casting: bool§usable_while_moving: bool§explicit_target_mask: u32§required_explicit_target_mask: u32§shapeshift_required_mask: u64§shapeshift_excluded_mask: u64§caster_aura_spell: i32§caster_aura_state: Option<AuraState>§exclude_caster_aura_spell: i32§exclude_caster_aura_state: Option<AuraState>§target_aura_spell: i32§target_aura_state: Option<AuraState>§exclude_target_aura_spell: i32§exclude_target_aura_state: Option<AuraState>§travel: SpellTravelData§gcd_ms: u32§cooldown: Option<CooldownDef>§resource_cost: f64§optional_resource_cost: f64§resource_cost_pct: ResourceCostPercent§maximum_resource_cost_pct: ResourceCostPercent§optional_resource_cost_pct: ResourceCostPercent§resource_gain: f64§secondary_resource_cost: f64§secondary_optional_resource_cost: f64§secondary_resource_gain: f64§health_cost: f64§health_cost_pct: f64§health_max_cost_pct: f64§health_optional_cost: f64§health_optional_cost_pct: ResourceCostPercent§damage: BuilderDamageDef§damage_may_crit: bool§damage_attribute_flags: DamageFlags§damage_effect: DamageEffectRef§base_points: f64§applies_aura: Option<LocalAuraIdx>§followup_effects: Vec<BuilderSpellEffect>§trigger_program_predicates: Vec<BuilderTriggerProgramPredicate>§infer_data_damage: bool§cdr_effects: Vec<CdrEffect>§is_pet: bool§requires_unshifted: bool§allow_while_unshifted: bool§requires_stealth: bool§requires_behind_target: bool§requires_main_hand: bool§requires_off_hand: bool§equipped_item_requirement: Option<EquippedItemRequirement>§breaks_stealth: bool§aoe_max_targets: u8§aoe_reduced_targets: u8§aoe_full_targets: u8§aoe_base_mult: f64§chain_targeting: bool§chain_multiplier: f64§split: bool§is_aoe: bool§is_channel: bool§channel_tick_count: u8§channel_tick_interval_ms: u32§channel_tick_zero: bool§channel_tick_is_periodic: bool§channel_hasted_ticks: bool§channel_duration_hasted: bool§channel_tick_damage: BuilderDamageDef§channel_tick_may_crit: bool§channel_tick_spell_id: u32§channel_tick_damage_alt: BuilderDamageDef§channel_tick_damage_alt_may_crit: bool§channel_tick_damage_alt_spell_id: u32§channel_tick_damage_aura: u32§channel_tick_cost: f64§channel_tick_cost_alt: f64§channel_tick_cost_aura: u32§channel_tick_effects: Vec<BuilderSpellEffect>§channel_complete_effects: Vec<BuilderSpellEffect>§channel_gcd_on_start: bool§channel_apply_lag: bool§gating_aura_id: u32§gating_aura_min_stacks: u8§cost_bypass_aura_id: u32§consume_aura_on_cast_id: u32§cooldown_bypass_aura_id: u32§execute_below_pct: f64§instant_cast_aura_id: u32§override_aura_id: u32§override_spell_id: u32§override_aura_min_stacks: u8§override_shares_base_cooldown: bool§override_preserves_aura: bool§guaranteed_crit: bool

Implementations§

Source§

impl BuilderSpellDef

Source

pub(crate) fn into_data(&self, ctx: &mut BuilderToRuntimeCtx<'_>) -> SpellData

Lower this builder def into its Copy engine-side data struct.

Generated by #[derive(LowerData)].

Source§

impl BuilderSpellDef

Source

pub(crate) fn from_draft( source: SpellDefinitionDraft, spell_id: u32, name: String, travel: SpellTravelData, cooldown: Option<CooldownDef>, damage_effect: DamageEffectRef, channel_tick_spell_id: u32, ) -> Self

Finalize an owned builder draft into this definition.

Generated by #[derive(LowerData)].

Trait Implementations§

Source§

impl Clone for BuilderSpellDef

Source§

fn clone(&self) -> BuilderSpellDef

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BuilderSpellDef

Source§

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

Formats the value using the given formatter. 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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

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> SpecConfig for T
where T: Any + Debug + Send,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
Source§

impl<T> ResolverSyncBound for T
where T: Sync + ?Sized,