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}
15fn aura_hunger(
16 a: AuraDefinitionDraft,
17 data: &ResolvedGameData,
18 budget: ItemBudget,
19) -> Result<AuraDefinitionDraft, wowlab_engine_combat::BuilderError> {
20 Ok(
21 a
22 .on_player()
23 .apply_base_from_data(data, 1_262_753)?
24 .max_stacks(
25 wowlab_engine_combat::validated_max_stacks(
26 12.0,
27 1_262_753,
28 "aura.max_stacks",
29 )?,
30 )
31 .rating_per_stack(
32 data,
33 wowlab_types::game::RatingType::Crit,
34 (data.coefficient(wowlab_types::sim::SpellIdx::from_raw(1_251_822), 1)
35 * budget.rating) / (12.0),
36 )?
37 .reverse()
38 .periodic_stack_tick(
39 wowlab_engine_combat::validated_milliseconds(
40 1000.0,
41 1_262_753,
42 "aura.stack_tick_ms",
43 )?,
44 )
45 .clip_tick_behavior(1),
46 )
47}
48pub(crate) fn register(
49 builder: CombatSystemBuilder,
50 data: &ResolvedGameData,
51 budget: ItemBudget,
52) -> CombatSystemBuilder {
53 crate::items::register_item!(
54 builder, data, "Heart Of Ancient Hunger", rppm_driver : (ITEM_ID, 1_251_822),
55 auras : (budget) [(AURA::HUNGER, aura_hunger),]
56 )
57}