This commit is contained in:
Ghommie
2020-06-23 00:13:14 +02:00
727 changed files with 240611 additions and 242127 deletions
+10 -7
View File
@@ -1,6 +1,6 @@
/datum/surgery/advanced/lobotomy
name = "Lobotomy"
desc = "An invasive surgical procedure which guarantees removal of almost all brain traumas, but might cause another permanent trauma in return."
desc = "An invasive surgical procedure which guarantees removal of almost all brain traumas, at the cost of severe, albeit repairable, brain damage."
steps = list(
/datum/surgery_step/incise,
/datum/surgery_step/retract_skin,
@@ -43,11 +43,14 @@
target.mind.remove_antag_datum(/datum/antagonist/brainwashed)
switch(rand(1,6))//Now let's see what hopefully-not-important part of the brain we cut off
if(1)
target.gain_trauma_type(BRAIN_TRAUMA_MILD, TRAUMA_RESILIENCE_MAGIC)
target.gain_trauma_type(BRAIN_TRAUMA_MILD, TRAUMA_RESILIENCE_SURGERY)
if(2)
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_MAGIC)
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_SURGERY)
if(3)
target.gain_trauma_type(BRAIN_TRAUMA_SPECIAL, TRAUMA_RESILIENCE_MAGIC)
target.gain_trauma_type(BRAIN_TRAUMA_SPECIAL, TRAUMA_RESILIENCE_SURGERY)
// you're cutting off a part of the brain.w
var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN)
B.applyOrganDamage(50, 100)
return TRUE
/datum/surgery_step/lobotomize/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -59,11 +62,11 @@
B.applyOrganDamage(80)
switch(rand(1,3))
if(1)
target.gain_trauma_type(BRAIN_TRAUMA_MILD, TRAUMA_RESILIENCE_MAGIC)
target.gain_trauma_type(BRAIN_TRAUMA_MILD, TRAUMA_RESILIENCE_LOBOTOMY)
if(2)
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_MAGIC)
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_LOBOTOMY)
if(3)
target.gain_trauma_type(BRAIN_TRAUMA_SPECIAL, TRAUMA_RESILIENCE_MAGIC)
target.gain_trauma_type(BRAIN_TRAUMA_SPECIAL, TRAUMA_RESILIENCE_LOBOTOMY)
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 class='warning'>You suddenly notice that the brain you were working on is not there anymore.</span>")
return FALSE
+1 -1
View File
@@ -285,7 +285,7 @@
if(status == BODYPART_ORGANIC)
icon = base_bp_icon || DEFAULT_BODYPART_ICON_ORGANIC
else if(status == BODYPART_ROBOTIC)
icon = base_bp_icon || DEFAULT_BODYPART_ICON_ROBOTIC
icon = DEFAULT_BODYPART_ICON_ROBOTIC
if(owner)
owner.updatehealth()
+10 -12
View File
@@ -152,26 +152,24 @@
disabled += zone
return disabled
//Remove all embedded objects from all limbs on the carbon mob
///Remove a specific embedded item from the carbon mob
/mob/living/carbon/proc/remove_embedded_object(obj/item/I)
SEND_SIGNAL(src, COMSIG_CARBON_EMBED_REMOVAL, I)
///Remove all embedded objects from all limbs on the carbon mob
/mob/living/carbon/proc/remove_all_embedded_objects()
var/turf/T = get_turf(src)
for(var/X in bodyparts)
var/obj/item/bodypart/L = X
for(var/obj/item/I in L.embedded_objects)
L.embedded_objects -= I
I.forceMove(T)
I.unembedded()
remove_embedded_object(I)
clear_alert("embeddedobject")
SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "embedded")
/mob/living/carbon/proc/has_embedded_objects()
. = 0
/mob/living/carbon/proc/has_embedded_objects(include_harmless=FALSE)
for(var/X in bodyparts)
var/obj/item/bodypart/L = X
for(var/obj/item/I in L.embedded_objects)
return 1
if(!include_harmless && I.isEmbedHarmless())
continue
return TRUE
//Helper for quickly creating a new limb - used by augment code in species.dm spec_attacked_by
@@ -23,12 +23,7 @@
var/objects = 0
for(var/obj/item/I in L.embedded_objects)
objects++
I.forceMove(get_turf(H))
L.embedded_objects -= I
I.unembedded()
if(!H.has_embedded_objects())
H.clear_alert("embeddedobject")
SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "embedded")
H.remove_embedded_object(I)
if(objects > 0)
display_results(user, target, "<span class='notice'>You successfully remove [objects] objects from [H]'s [L.name].</span>",
-4
View File
@@ -66,7 +66,6 @@
toolspeed = 0.5
attack_verb = list("attacked", "pinched")
/obj/item/cautery
name = "cautery"
desc = "This stops bleeding."
@@ -91,7 +90,6 @@
toolspeed = 0.5
attack_verb = list("burnt")
/obj/item/surgicaldrill
name = "surgical drill"
desc = "You can drill using this item. You dig?"
@@ -148,7 +146,6 @@
toolspeed = 0.5
attack_verb = list("drilled")
/obj/item/scalpel
name = "scalpel"
desc = "Cut, cut, and once more cut."
@@ -229,7 +226,6 @@
user.visible_message("<span class='suicide'>[user] is slitting [user.p_their()] [pick("wrists", "throat", "stomach")] with [src]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
return (BRUTELOSS)
/obj/item/circular_saw
name = "circular saw"
desc = "For heavy duty cutting."