Skip to content

Commit

Permalink
Ravager buff (#205)
Browse files Browse the repository at this point in the history
* buff

* .

* .
  • Loading branch information
Waselon authored Sep 4, 2024
1 parent 6c457e8 commit 095b665
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 3 deletions.
2 changes: 1 addition & 1 deletion code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -613,7 +613,7 @@ GLOBAL_LIST_INIT(xenoupgradetiers, list(XENO_UPGRADE_BASETYPE, XENO_UPGRADE_INVA
#define RAVAGER_RAGE_MIN_HEALTH_THRESHOLD 0.75 //The maximum % of HP we can have to trigger Rage
#define RAVAGER_RAGE_STAGGERSTUN_IMMUNE_THRESHOLD 0.5
#define RAVAGER_RAGE_ENDURE_INCREASE_PER_SLASH 2 SECONDS //The amount of time each slash during Rage increases Endure's duration
#define RAVAGER_RAGE_HEALTH_RECOVERY_PER_SLASH 60 //Maximum amount of healing from slash during Rage
#define RAVAGER_RAGE_HEALTH_RECOVERY_PER_SLASH 100 //Maximum amount of healing from slash during Rage

//crusher defines
#define CRUSHER_STOMP_LOWER_DMG 40
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,16 @@
ravage.clear_cooldown()
on_cooldown = TRUE

GLOB.round_statistics.ravager_rages++
SSblackbox.record_feedback("tally", "round_statistics", 1, "ravager_rages")

/mob/living/carbon/xenomorph/ravager/proc/drain_slash(datum/source, mob/living/target, damage, list/damage_mod, list/armor_mod)
SIGNAL_HANDLER
var/brute_damage = getBruteLoss()
var/burn_damage = getFireLoss()
if(!brute_damage && !burn_damage)
return
var/health_recovery = rage_power * RAVAGER_RAGE_HEALTH_RECOVERY_PER_SLASH
var/health_recovery = RAVAGER_RAGE_HEALTH_RECOVERY_PER_SLASH * rage_power
var/health_modifier
if(brute_damage)
health_modifier = -min(brute_damage, health_recovery)
Expand All @@ -99,7 +102,7 @@

var/datum/action/ability/xeno_action/endure/endure_ability = actions_by_path[/datum/action/ability/xeno_action/endure]
if(endure_ability.endure_duration) //Check if Endure is active
var/new_duration = min(RAVAGER_ENDURE_DURATION, (timeleft(endure_ability.endure_duration) + RAVAGER_RAGE_ENDURE_INCREASE_PER_SLASH * rage_power))
var/new_duration = min(RAVAGER_ENDURE_DURATION, (timeleft(endure_ability.endure_duration) + RAVAGER_RAGE_ENDURE_INCREASE_PER_SLASH))
deltimer(endure_ability.endure_duration) //Reset timers
deltimer(endure_ability.endure_warning_duration)
endure_ability.endure_duration = addtimer(CALLBACK(endure_ability, TYPE_PROC_REF(/datum/action/ability/xeno_action/endure, endure_deactivate)), new_duration, TIMER_UNIQUE|TIMER_STOPPABLE|TIMER_OVERRIDE)
Expand Down

0 comments on commit 095b665

Please sign in to comment.