diff --git a/modular_skyrat/master_files/code/modules/research/designs/medical_designs.dm b/modular_skyrat/master_files/code/modules/research/designs/medical_designs.dm index c2beb545386..8665311caa1 100644 --- a/modular_skyrat/master_files/code/modules/research/designs/medical_designs.dm +++ b/modular_skyrat/master_files/code/modules/research/designs/medical_designs.dm @@ -20,3 +20,29 @@ desc = "A forked cybernetic tongue." id = "cybernetic_tongue_lizard" build_path = /obj/item/organ/internal/tongue/lizard/cybernetic + +/datum/design/cyberimp_surgical/alien + name = "Alien Surgical Arm Implant" + desc = "A set of surgical tools hidden behind a concealed panel on the user's arm." + id = "ci-surgery-alien" + build_type = PROTOLATHE | AWAY_LATHE | MECHFAB + materials = list (/datum/material/iron = SHEET_MATERIAL_AMOUNT*10.25, /datum/material/glass =HALF_SHEET_MATERIAL_AMOUNT * 10.5, /datum/material/silver =HALF_SHEET_MATERIAL_AMOUNT * 10.5, /datum/material/plasma =SMALL_MATERIAL_AMOUNT * 10, /datum/material/titanium =HALF_SHEET_MATERIAL_AMOUNT * 4.5) + construction_time = 2 SECONDS + build_path = /obj/item/organ/internal/cyberimp/arm/surgery/alien + category = list( + RND_CATEGORY_CYBERNETICS + RND_SUBCATEGORY_CYBERNETICS_IMPLANTS_UTILITY + RND_SUBCATEGORY_TOOLS_MEDICAL_ALIEN + ) + departmental_flags = DEPARTMENT_BITFLAG_MEDICAL + +/datum/design/cyberimp_toolset/alien + name = "Alien Toolset Arm Implant" + desc = "A version of engineering toolset with abductor tools, designed to be installed on subject's arm." + id = "ci-toolset-alien" + build_type = PROTOLATHE | AWAY_LATHE | MECHFAB + materials = list (/datum/material/iron =SHEET_MATERIAL_AMOUNT * 15.5, /datum/material/silver =SHEET_MATERIAL_AMOUNT*8.25, /datum/material/plasma =SHEET_MATERIAL_AMOUNT * 8.5, /datum/material/titanium =SHEET_MATERIAL_AMOUNT * 3, /datum/material/diamond =SHEET_MATERIAL_AMOUNT * 3) + construction_time = 2 SECONDS + build_path = /obj/item/organ/internal/cyberimp/arm/toolset/alien + category = list( + RND_CATEGORY_CYBERNETICS + RND_SUBCATEGORY_CYBERNETICS_IMPLANTS_UTILITY + RND_SUBCATEGORY_TOOLS_ENGINEERING_ALIEN + ) + departmental_flags = DEPARTMENT_BITFLAG_MEDICAL diff --git a/modular_skyrat/master_files/code/modules/research/techweb/all_nodes.dm b/modular_skyrat/master_files/code/modules/research/techweb/all_nodes.dm index 5fbcf2bb1b9..bb4fa929dc0 100644 --- a/modular_skyrat/master_files/code/modules/research/techweb/all_nodes.dm +++ b/modular_skyrat/master_files/code/modules/research/techweb/all_nodes.dm @@ -258,3 +258,14 @@ "borg_upgrade_welding", ) return ..() + +/datum/techweb_node/ayy_cyber_implants + id = "ayy_cyber_implants" + display_name = "Alien Cybernetic Implants" + description = "The best in cybernetic implants." + prereq_ids = list("neural_programming", "cyber_implants","integrated_HUDs", "adv_cyber_implants", "alien_bio", "alien_engi") + design_ids = list( + "ci-surgery-alien", + "ci-toolset-alien", + ) + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) diff --git a/modular_skyrat/master_files/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm b/modular_skyrat/master_files/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm new file mode 100644 index 00000000000..f2e1b174cd0 --- /dev/null +++ b/modular_skyrat/master_files/code/modules/surgery/organs/internal/cyberimp/augments_arms.dm @@ -0,0 +1,26 @@ +/obj/item/organ/internal/cyberimp/arm/toolset/alien + name = "integrated alien toolset implant" + desc = "A version of the engineering toolset, designed to be installed on subject's arm. Contain abductor tools." + actions_types = list(/datum/action/item_action/organ_action/toggle/toolkit) + items_to_create = list( + /obj/item/screwdriver/abductor, + /obj/item/wrench/abductor, + /obj/item/weldingtool/abductor, + /obj/item/crowbar/abductor, + /obj/item/wirecutters/abductor, + /obj/item/multitool/abductor, + ) + +/obj/item/organ/internal/cyberimp/arm/surgery/alien + name = "alien surgical toolset implant" + desc = "A set of alien surgical tools hidden behind a concealed panel on the user's arm." + actions_types = list(/datum/action/item_action/organ_action/toggle/toolkit) + items_to_create = list( + /obj/item/retractor/alien, + /obj/item/hemostat/alien, + /obj/item/cautery/alien, + /obj/item/surgicaldrill/alien, + /obj/item/scalpel/alien, + /obj/item/circular_saw/alien, + /obj/item/surgical_processor, + ) diff --git a/tgstation.dme b/tgstation.dme index 77813fb06b3..42cf4e834bf 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -6512,6 +6512,7 @@ #include "modular_skyrat\master_files\code\modules\surgery\organs\external\wings\functional_wings.dm" #include "modular_skyrat\master_files\code\modules\surgery\organs\external\wings\wings.dm" #include "modular_skyrat\master_files\code\modules\surgery\organs\internal\appendix\_appendix.dm" +#include "modular_skyrat\master_files\code\modules\surgery\organs\internal\cyberimp\augments_arms.dm" #include "modular_skyrat\master_files\code\modules\vehicles\sealed.dm" #include "modular_skyrat\master_files\code\modules\vehicles\snowmobile.dm" #include "modular_skyrat\modules\additional_circuit\code\_designs.dm"