wowlab_engine_content/hooks/items/
diamantine_voidcore.rs1use wowlab_engine_combat::{AuraOps as _, DamageOps as _, HookCtx, ProcOps as _};
2
3use crate::generated::items::diamantine_voidcore::{AURA, ITEM_ID};
4
5const MAX_SHARDS: i32 = 8;
6
7pub(crate) fn on_player_cast(ctx: &mut HookCtx<'_>) {
8 if !ctx.roll_item_rppm(ITEM_ID) {
9 return;
10 }
11
12 ctx.apply_aura_id(AURA::EQUIP);
13
14 if ctx.aura_stacks_id(AURA::EQUIP) >= MAX_SHARDS {
15 ctx.deal_item_damage_sp(AURA::EQUIP);
16 ctx.expire_aura_id(AURA::EQUIP);
17 }
18}