Fixes a few issues with get_wound_type()

Fixes damage causing "healing" wound types that can't bleed.
Fixes flesh wounds not bleeding the instant they heal any damage.
This commit is contained in:
mwerezak
2014-08-11 20:01:13 -04:00
committed by ZomgPonies
parent df900e05cb
commit 8d04e8b9c6
2 changed files with 13 additions and 12 deletions
+10 -10
View File
@@ -269,22 +269,22 @@ This function completely restores a damaged organ to perfect condition.
wounds += W
/datum/organ/external/proc/get_wound_type(var/type = CUT, var/damage)
//if you look a the names in the wound's stages list for each wound type you will see the logic behind these values
//if you look a the names in the wound's stages list for each wound type you will see the logic behind these values.
switch(type)
if(CUT)
if (damage <= 5) return /datum/wound/cut/small
if (damage <= 15) return /datum/wound/cut/deep
if (damage <= 25) return /datum/wound/cut/flesh
if (damage <= 50) return /datum/wound/cut/gaping
if (damage <= 60) return /datum/wound/cut/gaping_big
if (damage < 15) return /datum/wound/cut/small
if (damage < 25) return /datum/wound/cut/deep
if (damage < 50) return /datum/wound/cut/flesh
if (damage < 60) return /datum/wound/cut/gaping
if (damage < 70) return /datum/wound/cut/gaping_big
return /datum/wound/cut/massive
if(BRUISE)
return /datum/wound/bruise
if(BURN)
if (damage <= 5) return /datum/wound/burn/moderate
if (damage <= 15) return /datum/wound/burn/large
if (damage <= 30) return /datum/wound/burn/severe
if (damage <= 40) return /datum/wound/burn/deep
if (damage < 15) return /datum/wound/burn/moderate
if (damage < 30) return /datum/wound/burn/large
if (damage < 40) return /datum/wound/burn/severe
if (damage < 50) return /datum/wound/burn/deep
return /datum/wound/burn/carbonised
/****************************************************
+3 -2
View File
@@ -220,7 +220,7 @@
damage_type = CUT
/datum/wound/cut/flesh
max_bleeding_stage = 3
max_bleeding_stage = 4
stages = list("ugly ripped flesh wound" = 35, "ugly flesh wound" = 30, "flesh wound" = 25, "blood soaked clot" = 15, "large scab" = 5, "fresh skin" = 0)
damage_type = CUT
@@ -268,6 +268,7 @@ datum/wound/cut/massive
stages = list("carbonised area" = 50, "treated carbonised area" = 20, "massive burn scar" = 0)
damage_type = BURN
/** INTERNAL BLEEDING **/
/datum/wound/internal_bleeding
internal = 1
stages = list("severed vein" = 30, "cut vein" = 20, "damaged vein" = 10, "bruised vein" = 5)
@@ -284,4 +285,4 @@ datum/wound/cut/massive
return 0 //cannot be merged
/datum/wound/lost_limb/small
stages = list("ripped stump" = 40, "bloody stump" = 30, "clotted stump" = 15, "scarred stump" = 0)
stages = list("ripped stump" = 40, "bloody stump" = 30, "clotted stump" = 15, "scarred stump" = 0)