diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index e7e63959..e674a78a 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -162,7 +162,9 @@ #define TRAIT_THERMAL_VISION "thermal_vision" #define TRAIT_CUM_PLUS "cum_plus" #define TRAIT_NEVER_CLONE "donotclone" - +#define TRAIT_COLDBLOODED "coldblooded" // Your body is literal room temperature. Does not make you immune to the temp. +#define TRAIT_FLIMSY "flimsy" //you have 20% less maxhealth +#define TRAIT_TOUGH "tough" //you have 10% more maxhealth // common trait sources #define TRAIT_GENERIC "generic" diff --git a/code/datums/traits/good.dm b/code/datums/traits/good.dm index 603951c8..64cf2df7 100644 --- a/code/datums/traits/good.dm +++ b/code/datums/traits/good.dm @@ -204,6 +204,25 @@ var/mob/living/M = quirk_holder M.blood_ratio = 1 +/datum/quirk/tough + name = "Tough" + desc = "Your body is abnormally enduring and can take 10% more damage." + value = 2 + mob_trait = TRAIT_TOUGH + medical_record_text = "Patient has an abnormally high capacity for injury." + gain_text = "You feel very sturdy." + lose_text = "You feel less sturdy." + var/healthchange = 0 + +/datum/quirk/tough/add() + var/mob/living/carbon/human/H = quirk_holder + healthchange = H.maxHealth * 0.1 + H.maxHealth = H.maxHealth * 1.1 + +/datum/quirk/tough/remove() + var/mob/living/carbon/human/H = quirk_holder + H.maxHealth += healthchange + /datum/quirk/draconicspeaker name = "Draconic speaker" desc = "Due to your time spent around lizards, you can speak Draconic!" diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index a690c63f..cfb1341f 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -373,4 +373,48 @@ desc = "You have filed a Do Not Clone order, stating that you do not wish to be cloned. You can still be revived by other means." value = -2 mob_trait = TRAIT_NEVER_CLONE - medical_record_text = "Patient has a DNC (Do not clone) order on file, and cannot be cloned as a result." \ No newline at end of file + medical_record_text = "Patient has a DNC (Do not clone) order on file, and cannot be cloned as a result." + +//Port from Citadel +/datum/quirk/blindness + name = "Blind" + desc = "You are completely blind, nothing can counteract this." + value = -4 + gain_text = "You can't see anything." + lose_text = "You miraculously gain back your vision." + medical_record_text = "Patient has permanent blindness." + +/datum/quirk/blindness/add() + quirk_holder.become_blind(ROUNDSTART_TRAIT) + +/datum/quirk/blindness/remove() + quirk_holder?.cure_blind(ROUNDSTART_TRAIT) + +//Port from Citadel +/datum/quirk/coldblooded + name = "Cold-blooded" + desc = "Your body doesn't create its own internal heat, requiring external heat regulation." + value = -2 + medical_record_text = "Patient is ectothermic." + mob_trait = TRAIT_COLDBLOODED + gain_text = "You feel cold-blooded." + lose_text = "You feel more warm-blooded." + +/datum/quirk/flimsy + name = "Flimsy" + desc = "Your body is a little more fragile then most, decreasing total health by 20%." + value = -2 + medical_record_text = "Patient has abnormally low capacity for injury." + mob_trait = TRAIT_FLIMSY + gain_text = "You feel like you could break with a single hit." + lose_text = "You feel more durable." + var/healthchange = 0 + +/datum/quirk/flimsy/add() + var/mob/living/carbon/human/H = quirk_holder + healthchange = H.maxHealth * 0.2 + H.maxHealth = H.maxHealth * 0.8 + +/datum/quirk/flimsy/remove() //how do admins even remove traits? + var/mob/living/carbon/human/H = quirk_holder + H.maxHealth += healthchange