Surgical tools will no longer cause damage on help intent

This commit is contained in:
Anewbe
2017-01-21 18:34:05 -06:00
parent 022ea9f15e
commit ac4b355f5e
33 changed files with 213 additions and 183 deletions
+1 -1
View File
@@ -567,7 +567,7 @@
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/plain/monocle(M), slot_glasses)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/apron(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/weapon/material/knife(M), slot_l_store)
M.equip_to_slot_or_del(new /obj/item/weapon/scalpel(M), slot_r_store)
M.equip_to_slot_or_del(new /obj/item/weapon/surgical/scalpel(M), slot_r_store)
var/obj/item/weapon/material/twohanded/fireaxe/fire_axe = new(M)
M.equip_to_slot_or_del(fire_axe, slot_r_hand)
+1 -1
View File
@@ -5,7 +5,7 @@
item_state_slots = list(slot_r_hand_str = "red", slot_l_hand_str = "red")
/obj/item/clothing/gloves/boxing/attackby(obj/item/weapon/W, mob/user)
if(istype(W, /obj/item/weapon/wirecutters) || istype(W, /obj/item/weapon/scalpel))
if(istype(W, /obj/item/weapon/wirecutters) || istype(W, /obj/item/weapon/surgical/scalpel))
user << "<span class='notice'>That won't work.</span>" //Nope
return
..()
+2 -2
View File
@@ -230,8 +230,8 @@
blood_overlay_type = "armor"
body_parts_covered = UPPER_TORSO|LOWER_TORSO
allowed = list(/obj/item/stack/medical, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/hypospray, /obj/item/weapon/reagent_containers/syringe, \
/obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/weapon/tank/emergency/oxygen,/obj/item/weapon/scalpel,/obj/item/weapon/retractor,/obj/item/weapon/hemostat, \
/obj/item/weapon/cautery,/obj/item/weapon/bonegel,/obj/item/weapon/FixOVein)
/obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/weapon/tank/emergency/oxygen,/obj/item/weapon/surgical/scalpel,/obj/item/weapon/surgical/retractor,/obj/item/weapon/surgical/hemostat, \
/obj/item/weapon/surgical/cautery,/obj/item/weapon/surgical/bonegel,/obj/item/weapon/surgical/FixOVein)
//Mime
/obj/item/clothing/suit/suspenders
+1 -1
View File
@@ -44,7 +44,7 @@
/obj/item/weapon/corncob/attackby(obj/item/weapon/W as obj, mob/user as mob)
..()
if(istype(W, /obj/item/weapon/circular_saw) || istype(W, /obj/item/weapon/material/hatchet) || istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual))
if(istype(W, /obj/item/weapon/surgical/circular_saw) || istype(W, /obj/item/weapon/material/hatchet) || istype(W, /obj/item/weapon/material/kitchen/utensil/knife) || istype(W, /obj/item/weapon/material/knife) || istype(W, /obj/item/weapon/material/knife/ritual))
user << "<span class='notice'>You use [W] to fashion a pipe out of the corn cob!</span>"
new /obj/item/clothing/mask/smokable/pipe/cobpipe (user.loc)
qdel(src)
@@ -237,7 +237,7 @@
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
plant_controller.add_plant(src)
if(istype(W, /obj/item/weapon/wirecutters) || istype(W, /obj/item/weapon/scalpel))
if(istype(W, /obj/item/weapon/wirecutters) || istype(W, /obj/item/weapon/surgical/scalpel))
if(sampled)
user << "<span class='warning'>\The [src] has already been sampled recently.</span>"
return
+1 -1
View File
@@ -426,7 +426,7 @@
if(O.is_open_container())
return 0
if(istype(O, /obj/item/weapon/wirecutters) || istype(O, /obj/item/weapon/scalpel))
if(istype(O, /obj/item/weapon/wirecutters) || istype(O, /obj/item/weapon/surgical/scalpel))
if(!seed)
user << "There is nothing to take a sample from in \the [src]."
@@ -192,15 +192,15 @@ var/global/list/robot_modules = list(
..()
src.modules += new /obj/item/device/healthanalyzer(src)
src.modules += new /obj/item/weapon/reagent_containers/borghypo(src)
src.modules += new /obj/item/weapon/scalpel(src)
src.modules += new /obj/item/weapon/hemostat(src)
src.modules += new /obj/item/weapon/retractor(src)
src.modules += new /obj/item/weapon/cautery(src)
src.modules += new /obj/item/weapon/bonegel(src)
src.modules += new /obj/item/weapon/FixOVein(src)
src.modules += new /obj/item/weapon/bonesetter(src)
src.modules += new /obj/item/weapon/circular_saw(src)
src.modules += new /obj/item/weapon/surgicaldrill(src)
src.modules += new /obj/item/weapon/surgical/scalpel(src)
src.modules += new /obj/item/weapon/surgical/hemostat(src)
src.modules += new /obj/item/weapon/surgical/retractor(src)
src.modules += new /obj/item/weapon/surgical/cautery(src)
src.modules += new /obj/item/weapon/surgical/bonegel(src)
src.modules += new /obj/item/weapon/surgical/FixOVein(src)
src.modules += new /obj/item/weapon/surgical/bonesetter(src)
src.modules += new /obj/item/weapon/surgical/circular_saw(src)
src.modules += new /obj/item/weapon/surgical/surgicaldrill(src)
src.modules += new /obj/item/weapon/gripper/no_use/organ(src)
src.emag = new /obj/item/weapon/reagent_containers/spray(src)
src.emag.reagents.add_reagent("pacid", 250)
@@ -603,8 +603,8 @@ var/global/list/robot_modules = list(
src.modules += new /obj/item/weapon/wrench(src)
src.modules += new /obj/item/weapon/wirecutters(src)
src.modules += new /obj/item/device/multitool(src)
src.modules += new /obj/item/weapon/scalpel(src)
src.modules += new /obj/item/weapon/circular_saw(src)
src.modules += new /obj/item/weapon/surgical/scalpel(src)
src.modules += new /obj/item/weapon/surgical/circular_saw(src)
src.modules += new /obj/item/weapon/reagent_containers/syringe(src)
src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src)
src.emag = new /obj/item/weapon/hand_tele(src)
+3 -3
View File
@@ -140,17 +140,17 @@
/obj/item/organ/external/attackby(obj/item/weapon/W as obj, mob/living/user as mob)
switch(stage)
if(0)
if(istype(W,/obj/item/weapon/scalpel))
if(istype(W,/obj/item/weapon/surgical/scalpel))
user.visible_message("<span class='danger'><b>[user]</b> cuts [src] open with [W]!</span>")
stage++
return
if(1)
if(istype(W,/obj/item/weapon/retractor))
if(istype(W,/obj/item/weapon/surgical/retractor))
user.visible_message("<span class='danger'><b>[user]</b> cracks [src] open like an egg with [W]!</span>")
stage++
return
if(2)
if(istype(W,/obj/item/weapon/hemostat))
if(istype(W,/obj/item/weapon/surgical/hemostat))
if(contents.len)
var/obj/item/removing = pick(contents)
removing.loc = get_turf(user.loc)
@@ -30,7 +30,7 @@
// Stole hacky terrible code from doublebarrel shotgun. -Spades
/obj/item/weapon/gun/projectile/shotgun/pump/rifle/mosin/attackby(var/obj/item/A as obj, mob/user as mob)
if(istype(A, /obj/item/weapon/circular_saw) || istype(A, /obj/item/weapon/melee/energy) || istype(A, /obj/item/weapon/pickaxe/plasmacutter) && w_class != ITEMSIZE_NORMAL)
if(istype(A, /obj/item/weapon/surgical/circular_saw) || istype(A, /obj/item/weapon/melee/energy) || istype(A, /obj/item/weapon/pickaxe/plasmacutter) && w_class != ITEMSIZE_NORMAL)
user << "<span class='notice'>You begin to shorten the barrel and stock of \the [src].</span>"
if(loaded.len)
afterattack(user, user) //will this work? //it will. we call it twice, for twice the FUN
@@ -87,7 +87,7 @@
//this is largely hacky and bad :( -Pete
/obj/item/weapon/gun/projectile/shotgun/doublebarrel/attackby(var/obj/item/A as obj, mob/user as mob)
if(istype(A, /obj/item/weapon/circular_saw) || istype(A, /obj/item/weapon/melee/energy) || istype(A, /obj/item/weapon/pickaxe/plasmacutter))
if(istype(A, /obj/item/weapon/surgical/circular_saw) || istype(A, /obj/item/weapon/melee/energy) || istype(A, /obj/item/weapon/pickaxe/plasmacutter))
user << "<span class='notice'>You begin to shorten the barrel of \the [src].</span>"
if(loaded.len)
var/burstsetting = burst
+4 -4
View File
@@ -435,7 +435,7 @@ other types of metals and chemistry for reagents).
id = "scalpel_laser1"
req_tech = list(TECH_BIO = 2, TECH_MATERIAL = 2, TECH_MAGNET = 2)
materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500)
build_path = /obj/item/weapon/scalpel/laser1
build_path = /obj/item/weapon/surgical/scalpel/laser1
sort_string = "MBBAA"
/datum/design/item/scalpel_laser2
@@ -444,7 +444,7 @@ other types of metals and chemistry for reagents).
id = "scalpel_laser2"
req_tech = list(TECH_BIO = 3, TECH_MATERIAL = 4, TECH_MAGNET = 4)
materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, "silver" = 2500)
build_path = /obj/item/weapon/scalpel/laser2
build_path = /obj/item/weapon/surgical/scalpel/laser2
sort_string = "MBBAB"
/datum/design/item/scalpel_laser3
@@ -453,7 +453,7 @@ other types of metals and chemistry for reagents).
id = "scalpel_laser3"
req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 6, TECH_MAGNET = 5)
materials = list(DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, "silver" = 2000, "gold" = 1500)
build_path = /obj/item/weapon/scalpel/laser3
build_path = /obj/item/weapon/surgical/scalpel/laser3
sort_string = "MBBAC"
/datum/design/item/scalpel_manager
@@ -462,7 +462,7 @@ other types of metals and chemistry for reagents).
id = "scalpel_manager"
req_tech = list(TECH_BIO = 4, TECH_MATERIAL = 7, TECH_MAGNET = 5, TECH_DATA = 4)
materials = list (DEFAULT_WALL_MATERIAL = 12500, "glass" = 7500, "silver" = 1500, "gold" = 1500, "diamond" = 750)
build_path = /obj/item/weapon/scalpel/manager
build_path = /obj/item/weapon/surgical/scalpel/manager
sort_string = "MBBAD"
/datum/design/item/implant
+4 -4
View File
@@ -5,7 +5,7 @@
/datum/surgery_step/glue_bone
allowed_tools = list(
/obj/item/weapon/bonegel = 100, \
/obj/item/weapon/surgical/bonegel = 100, \
/obj/item/weapon/screwdriver = 75
)
can_infect = 1
@@ -41,7 +41,7 @@
/datum/surgery_step/set_bone
allowed_tools = list(
/obj/item/weapon/bonesetter = 100, \
/obj/item/weapon/surgical/bonesetter = 100, \
/obj/item/weapon/wrench = 75 \
)
@@ -80,7 +80,7 @@
/datum/surgery_step/mend_skull
allowed_tools = list(
/obj/item/weapon/bonesetter = 100, \
/obj/item/weapon/surgical/bonesetter = 100, \
/obj/item/weapon/wrench = 75 \
)
@@ -114,7 +114,7 @@
/datum/surgery_step/finish_bone
allowed_tools = list(
/obj/item/weapon/bonegel = 100, \
/obj/item/weapon/surgical/bonegel = 100, \
/obj/item/weapon/screwdriver = 75
)
can_infect = 1
+4 -4
View File
@@ -17,7 +17,7 @@
/datum/surgery_step/open_encased/saw
allowed_tools = list(
/obj/item/weapon/circular_saw = 100, \
/obj/item/weapon/surgical/circular_saw = 100, \
/obj/item/weapon/material/hatchet = 75
)
@@ -66,7 +66,7 @@
/datum/surgery_step/open_encased/retract
allowed_tools = list(
/obj/item/weapon/retractor = 100, \
/obj/item/weapon/surgical/retractor = 100, \
/obj/item/weapon/crowbar = 75
)
@@ -122,7 +122,7 @@
/datum/surgery_step/open_encased/close
allowed_tools = list(
/obj/item/weapon/retractor = 100, \
/obj/item/weapon/surgical/retractor = 100, \
/obj/item/weapon/crowbar = 75
)
@@ -179,7 +179,7 @@
/datum/surgery_step/open_encased/mend
allowed_tools = list(
/obj/item/weapon/bonegel = 100, \
/obj/item/weapon/surgical/bonegel = 100, \
/obj/item/weapon/screwdriver = 75
)
+4 -4
View File
@@ -17,7 +17,7 @@
/datum/surgery_step/generic/cut_face
allowed_tools = list(
/obj/item/weapon/scalpel = 100, \
/obj/item/weapon/surgical/scalpel = 100, \
/obj/item/weapon/material/knife = 75, \
/obj/item/weapon/material/shard = 50, \
)
@@ -47,7 +47,7 @@
/datum/surgery_step/face/mend_vocal
allowed_tools = list(
/obj/item/weapon/hemostat = 100, \
/obj/item/weapon/surgical/hemostat = 100, \
/obj/item/stack/cable_coil = 75, \
/obj/item/device/assembly/mousetrap = 10 //I don't know. Don't ask me. But I'm leaving it because hilarity.
)
@@ -75,7 +75,7 @@
/datum/surgery_step/face/fix_face
allowed_tools = list(
/obj/item/weapon/retractor = 100, \
/obj/item/weapon/surgical/retractor = 100, \
/obj/item/weapon/crowbar = 55, \
/obj/item/weapon/material/kitchen/utensil/fork = 75)
@@ -103,7 +103,7 @@
/datum/surgery_step/face/cauterize
allowed_tools = list(
/obj/item/weapon/cautery = 100, \
/obj/item/weapon/surgical/cautery = 100, \
/obj/item/clothing/mask/smokable/cigarette = 75, \
/obj/item/weapon/flame/lighter = 50, \
/obj/item/weapon/weldingtool = 25
+9 -9
View File
@@ -23,9 +23,9 @@
/datum/surgery_step/generic/cut_with_laser
allowed_tools = list(
/obj/item/weapon/scalpel/laser3 = 95, \
/obj/item/weapon/scalpel/laser2 = 85, \
/obj/item/weapon/scalpel/laser1 = 75, \
/obj/item/weapon/surgical/scalpel/laser3 = 95, \
/obj/item/weapon/surgical/scalpel/laser2 = 85, \
/obj/item/weapon/surgical/scalpel/laser1 = 75, \
/obj/item/weapon/melee/energy/sword = 5
)
priority = 2
@@ -65,7 +65,7 @@
/datum/surgery_step/generic/incision_manager
allowed_tools = list(
/obj/item/weapon/scalpel/manager = 100
/obj/item/weapon/surgical/scalpel/manager = 100
)
priority = 2
req_open = 0
@@ -106,7 +106,7 @@
/datum/surgery_step/generic/cut_open
allowed_tools = list(
/obj/item/weapon/scalpel = 100, \
/obj/item/weapon/surgical/scalpel = 100, \
/obj/item/weapon/material/knife = 75, \
/obj/item/weapon/material/shard = 50, \
)
@@ -146,7 +146,7 @@
/datum/surgery_step/generic/clamp_bleeders
allowed_tools = list(
/obj/item/weapon/hemostat = 100, \
/obj/item/weapon/surgical/hemostat = 100, \
/obj/item/stack/cable_coil = 75, \
/obj/item/device/assembly/mousetrap = 20
)
@@ -181,7 +181,7 @@
/datum/surgery_step/generic/retract_skin
allowed_tools = list(
/obj/item/weapon/retractor = 100, \
/obj/item/weapon/surgical/retractor = 100, \
/obj/item/weapon/crowbar = 75, \
/obj/item/weapon/material/kitchen/utensil/fork = 50
)
@@ -236,7 +236,7 @@
/datum/surgery_step/generic/cauterize
allowed_tools = list(
/obj/item/weapon/cautery = 100, \
/obj/item/weapon/surgical/cautery = 100, \
/obj/item/clothing/mask/smokable/cigarette = 75, \
/obj/item/weapon/flame/lighter = 50, \
/obj/item/weapon/weldingtool = 25
@@ -273,7 +273,7 @@
/datum/surgery_step/generic/amputate
allowed_tools = list(
/obj/item/weapon/circular_saw = 100, \
/obj/item/weapon/surgical/circular_saw = 100, \
/obj/item/weapon/material/hatchet = 75
)
req_open = 0
+3 -3
View File
@@ -40,7 +40,7 @@
/datum/surgery_step/cavity/make_space
allowed_tools = list(
/obj/item/weapon/surgicaldrill = 100, \
/obj/item/weapon/surgical/surgicaldrill = 100, \
/obj/item/weapon/pen = 75, \
/obj/item/stack/rods = 50
)
@@ -69,7 +69,7 @@
/datum/surgery_step/cavity/close_space
priority = 2
allowed_tools = list(
/obj/item/weapon/cautery = 100, \
/obj/item/weapon/surgical/cautery = 100, \
/obj/item/clothing/mask/smokable/cigarette = 75, \
/obj/item/weapon/flame/lighter = 50, \
/obj/item/weapon/weldingtool = 25
@@ -144,7 +144,7 @@
/datum/surgery_step/cavity/implant_removal
allowed_tools = list(
/obj/item/weapon/hemostat = 100, \
/obj/item/weapon/surgical/hemostat = 100, \
/obj/item/weapon/wirecutters = 75, \
/obj/item/weapon/material/kitchen/utensil/fork = 20
)
+1 -1
View File
@@ -57,7 +57,7 @@
/datum/surgery_step/limb/connect
allowed_tools = list(
/obj/item/weapon/hemostat = 100, \
/obj/item/weapon/surgical/hemostat = 100, \
/obj/item/stack/cable_coil = 75, \
/obj/item/device/assembly/mousetrap = 20
)
+4 -4
View File
@@ -106,7 +106,7 @@
/datum/surgery_step/internal/detatch_organ
allowed_tools = list(
/obj/item/weapon/scalpel = 100, \
/obj/item/weapon/surgical/scalpel = 100, \
/obj/item/weapon/material/knife = 75, \
/obj/item/weapon/material/shard = 50, \
)
@@ -166,7 +166,7 @@
/datum/surgery_step/internal/remove_organ
allowed_tools = list(
/obj/item/weapon/hemostat = 100, \
/obj/item/weapon/surgical/hemostat = 100, \
/obj/item/weapon/wirecutters = 75, \
/obj/item/weapon/material/kitchen/utensil/fork = 20
)
@@ -292,7 +292,7 @@
/datum/surgery_step/internal/attach_organ
allowed_tools = list(
/obj/item/weapon/FixOVein = 100, \
/obj/item/weapon/surgical/FixOVein = 100, \
/obj/item/stack/cable_coil = 75
)
@@ -345,7 +345,7 @@
// To be finished after some tests.
// /datum/surgery_step/ribcage/heart/cut
// allowed_tools = list(
// /obj/item/weapon/scalpel = 100, \
// /obj/item/weapon/surgical/scalpel = 100, \
// /obj/item/weapon/material/knife = 75, \
// /obj/item/weapon/material/shard = 50, \
// )
+3 -3
View File
@@ -7,7 +7,7 @@
/datum/surgery_step/fix_vein
priority = 2
allowed_tools = list(
/obj/item/weapon/FixOVein = 100, \
/obj/item/weapon/surgical/FixOVein = 100, \
/obj/item/stack/cable_coil = 75
)
can_infect = 1
@@ -55,7 +55,7 @@
/datum/surgery_step/fix_dead_tissue //Debridement
priority = 2
allowed_tools = list(
/obj/item/weapon/scalpel = 100, \
/obj/item/weapon/surgical/scalpel = 100, \
/obj/item/weapon/material/knife = 75, \
/obj/item/weapon/material/shard = 50, \
)
@@ -172,7 +172,7 @@
/datum/surgery_step/hardsuit
allowed_tools = list(
/obj/item/weapon/weldingtool = 80,
/obj/item/weapon/circular_saw = 60,
/obj/item/weapon/surgical/circular_saw = 60,
/obj/item/weapon/pickaxe/plasmacutter = 100
)
req_open = 0
+3 -3
View File
@@ -56,7 +56,7 @@
/datum/surgery_step/robotics/open_hatch
allowed_tools = list(
/obj/item/weapon/retractor = 100,
/obj/item/weapon/surgical/retractor = 100,
/obj/item/weapon/crowbar = 100,
/obj/item/weapon/material/kitchen/utensil = 50
)
@@ -88,7 +88,7 @@
/datum/surgery_step/robotics/close_hatch
allowed_tools = list(
/obj/item/weapon/retractor = 100,
/obj/item/weapon/surgical/retractor = 100,
/obj/item/weapon/crowbar = 100,
/obj/item/weapon/material/kitchen/utensil = 50
)
@@ -196,7 +196,7 @@
/datum/surgery_step/robotics/fix_organ_robotic //For artificial organs
allowed_tools = list(
/obj/item/stack/nanopaste = 100, \
/obj/item/weapon/bonegel = 30, \
/obj/item/weapon/surgical/bonegel = 30, \
/obj/item/weapon/screwdriver = 70, \
)
+3 -3
View File
@@ -11,7 +11,7 @@
/datum/surgery_step/slime/cut_flesh
allowed_tools = list(
/obj/item/weapon/scalpel = 100, \
/obj/item/weapon/surgical/scalpel = 100, \
/obj/item/weapon/material/knife = 75, \
/obj/item/weapon/material/shard = 50, \
)
@@ -37,7 +37,7 @@
/datum/surgery_step/slime/cut_innards
allowed_tools = list(
/obj/item/weapon/scalpel = 100, \
/obj/item/weapon/surgical/scalpel = 100, \
/obj/item/weapon/material/knife = 75, \
/obj/item/weapon/material/shard = 50, \
)
@@ -63,7 +63,7 @@
/datum/surgery_step/slime/saw_core
allowed_tools = list(
/obj/item/weapon/circular_saw = 100, \
/obj/item/weapon/surgical/circular_saw = 100, \
/obj/item/weapon/material/hatchet = 75
)
@@ -41,17 +41,17 @@
/obj/item/device/radio/beacon,
/obj/item/weapon/autopsy_scanner,
/obj/item/weapon/bikehorn,
/obj/item/weapon/bonesetter,
/obj/item/weapon/surgical/bonesetter,
/obj/item/weapon/material/knife/butch,
/obj/item/weapon/caution,
/obj/item/weapon/caution/cone,
/obj/item/weapon/crowbar,
/obj/item/weapon/clipboard,
/obj/item/weapon/cell,
/obj/item/weapon/circular_saw,
/obj/item/weapon/surgical/circular_saw,
/obj/item/weapon/material/hatchet,
/obj/item/weapon/handcuffs,
/obj/item/weapon/hemostat,
/obj/item/weapon/surgical/hemostat,
/obj/item/weapon/material/knife,
/obj/item/weapon/flame/lighter,
/obj/item/weapon/light/bulb,