wowlab_engine_content/generated/items/
heart_of_ancient_hunger.rs1#![allow(non_snake_case, dead_code)]
4use wowlab_engine_combat::{CombatSystemBuilder, AuraDefinitionDraft};
5use wowlab_engine_gamedata::{ItemBudget, ResolvedGameData};
6pub(crate) const ITEM_ID: u32 = 249_342;
8pub(crate) const DRIVER_SPELL_ID: u32 = 1_251_822;
10pub(crate) mod SPELL {}
11pub(crate) mod AURA {
12 pub(crate) const HUNGER: u32 = 1_262_753;
14}
15pub(crate) mod AURA_BINDING {
16 pub(crate) const HUNGER: wowlab_engine_combat::AuraBinding = wowlab_engine_combat::generated_identities::items::heart_of_ancient_hunger::HUNGER;
17}
18pub(crate) mod SPELL_BINDING {}
19pub(crate) const RPPM_BINDING: wowlab_engine_combat::RppmBinding = wowlab_engine_combat::generated_identities::items::heart_of_ancient_hunger::RPPM;
20pub(crate) mod DAMAGE_SPELL {}
21pub(crate) mod DAMAGE_AURA {
22 pub(crate) const HUNGER: wowlab_engine_combat::DamageActionId = wowlab_engine_combat::generated_identities::items::heart_of_ancient_hunger::damage::ACTION::SPELL_1262753;
23}
24pub(crate) mod DAMAGE_EFFECT {}
25fn aura_hunger(
26 a: AuraDefinitionDraft,
27 data: &ResolvedGameData,
28 budget: ItemBudget,
29) -> Result<AuraDefinitionDraft, wowlab_engine_combat::BuilderError> {
30 Ok(
31 a
32 .on_player()
33 .apply_base_from_data(data, 1_262_753)?
34 .max_stacks(
35 wowlab_engine_combat::validated_max_stacks(
36 12.0,
37 1_262_753,
38 "aura.max_stacks",
39 )?,
40 )
41 .rating_per_stack(
42 data,
43 wowlab_types::game::RatingType::Crit,
44 (data.coefficient(wowlab_types::sim::SpellIdx::from_raw(1_251_822), 1)
45 * budget.rating) / (12.0),
46 )?
47 .reverse()
48 .periodic_stack_tick(
49 wowlab_engine_combat::validated_milliseconds(
50 1000.0,
51 1_262_753,
52 "aura.stack_tick_ms",
53 )?,
54 )
55 .clip_tick_behavior(1),
56 )
57}
58pub(crate) fn register(
59 builder: CombatSystemBuilder,
60 data: &ResolvedGameData,
61 budget: ItemBudget,
62) -> CombatSystemBuilder {
63 let builder = builder
64 .effect_identities(
65 wowlab_engine_combat::generated_identities::items::heart_of_ancient_hunger::damage::ALL,
66 );
67
68 crate::items::register_item!(
69 builder, data, "Heart Of Ancient Hunger", rppm_driver : (RPPM_BINDING, ITEM_ID,
70 1_251_822), auras : (budget) [(AURA::HUNGER, AURA_BINDING::HUNGER, aura_hunger),]
71 )
72}