@@ -290,42 +290,21 @@ func init() {
290
290
},
291
291
}).AttachMultiplicativePseudoStatBuff (& character .PseudoStats .SchoolDamageDealtMultiplier [stats .SchoolIndexNature ], 1.20 )
292
292
293
+ dpm := character .AutoAttacks .NewDynamicProcManagerForWeaponEffect (CrimsonCleaver , 1.0 , 0 )
294
+
293
295
core .MakeProcTriggerAura (& character .Unit , core.ProcTrigger {
294
- Name : "Crimson Cleaver Trigger" ,
295
- Callback : core .CallbackOnSpellHitDealt ,
296
- Outcome : core .OutcomeLanded ,
297
- ProcMask : core .ProcMaskMelee ,
298
- PPM : 1.0 ,
299
- ICD : time .Millisecond * 100 ,
296
+ Name : "Crimson Cleaver Trigger" ,
297
+ Callback : core .CallbackOnSpellHitDealt ,
298
+ Outcome : core .OutcomeLanded ,
299
+ SpellFlagsExclude : core .SpellFlagSuppressWeaponProcs ,
300
+ DPM : dpm ,
301
+ ICD : time .Millisecond * 100 ,
300
302
Handler : func (sim * core.Simulation , spell * core.Spell , result * core.SpellResult ) {
301
303
buffAura .Activate (sim )
302
304
buffAura .SetStacks (sim , buffAura .MaxStacks )
303
305
},
304
306
})
305
307
})
306
- // itemhelpers.CreateWeaponProcAura(CrimsonCleaver, "Crimson Cleaver", 1.0, func(character *core.Character) *core.Aura {
307
- // duration := time.Second * 12
308
- // icd := core.Cooldown{
309
- // Timer: character.NewTimer(),
310
- // Duration: time.Millisecond * 100,
311
- // }
312
-
313
- // // Confirmed on Wago - Harmful Spells and Melee Specials, plus Can proc from procs
314
- // procMask := core.ProcMaskMeleeSpecial | core.ProcMaskMeleeDamageProc | core.ProcMaskSpellDamage | core.ProcMaskSpellDamageProc
315
-
316
- // return character.RegisterAura(core.Aura{
317
- // ActionID: core.ActionID{SpellID: 1231456},
318
- // Label: "Crimson Crusade",
319
- // Duration: duration,
320
- // MaxStacks: 2,
321
- // OnSpellHitDealt: func(aura *core.Aura, sim *core.Simulation, spell *core.Spell, result *core.SpellResult) {
322
- // if spell.ProcMask.Matches(procMask) && spell.SpellSchool.Matches(core.SpellSchoolNature) && icd.IsReady(sim) {
323
- // icd.Use(sim)
324
- // aura.RemoveStack(sim)
325
- // }
326
- // },
327
- // }).AttachMultiplicativePseudoStatBuff(&character.PseudoStats.SchoolDamageDealtMultiplier[stats.SchoolIndexNature], 1.20)
328
- // })
329
308
330
309
// https://www.wowhead.com/classic-ptr/item=240922/deception
331
310
// Equip: 2% chance on melee hit to gain 1 extra attack. (Proc chance: 2%, 100ms cooldown)
@@ -689,42 +668,21 @@ func init() {
689
668
FloatValue : 1 / 1.20 ,
690
669
})
691
670
671
+ dpm := character .AutoAttacks .NewDynamicProcManagerForWeaponEffect (Mercy , 1.0 , 0.00 )
672
+
692
673
core .MakeProcTriggerAura (& character .Unit , core.ProcTrigger {
693
- Name : "Mercy Trigger" ,
694
- Callback : core .CallbackOnSpellHitDealt ,
695
- Outcome : core .OutcomeLanded ,
696
- ProcMask : core .ProcMaskMelee ,
697
- PPM : 1.0 ,
698
- ICD : time .Millisecond * 100 ,
674
+ Name : "Mercy Trigger" ,
675
+ Callback : core .CallbackOnSpellHitDealt ,
676
+ Outcome : core .OutcomeLanded ,
677
+ SpellFlagsExclude : core .SpellFlagSuppressWeaponProcs ,
678
+ DPM : dpm ,
679
+ ICD : time .Millisecond * 100 ,
699
680
Handler : func (sim * core.Simulation , spell * core.Spell , result * core.SpellResult ) {
700
681
buffAura .Activate (sim )
701
682
buffAura .SetStacks (sim , buffAura .MaxStacks )
702
683
},
703
684
})
704
685
})
705
- // itemhelpers.CreateWeaponProcAura(Mercy, "Mercy", 1.0, func(character *core.Character) *core.Aura {
706
- // duration := time.Second * 12
707
- // icd := core.Cooldown{
708
- // Timer: character.NewTimer(),
709
- // Duration: time.Millisecond * 100,
710
- // }
711
-
712
- // // Confirmed on Wago - Harmful Spells and Melee Specials, plus Can proc from procs
713
- // procMask := core.ProcMaskMeleeSpecial | core.ProcMaskMeleeDamageProc | core.ProcMaskSpellDamage | core.ProcMaskSpellDamageProc
714
-
715
- // return character.RegisterAura(core.Aura{
716
- // ActionID: core.ActionID{SpellID: 1231498},
717
- // Label: "Mercy by Fire",
718
- // Duration: duration,
719
- // MaxStacks: 2,
720
- // OnSpellHitDealt: func(aura *core.Aura, sim *core.Simulation, spell *core.Spell, result *core.SpellResult) {
721
- // if spell.ProcMask.Matches(procMask) && spell.SpellSchool.Matches(core.SpellSchoolFire) && icd.IsReady(sim) {
722
- // icd.Use(sim)
723
- // aura.RemoveStack(sim)
724
- // }
725
- // },
726
- // }).AttachMultiplicativePseudoStatBuff(&character.PseudoStats.SchoolDamageDealtMultiplier[stats.SchoolIndexFire], 1.20)
727
- // })
728
686
729
687
// https://www.wowhead.com/classic-ptr/item=241003/mirage-rod-of-illusion
730
688
// Equip: Chance on landing a damaging spell to create a Mirage on top of your target that deals arcane damage to nearby enemies for 30 sec. (Proc chance: 10%, 30s cooldown)
0 commit comments