Merge branch 'master' of github.com:Baystation12/Baystation12 into dev

This commit is contained in:
Mloc-Argent
2013-11-14 12:03:59 +00:00
13 changed files with 82 additions and 105 deletions

View File

@@ -23,7 +23,8 @@
/datum/medical_effect/proc/cure(mob/living/carbon/human/H) /datum/medical_effect/proc/cure(mob/living/carbon/human/H)
for(var/R in cures) for(var/R in cures)
if(H.reagents.has_reagent(R)) if(H.reagents.has_reagent(R))
H <<"\red [cure_message]" if (cure_message)
H <<"\blue [cure_message]"
return 1 return 1
return 0 return 0
@@ -39,16 +40,21 @@
M.start = life_tick M.start = life_tick
return return
var/list/L = typesof(/datum/medical_effect)-/datum/medical_effect
for(var/T in L) var/T = side_effects[name]
var/datum/medical_effect/M = new T if (!T)
if(M.name == name) return
M.strength = strength
M.start = life_tick var/datum/medical_effect/M = new T
side_effects += M if(M.name == name)
M.strength = strength
M.start = life_tick
side_effects += M
/mob/living/carbon/human/proc/handle_medical_side_effects() /mob/living/carbon/human/proc/handle_medical_side_effects()
//Going to handle those things only every few ticks.
if(life_tick % 15 != 0)
return 0
var/list/L = typesof(/datum/medical_effect)-/datum/medical_effect var/list/L = typesof(/datum/medical_effect)-/datum/medical_effect
for(var/T in L) for(var/T in L)
@@ -60,18 +66,14 @@
for (var/datum/medical_effect/M in side_effects) for (var/datum/medical_effect/M in side_effects)
if (!M) continue if (!M) continue
var/strength_percent = sin((life_tick - M.start) / 2) var/strength_percent = sin((life_tick - M.start) / 2)
// log_debug ("[src], tick [life_tick] : Processing [M], Current phase: [strength_percent]")
// Only do anything if the effect is currently strong enough // Only do anything if the effect is currently strong enough
if(strength_percent >= 0.4) if(strength_percent >= 0.4)
log_debug ("[src], tick [life_tick] : Active phase ; strength [M.strength]")
if (M.cure(src) || M.strength > 50) if (M.cure(src) || M.strength > 50)
// log_debug ("[src], tick [life_tick] : [M] cured or reached end of lifecycle")
side_effects -= M side_effects -= M
del(M) M = null
else else
if(life_tick % 45 == 0) if(life_tick % 45 == 0)
// log_debug ("[src], tick [life_tick] : Activating [M] ")
M.on_life(src, strength_percent*M.strength) M.on_life(src, strength_percent*M.strength)
// Effect slowly growing stronger // Effect slowly growing stronger
M.strength+=0.08 M.strength+=0.08
@@ -92,7 +94,6 @@
H.custom_pain("You feel a throbbing pain in your head!",1) H.custom_pain("You feel a throbbing pain in your head!",1)
if(31 to INFINITY) if(31 to INFINITY)
H.custom_pain("You feel an excrutiating pain in your head!",1) H.custom_pain("You feel an excrutiating pain in your head!",1)
H.adjustBrainLoss(1)
// BAD STOMACH // BAD STOMACH
// =========== // ===========
@@ -110,7 +111,6 @@
H.custom_pain("Your stomach hurts.",0) H.custom_pain("Your stomach hurts.",0)
if(31 to INFINITY) if(31 to INFINITY)
H.custom_pain("You feel sick.",1) H.custom_pain("You feel sick.",1)
H.adjustToxLoss(1)
// CRAMPS // CRAMPS
// ====== // ======
@@ -129,7 +129,6 @@
if(31 to INFINITY) if(31 to INFINITY)
H.emote("me",1,"flinches as all the muscles in their body cramp up.") H.emote("me",1,"flinches as all the muscles in their body cramp up.")
H.custom_pain("There's pain all over your body.",1) H.custom_pain("There's pain all over your body.",1)
H.adjustToxLoss(1)
// ITCH // ITCH
// ==== // ====
@@ -148,4 +147,3 @@
if(31 to INFINITY) if(31 to INFINITY)
H.emote("me",1,"shivers slightly.") H.emote("me",1,"shivers slightly.")
H.custom_pain("This itch makes it really hard to concentrate.",1) H.custom_pain("This itch makes it really hard to concentrate.",1)
H.adjustToxLoss(1)

View File

@@ -15,6 +15,7 @@ var/global/list/chemical_reactions_list //list of all /datum/chemical_reactio
var/global/list/chemical_reagents_list //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff var/global/list/chemical_reagents_list //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff
var/global/list/landmarks_list = list() //list of all landmarks created var/global/list/landmarks_list = list() //list of all landmarks created
var/global/list/surgery_steps = list() //list of all surgery steps |BS12 var/global/list/surgery_steps = list() //list of all surgery steps |BS12
var/global/list/side_effects = list() //list of all medical sideeffects types by thier names |BS12
var/global/list/mechas_list = list() //list of all mechs. Used by hostile mobs target tracking. var/global/list/mechas_list = list() //list of all mechs. Used by hostile mobs target tracking.
//Languages/species/whitelist. //Languages/species/whitelist.
@@ -75,6 +76,13 @@ var/global/list/backbaglist = list("Nothing", "Backpack", "Satchel", "Satchel Al
surgery_steps += S surgery_steps += S
sort_surgeries() sort_surgeries()
//Medical side effects. List all effects by their names
paths = typesof(/datum/medical_effect)-/datum/medical_effect
for(var/T in paths)
var/datum/medical_effect/M = new T
side_effects[M.name] = T
//Languages and species. //Languages and species.
paths = typesof(/datum/language)-/datum/language paths = typesof(/datum/language)-/datum/language
for(var/T in paths) for(var/T in paths)

View File

@@ -127,7 +127,7 @@
icon_state = "id" icon_state = "id"
item_state = "card-id" item_state = "card-id"
var/access = list() var/access = list()
var/registered_name = null // The name registered_name on the card var/registered_name = "Unknown" // The name registered_name on the card
slot_flags = SLOT_ID slot_flags = SLOT_ID
var/blood_type = "\[UNSET\]" var/blood_type = "\[UNSET\]"
@@ -280,4 +280,4 @@
assignment = "General" assignment = "General"
New() New()
access = get_all_centcom_access() access = get_all_centcom_access()
..() ..()

View File

@@ -91,7 +91,7 @@
I.take_damage(rand(3,5)) I.take_damage(rand(3,5))
//Special effects for limbs. //Special effects for limbs.
if(E.name in list("l_hand","l_arm","r_hand","r_arm")) if(E.name in list("l_hand","l_arm","r_hand","r_arm") && (broken||malfunction))
var/obj/item/c_hand //Getting what's in this hand var/obj/item/c_hand //Getting what's in this hand
if(E.name == "l_hand" || E.name == "l_arm") if(E.name == "l_hand" || E.name == "l_arm")
c_hand = l_hand c_hand = l_hand
@@ -99,8 +99,7 @@
c_hand = r_hand c_hand = r_hand
if (c_hand) if (c_hand)
if (broken||malfunction) u_equip(c_hand)
u_equip(c_hand)
if(broken) if(broken)
emote("me", 1, "screams in pain and drops what they were holding in their [E.display_name?"[E.display_name]":"[E]"]!") emote("me", 1, "screams in pain and drops what they were holding in their [E.display_name?"[E.display_name]":"[E]"]!")
@@ -124,35 +123,11 @@
paralysis = 10 paralysis = 10
//Check arms and legs for existence //Check arms and legs for existence
var/canstand_l = 1 //Can stand on left leg can_stand = 2 //can stand on both legs
var/canstand_r = 1 //Can stand on right leg var/datum/organ/external/E = organs_by_name["l_foot"]
var/hasleg_l = 1 //Have left leg if(E.status & ORGAN_DESTROYED)
var/hasleg_r = 1 //Have right leg can_stand--
var/hasarm_l = 1 //Have left arm
var/hasarm_r = 1 //Have right arm
var/datum/organ/external/E
E = get_organ("l_leg")
if(E.status & ORGAN_DESTROYED && !(E.status & ORGAN_SPLINTED))
canstand_l = 0
hasleg_l = 0
E = get_organ("r_leg")
if(E.status & ORGAN_DESTROYED && !(E.status & ORGAN_SPLINTED))
canstand_r = 0
hasleg_r = 0
E = get_organ("l_foot")
if(E.status & ORGAN_DESTROYED && !(E.status & ORGAN_SPLINTED))
canstand_l = 0
E = get_organ("r_foot")
if(E.status & ORGAN_DESTROYED && !(E.status & ORGAN_SPLINTED))
canstand_r = 0
E = get_organ("l_arm")
if(E.status & ORGAN_DESTROYED && !(E.status & ORGAN_SPLINTED))
hasarm_l = 0
E = get_organ("r_arm")
if(E.status & ORGAN_DESTROYED && !(E.status & ORGAN_SPLINTED))
hasarm_r = 0
// Can stand if have at least one full leg (with leg and foot parts present) E = organs_by_name["r_foot"]
// Has limbs to move around if at least one arm or leg is at least partially there if(E.status & ORGAN_DESTROYED)
can_stand = canstand_l||canstand_r can_stand--
has_limbs = hasleg_l||hasleg_r||hasarm_l||hasarm_r

View File

@@ -203,7 +203,6 @@ This function completely restores a damaged organ to perfect condition.
implants -= implanted_object implants -= implanted_object
owner.updatehealth() owner.updatehealth()
update_icon()
/datum/organ/external/proc/createwound(var/type = CUT, var/damage) /datum/organ/external/proc/createwound(var/type = CUT, var/damage)
@@ -290,7 +289,6 @@ This function completely restores a damaged organ to perfect condition.
perma_injury = 0 perma_injury = 0
update_germs() update_germs()
update_icon()
return return
//Updating germ levels. Handles organ germ levels and necrosis. //Updating germ levels. Handles organ germ levels and necrosis.
@@ -383,6 +381,8 @@ This function completely restores a damaged organ to perfect condition.
// sync the organ's damage with its wounds // sync the organ's damage with its wounds
src.update_damages() src.update_damages()
if (update_icon())
owner.UpdateDamageIcon(1)
//Updates brute_damn and burn_damn from wound damages. Updates BLEEDING status. //Updates brute_damn and burn_damn from wound damages. Updates BLEEDING status.
/datum/organ/external/proc/update_damages() /datum/organ/external/proc/update_damages()
@@ -415,10 +415,6 @@ This function completely restores a damaged organ to perfect condition.
var/n_is = damage_state_text() var/n_is = damage_state_text()
if (n_is != damage_state) if (n_is != damage_state)
damage_state = n_is damage_state = n_is
if(status & ORGAN_DESTROYED)
owner.update_body(1)
else
owner.UpdateDamageIcon(1)
return 1 return 1
return 0 return 0
@@ -550,7 +546,7 @@ This function completely restores a damaged organ to perfect condition.
var/lol = pick(cardinal) var/lol = pick(cardinal)
step(organ,lol) step(organ,lol)
owner.regenerate_icons() owner.update_body(1)
/**************************************************** /****************************************************

View File

@@ -31,8 +31,8 @@
return ..() && target.op_stage.appendix == 0 return ..() && target.op_stage.appendix == 0
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("[user] starts to separating [target]'s appendix from the abdominal wall with \the [tool].", \ user.visible_message("[user] starts to separate [target]'s appendix from the abdominal wall with \the [tool].", \
"You start to separating [target]'s appendix from the abdominal wall with \the [tool]." ) "You start to separate [target]'s appendix from the abdominal wall with \the [tool]." )
target.custom_pain("The pain in your abdomen is living hell!",1) target.custom_pain("The pain in your abdomen is living hell!",1)
..() ..()

View File

@@ -88,8 +88,8 @@
return affected.name == "head" && affected.open == 2 && affected.stage == 1 return affected.name == "head" && affected.open == 2 && affected.stage == 1
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("[user] is beginning piece together [target]'s skull with \the [tool]." , \ user.visible_message("[user] is beginning to piece together [target]'s skull with \the [tool]." , \
"You are beginning piece together [target]'s skull with \the [tool].") "You are beginning to piece together [target]'s skull with \the [tool].")
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)

View File

@@ -27,8 +27,8 @@
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("\blue [user] has cut through [target]'s skull open with \the [tool].", \ user.visible_message("\blue [user] has cut [target]'s skull open with \the [tool].", \
"\blue You have cut through [target]'s skull open with \the [tool].") "\blue You have cut [target]'s skull open with \the [tool].")
target.brain_op_stage = 2 target.brain_op_stage = 2
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -122,13 +122,13 @@
return ..() && target.brain_op_stage == 2 return ..() && target.brain_op_stage == 2
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("[user] starts taking out bone chips out of [target]'s brain with \the [tool].", \ user.visible_message("[user] starts taking bone chips out of [target]'s brain with \the [tool].", \
"You start taking out bone chips out of [target]'s brain with \the [tool].") "You start taking bone chips out of [target]'s brain with \the [tool].")
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("\blue [user] takes out all bone chips out of [target]'s brain with \the [tool].", \ user.visible_message("\blue [user] takes out all the bone chips in [target]'s brain with \the [tool].", \
"\blue You take out all bone chips out of [target]'s brain with \the [tool].") "\blue You take out all the bone chips in [target]'s brain with \the [tool].")
target.brain_op_stage = 3 target.brain_op_stage = 3
@@ -189,12 +189,12 @@
return ..() && target.brain_op_stage == 0 return ..() && target.brain_op_stage == 0
begin_step(mob/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/slime/target, target_zone, obj/item/tool)
user.visible_message("[user] starts cutting [target]'s flesh with \the [tool].", \ user.visible_message("[user] starts cutting through [target]'s flesh with \the [tool].", \
"You start cutting [target]'s flesh with \the [tool].") "You start cutting through [target]'s flesh with \the [tool].")
end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool)
user.visible_message("\blue [user] cuts [target]'s flesh with \the [tool].", \ user.visible_message("\blue [user] cuts through [target]'s flesh with \the [tool].", \
"\blue You cut [target]'s flesh with \the [tool], exposing the cores") "\blue You cut through [target]'s flesh with \the [tool], exposing the cores.")
target.brain_op_stage = 1 target.brain_op_stage = 1
fail_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool)
@@ -219,8 +219,8 @@
"You start cutting [target]'s silky innards apart with \the [tool].") "You start cutting [target]'s silky innards apart with \the [tool].")
end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool)
user.visible_message("\blue [user] cuts [target]'s innards apart with \the [tool], exposing the cores", \ user.visible_message("\blue [user] cuts [target]'s innards apart with \the [tool], exposing the cores.", \
"\blue You cut [target]'s innards apart with \the [tool], exposing the cores") "\blue You cut [target]'s innards apart with \the [tool], exposing the cores.")
target.brain_op_stage = 2 target.brain_op_stage = 2
fail_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool)
@@ -256,5 +256,5 @@
fail_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool)
user.visible_message("\red [user]'s hand slips, failing to cut core out!", \ user.visible_message("\red [user]'s hand slips, causing \him to miss the core!", \
"\red Your hand slips, failing to cut core out!") "\red Your hand slips, causing you to miss the core!")

View File

@@ -85,13 +85,13 @@
return ..() && target.op_stage.face == 2 return ..() && target.op_stage.face == 2
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("[user] starts pulling skin on [target]'s face back in place with \the [tool].", \ user.visible_message("[user] starts pulling the skin on [target]'s face back in place with \the [tool].", \
"You start pulling skin on [target]'s face back in place with \the [tool].") "You start pulling the skin on [target]'s face back in place with \the [tool].")
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("\blue [user] pulls skin on [target]'s face back in place with \the [tool].", \ user.visible_message("\blue [user] pulls the skin on [target]'s face back in place with \the [tool].", \
"\blue You pull skin on [target]'s face back in place with \the [tool].") "\blue You pull the skin on [target]'s face back in place with \the [tool].")
target.op_stage.face = 3 target.op_stage.face = 3
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)

View File

@@ -52,8 +52,8 @@
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/datum/organ/external/affected = target.get_organ(target_zone) var/datum/organ/external/affected = target.get_organ(target_zone)
user.visible_message("\red [user]'s hand slips, slicing open [target]'s [affected.display_name] in a wrong spot with \the [tool]!", \ user.visible_message("\red [user]'s hand slips, slicing open [target]'s [affected.display_name] in the wrong place with \the [tool]!", \
"\red Your hand slips, slicing open [target]'s [affected.display_name] in a wrong spot with \the [tool]!") "\red Your hand slips, slicing open [target]'s [affected.display_name] in the wrong place with \the [tool]!")
affected.createwound(CUT, 10) affected.createwound(CUT, 10)
/datum/surgery_step/generic/clamp_bleeders /datum/surgery_step/generic/clamp_bleeders
@@ -133,14 +133,14 @@
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/datum/organ/external/affected = target.get_organ(target_zone) var/datum/organ/external/affected = target.get_organ(target_zone)
var/msg = "\red [user]'s hand slips, tearing the edges of incision on [target]'s [affected.display_name] with \the [tool]!" var/msg = "\red [user]'s hand slips, tearing the edges of the incision on [target]'s [affected.display_name] with \the [tool]!"
var/self_msg = "\red Your hand slips, tearing the edges of incision on [target]'s [affected.display_name] with \the [tool]!" var/self_msg = "\red Your hand slips, tearing the edges of the incision on [target]'s [affected.display_name] with \the [tool]!"
if (target_zone == "chest") if (target_zone == "chest")
msg = "\red [user]'s hand slips, damaging several organs [target]'s torso with \the [tool]!" msg = "\red [user]'s hand slips, damaging several organs in [target]'s torso with \the [tool]!"
self_msg = "\red Your hand slips, damaging several organs [target]'s torso with \the [tool]!" self_msg = "\red Your hand slips, damaging several organs in [target]'s torso with \the [tool]!"
if (target_zone == "groin") if (target_zone == "groin")
msg = "\red [user]'s hand slips, damaging several organs [target]'s lower abdomen with \the [tool]" msg = "\red [user]'s hand slips, damaging several organs in [target]'s lower abdomen with \the [tool]"
self_msg = "\red Your hand slips, damaging several organs [target]'s lower abdomen with \the [tool]!" self_msg = "\red Your hand slips, damaging several organs in [target]'s lower abdomen with \the [tool]!"
user.visible_message(msg, self_msg) user.visible_message(msg, self_msg)
target.apply_damage(12, BRUTE, affected) target.apply_damage(12, BRUTE, affected)

View File

@@ -123,7 +123,7 @@
user.visible_message("\blue [user] puts \the [tool] inside [target]'s [get_cavity(affected)] cavity.", \ user.visible_message("\blue [user] puts \the [tool] inside [target]'s [get_cavity(affected)] cavity.", \
"\blue You put \the [tool] inside [target]'s [get_cavity(affected)] cavity." ) "\blue You put \the [tool] inside [target]'s [get_cavity(affected)] cavity." )
if (tool.w_class > get_max_wclass(affected)/2 && prob(50)) if (tool.w_class > get_max_wclass(affected)/2 && prob(50))
user << "\red You tear some vessels trying to fit such big object in this cavity." user << "\red You tear some blood vessels trying to fit such a big object in this cavity."
var/datum/wound/internal_bleeding/I = new (15) var/datum/wound/internal_bleeding/I = new (15)
affected.wounds += I affected.wounds += I
affected.owner.custom_pain("You feel something rip in your [affected.display_name]!", 1) affected.owner.custom_pain("You feel something rip in your [affected.display_name]!", 1)

View File

@@ -31,8 +31,8 @@
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
user.visible_message("\blue [user] has cut through [target]'s ribcage open with \the [tool].", \ user.visible_message("\blue [user] has cut [target]'s ribcage open with \the [tool].", \
"\blue You have cut through [target]'s ribcage open with \the [tool].") "\blue You have cut [target]'s ribcage open with \the [tool].")
target.op_stage.ribcage = 1 target.op_stage.ribcage = 1
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -111,14 +111,14 @@
target.op_stage.ribcage = 1 target.op_stage.ribcage = 1
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/msg = "\red [user]'s hand slips, bending [target]'s ribcage in a wrong shape!" var/msg = "\red [user]'s hand slips, bending [target]'s ribs the wrong way!"
var/self_msg = "\red Your hand slips, bending [target]'s ribcage in a wrong shape!" var/self_msg = "\red Your hand slips, bending [target]'s ribs the wrong way!"
user.visible_message(msg, self_msg) user.visible_message(msg, self_msg)
var/datum/organ/external/chest/affected = target.get_organ("chest") var/datum/organ/external/chest/affected = target.get_organ("chest")
affected.createwound(BRUISE, 20) affected.createwound(BRUISE, 20)
affected.fracture() affected.fracture()
if (prob(40)) if (prob(40))
user.visible_message("\red Rib pierces the lung!") user.visible_message("\red A rib pierces the lung!")
target.rupture_lung() target.rupture_lung()
/datum/surgery_step/ribcage/mend_ribcage /datum/surgery_step/ribcage/mend_ribcage

View File

@@ -46,7 +46,7 @@
if (affected.parent) if (affected.parent)
affected = affected.parent affected = affected.parent
user.visible_message("\red [user]'s hand slips, cutting [target]'s [affected.display_name] open!", \ user.visible_message("\red [user]'s hand slips, cutting [target]'s [affected.display_name] open!", \
"\red Your hand slips, cutting [target]'s [affected.display_name] open!") "\red Your hand slips, cutting [target]'s [affected.display_name] open!")
affected.createwound(CUT, 10) affected.createwound(CUT, 10)
@@ -65,8 +65,8 @@
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/datum/organ/external/affected = target.get_organ(target_zone) var/datum/organ/external/affected = target.get_organ(target_zone)
user.visible_message("[user] is beginning reposition flesh and nerve endings where where [target]'s [affected.display_name] used to be with [tool].", \ user.visible_message("[user] is beginning to reposition flesh and nerve endings where where [target]'s [affected.display_name] used to be with [tool].", \
"You start repositioning flesh and nerve endings where where [target]'s [affected.display_name] used to be with [tool].") "You start repositioning flesh and nerve endings where [target]'s [affected.display_name] used to be with [tool].")
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -101,8 +101,8 @@
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/datum/organ/external/affected = target.get_organ(target_zone) var/datum/organ/external/affected = target.get_organ(target_zone)
user.visible_message("[user] starts adjusting area around [target]'s [affected.display_name] with \the [tool].", \ user.visible_message("[user] starts adjusting the area around [target]'s [affected.display_name] with \the [tool].", \
"You start adjusting area around [target]'s [affected.display_name] with \the [tool]..") "You start adjusting the area around [target]'s [affected.display_name] with \the [tool].")
..() ..()
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
@@ -140,14 +140,14 @@
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool) begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/datum/organ/external/affected = target.get_organ(target_zone) var/datum/organ/external/affected = target.get_organ(target_zone)
user.visible_message("[user] starts attaching [tool] where [target]'s [affected.display_name] used to be.", \ user.visible_message("[user] starts attaching \the [tool] where [target]'s [affected.display_name] used to be.", \
"You start attaching [tool] where [target]'s [affected.display_name] used to be.") "You start attaching \the [tool] where [target]'s [affected.display_name] used to be.")
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
var/obj/item/robot_parts/L = tool var/obj/item/robot_parts/L = tool
var/datum/organ/external/affected = target.get_organ(target_zone) var/datum/organ/external/affected = target.get_organ(target_zone)
user.visible_message("\blue [user] has attached [tool] where [target]'s [affected.display_name] used to be.", \ user.visible_message("\blue [user] has attached \the [tool] where [target]'s [affected.display_name] used to be.", \
"\blue You have attached [tool] where [target]'s [affected.display_name] used to be.") "\blue You have attached \the [tool] where [target]'s [affected.display_name] used to be.")
affected.robotize() affected.robotize()
if(L.sabotaged) if(L.sabotaged)
affected.sabotaged = 1 affected.sabotaged = 1