mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-07-20 19:44:46 +01:00
Merge pull request #3251 from VOREStation/aro-healallrobot
Heal robolimbs when you heal everything
This commit is contained in:
@@ -108,7 +108,8 @@
|
||||
amount += O.burn_dam
|
||||
return amount
|
||||
|
||||
/mob/living/carbon/human/adjustBruteLoss(var/amount)
|
||||
//'include_robo' only applies to healing, for legacy purposes, as all damage typically hurts both types of organs
|
||||
/mob/living/carbon/human/adjustBruteLoss(var/amount,var/include_robo)
|
||||
amount = amount*species.brute_mod
|
||||
if(amount > 0)
|
||||
for(var/datum/modifier/M in modifiers)
|
||||
@@ -122,10 +123,11 @@
|
||||
for(var/datum/modifier/M in modifiers)
|
||||
if(!isnull(M.incoming_healing_percent))
|
||||
amount *= M.incoming_healing_percent
|
||||
heal_overall_damage(-amount, 0)
|
||||
heal_overall_damage(-amount, 0, include_robo)
|
||||
BITSET(hud_updateflag, HEALTH_HUD)
|
||||
|
||||
/mob/living/carbon/human/adjustFireLoss(var/amount)
|
||||
//'include_robo' only applies to healing, for legacy purposes, as all damage typically hurts both types of organs
|
||||
/mob/living/carbon/human/adjustFireLoss(var/amount,var/include_robo)
|
||||
amount = amount*species.burn_mod
|
||||
if(amount > 0)
|
||||
for(var/datum/modifier/M in modifiers)
|
||||
@@ -139,7 +141,7 @@
|
||||
for(var/datum/modifier/M in modifiers)
|
||||
if(!isnull(M.incoming_healing_percent))
|
||||
amount *= M.incoming_healing_percent
|
||||
heal_overall_damage(0, -amount)
|
||||
heal_overall_damage(0, -amount, include_robo)
|
||||
BITSET(hud_updateflag, HEALTH_HUD)
|
||||
|
||||
/mob/living/carbon/human/proc/adjustBruteLossByPart(var/amount, var/organ_name, var/obj/damage_source = null)
|
||||
@@ -352,7 +354,8 @@ In most cases it makes more sense to use apply_damage() instead! And make sure t
|
||||
|
||||
|
||||
//Heal MANY external organs, in random order
|
||||
/mob/living/carbon/human/heal_overall_damage(var/brute, var/burn)
|
||||
//'include_robo' only applies to healing, for legacy purposes, as all damage typically hurts both types of organs
|
||||
/mob/living/carbon/human/heal_overall_damage(var/brute, var/burn, var/include_robo)
|
||||
var/list/obj/item/organ/external/parts = get_damaged_organs(brute,burn)
|
||||
|
||||
var/update = 0
|
||||
@@ -362,7 +365,7 @@ In most cases it makes more sense to use apply_damage() instead! And make sure t
|
||||
var/brute_was = picked.brute_dam
|
||||
var/burn_was = picked.burn_dam
|
||||
|
||||
update |= picked.heal_damage(brute,burn)
|
||||
update |= picked.heal_damage(brute,burn,robo_repair = include_robo)
|
||||
|
||||
brute -= (brute_was-picked.brute_dam)
|
||||
burn -= (burn_was-picked.burn_dam)
|
||||
|
||||
@@ -291,7 +291,8 @@ default behaviour is:
|
||||
/mob/living/proc/getActualBruteLoss() // Mostly for humans with robolimbs.
|
||||
return getBruteLoss()
|
||||
|
||||
/mob/living/proc/adjustBruteLoss(var/amount)
|
||||
//'include_robo' only applies to healing, for legacy purposes, as all damage typically hurts both types of organs
|
||||
/mob/living/proc/adjustBruteLoss(var/amount,var/include_robo)
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
|
||||
if(amount > 0)
|
||||
@@ -365,7 +366,8 @@ default behaviour is:
|
||||
/mob/living/proc/getActualFireLoss() // Mostly for humans with robolimbs.
|
||||
return getFireLoss()
|
||||
|
||||
/mob/living/proc/adjustFireLoss(var/amount)
|
||||
//'include_robo' only applies to healing, for legacy purposes, as all damage typically hurts both types of organs
|
||||
/mob/living/proc/adjustFireLoss(var/amount,var/include_robo)
|
||||
if(status_flags & GODMODE) return 0 //godmode
|
||||
if(amount > 0)
|
||||
for(var/datum/modifier/M in modifiers)
|
||||
|
||||
Reference in New Issue
Block a user