mirror of
https://github.com/KabKebab/GS13.git
synced 2026-07-13 00:47:42 +01:00
Merge pull request #253 from sheepishgoat/fattening-damage-type
Fattening Damage Type
This commit is contained in:
@@ -43,6 +43,8 @@
|
||||
//citadel code
|
||||
if(AROUSAL)
|
||||
adjustArousalLoss(damage * hit_percent)
|
||||
if(FAT)
|
||||
applyFatnessDamage(damage * hit_percent)
|
||||
return TRUE
|
||||
|
||||
|
||||
@@ -120,6 +122,12 @@
|
||||
adjustStaminaLoss(diff, updating, forced)
|
||||
|
||||
|
||||
/mob/living/carbon/applyFatnessDamage(amount)
|
||||
var/fat_to_add = ((amount * CONFIG_GET(number/damage_multiplier)) * FAT_DAMAGE_TO_FATNESS)
|
||||
adjust_fatness(fat_to_add, FATTENING_TYPE_WEAPON)
|
||||
return fat_to_add
|
||||
|
||||
|
||||
/** adjustOrganLoss
|
||||
* inputs: slot (organ slot, like ORGAN_SLOT_HEART), amount (damage to be done), and maximum (currently an arbitrarily large number, can be set so as to limit damage)
|
||||
* outputs:
|
||||
|
||||
@@ -2461,6 +2461,8 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
||||
H.adjustOrganLoss(ORGAN_SLOT_BRAIN, damage * hit_percent * H.physiology.brain_mod)
|
||||
if(AROUSAL) //Citadel edit - arousal
|
||||
H.adjustArousalLoss(damage * hit_percent)
|
||||
if(FAT)
|
||||
H.applyFatnessDamage(damage * hit_percent)
|
||||
return 1
|
||||
|
||||
/datum/species/proc/on_hit(obj/item/projectile/P, mob/living/carbon/human/H)
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
adjustCloneLoss(damage * hit_percent)
|
||||
if(STAMINA)
|
||||
adjustStaminaLoss(damage * hit_percent)
|
||||
if(FAT)
|
||||
applyFatnessDamage(damage * hit_percent)
|
||||
return 1
|
||||
|
||||
/mob/living/proc/apply_damage_type(damage = 0, damagetype = BRUTE) //like apply damage except it always uses the damage procs
|
||||
@@ -41,6 +43,8 @@
|
||||
return adjustCloneLoss(damage)
|
||||
if(STAMINA)
|
||||
return adjustStaminaLoss(damage)
|
||||
if(FAT)
|
||||
return applyFatnessDamage(damage)
|
||||
|
||||
/mob/living/proc/get_damage_amount(damagetype = BRUTE)
|
||||
switch(damagetype)
|
||||
@@ -58,7 +62,7 @@
|
||||
return getStaminaLoss()
|
||||
|
||||
|
||||
/mob/living/proc/apply_damages(brute = 0, burn = 0, tox = 0, oxy = 0, clone = 0, def_zone = null, blocked = FALSE, stamina = 0, brain = 0)
|
||||
/mob/living/proc/apply_damages(brute = 0, burn = 0, tox = 0, oxy = 0, clone = 0, def_zone = null, blocked = FALSE, stamina = 0, brain = 0, fatness = 0)
|
||||
if(blocked >= 100)
|
||||
return 0
|
||||
if(brute)
|
||||
@@ -75,6 +79,8 @@
|
||||
apply_damage(stamina, STAMINA, def_zone, blocked)
|
||||
if(brain)
|
||||
apply_damage(brain, BRAIN, def_zone, blocked)
|
||||
if(fatness)
|
||||
apply_damage(fatness, FAT, def_zone, blocked)
|
||||
return 1
|
||||
|
||||
|
||||
@@ -230,6 +236,10 @@
|
||||
/mob/living/proc/setStaminaLoss(amount, updating_stamina = TRUE, forced = FALSE)
|
||||
return
|
||||
|
||||
/// Apply fatness damage from weapons or items that have the fatness damage type.
|
||||
/mob/living/proc/applyFatnessDamage(amount)
|
||||
return
|
||||
|
||||
// heal ONE external organ, organ gets randomly selected from damaged ones.
|
||||
/mob/living/proc/heal_bodypart_damage(brute = 0, burn = 0, stamina = 0, updating_health = TRUE)
|
||||
adjustBruteLoss(-brute, FALSE) //zero as argument for no instant health update
|
||||
|
||||
Reference in New Issue
Block a user