Fixes bible spam

Fixes "r_arm" nonsense
Fixes appendicitis carrying over to robotic chest
This commit is contained in:
Robson Richards
2013-11-24 15:24:55 +00:00
parent 44bf98d1fd
commit 75ff8338b8
6 changed files with 42 additions and 18 deletions
@@ -73,15 +73,22 @@
bless(M)
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/message_halt = 0
for(var/obj/item/organ/limb/affecting in H.organs)
if(affecting.status == ORGAN_ORGANIC)
for(var/mob/O in viewers(M, null))
O.show_message(text("\red <B>[] heals [] with the power of [src.deity_name]!</B>", user, M), 1)
M << "\red May the power of [src.deity_name] compel you to be healed!"
playsound(src.loc, "punch", 25, 1, -1)
if(message_halt == 0)
for(var/mob/O in viewers(M, null))
O.show_message(text("\red <B>[] heals [] with the power of [src.deity_name]!</B>", user, M), 1)
M << "\red May the power of [src.deity_name] compel you to be healed!"
playsound(src.loc, "punch", 25, 1, -1)
message_halt = 1
else
src << "<span class= 'warning'>You cannot heal someone who's body is tainted by metal!</span>"
src << "<span class='warning'>[src.deity_name] refuses to heal this metalic taint!</span>"
return
else
if(ishuman(M) && !istype(M:head, /obj/item/clothing/head/helmet))
M.adjustBrainLoss(10)
@@ -89,6 +96,7 @@
for(var/mob/O in viewers(M, null))
O.show_message(text("\red <B>[] beats [] over the head with []!</B>", user, M, src), 1)
playsound(src.loc, "punch", 25, 1, -1)
else if(M.stat == 2)
for(var/mob/O in viewers(M, null))
O.show_message(text("\red <B>[] smacks []'s lifeless corpse with [].</B>", user, M, src), 1)
@@ -179,7 +179,7 @@ emp_act
var/bloody = 0
if(((I.damtype == BRUTE) || (I.damtype == HALLOSS)) && prob(25 + (I.force * 2)))
if(affecting.status == ORGAN_ORGANIC) //Organic limbs bleed - RR
if(affecting.status == ORGAN_ORGANIC)
I.add_blood(src) //Make the weapon bloody, not the person.
if(prob(I.force * 2)) //blood spatter!
bloody = 1
@@ -206,6 +206,7 @@ emp_act
H.bloody_hands_mob = H
H.update_inv_gloves() //updates on-mob overlays for bloody hands and/or bloody gloves
switch(hit_area)
if("head") //Harder to score a stun but if you do it lasts a bit longer
if(stat == CONSCIOUS && prob(I.force))
+11 -5
View File
@@ -1,10 +1,12 @@
//make incision
/datum/surgery_step/incise
implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/kitchenknife = 65, /obj/item/weapon/shard = 45)
time = 24
/datum/surgery_step/incise/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("<span class='notice'>[user] begins to make an incision in [target]'s [target_zone].</span>")
user.visible_message("<span class='notice'>[user] begins to make an incision in [target]'s [parse_zone(target_zone)].</span>")
//clamp bleeders
@@ -13,7 +15,8 @@
time = 48
/datum/surgery_step/clamp_bleeders/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("<span class='notice'>[user] begins to clamp bleeders in [target]'s [target_zone].</span>")
user.visible_message("<span class='notice'>[user] begins to clamp bleeders in [target]'s [parse_zone(target_zone)].</span>")
//retract skin
/datum/surgery_step/retract_skin
@@ -21,7 +24,8 @@
time = 32
/datum/surgery_step/retract_skin/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("<span class='notice'>[user] begins to retract the skin in [target]'s [target_zone].</span>")
user.visible_message("<span class='notice'>[user] begins to retract the skin in [target]'s [parse_zone(target_zone)].</span>")
//close incision
@@ -30,7 +34,8 @@
time = 32
/datum/surgery_step/close/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("<span class='notice'>[user] begins to mend the incision in [target]'s [target_zone].</span>")
user.visible_message("<span class='notice'>[user] begins to mend the incision in [target]'s [parse_zone(target_zone)].</span>")
/datum/surgery_step/close/tool_check(mob/user, obj/item/tool)
if(istype(tool, /obj/item/weapon/cautery))
@@ -57,6 +62,7 @@
time = 64
/datum/surgery_step/saw/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("<span class='notice'>[user] begins to saw through the bone in [target]'s [target_zone].</span>")
user.visible_message("<span class='notice'>[user] begins to saw through the bone in [target]'s [parse_zone(target_zone)].</span>")
+1 -1
View File
@@ -36,7 +36,7 @@
if(procedure.location == "anywhere") // if location == "anywhere" change location to the surgeon's target, otherwise leave location as is.
procedure.location = user.zone_sel.selecting
M.surgeries += procedure
user.visible_message("<span class='notice'>[user] drapes [I] over [M]'s [procedure.location] to prepare for \an [procedure.name].</span>")
user.visible_message("<span class='notice'>[user] drapes [I] over [M]'s [parse_zone(procedure.location)] to prepare for \an [procedure.name].</span>")
user.attack_log += "\[[time_stamp()]\]<font color='red'>Initiated a [procedure.name] on [M.name] ([M.ckey])</font>"
M.attack_log += "\[[time_stamp()]\]<font color='red'>[user.name] ([user.ckey]) initiated a [procedure.name]</font>"
+8 -6
View File
@@ -10,7 +10,7 @@
/datum/surgery_step/replace/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("<span class ='notice'>[user] begins to sever the muscles on [target]'s [target_zone]!</span>")
user.visible_message("<span class ='notice'>[user] begins to sever the muscles on [target]'s [parse_zone(user.zone_sel.selecting)]!</span>")
/datum/surgery_step/add_limb
@@ -24,9 +24,9 @@
/datum/surgery_step/add_limb/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
L = new_organ
if(L)
user.visible_message("<span class ='notice'>[user] begins to augment [target]'s [target_zone].</span>")
user.visible_message("<span class ='notice'>[user] begins to augment [target]'s [parse_zone(user.zone_sel.selecting)].</span>")
else
user.visible_message("<span class ='notice'>[user] looks for [target]'s [target_zone].</span>")
user.visible_message("<span class ='notice'>[user] looks for [target]'s [parse_zone(user.zone_sel.selecting)].</span>")
@@ -46,7 +46,7 @@
if(L)
if(ishuman(target))
var/mob/living/carbon/human/H = target
user.visible_message("<span class='notice'>[user] successfully augments [target]'s [target_zone]!</span>")
user.visible_message("<span class='notice'>[user] successfully augments [target]'s [parse_zone(user.zone_sel.selecting)]!</span>")
L.loc = get_turf(target)
H.organs -= L
switch(user.zone_sel.selecting) //for the surgery to progress this MUST still be the original "location" so it's safe to do this.
@@ -62,13 +62,15 @@
H.organs += new /obj/item/organ/limb/robot/head(src)
if("chest")
H.organs += new /obj/item/organ/limb/robot/chest(src)
for(var/datum/disease/appendicitis/A in H.viruses) //If they already have Appendicitis, Remove it
A.cure(1)
user.drop_item()
del(tool)
H.update_damage_overlays(0)
H.update_augments() //Gives them the Cyber limb overlay
user.attack_log += "\[[time_stamp()]\]<font color='red'> Augmented [target.name]'s [target_zone] ([target.ckey]) INTENT: [uppertext(user.a_intent)])</font>"
user.attack_log += "\[[time_stamp()]\]<font color='red'> Augmented [target.name]'s [parse_zone(user.zone_sel.selecting)] ([target.ckey]) INTENT: [uppertext(user.a_intent)])</font>"
target.attack_log += "\[[time_stamp()]\]<font color='orange'> Augmented by [user.name] ([user.ckey]) (INTENT: [uppertext(user.a_intent)])</font>"
log_attack("<font color='red'>[user.name] ([user.ckey]) augmented [target.name] ([target.ckey]) (INTENT: [uppertext(user.a_intent)])</font>")
else
user.visible_message("<span class='notice'>[user] [target] has no organic [target_zone] there!</span>")
user.visible_message("<span class='notice'>[user] [target] has no organic [parse_zone(user.zone_sel.selecting)] there!</span>")
return 1
+7
View File
@@ -47,6 +47,7 @@
var/status = ORGAN_ORGANIC
/obj/item/organ/limb/chest
name = "chest"
desc = "why is it detached..."
@@ -54,6 +55,7 @@
max_damage = 200
body_part = CHEST
/obj/item/organ/limb/head
name = "head"
desc = "what a way to get a head in life..."
@@ -61,6 +63,7 @@
max_damage = 200
body_part = HEAD
/obj/item/organ/limb/l_arm
name = "l_arm"
desc = "why is it detached..."
@@ -68,6 +71,7 @@
max_damage = 75
body_part = ARM_LEFT
/obj/item/organ/limb/l_leg
name = "l_leg"
desc = "why is it detached..."
@@ -75,6 +79,7 @@
max_damage = 75
body_part = LEG_LEFT
/obj/item/organ/limb/r_arm
name = "r_arm"
desc = "why is it detached..."
@@ -82,6 +87,7 @@
max_damage = 75
body_part = ARM_RIGHT
/obj/item/organ/limb/r_leg
name = "r_leg"
desc = "why is it detached..."
@@ -90,6 +96,7 @@
body_part = LEG_RIGHT
//Applies brute and burn damage to the organ. Returns 1 if the damage-icon states changed at all.
//Damage will not exceed max_damage using this proc
//Cannot apply negative damage