Skip to main content

wowlab_engine_content/generated/items/
arcanoweave_cord.rs

1//! @generated by codegen-cli from manifests/items.toml (ARCANOWEAVE_CORD) -- do not edit by hand.
2// Generated code: naming follows game data conventions.
3#![allow(non_snake_case, dead_code)]
4use wowlab_engine_combat::{CombatSystemBuilder, AuraDefinitionDraft};
5use wowlab_engine_gamedata::{ItemBudget, ResolvedGameData};
6///<https://wowlab.gg/inspect/item/239664>
7pub(crate) const ITEM_ID: u32 = 239_664;
8///<https://wowlab.gg/inspect/spell/1241529>
9pub(crate) const DRIVER_SPELL_ID: u32 = 1_241_529;
10pub(crate) mod SPELL {}
11pub(crate) mod AURA {
12    ///<https://wowlab.gg/inspect/spell/1241530>
13    pub(crate) const ADROIT_INTUITION: u32 = 1_241_530;
14}
15pub(crate) mod AURA_BINDING {
16    pub(crate) const ADROIT_INTUITION: wowlab_engine_combat::AuraBinding = wowlab_engine_combat::generated_identities::items::arcanoweave_cord::ADROIT_INTUITION;
17}
18pub(crate) mod SPELL_BINDING {}
19pub(crate) const RPPM_BINDING: wowlab_engine_combat::RppmBinding = wowlab_engine_combat::generated_identities::items::arcanoweave_cord::RPPM;
20pub(crate) mod DAMAGE_SPELL {}
21pub(crate) mod DAMAGE_AURA {
22    pub(crate) const ADROIT_INTUITION: wowlab_engine_combat::DamageActionId = wowlab_engine_combat::generated_identities::items::arcanoweave_cord::damage::ACTION::SPELL_1241530;
23}
24pub(crate) mod DAMAGE_EFFECT {}
25fn aura_adroit_intuition(
26    a: AuraDefinitionDraft,
27    data: &ResolvedGameData,
28    budget: ItemBudget,
29) -> Result<AuraDefinitionDraft, wowlab_engine_combat::BuilderError> {
30    a.on_player()
31        .apply_base_from_data(data, 1_241_530)?
32        .max_stacks(
33            data
34                .require_aura_max_stacks(
35                    wowlab_types::sim::SpellIdx::from_raw(1_241_530),
36                )?,
37        )
38        .rating_per_stack(
39            data,
40            wowlab_types::game::RatingType::Mastery,
41            data.coefficient(wowlab_types::sim::SpellIdx::from_raw(1_241_529), 1)
42                * budget.rating,
43        )
44}
45pub(crate) fn register(
46    builder: CombatSystemBuilder,
47    data: &ResolvedGameData,
48    budget: ItemBudget,
49) -> CombatSystemBuilder {
50    let builder = builder
51        .effect_identities(
52            wowlab_engine_combat::generated_identities::items::arcanoweave_cord::damage::ALL,
53        );
54
55    crate::items::register_item!(
56        builder, data, "Arcanoweave Cord", rppm_driver : (RPPM_BINDING, ITEM_ID,
57        1_241_529), auras : (budget) [(AURA::ADROIT_INTUITION,
58        AURA_BINDING::ADROIT_INTUITION, aura_adroit_intuition),]
59    )
60}