wowlab_engine_content/generated/items/
house_of_cards.rs1#![allow(non_snake_case, dead_code)]
4use wowlab_engine_combat::{
5 CombatSystemBuilder, AuraDefinitionDraft, SpellDefinitionDraft,
6};
7use wowlab_engine_gamedata::{ItemBudget, ResolvedGameData};
8pub(crate) const ITEM_ID: u32 = 230_027;
10pub(crate) mod SPELL {
11 pub(crate) const USE: u32 = 466_681;
13}
14pub(crate) mod AURA {
15 pub(crate) const EQUIP: u32 = 466_680;
17}
18pub(crate) mod AURA_BINDING {
19 pub(crate) const EQUIP: wowlab_engine_combat::AuraBinding = wowlab_engine_combat::generated_identities::items::house_of_cards::EQUIP;
20}
21pub(crate) mod SPELL_BINDING {
22 pub(crate) const USE: wowlab_engine_combat::SpellBinding = wowlab_engine_combat::generated_identities::items::house_of_cards::SPELL_USE;
23}
24pub(crate) mod DAMAGE_SPELL {
25 pub(crate) const USE: wowlab_engine_combat::DamageActionId = wowlab_engine_combat::generated_identities::items::house_of_cards::damage::ACTION::SPELL_466681;
26}
27pub(crate) mod DAMAGE_AURA {
28 pub(crate) const EQUIP: wowlab_engine_combat::DamageActionId = wowlab_engine_combat::generated_identities::items::house_of_cards::damage::ACTION::SPELL_466680;
29}
30pub(crate) mod DAMAGE_EFFECT {}
31fn aura_equip(
32 a: AuraDefinitionDraft,
33 data: &ResolvedGameData,
34 _budget: ItemBudget,
35) -> Result<AuraDefinitionDraft, wowlab_engine_combat::BuilderError> {
36 Ok(
37 a
38 .on_player()
39 .apply_base_from_data(data, 466_680)?
40 .max_stacks(
41 data
42 .require_aura_max_stacks(
43 wowlab_types::sim::SpellIdx::from_raw(466_680),
44 )?,
45 ),
46 )
47}
48fn spell_use(
49 s: SpellDefinitionDraft,
50 data: &ResolvedGameData,
51) -> Result<SpellDefinitionDraft, wowlab_engine_combat::BuilderError> {
52 Ok(
53 s
54 .apply_cooldown_pools_from_data(data, 466_681)?
55 .on_cast(crate::hooks::items::house_of_cards::on_cast_use),
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::house_of_cards::damage::ALL,
66 );
67
68 crate::items::register_item!(
69 builder, data, "House Of Cards", auras : (budget) [(AURA::EQUIP,
70 AURA_BINDING::EQUIP, aura_equip),], spells : [(SPELL::USE, SPELL_BINDING::USE,
71 spell_use),]
72 )
73}