@@ -361,9 +361,20 @@ var ItemSetRegaliaOfUndeadCleansing = core.NewItemSet(core.ItemSet{
361361 // Increases your damage against undead by 2%.
362362 3 : func (agent core.Agent ) {
363363 character := agent .GetCharacter ()
364- if character .CurrentTarget .MobType == proto .MobType_MobTypeUndead {
365- character .PseudoStats .DamageDealtMultiplier *= 1.02
366- }
364+ delta := 1.02
365+
366+ character .Env .RegisterPostFinalizeEffect (func () {
367+ for _ , target := range character .Env .Encounter .TargetUnits {
368+ if target .MobType != proto .MobType_MobTypeUndead {
369+ continue
370+ }
371+
372+ for _ , at := range character .AttackTables [target .UnitIndex ] {
373+ at .DamageDealtMultiplier *= delta
374+ at .CritMultiplier *= delta
375+ }
376+ }
377+ })
367378 },
368379 },
369380})
@@ -374,18 +385,20 @@ var ItemSetUndeadSlayersArmor = core.NewItemSet(core.ItemSet{
374385 // Increases your damage against undead by 2%.
375386 3 : func (agent core.Agent ) {
376387 character := agent .GetCharacter ()
377-
378388 delta := 1.02
379- for _ , target := range character .Env .Encounter .TargetUnits {
380- if target .MobType != proto .MobType_MobTypeUndead {
381- continue
382- }
383389
384- for _ , at := range character .AttackTables [target .UnitIndex ] {
385- at .DamageDealtMultiplier *= delta
386- at .CritMultiplier *= delta
390+ character .Env .RegisterPostFinalizeEffect (func () {
391+ for _ , target := range character .Env .Encounter .TargetUnits {
392+ if target .MobType != proto .MobType_MobTypeUndead {
393+ continue
394+ }
395+
396+ for _ , at := range character .AttackTables [target .UnitIndex ] {
397+ at .DamageDealtMultiplier *= delta
398+ at .CritMultiplier *= delta
399+ }
387400 }
388- }
401+ })
389402 },
390403 },
391404})
@@ -396,9 +409,20 @@ var ItemSetGarbOfTheUndeadSlayer = core.NewItemSet(core.ItemSet{
396409 // Increases your damage against undead by 2%.
397410 3 : func (agent core.Agent ) {
398411 character := agent .GetCharacter ()
399- if character .CurrentTarget .MobType == proto .MobType_MobTypeUndead {
400- character .PseudoStats .DamageDealtMultiplier *= 1.02
401- }
412+ delta := 1.02
413+
414+ character .Env .RegisterPostFinalizeEffect (func () {
415+ for _ , target := range character .Env .Encounter .TargetUnits {
416+ if target .MobType != proto .MobType_MobTypeUndead {
417+ continue
418+ }
419+
420+ for _ , at := range character .AttackTables [target .UnitIndex ] {
421+ at .DamageDealtMultiplier *= delta
422+ at .CritMultiplier *= delta
423+ }
424+ }
425+ })
402426 },
403427 },
404428})
@@ -409,9 +433,20 @@ var ItemSetBattlegearOfUndeadSlaying = core.NewItemSet(core.ItemSet{
409433 // Increases your damage against undead by 2%.
410434 3 : func (agent core.Agent ) {
411435 character := agent .GetCharacter ()
412- if character .CurrentTarget .MobType == proto .MobType_MobTypeUndead {
413- character .PseudoStats .DamageDealtMultiplier *= 1.02
414- }
436+ delta := 1.02
437+
438+ character .Env .RegisterPostFinalizeEffect (func () {
439+ for _ , target := range character .Env .Encounter .TargetUnits {
440+ if target .MobType != proto .MobType_MobTypeUndead {
441+ continue
442+ }
443+
444+ for _ , at := range character .AttackTables [target .UnitIndex ] {
445+ at .DamageDealtMultiplier *= delta
446+ at .CritMultiplier *= delta
447+ }
448+ }
449+ })
415450 },
416451 },
417452})
0 commit comments