mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 10:43:20 +00:00
Merge branch 'master' of https://github.com/Yawn-Wider/YWPolarisVore into August2020UpstreamPull
August2020UpstreamPull
This commit is contained in:
@@ -2,10 +2,13 @@
|
||||
BLOOD SYSTEM
|
||||
****************************************************/
|
||||
//Blood levels. These are percentages based on the species blood_volume var.
|
||||
//Retained for archival/reference purposes - KK
|
||||
/*
|
||||
var/const/BLOOD_VOLUME_SAFE = 85
|
||||
var/const/BLOOD_VOLUME_OKAY = 75
|
||||
var/const/BLOOD_VOLUME_BAD = 60
|
||||
var/const/BLOOD_VOLUME_SURVIVE = 40
|
||||
*/
|
||||
var/const/CE_STABLE_THRESHOLD = 0.5
|
||||
|
||||
/mob/living/carbon/human/var/datum/reagents/vessel // Container for blood and BLOOD ONLY. Do not transfer other chems here.
|
||||
@@ -88,22 +91,22 @@ var/const/CE_STABLE_THRESHOLD = 0.5
|
||||
// dmg_coef = min(1, 10/chem_effects[CE_STABLE]) //TODO: add effect for increased damage
|
||||
// threshold_coef = min(dmg_coef / CE_STABLE_THRESHOLD, 1)
|
||||
|
||||
if(blood_volume >= BLOOD_VOLUME_SAFE)
|
||||
if(blood_volume_raw >= species.blood_volume*species.blood_level_safe)
|
||||
if(pale)
|
||||
pale = 0
|
||||
update_icons_body()
|
||||
else if(blood_volume >= BLOOD_VOLUME_OKAY)
|
||||
else if(blood_volume_raw >= species.blood_volume*species.blood_level_warning)
|
||||
if(!pale)
|
||||
pale = 1
|
||||
update_icons_body()
|
||||
var/word = pick("dizzy","woosey","faint")
|
||||
to_chat(src, "<font color='red'>You feel [word]</font>")
|
||||
var/word = pick("dizzy","woozy","faint","disoriented","unsteady")
|
||||
to_chat(src, "<font color='red'>You feel slightly [word]</font>")
|
||||
if(prob(1))
|
||||
var/word = pick("dizzy","woosey","faint")
|
||||
var/word = pick("dizzy","woozy","faint","disoriented","unsteady")
|
||||
to_chat(src, "<font color='red'>You feel [word]</font>")
|
||||
if(getOxyLoss() < 20 * threshold_coef)
|
||||
adjustOxyLoss(3 * dmg_coef)
|
||||
else if(blood_volume >= BLOOD_VOLUME_BAD)
|
||||
else if(blood_volume_raw >= species.blood_volume*species.blood_level_danger)
|
||||
if(!pale)
|
||||
pale = 1
|
||||
update_icons_body()
|
||||
@@ -113,13 +116,13 @@ var/const/CE_STABLE_THRESHOLD = 0.5
|
||||
adjustOxyLoss(1 * dmg_coef)
|
||||
if(prob(15))
|
||||
Paralyse(rand(1,3))
|
||||
var/word = pick("dizzy","woosey","faint")
|
||||
to_chat(src, "<font color='red'>You feel extremely [word]</font>")
|
||||
else if(blood_volume >= BLOOD_VOLUME_SURVIVE)
|
||||
var/word = pick("dizzy","woozy","faint","disoriented","unsteady")
|
||||
to_chat(src, "<font color='red'>You feel dangerously [word]</font>")
|
||||
else if(blood_volume_raw >= species.blood_volume*species.blood_level_fatal)
|
||||
adjustOxyLoss(5 * dmg_coef)
|
||||
// adjustToxLoss(3 * dmg_coef)
|
||||
if(prob(15))
|
||||
var/word = pick("dizzy","woosey","faint")
|
||||
var/word = pick("dizzy","woozy","faint","disoriented","unsteady")
|
||||
to_chat(src, "<font color='red'>You feel extremely [word]</font>")
|
||||
else //Not enough blood to survive (usually)
|
||||
if(!pale)
|
||||
@@ -131,7 +134,7 @@ var/const/CE_STABLE_THRESHOLD = 0.5
|
||||
adjustOxyLoss(75 * dmg_coef) // 15 more than dexp fixes (also more than dex+dexp+tricord)
|
||||
|
||||
// Without enough blood you slowly go hungry.
|
||||
if(blood_volume < BLOOD_VOLUME_SAFE)
|
||||
if(blood_volume_raw < species.blood_volume*species.blood_level_safe)
|
||||
if(nutrition >= 300)
|
||||
adjust_nutrition(-10)
|
||||
else if(nutrition >= 200)
|
||||
|
||||
@@ -525,7 +525,7 @@ This function completely restores a damaged organ to perfect condition.
|
||||
//Burn damage can cause fluid loss due to blistering and cook-off
|
||||
|
||||
if((damage > 5 || damage + burn_dam >= 15) && type == BURN && (robotic < ORGAN_ROBOT) && !(species.flags & NO_BLOOD))
|
||||
var/fluid_loss = 0.4 * (damage/(owner.getMaxHealth() - config.health_threshold_dead)) * owner.species.blood_volume*(1 - BLOOD_VOLUME_SURVIVE/100)
|
||||
var/fluid_loss = 0.4 * (damage/(owner.getMaxHealth() - config.health_threshold_dead)) * owner.species.blood_volume*(1 - owner.species.blood_level_fatal)
|
||||
owner.remove_blood(fluid_loss)
|
||||
|
||||
// first check whether we can widen an existing wound
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
/obj/item/organ/external
|
||||
var/transparent = 0 //For better slime limbs
|
||||
|
||||
//Sideways override for nanoform limbs (ugh)
|
||||
/obj/item/organ/external/robotize(var/company, var/skip_prosthetics = FALSE, var/keep_organs = FALSE)
|
||||
var/original_robotic = robotic
|
||||
|
||||
@@ -206,7 +206,7 @@ var/global/list/limb_icon_cache = list()
|
||||
|
||||
/obj/item/organ/external/proc/apply_colouration(var/icon/applying)
|
||||
|
||||
if(nonsolid)
|
||||
if(transparent) //VOREStation edit
|
||||
applying.MapColors("#4D4D4D","#969696","#1C1C1C", "#000000")
|
||||
if(species && species.get_bodytype(owner) != SPECIES_HUMAN)
|
||||
applying.SetIntensity(1) // Unathi, Taj and Skrell have -very- dark base icons. VOREStation edit fixes this and brings the number back to 1
|
||||
@@ -235,7 +235,7 @@ var/global/list/limb_icon_cache = list()
|
||||
//VOREStation Edit End
|
||||
|
||||
// Translucency.
|
||||
if(nonsolid) applying += rgb(,,,180) // SO INTUITIVE TY BYOND
|
||||
if(transparent) applying += rgb(,,,180) // SO INTUITIVE TY BYOND //VOREStation Edit
|
||||
|
||||
return applying
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ mob/living/carbon/human/proc/handle_pain()
|
||||
maxdam = dam
|
||||
if(damaged_organ && chem_effects[CE_PAINKILLER] < maxdam)
|
||||
if(maxdam > 10 && paralysis)
|
||||
paralysis = max(0, paralysis - round(maxdam/10))
|
||||
AdjustParalysis(-round(maxdam/10))
|
||||
if(maxdam > 50 && prob(maxdam / 5))
|
||||
drop_item()
|
||||
var/burning = damaged_organ.burn_dam > damaged_organ.brute_dam
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
// tucker0666 : Frost
|
||||
/datum/robolimb/zenghu_frost
|
||||
company = "Zeng-Hu"
|
||||
company = "Zeng-Hu (Custom)"
|
||||
desc = "This limb has realistic synthetic flesh covering with 'blue accents'."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/_fluff_vr/Frosty.dmi'
|
||||
blood_color = "#45ccff"
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
/datum/robolimb/xionalt
|
||||
company = "Xion (alt yw)."
|
||||
desc = "Xion brand prosthetic limbs."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/xion/xion_alt5.dmi' //Sprited by: Generalpantsu
|
||||
icon = 'icons/mob/human_races/cyberlimbs/xion/xion_alt5.dmi' //Sprited by: Whiteout
|
||||
|
||||
/datum/robolimb/aphrodite_cyberdoe
|
||||
company = "Aphrodite - Cyberdoe"
|
||||
|
||||
32
code/modules/organs/subtypes/slime_vr.dm
Normal file
32
code/modules/organs/subtypes/slime_vr.dm
Normal file
@@ -0,0 +1,32 @@
|
||||
/obj/item/organ/external/chest/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/groin/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/arm/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/arm/right/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/leg/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/leg/right/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/foot/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/foot/right/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/hand/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/hand/right/unbreakable/slime
|
||||
transparent = 1
|
||||
|
||||
/obj/item/organ/external/head/unbreakable/slime
|
||||
transparent = 1
|
||||
Reference in New Issue
Block a user