mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-22 08:01:06 +00:00
As a continuation of #9389 As a bonus, any drugs that mentioned their IRL counterpart in their description now describe their predecessor as ancient, and the new ones as modern. The biggest difference here is just the Antihistamine which was given a full new name. They're similar enough that they'll be recognized (most of them) but different enough for us to call our own and not care what the real medicines are/do since these are our sci-fantasy versions just inspired by them.
59 lines
2.2 KiB
Plaintext
59 lines
2.2 KiB
Plaintext
//Brain Traumas are the new actual brain damage. Brain damage itself acts as a way to acquire traumas: every time brain damage is dealt, there's a chance of receiving a trauma.
|
|
//This chance gets higher the higher the mob's brainloss is. Removing traumas is a separate thing from removing brain damage: you can get restored to full brain operativity,
|
|
//but keep the quirks, until repaired by Cataleptinol (for mild/special ones) or brain surgery (for severe ones).
|
|
/datum/brain_trauma
|
|
var/name = "Brain Trauma"
|
|
var/desc = "A trauma caused by brain damage, which causes issues to the patient."
|
|
var/scan_desc = "a generic brain trauma" //description when detected by a health scanner
|
|
var/mob/living/carbon/owner //the poor bastard
|
|
var/obj/item/organ/internal/brain/brain //the poor bastard's brain
|
|
var/gain_text = "<span class='notice'>You feel traumatized.</span>"
|
|
var/lose_text = "<span class='notice'>You no longer feel traumatized.</span>"
|
|
var/can_gain = TRUE //can this be gained through random traumas?
|
|
var/permanent = FALSE //can this be cured?
|
|
var/suppressed = 0 //currently being suppressed
|
|
var/cure_type //type of therapy that cures the trauma
|
|
//current cures:
|
|
//CURE_HYPNOSIS - cures traumas that alter behavior
|
|
//CURE_SOLITUDE - cures traumas that produce hallucination
|
|
//CURE_CRYSTAL - cures traumas that have physical effects
|
|
//CURE_SURGERY - cures traumas not covered above
|
|
|
|
/datum/brain_trauma/New(obj/item/organ/internal/brain/B, _permanent)
|
|
brain = B
|
|
owner = B.owner
|
|
permanent = _permanent
|
|
if(owner)
|
|
on_gain()
|
|
|
|
/datum/brain_trauma/Destroy()
|
|
brain.traumas -= src
|
|
if(owner)
|
|
on_lose()
|
|
brain = null
|
|
owner = null
|
|
return ..()
|
|
|
|
//Called on life ticks
|
|
/datum/brain_trauma/proc/on_life()
|
|
if(owner.getBrainLoss() < brain.traumas.len)
|
|
owner.setBrainLoss(brain.traumas.len)
|
|
return
|
|
|
|
//Called when given to a mob
|
|
/datum/brain_trauma/proc/on_gain()
|
|
to_chat(owner, gain_text)
|
|
|
|
//Called when removed from a mob
|
|
/datum/brain_trauma/proc/on_lose(silent)
|
|
if(!silent)
|
|
to_chat(owner, lose_text)
|
|
owner.adjustBrainLoss(-1)
|
|
|
|
//Called when hearing a spoken message
|
|
/datum/brain_trauma/proc/on_hear(message, speaker, message_language, raw_message, radio_freq)
|
|
return message
|
|
|
|
//Called when speaking
|
|
/datum/brain_trauma/proc/on_say(message)
|
|
return message |