Skip to content

Commit

Permalink
You can no longer gain deep-rooted traumas from failed brain surgery …
Browse files Browse the repository at this point in the history
…or natural damage. (#3984)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

Title

## Why It's Good For The Game

<!-- Please add a short description of why you think these changes would
benefit the game. If you can't justify it in words, it might not be
worth adding. -->

The surgery for curing deep rooted traumas is locked behind RND, which
is basically non-existent these days, effectively making deep rooted
traumas permanent. That honestly doesn't feel great. This makes brain
damage a lot more manageable.

## Changelog

:cl:
balance: You can no longer gain deep-rooted traumas from failed brain
surgery or natural damage.
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
  • Loading branch information
Gristlebee authored Jan 19, 2025
1 parent b4cdab7 commit 369feaf
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 deletions.
17 changes: 10 additions & 7 deletions code/modules/mob/living/brain/brain_item.dm
Original file line number Diff line number Diff line change
Expand Up @@ -349,14 +349,14 @@
return TRUE

//Proc to use when directly adding a trauma to the brain, so extra args can be given
/obj/item/organ/brain/proc/gain_trauma(datum/brain_trauma/trauma, resilience, ...)
/obj/item/organ/brain/proc/gain_trauma(datum/brain_trauma/trauma, resilience, natural_gain = FALSE, ...)
var/list/arguments = list()
if(args.len > 2)
arguments = args.Copy(3)
. = brain_gain_trauma(trauma, resilience, arguments)
if(args.len > 3)
arguments = args.Copy(4)
. = brain_gain_trauma(trauma, resilience, natural_gain, arguments)

//Direct trauma gaining proc. Necessary to assign a trauma to its brain. Avoid using directly.
/obj/item/organ/brain/proc/brain_gain_trauma(datum/brain_trauma/trauma, resilience, list/arguments)
/obj/item/organ/brain/proc/brain_gain_trauma(datum/brain_trauma/trauma, resilience, list/arguments, natural_gain = FALSE)
if(!can_gain_trauma(trauma, resilience))
return

Expand All @@ -378,7 +378,10 @@
if(owner)
actual_trauma.owner = owner
actual_trauma.on_gain()
if(resilience)
if(natural_gain)
if(actual_trauma.resilience >= TRAUMA_RESILIENCE_LOBOTOMY)
actual_trauma.resilience = TRAUMA_RESILIENCE_SURGERY
else if(resilience)
actual_trauma.resilience = resilience
. = actual_trauma
if(owner?.client)
Expand All @@ -396,7 +399,7 @@
return

var/trauma_type = pick(possible_traumas)
gain_trauma(trauma_type, resilience)
gain_trauma(trauma_type, resilience, natural_gain)

//Cure a random trauma of a certain resilience level
/obj/item/organ/brain/proc/cure_trauma_type(brain_trauma_type = /datum/brain_trauma, resilience = TRAUMA_RESILIENCE_BASIC)
Expand Down
2 changes: 1 addition & 1 deletion code/modules/surgery/brain_surgery.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
"<span class='warning'>[user] screws up, causing brain damage!</span>",
"<span class='notice'>[user] completes the surgery on [target]'s brain.</span>")
target.adjustOrganLoss(ORGAN_SLOT_BRAIN, 60)
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_LOBOTOMY)
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_SURGERY)
else
user.visible_message("<span class='warning'>[user] suddenly notices that the brain [user.p_they()] [user.p_were()] working on is not there anymore.</span>", "<span class='warning'>You suddenly notice that the brain you were working on is not there anymore.</span>")
return FALSE

0 comments on commit 369feaf

Please sign in to comment.