diff --git a/src/perks/mod.rs b/src/perks/mod.rs index e8776050..e6ce08df 100644 --- a/src/perks/mod.rs +++ b/src/perks/mod.rs @@ -377,6 +377,10 @@ pub enum Perks { EnlightendAction = 3828510309, SwordLogic = 31345821, + //season 23 | year 6 + Onslaught = 95528736, + + //subclass OnYourMark = 3066103999, Hedrons = 3469412970, diff --git a/src/perks/perk_options_handler.rs b/src/perks/perk_options_handler.rs index dbdc5b4f..449f3631 100644 --- a/src/perks/perk_options_handler.rs +++ b/src/perks/perk_options_handler.rs @@ -290,6 +290,8 @@ fn hash_to_perk_option_data(_hash: u32) -> Option { Perks::HeadRush => Some(PerkOptionData::toggle()), Perks::EnlightendAction => Some(PerkOptionData::stacking(5)), Perks::SwordLogic => Some(PerkOptionData::stacking(4)), + //season 23 | year 6 + Perks::Onslaught => Some(PerkOptionData::stacking(3)), //exotics Perks::CranialSpike => Some(PerkOptionData::stacking(5)), diff --git a/src/perks/year_6_perks.rs b/src/perks/year_6_perks.rs index fdd42f28..343331b1 100644 --- a/src/perks/year_6_perks.rs +++ b/src/perks/year_6_perks.rs @@ -535,4 +535,49 @@ pub fn year_6_perks() { }, ), ); + add_fmr( + Perks::Onslaught, + Box::new(|_input: ModifierResponseInput| -> FiringModifierResponse { + let buff = match _input.value { + 0 => 1.0, + 1 => 0.84, + 2 => 0.72, + 3 => 0.63, + _ => 0.63, + }; + FiringModifierResponse { + burst_delay_scale: buff, + ..Default::default() + } + }), + ); + add_rsmr( + Perks::Onslaught, + Box::new(|_input: ModifierResponseInput| -> ReloadModifierResponse { + let buff = match _input.value { + 0 => 0, + 1 => 15, + 2 => 25, + 3 => 35, + _ => 35, + }; + ReloadModifierResponse { + reload_stat_add: buff, + ..Default::default() + } + }), + ); + add_sbr( + Perks::Onslaught, + Box::new(|_input: ModifierResponseInput| -> HashMap { + let buff = match _input.value { + 0 => 0, + 1 => 15, + 2 => 25, + 3 => 35, + _ => 35, + }; + HashMap::from([(StatHashes::RELOAD.into(), buff)]) + }), + ) }