From a354fb0ff301af0015b0b3fc4a1963af25261c72 Mon Sep 17 00:00:00 2001
From: harm brammer <harm@brammer.dev>
Date: Thu, 29 Aug 2024 16:46:24 -0400
Subject: [PATCH] add: doom fang pauldron (#100)

---
 src/perks/buff_perks.rs           | 14 ++++++++++++++
 src/perks/mod.rs                  |  1 +
 src/perks/perk_options_handler.rs |  2 +-
 3 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/perks/buff_perks.rs b/src/perks/buff_perks.rs
index f63dbeba..4cf1e4dd 100644
--- a/src/perks/buff_perks.rs
+++ b/src/perks/buff_perks.rs
@@ -346,4 +346,18 @@ pub fn buff_perks() {
             }
         }),
     );
+    add_dmr(
+        Perks::DoomFang,
+        Box::new(|_input: ModifierResponseInput| -> DamageModifierResponse {
+            if *_input.calc_data.damage_type != DamageType::VOID || _input.value == 0 {
+                return DamageModifierResponse::default();
+            }
+            let buff = surge_buff(_input.cached_data, _input.value, _input.pvp);
+            DamageModifierResponse {
+                impact_dmg_scale: buff,
+                explosive_dmg_scale: buff,
+                ..Default::default()
+            }
+        }),
+    );
 }
diff --git a/src/perks/mod.rs b/src/perks/mod.rs
index 52c74d9c..8bda5997 100644
--- a/src/perks/mod.rs
+++ b/src/perks/mod.rs
@@ -149,6 +149,7 @@ pub enum Perks {
     EternalWarrior = 926976844,
     TritonVice = 187957397,
     GlacialGuard = 185514250,
+    DoomFang = 1155472387,
 
     //parts
     ImpactCasing = 3796465595,
diff --git a/src/perks/perk_options_handler.rs b/src/perks/perk_options_handler.rs
index 49f429c0..8f362579 100644
--- a/src/perks/perk_options_handler.rs
+++ b/src/perks/perk_options_handler.rs
@@ -437,7 +437,7 @@ fn hash_to_perk_option_data(_hash: u32) -> Option<PerkOptionData> {
         Perks::PickYourPoison => Some(PerkOptionData::options(["ADS", "Hip-Fire"].to_vec())),
         Perks::StringTheory => Some(PerkOptionData::static_()),
         Perks::Judgement => Some(PerkOptionData::toggle()),
-
+        Perks::DoomFang => Some(PerkOptionData::stacking(4)),
 
         //misc
         Perks::UmbralSharpening => Some(PerkOptionData::stacking(5)),