Skip to main content

wowlab_engine_combat/state/program/effects/
bindings.rs

1#[cfg(feature = "rotation-optimizations")]
2use super::ActiveAuraEffectPlan;
3use super::LocalAuraIdx;
4#[cfg(not(feature = "rotation-optimizations"))]
5use super::{ActorExactEffectRanges, PlannedAuraEffect};
6
7#[derive(Debug, Default)]
8pub(super) struct RelevantEffectList {
9    pub(super) aura_locals: Box<[LocalAuraIdx]>,
10    pub(super) passive_driver_indexes: Box<[usize]>,
11}
12
13#[derive(Debug, Default)]
14pub(super) struct ActionSpellModifierBindings {
15    pub(super) passive_indexes: Box<[Box<[usize]>]>,
16    #[cfg(feature = "rotation-optimizations")]
17    pub(super) player_aura_plans: Box<[ActiveAuraEffectPlan]>,
18    #[cfg(not(feature = "rotation-optimizations"))]
19    pub(super) player_auras: Box<[Box<[PlannedAuraEffect]>]>,
20    pub(super) scoped_passive_indexes: Box<[Box<[usize]>]>,
21    #[cfg(feature = "rotation-optimizations")]
22    pub(super) scoped_aura_plans: Box<[ActiveAuraEffectPlan]>,
23    #[cfg(not(feature = "rotation-optimizations"))]
24    pub(super) scoped_actor_auras: Box<[ActorExactEffectRanges]>,
25    pub(super) damage_passive_indexes: Box<[Box<[usize]>]>,
26    #[cfg(feature = "rotation-optimizations")]
27    pub(super) damage_aura_plans: Box<[ActiveAuraEffectPlan]>,
28    #[cfg(not(feature = "rotation-optimizations"))]
29    pub(super) damage_actor_auras: Box<[ActorExactEffectRanges]>,
30    pub(super) cost_passive_indexes: Box<[Box<[usize]>]>,
31    #[cfg(feature = "rotation-optimizations")]
32    pub(super) cost_aura_plans: Box<[ActiveAuraEffectPlan]>,
33    #[cfg(not(feature = "rotation-optimizations"))]
34    pub(super) cost_actor_auras: Box<[ActorExactEffectRanges]>,
35}