mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-19 02:54:41 +01:00
Merge pull request #1177 from Fox-McCloud/laserrrrzzzz
Researchable Surgical Tools Port
This commit is contained in:
@@ -165,3 +165,43 @@
|
||||
reliability_base = 76
|
||||
build_path = /obj/item/device/flash/synthetic
|
||||
category = list("Misc")
|
||||
|
||||
/datum/design/item/scalpel_laser1
|
||||
name = "Basic Laser Scalpel"
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved."
|
||||
id = "scalpel_laser1"
|
||||
req_tech = list("biotech" = 2, "materials" = 2, "magnets" = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 12500, "$glass" = 7500)
|
||||
build_path = /obj/item/weapon/scalpel/laser1
|
||||
category = list("Medical")
|
||||
|
||||
/datum/design/item/scalpel_laser2
|
||||
name = "Improved Laser Scalpel"
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks somewhat advanced."
|
||||
id = "scalpel_laser2"
|
||||
req_tech = list("biotech" = 3, "materials" = 4, "magnets" = 4)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 12500, "$glass" = 7500, "$silver" = 2500)
|
||||
build_path = /obj/item/weapon/scalpel/laser2
|
||||
category = list("Medical")
|
||||
|
||||
/datum/design/item/scalpel_laser3
|
||||
name = "Advanced Laser Scalpel"
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks to be the pinnacle of precision energy cutlery!"
|
||||
id = "scalpel_laser3"
|
||||
req_tech = list("biotech" = 4, "materials" = 6, "magnets" = 5)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 12500, "$glass" = 7500, "$silver" = 2000, "$gold" = 1500)
|
||||
build_path = /obj/item/weapon/scalpel/laser3
|
||||
category = list("Medical")
|
||||
|
||||
/datum/design/item/scalpel_manager
|
||||
name = "Incision Management System"
|
||||
desc = "A true extension of the surgeon's body, this marvel instantly and completely prepares an incision allowing for the immediate commencement of therapeutic steps."
|
||||
id = "scalpel_manager"
|
||||
req_tech = list("biotech" = 4, "materials" = 7, "magnets" = 5, "programming" = 4)
|
||||
build_type = PROTOLATHE
|
||||
materials = list ("$metal" = 12500, "$glass" = 7500, "$silver" = 1500, "$gold" = 1500, "$diamond" = 750)
|
||||
build_path = /obj/item/weapon/scalpel/manager
|
||||
category = list("Medical")
|
||||
@@ -21,6 +21,90 @@
|
||||
return 0
|
||||
return 1
|
||||
|
||||
/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/melee/energy/sword = 5
|
||||
)
|
||||
|
||||
min_duration = 90
|
||||
max_duration = 110
|
||||
|
||||
can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
if(..())
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
return affected.open == 0 && target_zone != "mouth"
|
||||
|
||||
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("[user] starts the bloodless incision on [target]'s [affected.name] with \the [tool].", \
|
||||
"You start the bloodless incision on [target]'s [affected.name] with \the [tool].")
|
||||
target.custom_pain("You feel a horrible, searing pain in your [affected.name]!",1)
|
||||
..()
|
||||
|
||||
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("\blue [user] has made a bloodless incision on [target]'s [affected.name] with \the [tool].", \
|
||||
"\blue You have made a bloodless incision on [target]'s [affected.name] with \the [tool].",)
|
||||
//Could be cleaner ...
|
||||
affected.open = 1
|
||||
|
||||
if(istype(target) && !(target.species.flags & NO_BLOOD))
|
||||
affected.status |= ORGAN_BLEEDING
|
||||
|
||||
affected.createwound(CUT, 1)
|
||||
affected.clamp()
|
||||
spread_germs_to_organ(affected, user)
|
||||
|
||||
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("\red [user]'s hand slips as the blade sputters, searing a long gash in [target]'s [affected.name] with \the [tool]!", \
|
||||
"\red Your hand slips as the blade sputters, searing a long gash in [target]'s [affected.name] with \the [tool]!")
|
||||
affected.createwound(CUT, 7.5)
|
||||
affected.createwound(BURN, 12.5)
|
||||
|
||||
/datum/surgery_step/generic/incision_manager
|
||||
allowed_tools = list(
|
||||
/obj/item/weapon/scalpel/manager = 100
|
||||
)
|
||||
|
||||
min_duration = 80
|
||||
max_duration = 120
|
||||
|
||||
can_use(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
if(..())
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
return affected.open == 0 && target_zone != "mouth"
|
||||
|
||||
begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("[user] starts to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].", \
|
||||
"You start to construct a prepared incision on and within [target]'s [affected.name] with \the [tool].")
|
||||
target.custom_pain("You feel a horrible, searing pain in your [affected.name] as it is pushed apart!",1)
|
||||
..()
|
||||
|
||||
end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("\blue [user] has constructed a prepared incision on and within [target]'s [affected.name] with \the [tool].", \
|
||||
"\blue You have constructed a prepared incision on and within [target]'s [affected.name] with \the [tool].",)
|
||||
affected.open = 1
|
||||
|
||||
if(istype(target) && !(target.species.flags & NO_BLOOD))
|
||||
affected.status |= ORGAN_BLEEDING
|
||||
|
||||
affected.createwound(CUT, 1)
|
||||
affected.clamp()
|
||||
affected.open = 2
|
||||
|
||||
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("\red [user]'s hand jolts as the system sparks, ripping a gruesome hole in [target]'s [affected.name] with \the [tool]!", \
|
||||
"\red Your hand jolts as the system sparks, ripping a gruesome hole in [target]'s [affected.name] with \the [tool]!")
|
||||
affected.createwound(CUT, 20)
|
||||
affected.createwound(BURN, 15)
|
||||
|
||||
/datum/surgery_step/generic/cut_open
|
||||
allowed_tools = list(
|
||||
/obj/item/weapon/scalpel = 100, \
|
||||
|
||||
@@ -41,11 +41,13 @@
|
||||
desc = "You can drill using this item. You dig?"
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "drill"
|
||||
hitsound = 'sound/weapons/circsawhit.ogg'
|
||||
hitsound = 'sound/weapons/drill.ogg'
|
||||
m_amt = 10000
|
||||
g_amt = 6000
|
||||
flags = CONDUCT
|
||||
force = 15.0
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = 3.0
|
||||
origin_tech = "materials=1;biotech=1"
|
||||
attack_verb = list("drilled")
|
||||
@@ -82,6 +84,44 @@
|
||||
return (BRUTELOSS)
|
||||
|
||||
|
||||
/*
|
||||
* Researchable Scalpels
|
||||
*/
|
||||
/obj/item/weapon/scalpel/laser1
|
||||
name = "laser scalpel"
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved."
|
||||
icon_state = "scalpel_laser1_on"
|
||||
item_state = "scalpel"
|
||||
damtype = "fire"
|
||||
hitsound = 'sound/weapons/sear2.ogg'
|
||||
|
||||
/obj/item/weapon/scalpel/laser2
|
||||
name = "laser scalpel"
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks somewhat advanced."
|
||||
icon_state = "scalpel_laser2_on"
|
||||
item_state = "scalpel"
|
||||
damtype = "fire"
|
||||
force = 12.0
|
||||
hitsound = 'sound/weapons/sear2.ogg'
|
||||
|
||||
/obj/item/weapon/scalpel/laser3
|
||||
name = "laser scalpel"
|
||||
desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks to be the pinnacle of precision energy cutlery!"
|
||||
icon_state = "scalpel_laser3_on"
|
||||
item_state = "scalpel"
|
||||
damtype = "fire"
|
||||
force = 15.0
|
||||
hitsound = 'sound/weapons/sear2.ogg'
|
||||
|
||||
/obj/item/weapon/scalpel/manager
|
||||
name = "incision management system"
|
||||
desc = "A true extension of the surgeon's body, this marvel instantly and completely prepares an incision allowing for the immediate commencement of therapeutic steps."
|
||||
icon_state = "scalpel_manager_on"
|
||||
item_state = "scalpel"
|
||||
damtype = "fire"
|
||||
force = 18.0
|
||||
hitsound = 'sound/weapons/sear2.ogg'
|
||||
|
||||
/obj/item/weapon/circular_saw
|
||||
name = "circular saw"
|
||||
desc = "For heavy duty cutting."
|
||||
@@ -90,6 +130,8 @@
|
||||
hitsound = 'sound/weapons/circsawhit.ogg'
|
||||
flags = CONDUCT
|
||||
force = 15.0
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = 3.0
|
||||
throwforce = 9.0
|
||||
throw_speed = 3
|
||||
|
||||
Reference in New Issue
Block a user