Skip to main content

wowlab_engine_content/hooks/items/
diamantine_voidcore.rs

1use 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}