From d6d69124f230cd4dd017dd2b8c2dcfb94781a906 Mon Sep 17 00:00:00 2001 From: Tereneckla Date: Wed, 7 Feb 2024 18:39:27 +0100 Subject: [PATCH] fix: disable OH weapon imbue without OH --- sim/core/consumes.go | 122 ++++++++++++++++++++++--------------------- 1 file changed, 62 insertions(+), 60 deletions(-) diff --git a/sim/core/consumes.go b/sim/core/consumes.go index 2eebc663ae..4fa9ca3e81 100644 --- a/sim/core/consumes.go +++ b/sim/core/consumes.go @@ -595,78 +595,80 @@ func applyConsumeEffects(agent Agent) { } switch consumes.WeaponMain { - case proto.WeaponImbue_ImbueAdamantiteSharpeningStone: - character.PseudoStats.BonusDamage += 12 - if character.Class != proto.Class_ClassHunter { + case proto.WeaponImbue_ImbueAdamantiteSharpeningStone: + character.PseudoStats.BonusDamage += 12 + if character.Class != proto.Class_ClassHunter { + character.AddStats(stats.Stats{ + stats.MeleeCrit: 14, + }) + } + + case proto.WeaponImbue_ImbueAdamantiteWeightStone: + character.PseudoStats.BonusDamage += 12 character.AddStats(stats.Stats{ stats.MeleeCrit: 14, }) - } - case proto.WeaponImbue_ImbueAdamantiteWeightStone: - character.PseudoStats.BonusDamage += 12 - character.AddStats(stats.Stats{ - stats.MeleeCrit: 14, - }) - - case proto.WeaponImbue_ImbueElementalSharpeningStone: - character.AddStat(stats.MeleeCrit, 28) + case proto.WeaponImbue_ImbueElementalSharpeningStone: + character.AddStat(stats.MeleeCrit, 28) - case proto.WeaponImbue_ImbueBrilliantManaOil: - character.AddStats(stats.Stats{ - stats.MP5: 12, - stats.SpellPower: 13, - }) + case proto.WeaponImbue_ImbueBrilliantManaOil: + character.AddStats(stats.Stats{ + stats.MP5: 12, + stats.SpellPower: 13, + }) - case proto.WeaponImbue_ImbueBrilliantWizardOil: - character.AddStats(stats.Stats{ - stats.SpellCrit: 14, - stats.MeleeCrit: 14, - stats.SpellPower: 36, - }) + case proto.WeaponImbue_ImbueBrilliantWizardOil: + character.AddStats(stats.Stats{ + stats.SpellCrit: 14, + stats.MeleeCrit: 14, + stats.SpellPower: 36, + }) - case proto.WeaponImbue_ImbueSuperiorWizardOil: - character.AddStat(stats.SpellPower, 42) + case proto.WeaponImbue_ImbueSuperiorWizardOil: + character.AddStat(stats.SpellPower, 42) - case proto.WeaponImbue_ImbueSuperiorManaOil: - character.AddStat(stats.MP5, 14) - } - switch consumes.WeaponOff { - case proto.WeaponImbue_ImbueAdamantiteSharpeningStone: - character.PseudoStats.BonusDamage += 12 - if character.Class != proto.Class_ClassHunter { + case proto.WeaponImbue_ImbueSuperiorManaOil: + character.AddStat(stats.MP5, 14) + } + if character.GetOHWeapon() != nil { + switch consumes.WeaponOff { + case proto.WeaponImbue_ImbueAdamantiteSharpeningStone: + character.PseudoStats.BonusDamage += 12 + if character.Class != proto.Class_ClassHunter { + character.AddStats(stats.Stats{ + stats.MeleeCrit: 14, + }) + } + + case proto.WeaponImbue_ImbueAdamantiteWeightStone: + character.PseudoStats.BonusDamage += 12 character.AddStats(stats.Stats{ stats.MeleeCrit: 14, }) + + case proto.WeaponImbue_ImbueElementalSharpeningStone: + character.AddStat(stats.MeleeCrit, 28) + + case proto.WeaponImbue_ImbueBrilliantManaOil: + character.AddStats(stats.Stats{ + stats.MP5: 12, + stats.SpellPower: 13, + }) + + case proto.WeaponImbue_ImbueBrilliantWizardOil: + character.AddStats(stats.Stats{ + stats.SpellCrit: 14, + stats.MeleeCrit: 14, + stats.SpellPower: 36, + }) + + case proto.WeaponImbue_ImbueSuperiorWizardOil: + character.AddStat(stats.SpellPower, 42) + + case proto.WeaponImbue_ImbueSuperiorManaOil: + character.AddStat(stats.MP5, 14) } - - case proto.WeaponImbue_ImbueAdamantiteWeightStone: - character.PseudoStats.BonusDamage += 12 - character.AddStats(stats.Stats{ - stats.MeleeCrit: 14, - }) - - case proto.WeaponImbue_ImbueElementalSharpeningStone: - character.AddStat(stats.MeleeCrit, 28) - - case proto.WeaponImbue_ImbueBrilliantManaOil: - character.AddStats(stats.Stats{ - stats.MP5: 12, - stats.SpellPower: 13, - }) - - case proto.WeaponImbue_ImbueBrilliantWizardOil: - character.AddStats(stats.Stats{ - stats.SpellCrit: 14, - stats.MeleeCrit: 14, - stats.SpellPower: 36, - }) - - case proto.WeaponImbue_ImbueSuperiorWizardOil: - character.AddStat(stats.SpellPower, 42) - - case proto.WeaponImbue_ImbueSuperiorManaOil: - character.AddStat(stats.MP5, 14) } registerPotionCD(agent, consumes)