here we go again (#2456)

This commit is contained in:
LetterJay
2017-08-24 21:24:25 -05:00
committed by kevinz000
parent c7ed043fd5
commit 188193eb61
1107 changed files with 25420 additions and 25417 deletions
+1 -1
View File
@@ -9,7 +9,7 @@
/datum/surgery_step/sever_limb
name = "sever limb"
implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/circular_saw = 100, /obj/item/weapon/melee/transforming/energy/sword/cyborg/saw = 100, /obj/item/weapon/melee/arm_blade = 80, /obj/item/weapon/twohanded/required/chainsaw = 80, /obj/item/weapon/mounted_chainsaw = 80, /obj/item/weapon/twohanded/fireaxe = 50, /obj/item/weapon/hatchet = 40, /obj/item/weapon/kitchen/knife/butcher = 25)
implements = list(/obj/item/scalpel = 100, /obj/item/circular_saw = 100, /obj/item/melee/transforming/energy/sword/cyborg/saw = 100, /obj/item/melee/arm_blade = 80, /obj/item/twohanded/required/chainsaw = 80, /obj/item/mounted_chainsaw = 80, /obj/item/twohanded/fireaxe = 50, /obj/item/hatchet = 40, /obj/item/kitchen/knife/butcher = 25)
time = 64
/datum/surgery_step/sever_limb/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -316,7 +316,7 @@
name = initial(name)
//Handle dental implants
for(var/obj/item/weapon/reagent_containers/pill/P in src)
for(var/obj/item/reagent_containers/pill/P in src)
for(var/datum/action/item_action/hands_free/activate_pill/AP in P.actions)
P.forceMove(C)
AP.Grant(C)
+1 -1
View File
@@ -48,7 +48,7 @@
brain = null
update_icon_dropped()
else
if(istype(I, /obj/item/weapon/reagent_containers/pill))
if(istype(I, /obj/item/reagent_containers/pill))
for(var/datum/action/item_action/hands_free/activate_pill/AP in I.actions)
qdel(AP)
I.forceMove(T)
+1 -1
View File
@@ -91,7 +91,7 @@
/mob/living/carbon/human/get_leg_ignore()
if(movement_type & FLYING)
return TRUE
var/obj/item/weapon/tank/jetpack/J = get_jetpack()
var/obj/item/tank/jetpack/J = get_jetpack()
if(J && J.on && !has_gravity())
return TRUE
return FALSE
@@ -53,10 +53,10 @@
icon_state = "borg_chest"
status = BODYPART_ROBOTIC
var/wired = 0
var/obj/item/weapon/stock_parts/cell/cell = null
var/obj/item/stock_parts/cell/cell = null
/obj/item/bodypart/chest/robot/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/stock_parts/cell))
if(istype(W, /obj/item/stock_parts/cell))
if(src.cell)
to_chat(user, "<span class='warning'>You have already inserted a cell!</span>")
return
@@ -124,7 +124,7 @@
else
src.flash1 = F
to_chat(user, "<span class='notice'>You insert the flash into the eye socket.</span>")
else if(istype(W, /obj/item/weapon/crowbar))
else if(istype(W, /obj/item/crowbar))
if(flash1 || flash2)
playsound(src.loc, W.usesound, 50, 1)
to_chat(user, "<span class='notice'>You remove the flash from [src].</span>")
+1 -1
View File
@@ -12,7 +12,7 @@
//extract brain
/datum/surgery_step/extract_core
name = "extract core"
implements = list(/obj/item/weapon/hemostat = 100, /obj/item/weapon/crowbar = 100)
implements = list(/obj/item/hemostat = 100, /obj/item/crowbar = 100)
time = 16
/datum/surgery_step/extract_core/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
+2 -2
View File
@@ -5,13 +5,13 @@
/datum/surgery_step/insert_pill
name = "insert pill"
implements = list(/obj/item/weapon/reagent_containers/pill = 100)
implements = list(/obj/item/reagent_containers/pill = 100)
time = 16
/datum/surgery_step/insert_pill/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
user.visible_message("[user] begins to wedge \the [tool] in [target]'s [parse_zone(target_zone)].", "<span class='notice'>You begin to wedge [tool] in [target]'s [parse_zone(target_zone)]...</span>")
/datum/surgery_step/insert_pill/success(mob/user, mob/living/carbon/target, target_zone, var/obj/item/weapon/reagent_containers/pill/tool, datum/surgery/surgery)
/datum/surgery_step/insert_pill/success(mob/user, mob/living/carbon/target, target_zone, var/obj/item/reagent_containers/pill/tool, datum/surgery/surgery)
if(!istype(tool))
return 0
+1 -1
View File
@@ -8,7 +8,7 @@
//fix eyes
/datum/surgery_step/fix_eyes
name = "fix eyes"
implements = list(/obj/item/weapon/hemostat = 100, /obj/item/weapon/screwdriver = 45, /obj/item/weapon/pen = 25)
implements = list(/obj/item/hemostat = 100, /obj/item/screwdriver = 45, /obj/item/pen = 25)
time = 64
/datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target)
+17 -17
View File
@@ -2,8 +2,8 @@
//make incision
/datum/surgery_step/incise
name = "make incision"
implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/melee/transforming/energy/sword = 75, /obj/item/weapon/kitchen/knife = 65,
/obj/item/weapon/shard = 45, /obj/item = 30) // 30% success with any sharp item.
implements = list(/obj/item/scalpel = 100, /obj/item/melee/transforming/energy/sword = 75, /obj/item/kitchen/knife = 65,
/obj/item/shard = 45, /obj/item = 30) // 30% success with any sharp item.
time = 16
/datum/surgery_step/incise/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -19,7 +19,7 @@
//clamp bleeders
/datum/surgery_step/clamp_bleeders
name = "clamp bleeders"
implements = list(/obj/item/weapon/hemostat = 100, /obj/item/weapon/wirecutters = 60, /obj/item/stack/packageWrap = 35, /obj/item/stack/cable_coil = 15)
implements = list(/obj/item/hemostat = 100, /obj/item/wirecutters = 60, /obj/item/stack/packageWrap = 35, /obj/item/stack/cable_coil = 15)
time = 24
/datum/surgery_step/clamp_bleeders/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -35,7 +35,7 @@
//retract skin
/datum/surgery_step/retract_skin
name = "retract skin"
implements = list(/obj/item/weapon/retractor = 100, /obj/item/weapon/screwdriver = 45, /obj/item/weapon/wirecutters = 35)
implements = list(/obj/item/retractor = 100, /obj/item/screwdriver = 45, /obj/item/wirecutters = 35)
time = 24
/datum/surgery_step/retract_skin/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -47,8 +47,8 @@
//close incision
/datum/surgery_step/close
name = "mend incision"
implements = list(/obj/item/weapon/cautery = 100, /obj/item/weapon/gun/energy/laser = 90, /obj/item/weapon/weldingtool = 70,
/obj/item/weapon/lighter = 45, /obj/item/weapon/match = 20)
implements = list(/obj/item/cautery = 100, /obj/item/gun/energy/laser = 90, /obj/item/weldingtool = 70,
/obj/item/lighter = 45, /obj/item/match = 20)
time = 24
/datum/surgery_step/close/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -57,21 +57,21 @@
/datum/surgery_step/close/tool_check(mob/user, obj/item/tool)
if(istype(tool, /obj/item/weapon/cautery))
if(istype(tool, /obj/item/cautery))
return 1
if(istype(tool, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = tool
if(istype(tool, /obj/item/weldingtool))
var/obj/item/weldingtool/WT = tool
if(WT.isOn())
return 1
else if(istype(tool, /obj/item/weapon/lighter))
var/obj/item/weapon/lighter/L = tool
else if(istype(tool, /obj/item/lighter))
var/obj/item/lighter/L = tool
if(L.lit)
return 1
else if(istype(tool, /obj/item/weapon/match))
var/obj/item/weapon/match/M = tool
else if(istype(tool, /obj/item/match))
var/obj/item/match/M = tool
if(M.lit)
return 1
@@ -87,9 +87,9 @@
//saw bone
/datum/surgery_step/saw
name = "saw bone"
implements = list(/obj/item/weapon/circular_saw = 100, /obj/item/weapon/melee/transforming/energy/sword/cyborg/saw = 100,
/obj/item/weapon/melee/arm_blade = 75, /obj/item/weapon/mounted_chainsaw = 65, /obj/item/weapon/twohanded/required/chainsaw = 50,
/obj/item/weapon/twohanded/fireaxe = 50, /obj/item/weapon/hatchet = 35, /obj/item/weapon/kitchen/knife/butcher = 25)
implements = list(/obj/item/circular_saw = 100, /obj/item/melee/transforming/energy/sword/cyborg/saw = 100,
/obj/item/melee/arm_blade = 75, /obj/item/mounted_chainsaw = 65, /obj/item/twohanded/required/chainsaw = 50,
/obj/item/twohanded/fireaxe = 50, /obj/item/hatchet = 35, /obj/item/kitchen/knife/butcher = 25)
time = 54
/datum/surgery_step/saw/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -105,7 +105,7 @@
//drill bone
/datum/surgery_step/drill
name = "drill bone"
implements = list(/obj/item/weapon/surgicaldrill = 100, /obj/item/weapon/pickaxe/drill = 60, /obj/item/mecha_parts/mecha_equipment/drill = 60, /obj/item/weapon/screwdriver = 20)
implements = list(/obj/item/surgicaldrill = 100, /obj/item/pickaxe/drill = 60, /obj/item/mecha_parts/mecha_equipment/drill = 60, /obj/item/screwdriver = 20)
time = 30
/datum/surgery_step/drill/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
+1 -1
View File
@@ -78,7 +78,7 @@
user.visible_message("[user] removes the drapes from [M]'s [parse_zone(selected_zone)].", \
"<span class='notice'>You remove the drapes from [M]'s [parse_zone(selected_zone)].</span>")
qdel(current_surgery)
else if(istype(user.get_inactive_held_item(), /obj/item/weapon/cautery) && current_surgery.can_cancel)
else if(istype(user.get_inactive_held_item(), /obj/item/cautery) && current_surgery.can_cancel)
M.surgeries -= current_surgery
user.visible_message("[user] mends the incision and removes the drapes from [M]'s [parse_zone(selected_zone)].", \
"<span class='notice'>You mend the incision and remove the drapes from [M]'s [parse_zone(selected_zone)].</span>")
+5 -5
View File
@@ -9,9 +9,9 @@
//extract implant
/datum/surgery_step/extract_implant
name = "extract implant"
implements = list(/obj/item/weapon/hemostat = 100, /obj/item/weapon/crowbar = 65)
implements = list(/obj/item/hemostat = 100, /obj/item/crowbar = 65)
time = 64
var/obj/item/weapon/implant/I = null
var/obj/item/implant/I = null
/datum/surgery_step/extract_implant/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
for(var/obj/item/O in target.implants)
@@ -27,12 +27,12 @@
user.visible_message("[user] successfully removes [I] from [target]'s [target_zone]!", "<span class='notice'>You successfully remove [I] from [target]'s [target_zone].</span>")
I.removed(target)
var/obj/item/weapon/implantcase/case
for(var/obj/item/weapon/implantcase/ic in user.held_items)
var/obj/item/implantcase/case
for(var/obj/item/implantcase/ic in user.held_items)
case = ic
break
if(!case)
case = locate(/obj/item/weapon/implantcase) in get_turf(target)
case = locate(/obj/item/implantcase) in get_turf(target)
if(case && !case.imp)
case.imp = I
I.loc = case
+1 -1
View File
@@ -6,7 +6,7 @@
/datum/surgery_step/replace
name = "sever muscles"
implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/wirecutters = 55)
implements = list(/obj/item/scalpel = 100, /obj/item/wirecutters = 55)
time = 32
+4 -4
View File
@@ -12,7 +12,7 @@
//cut fat
/datum/surgery_step/cut_fat
name = "cut excess fat"
implements = list(/obj/item/weapon/circular_saw = 100, /obj/item/weapon/melee/transforming/energy/sword/cyborg/saw = 100, /obj/item/weapon/hatchet = 35, /obj/item/weapon/kitchen/knife/butcher = 25)
implements = list(/obj/item/circular_saw = 100, /obj/item/melee/transforming/energy/sword/cyborg/saw = 100, /obj/item/hatchet = 35, /obj/item/kitchen/knife/butcher = 25)
time = 64
/datum/surgery_step/cut_fat/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -25,7 +25,7 @@
//remove fat
/datum/surgery_step/remove_fat
name = "remove loose fat"
implements = list(/obj/item/weapon/retractor = 100, /obj/item/weapon/screwdriver = 45, /obj/item/weapon/wirecutters = 35)
implements = list(/obj/item/retractor = 100, /obj/item/screwdriver = 45, /obj/item/wirecutters = 35)
time = 32
/datum/surgery_step/remove_fat/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -38,12 +38,12 @@
target.nutrition = NUTRITION_LEVEL_WELL_FED
removednutriment -= 450 //whatever was removed goes into the meat
var/mob/living/carbon/human/H = target
var/typeofmeat = /obj/item/weapon/reagent_containers/food/snacks/meat/slab/human
var/typeofmeat = /obj/item/reagent_containers/food/snacks/meat/slab/human
if(H.dna && H.dna.species)
typeofmeat = H.dna.species.meat
var/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/newmeat = new typeofmeat
var/obj/item/reagent_containers/food/snacks/meat/slab/human/newmeat = new typeofmeat
newmeat.name = "fatty meat"
newmeat.desc = "Extremely fatty tissue taken from a patient."
newmeat.subjectname = H.real_name
+12 -12
View File
@@ -24,9 +24,9 @@
/datum/surgery_step/manipulate_organs
time = 64
name = "manipulate organs"
implements = list(/obj/item/organ = 100, /obj/item/weapon/reagent_containers/food/snacks/organ = 0, /obj/item/weapon/organ_storage = 100)
var/implements_extract = list(/obj/item/weapon/hemostat = 100, /obj/item/weapon/crowbar = 55)
var/implements_mend = list(/obj/item/weapon/cautery = 100, /obj/item/weapon/weldingtool = 70, /obj/item/weapon/lighter = 45, /obj/item/weapon/match = 20)
implements = list(/obj/item/organ = 100, /obj/item/reagent_containers/food/snacks/organ = 0, /obj/item/organ_storage = 100)
var/implements_extract = list(/obj/item/hemostat = 100, /obj/item/crowbar = 55)
var/implements_mend = list(/obj/item/cautery = 100, /obj/item/weldingtool = 70, /obj/item/lighter = 45, /obj/item/match = 20)
var/current_type
var/obj/item/organ/I = null
@@ -35,18 +35,18 @@
implements = implements + implements_extract + implements_mend
/datum/surgery_step/manipulate_organs/tool_check(mob/user, obj/item/tool)
if(istype(tool, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = tool
if(istype(tool, /obj/item/weldingtool))
var/obj/item/weldingtool/WT = tool
if(!WT.isOn())
return 0
else if(istype(tool, /obj/item/weapon/lighter))
var/obj/item/weapon/lighter/L = tool
else if(istype(tool, /obj/item/lighter))
var/obj/item/lighter/L = tool
if(!L.lit)
return 0
else if(istype(tool, /obj/item/weapon/match))
var/obj/item/weapon/match/M = tool
else if(istype(tool, /obj/item/match))
var/obj/item/match/M = tool
if(!M.lit)
return 0
@@ -55,7 +55,7 @@
/datum/surgery_step/manipulate_organs/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
I = null
if(istype(tool, /obj/item/weapon/organ_storage))
if(istype(tool, /obj/item/organ_storage))
if(!tool.contents.len)
to_chat(user, "<span class='notice'>There is nothing inside [tool]!</span>")
return -1
@@ -107,7 +107,7 @@
user.visible_message("[user] begins to mend the incision in [target]'s [parse_zone(target_zone)].",
"<span class='notice'>You begin to mend the incision in [target]'s [parse_zone(target_zone)]...</span>")
else if(istype(tool, /obj/item/weapon/reagent_containers/food/snacks/organ))
else if(istype(tool, /obj/item/reagent_containers/food/snacks/organ))
to_chat(user, "<span class='warning'>[tool] was bitten by someone! It's too damaged to use!</span>")
return -1
@@ -119,7 +119,7 @@
target.heal_bodypart_damage(45,0)
return 1
else if(current_type == "insert")
if(istype(tool, /obj/item/weapon/organ_storage))
if(istype(tool, /obj/item/organ_storage))
I = tool.contents[1]
tool.icon_state = "evidenceobj"
tool.desc = "A container for holding body parts."
+14 -14
View File
@@ -33,9 +33,9 @@
..()
to_chat(user, "<span class='info'>[src] is assembled in the [zone == "r_arm" ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it.</span>")
/obj/item/organ/cyberimp/arm/attackby(obj/item/weapon/W, mob/user, params)
/obj/item/organ/cyberimp/arm/attackby(obj/item/W, mob/user, params)
..()
if(istype(W, /obj/item/weapon/screwdriver))
if(istype(W, /obj/item/screwdriver))
if(zone == "r_arm")
zone = "l_arm"
else
@@ -43,7 +43,7 @@
slot = zone + "_device"
to_chat(user, "<span class='notice'>You modify [src] to be installed on the [zone == "r_arm" ? "right" : "left"] arm.</span>")
update_icon()
else if(istype(W, /obj/item/weapon/card/emag))
else if(istype(W, /obj/item/card/emag))
emag_act()
/obj/item/organ/cyberimp/arm/Remove(mob/living/carbon/M, special = 0)
@@ -119,7 +119,7 @@
return
// You can emag the arm-mounted implant by activating it while holding emag in it's hand.
if(istype(owner.get_active_held_item(), /obj/item/weapon/card/emag) && emag_act())
if(istype(owner.get_active_held_item(), /obj/item/card/emag) && emag_act())
return
if(!holder || (holder in src))
@@ -154,7 +154,7 @@
desc = "A variant of the arm cannon implant that fires lethal laser beams. The cannon emerges from the subject's arm and remains inside when not in use."
icon_state = "arm_laser"
origin_tech = "materials=4;combat=4;biotech=4;powerstorage=4;syndicate=3"
contents = newlist(/obj/item/weapon/gun/energy/laser/mounted)
contents = newlist(/obj/item/gun/energy/laser/mounted)
/obj/item/organ/cyberimp/arm/gun/laser/l
zone = "l_arm"
@@ -165,7 +165,7 @@
desc = "A variant of the arm cannon implant that fires electrodes and disabler shots. The cannon emerges from the subject's arm and remains inside when not in use."
icon_state = "arm_taser"
origin_tech = "materials=5;combat=5;biotech=4;powerstorage=4"
contents = newlist(/obj/item/weapon/gun/energy/e_gun/advtaser/mounted)
contents = newlist(/obj/item/gun/energy/e_gun/advtaser/mounted)
/obj/item/organ/cyberimp/arm/gun/taser/l
zone = "l_arm"
@@ -175,29 +175,29 @@
name = "integrated toolset implant"
desc = "A stripped-down version of engineering cyborg toolset, designed to be installed on subject's arm. Contains all necessary tools."
origin_tech = "materials=3;engineering=4;biotech=3;powerstorage=4"
contents = newlist(/obj/item/weapon/screwdriver/cyborg, /obj/item/weapon/wrench/cyborg, /obj/item/weapon/weldingtool/largetank/cyborg,
/obj/item/weapon/crowbar/cyborg, /obj/item/weapon/wirecutters/cyborg, /obj/item/device/multitool/cyborg)
contents = newlist(/obj/item/screwdriver/cyborg, /obj/item/wrench/cyborg, /obj/item/weldingtool/largetank/cyborg,
/obj/item/crowbar/cyborg, /obj/item/wirecutters/cyborg, /obj/item/device/multitool/cyborg)
/obj/item/organ/cyberimp/arm/toolset/l
zone = "l_arm"
/obj/item/organ/cyberimp/arm/toolset/emag_act()
if(!(locate(/obj/item/weapon/kitchen/knife/combat/cyborg) in items_list))
if(!(locate(/obj/item/kitchen/knife/combat/cyborg) in items_list))
to_chat(usr, "<span class='notice'>You unlock [src]'s integrated knife!</span>")
items_list += new /obj/item/weapon/kitchen/knife/combat/cyborg(src)
items_list += new /obj/item/kitchen/knife/combat/cyborg(src)
return 1
return 0
/obj/item/organ/cyberimp/arm/esword
name = "arm-mounted energy blade"
desc = "An illegal, and highly dangerous cybernetic implant that can project a deadly blade of concentrated energy."
contents = newlist(/obj/item/weapon/melee/transforming/energy/blade/hardlight)
contents = newlist(/obj/item/melee/transforming/energy/blade/hardlight)
origin_tech = "materials=4;combat=5;biotech=3;powerstorage=2;syndicate=5"
/obj/item/organ/cyberimp/arm/medibeam
name = "integrated medical beamgun"
desc = "A cybernetic implant that allows the user to project a healing beam from their hand."
contents = newlist(/obj/item/weapon/gun/medbeam)
contents = newlist(/obj/item/gun/medbeam)
origin_tech = "materials=5;combat=2;biotech=5;powerstorage=4;syndicate=1"
/obj/item/organ/cyberimp/arm/flash
@@ -221,7 +221,7 @@
/obj/item/organ/cyberimp/arm/combat
name = "combat cybernetics implant"
desc = "A powerful cybernetic implant that contains combat modules built into the user's arm"
contents = newlist(/obj/item/weapon/melee/transforming/energy/blade/hardlight, /obj/item/weapon/gun/medbeam, /obj/item/borg/stun, /obj/item/device/assembly/flash/armimplant)
contents = newlist(/obj/item/melee/transforming/energy/blade/hardlight, /obj/item/gun/medbeam, /obj/item/borg/stun, /obj/item/device/assembly/flash/armimplant)
origin_tech = "materials=5;combat=7;biotech=5;powerstorage=5;syndicate=6;programming=5"
/obj/item/organ/cyberimp/arm/combat/Initialize()
@@ -233,5 +233,5 @@
/obj/item/organ/cyberimp/arm/surgery
name = "surgical toolset implant"
desc = "A set of surgical tools hidden behind a concealed panel on the user's arm"
contents = newlist(/obj/item/weapon/retractor/augment, /obj/item/weapon/hemostat/augment, /obj/item/weapon/cautery/augment, /obj/item/weapon/surgicaldrill/augment, /obj/item/weapon/scalpel/augment, /obj/item/weapon/circular_saw/augment, /obj/item/weapon/surgical_drapes)
contents = newlist(/obj/item/retractor/augment, /obj/item/hemostat/augment, /obj/item/cautery/augment, /obj/item/surgicaldrill/augment, /obj/item/scalpel/augment, /obj/item/circular_saw/augment, /obj/item/surgical_drapes)
origin_tech = "materials=3;engineering=3;biotech=3;programming=2;magnets=3"
@@ -189,7 +189,7 @@
return 1
// Priority 3: use internals tank.
var/obj/item/weapon/tank/I = owner.internal
var/obj/item/tank/I = owner.internal
if(I && I.air_contents && I.air_contents.total_moles() > num)
var/datum/gas_mixture/removed = I.air_contents.remove(num)
if(removed.total_moles() > 0.005)
@@ -144,7 +144,7 @@
//BOX O' IMPLANTS
/obj/item/weapon/storage/box/cyber_implants
/obj/item/storage/box/cyber_implants
name = "boxed cybernetic implants"
desc = "A sleek, sturdy box."
icon_state = "cyber_implants"
@@ -155,7 +155,7 @@
/obj/item/device/autosurgeon/reviver)
var/amount = 5
/obj/item/weapon/storage/box/cyber_implants/PopulateContents()
/obj/item/storage/box/cyber_implants/PopulateContents()
var/implant
while(contents.len <= amount)
implant = pick(boxed)
+1 -1
View File
@@ -44,7 +44,7 @@
I.loc = src
storedorgan = I
to_chat(user, "<span class='notice'>You insert the [I] into [src].</span>")
else if(istype(I, /obj/item/weapon/screwdriver))
else if(istype(I, /obj/item/screwdriver))
if(!storedorgan)
to_chat(user, "<span class='notice'>There's no implant in [src] for you to remove.</span>")
else
+1 -1
View File
@@ -51,7 +51,7 @@
I.forceMove(src)
storedorgan = I
to_chat(user, "<span class='notice'>You insert the [I] into [src].</span>")
else if(istype(I, /obj/item/weapon/screwdriver))
else if(istype(I, /obj/item/screwdriver))
if(!storedorgan)
to_chat(user, "<span class='notice'>There's no implant in [src] for you to remove.</span>")
else
@@ -59,7 +59,7 @@
/obj/item/organ/proc/prepare_eat()
var/obj/item/weapon/reagent_containers/food/snacks/organ/S = new
var/obj/item/reagent_containers/food/snacks/organ/S = new
S.name = name
S.desc = desc
S.icon = icon
@@ -69,7 +69,7 @@
return S
/obj/item/weapon/reagent_containers/food/snacks/organ
/obj/item/reagent_containers/food/snacks/organ
name = "appendix"
icon_state = "appendix"
icon = 'icons/obj/surgery.dmi'
@@ -88,7 +88,7 @@
if(M == user && ishuman(user))
var/mob/living/carbon/human/H = user
if(status == ORGAN_ORGANIC)
var/obj/item/weapon/reagent_containers/food/snacks/S = prepare_eat()
var/obj/item/reagent_containers/food/snacks/S = prepare_eat()
if(S)
H.drop_item()
H.put_in_active_hand(S)
+1 -1
View File
@@ -6,7 +6,7 @@
//reshape_face
/datum/surgery_step/reshape_face
name = "reshape face"
implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/kitchen/knife = 50, /obj/item/weapon/wirecutters = 35)
implements = list(/obj/item/scalpel = 100, /obj/item/kitchen/knife = 50, /obj/item/wirecutters = 35)
time = 64
/datum/surgery_step/reshape_face/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
@@ -16,12 +16,12 @@
/datum/surgery_step/add_prosthetic
name = "add prosthetic"
implements = list(/obj/item/bodypart = 100, /obj/item/weapon/organ_storage = 100, /obj/item/weapon/twohanded/required/chainsaw = 100, /obj/item/weapon/melee/synthetic_arm_blade = 100)
implements = list(/obj/item/bodypart = 100, /obj/item/organ_storage = 100, /obj/item/twohanded/required/chainsaw = 100, /obj/item/melee/synthetic_arm_blade = 100)
time = 32
var/organ_rejection_dam = 0
/datum/surgery_step/add_prosthetic/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
if(istype(tool, /obj/item/weapon/organ_storage))
if(istype(tool, /obj/item/organ_storage))
if(!tool.contents.len)
to_chat(user, "<span class='notice'>There is nothing inside [tool]!</span>")
return -1
@@ -58,7 +58,7 @@
return -1
/datum/surgery_step/add_prosthetic/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
if(istype(tool, /obj/item/weapon/organ_storage))
if(istype(tool, /obj/item/organ_storage))
tool.icon_state = "evidenceobj"
tool.desc = "A container for holding body parts."
tool.cut_overlays()
@@ -77,12 +77,12 @@
L.attach_limb(target)
user.visible_message("[user] finishes attaching [tool]!", "<span class='notice'>You attach [tool].</span>")
qdel(tool)
if(istype(tool, /obj/item/weapon/twohanded/required/chainsaw))
var/obj/item/weapon/mounted_chainsaw/new_arm = new(target)
if(istype(tool, /obj/item/twohanded/required/chainsaw))
var/obj/item/mounted_chainsaw/new_arm = new(target)
target_zone == "r_arm" ? target.put_in_r_hand(new_arm) : target.put_in_l_hand(new_arm)
return 1
else if(istype(tool, /obj/item/weapon/melee/synthetic_arm_blade))
var/obj/item/weapon/melee/arm_blade/new_arm = new(target,TRUE,TRUE)
else if(istype(tool, /obj/item/melee/synthetic_arm_blade))
var/obj/item/melee/arm_blade/new_arm = new(target,TRUE,TRUE)
target_zone == "r_arm" ? target.put_in_r_hand(new_arm) : target.put_in_l_hand(new_arm)
return 1
+5 -5
View File
@@ -17,11 +17,11 @@
/datum/surgery_step/sever_tail
name = "sever tail"
implements = list(/obj/item/weapon/scalpel = 100, /obj/item/weapon/circular_saw = 100,
/obj/item/weapon/melee/sabre = 100, /obj/item/weapon/melee/transforming/energy/sword/cyborg/saw = 100,
/obj/item/weapon/melee/arm_blade = 80, /obj/item/weapon/twohanded/required/chainsaw = 80,
/obj/item/weapon/mounted_chainsaw = 80, /obj/item/weapon/twohanded/fireaxe = 50,
/obj/item/weapon/hatchet = 40, /obj/item = 30) // 30% success with any sharp item.
implements = list(/obj/item/scalpel = 100, /obj/item/circular_saw = 100,
/obj/item/melee/sabre = 100, /obj/item/melee/transforming/energy/sword/cyborg/saw = 100,
/obj/item/melee/arm_blade = 80, /obj/item/twohanded/required/chainsaw = 80,
/obj/item/mounted_chainsaw = 80, /obj/item/twohanded/fireaxe = 50,
/obj/item/hatchet = 40, /obj/item = 30) // 30% success with any sharp item.
time = 64
/datum/surgery_step/sever_tail/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
+18 -18
View File
@@ -1,4 +1,4 @@
/obj/item/weapon/retractor
/obj/item/retractor
name = "retractor"
desc = "Retracts stuff."
icon = 'icons/obj/surgery.dmi'
@@ -9,7 +9,7 @@
origin_tech = "materials=1;biotech=1"
/obj/item/weapon/retractor/augment
/obj/item/retractor/augment
name = "toolarm retractor"
desc = "Micro-mechanical manipulator for retracting stuff."
icon = 'icons/obj/surgery.dmi'
@@ -21,7 +21,7 @@
toolspeed = 0.5
/obj/item/weapon/hemostat
/obj/item/hemostat
name = "hemostat"
desc = "You think you have seen this before."
icon = 'icons/obj/surgery.dmi'
@@ -33,7 +33,7 @@
attack_verb = list("attacked", "pinched")
/obj/item/weapon/hemostat/augment
/obj/item/hemostat/augment
name = "toolarm hemostat"
desc = "Tiny servos power a pair of pincers to stop bleeding."
icon = 'icons/obj/surgery.dmi'
@@ -46,7 +46,7 @@
attack_verb = list("attacked", "pinched")
/obj/item/weapon/cautery
/obj/item/cautery
name = "cautery"
desc = "This stops bleeding."
icon = 'icons/obj/surgery.dmi'
@@ -58,7 +58,7 @@
attack_verb = list("burnt")
/obj/item/weapon/cautery/augment
/obj/item/cautery/augment
name = "toolarm cautery"
desc = "A heated element that cauterizes wounds."
icon = 'icons/obj/surgery.dmi'
@@ -71,7 +71,7 @@
attack_verb = list("burnt")
/obj/item/weapon/surgicaldrill
/obj/item/surgicaldrill
name = "surgical drill"
desc = "You can drill using this item. You dig?"
icon = 'icons/obj/surgery.dmi'
@@ -87,7 +87,7 @@
attack_verb = list("drilled")
/obj/item/weapon/surgicaldrill/augment
/obj/item/surgicaldrill/augment
name = "toolarm surgical drill"
desc = "Effectively a small power drill contained within your arm, edges dulled to prevent tissue damage. May or may not pierce the heavens."
icon = 'icons/obj/surgery.dmi'
@@ -102,7 +102,7 @@
attack_verb = list("drilled")
/obj/item/weapon/scalpel
/obj/item/scalpel
name = "scalpel"
desc = "Cut, cut, and once more cut."
icon = 'icons/obj/surgery.dmi'
@@ -121,7 +121,7 @@
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = IS_SHARP_ACCURATE
/obj/item/weapon/scalpel/augment
/obj/item/scalpel/augment
name = "toolarm scalpel"
desc = "Ultra-sharp blade attached directly to your bone for extra-accuracy."
icon = 'icons/obj/surgery.dmi'
@@ -139,12 +139,12 @@
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = IS_SHARP_ACCURATE
/obj/item/weapon/scalpel/suicide_act(mob/user)
/obj/item/scalpel/suicide_act(mob/user)
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/weapon/circular_saw
/obj/item/circular_saw
name = "circular saw"
desc = "For heavy duty cutting."
icon = 'icons/obj/surgery.dmi'
@@ -164,7 +164,7 @@
attack_verb = list("attacked", "slashed", "sawed", "cut")
sharpness = IS_SHARP
/obj/item/weapon/circular_saw/augment
/obj/item/circular_saw/augment
name = "toolarm circular saw"
desc = "A small but very fast spinning saw. Edges dulled to prevent accidental cutting inside of the surgeon."
icon = 'icons/obj/surgery.dmi'
@@ -183,7 +183,7 @@
attack_verb = list("attacked", "slashed", "sawed", "cut")
sharpness = IS_SHARP
/obj/item/weapon/surgical_drapes
/obj/item/surgical_drapes
name = "surgical drapes"
desc = "Nanotrasen brand surgical drapes provide optimal safety and infection control."
icon = 'icons/obj/surgery.dmi'
@@ -192,17 +192,17 @@
origin_tech = "biotech=1"
attack_verb = list("slapped")
/obj/item/weapon/surgical_drapes/attack(mob/living/M, mob/user)
/obj/item/surgical_drapes/attack(mob/living/M, mob/user)
if(!attempt_initiate_surgery(src, M, user))
..()
/obj/item/weapon/organ_storage //allows medical cyborgs to manipulate organs without hands
/obj/item/organ_storage //allows medical cyborgs to manipulate organs without hands
name = "organ storage bag"
desc = "A container for holding body parts."
icon = 'icons/obj/storage.dmi'
icon_state = "evidenceobj"
/obj/item/weapon/organ_storage/afterattack(obj/item/I, mob/user, proximity)
/obj/item/organ_storage/afterattack(obj/item/I, mob/user, proximity)
if(!proximity)
return
if(contents.len)
@@ -228,7 +228,7 @@
I.loc = src
w_class = I.w_class
/obj/item/weapon/organ_storage/attack_self(mob/user)
/obj/item/organ_storage/attack_self(mob/user)
if(contents.len)
var/obj/item/I = contents[1]
user.visible_message("[user] dumps [I] from [src].", "<span class='notice'>You dump [I] from [src].</span>")