mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-10 06:34:45 +01:00
Organ fixes
### Current Changes - Removes the rejecting verb from organs, I forgot to remove this along with organ rejection. - Fixes droplimb runtime. - As a result, brute damage goring and burn ashing DESTROYS whatever limb was dismembered. They didn't do so before due to the runtime. - Fixes another runtime in organ_external.dm - Makes it so you can actually clone brain transplantees. - Makes it so you can actually rejuvenate brain transplantees. ### Todo - [ ] Make slime person braincores able to be placed in humanized monkeys again. - [ ] Probably fix some other stuff.
This commit is contained in:
@@ -67,7 +67,9 @@
|
||||
|
||||
if(target.key)
|
||||
target.ghostize()
|
||||
|
||||
var/mob/living/carbon/C = target
|
||||
if(istype(C))
|
||||
C.brain_op_stage = 1.0
|
||||
if(brainmob)
|
||||
if(brainmob.mind)
|
||||
brainmob.mind.transfer_to(target)
|
||||
|
||||
@@ -16,7 +16,6 @@ var/list/organ_cache = list()
|
||||
|
||||
var/parent_organ = "chest"
|
||||
var/robotic = 0 //For being a robot
|
||||
var/rejecting // Is this organ already being rejected?
|
||||
|
||||
var/list/datum/autopsy_data/autopsy_data = list()
|
||||
var/list/trace_chemicals = list() // traces of chemicals in the organ,
|
||||
@@ -222,7 +221,6 @@ var/list/organ_cache = list()
|
||||
|
||||
loc = get_turf(owner)
|
||||
processing_objects |= src
|
||||
rejecting = null
|
||||
var/datum/reagent/blood/organ_blood = locate(/datum/reagent/blood) in reagents.reagent_list
|
||||
if(!organ_blood || !organ_blood.data["blood_DNA"])
|
||||
owner.vessel.trans_to(src, 5, 1, 1)
|
||||
|
||||
@@ -201,7 +201,7 @@
|
||||
|
||||
// sync the organ's damage with its wounds
|
||||
src.update_damages()
|
||||
|
||||
var/mob/living/carbon/owner_old = owner //Need to update health, but need a reference in case the below check cuts off a limb.
|
||||
//If limb took enough damage, try to cut or tear it off
|
||||
if(owner && loc == owner)
|
||||
if(!cannot_amputate && config.limbs_can_break && (brute_dam + burn_dam) >= (max_damage * config.organ_health_multiplier))
|
||||
@@ -216,7 +216,7 @@
|
||||
else
|
||||
droplimb(0,DROPLIMB_BLUNT)
|
||||
|
||||
owner.updatehealth()
|
||||
owner_old.updatehealth()
|
||||
return update_icon()
|
||||
|
||||
/obj/item/organ/external/proc/heal_damage(brute, burn, internal = 0, robo_repair = 0)
|
||||
@@ -661,7 +661,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
if(DROPLIMB_BURN)
|
||||
new /obj/effect/decal/cleanable/ash(get_turf(victim))
|
||||
if(DROPLIMB_BLUNT)
|
||||
var/obj/effect/decal/cleanable/blood/gibs/gore = new owner.species.single_gib_type(get_turf(victim))
|
||||
var/obj/effect/decal/cleanable/blood/gibs/gore = new victim.species.single_gib_type(get_turf(victim))
|
||||
if(victim.species.flesh_color)
|
||||
gore.fleshcolor = victim.species.flesh_color
|
||||
if(victim.species.blood_color)
|
||||
|
||||
Reference in New Issue
Block a user