Revert "fixing defib timer and adding surgery for that shit"

This commit is contained in:
cadyn
2021-01-24 22:46:10 -08:00
committed by GitHub
parent 78e9cb2123
commit 2fe77a59ac
3 changed files with 4 additions and 38 deletions

View File

@@ -509,8 +509,8 @@
return // Still no brain. return // Still no brain.
// If the brain'd `defib_timer` var gets below this number, brain damage will happen at a linear rate. // If the brain'd `defib_timer` var gets below this number, brain damage will happen at a linear rate.
// This is measures in `Life()` ticks. E.g. 10 minute defib timer = 300 `Life()` ticks. // Original math was VERY off. Life() tick occurs every ~2 seconds, not every 2 world.time ticks. // This is measures in `Life()` ticks. E.g. 10 minute defib timer = 6000 world.time units = 3000 `Life()` ticks.
var/brain_damage_timer = ((config.defib_timer MINUTES) / 20) - ((config.defib_braindamage_timer MINUTES) / 20) var/brain_damage_timer = ((config.defib_timer MINUTES) / 2) - ((config.defib_braindamage_timer MINUTES) / 2)
if(brain.defib_timer > brain_damage_timer) if(brain.defib_timer > brain_damage_timer)
return // They got revived before brain damage got a chance to set in. return // They got revived before brain damage got a chance to set in.

View File

@@ -33,7 +33,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain)
if(!owner || owner.stat == DEAD) if(!owner || owner.stat == DEAD)
defib_timer = max(--defib_timer, 0) defib_timer = max(--defib_timer, 0)
else else
defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 20) // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 defib_timer = min(++defib_timer, (config.defib_timer MINUTES) / 2)
/obj/item/organ/internal/brain/proc/can_assist() /obj/item/organ/internal/brain/proc/can_assist()
return can_assist return can_assist
@@ -81,7 +81,7 @@ GLOBAL_LIST_BOILERPLATE(all_brain_organs, /obj/item/organ/internal/brain)
/obj/item/organ/internal/brain/New() /obj/item/organ/internal/brain/New()
..() ..()
health = config.default_brain_health health = config.default_brain_health
defib_timer = (config.defib_timer MINUTES) / 20 // Time vars measure things in ticks. Life tick happens every ~2 seconds, therefore dividing by 20 defib_timer = (config.defib_timer MINUTES) / 2
spawn(5) spawn(5)
if(brainmob) if(brainmob)
butcherable = FALSE butcherable = FALSE

View File

@@ -147,37 +147,3 @@
affected.createwound(CUT, 15) affected.createwound(CUT, 15)
affected.createwound(BRUISE, 10) affected.createwound(BRUISE, 10)
..() ..()
/datum/surgery_step/internal/brain_revive
blood_level = 0
allowed_tools = list(/obj/item/weapon/surgical/bioregen=100)
min_duration = 120
max_duration = 150
/datum/surgery_step/internal/brain_revive/can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/organ/internal/brain/brain = target.internal_organs_by_name[O_BRAIN]
return ..() && target_zone == BP_HEAD && istype(brain) && (brain.status & ORGAN_DEAD || brain.defib_timer == 0)
/datum/surgery_step/internal/brain_revive/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] begins to use \the [tool] to reverse the decay on and revatilize [target]'s brain.</span>", \
"<span class='notice'>You begin to use \the [tool] to reverse the decay on and revatilize [target]'s brain.</span>")
..()
/datum/surgery_step/internal/brain_revive/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='notice'>[user] finishes reversing the decay on and revatalizing [target]'s brain.</span>", \
"<span class='notice'>You finish reversing the decay on and revatalizing [target]'s brain.</span>")
var/obj/item/organ/internal/brain/brain = target.internal_organs_by_name[O_BRAIN]
brain.damage = max(0,brain.damage - 10)
brain.status &= ~ORGAN_DEAD
brain.handle_organ_mod_special()
brain.defib_timer = (config.defib_timer MINUTES) / 20
START_PROCESSING(SSobj, brain)
..()
/datum/surgery_step/internal/brain_revive/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("<span class='danger'>[user]'s hand slips, failing to finish the surgery, and damaging [target] with \the [tool].</span>", \
"<span class='danger'>Your hand slips, failing to finish the surgery, and damaging [target] with \the [tool].</span>")
var/obj/item/organ/external/affected = target.get_organ(target_zone)
affected.createwound(CUT, 15)
affected.createwound(BRUISE, 10)
..()