mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com> Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
729 lines
26 KiB
Plaintext
729 lines
26 KiB
Plaintext
/datum/design/item/prosfab
|
|
build_type = PROSFAB
|
|
category = list("Misc")
|
|
req_tech = list(TECH_MATERIAL = 1)
|
|
|
|
/datum/design/item/prosfab/pros
|
|
category = list("Prosthetics")
|
|
|
|
// Make new external organs and make 'em robotish
|
|
/datum/design/item/prosfab/pros/Fabricate(var/newloc, var/fabricator)
|
|
if(istype(fabricator, /obj/machinery/mecha_part_fabricator/pros))
|
|
var/obj/machinery/mecha_part_fabricator/pros/prosfab = fabricator
|
|
var/obj/item/organ/O = new build_path(newloc)
|
|
if(prosfab.manufacturer)
|
|
var/datum/robolimb/manf = GLOB.all_robolimbs[prosfab.manufacturer]
|
|
|
|
if(!(O.organ_tag in manf.parts)) // Make sure we're using an actually present icon.
|
|
manf = GLOB.all_robolimbs["Unbranded"]
|
|
|
|
if(prosfab.species in manf.species_alternates) // If the prosthetics fab is set to say, Unbranded, and species set to 'Tajaran', it will make the Taj variant of Unbranded, if it exists.
|
|
manf = manf.species_alternates[prosfab.species]
|
|
|
|
if(!prosfab.species || (prosfab.species in manf.species_cannot_use)) // Fabricator ensures the manufacturer can make parts for the species we're set to.
|
|
O.data.setup_from_species(GLOB.all_species["[manf.suggested_species]"])
|
|
else
|
|
O.data.setup_from_species(GLOB.all_species[prosfab.species])
|
|
else
|
|
O.data.setup_from_species(GLOB.all_species["Human"])
|
|
O.robotize(prosfab.manufacturer)
|
|
return O
|
|
return ..()
|
|
|
|
// Deep Magic for the torso since it needs to be a new mob
|
|
/datum/design/item/prosfab/pros/torso/Fabricate(var/newloc, var/fabricator)
|
|
if(istype(fabricator, /obj/machinery/mecha_part_fabricator/pros))
|
|
var/obj/machinery/mecha_part_fabricator/pros/prosfab = fabricator
|
|
var/newspecies = "Human"
|
|
|
|
var/datum/robolimb/manf = GLOB.all_robolimbs[prosfab.manufacturer]
|
|
|
|
if(manf)
|
|
if(prosfab.species in manf.species_alternates) // If the prosthetics fab is set to say, Unbranded, and species set to 'Tajaran', it will make the Taj variant of Unbranded, if it exists.
|
|
manf = manf.species_alternates[prosfab.species]
|
|
|
|
if(!prosfab.species || (prosfab.species in manf.species_cannot_use))
|
|
newspecies = manf.suggested_species
|
|
else
|
|
newspecies = prosfab.species
|
|
|
|
var/mob/living/carbon/human/H = new(newloc,newspecies)
|
|
H.set_stat(DEAD)
|
|
H.gender = gender
|
|
for(var/obj/item/organ/external/EO in H.organs)
|
|
if(EO.organ_tag == BP_TORSO || EO.organ_tag == BP_GROIN)
|
|
continue //Roboticizing a torso does all the children and wastes time, do it later
|
|
else
|
|
EO.remove_rejuv()
|
|
|
|
for(var/obj/item/organ/external/O in H.organs)
|
|
O.data.setup_from_species(GLOB.all_species[newspecies])
|
|
|
|
if(!(O.organ_tag in manf.parts)) // Make sure we're using an actually present icon.
|
|
manf = GLOB.all_robolimbs["Unbranded"]
|
|
|
|
O.robotize(manf.company)
|
|
O.data.setup_from_dna()
|
|
|
|
// Skincolor weirdness.
|
|
O.s_col[1] = 255 // CHOMP Edit
|
|
O.s_col[2] = 255 // CHOMP Edit
|
|
O.s_col[3] = 255 // CHOMP Edit
|
|
|
|
// Resetting the UI does strange things for the skin of a non-human robot, which should be controlled by a whole different thing.
|
|
H.r_skin = 255 // CHOMP Edit
|
|
H.g_skin = 255 // CHOMP Edit
|
|
H.b_skin = 255 // CHOMP Edit
|
|
H.dna.ResetUIFrom(H)
|
|
|
|
H.allow_spontaneous_tf = TRUE // Allows vore customization of synthmorphs
|
|
H.real_name = "Synthmorph #[rand(100,999)]"
|
|
H.name = H.real_name
|
|
H.dir = 2
|
|
H.add_language(LANGUAGE_EAL)
|
|
return H
|
|
|
|
//////////////////// Prosthetics ////////////////////
|
|
/datum/design/item/prosfab/pros/torso
|
|
time = 35
|
|
materials = list(MAT_STEEL = 30000, MAT_GLASS = 7500)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_DATA = 3) //Saving the values just in case
|
|
var/gender = MALE
|
|
|
|
/datum/design/item/prosfab/pros/torso/male
|
|
name = "FBP Torso (M)"
|
|
id = "pros_torso_m"
|
|
build_path = /obj/item/organ/external/chest
|
|
gender = MALE
|
|
|
|
/obj/item/organ/external/chest/f //To satisfy CI. :|
|
|
|
|
/datum/design/item/prosfab/pros/torso/female
|
|
name = "FBP Torso (F)"
|
|
id = "pros_torso_f"
|
|
build_path = /obj/item/organ/external/chest/f
|
|
gender = FEMALE
|
|
|
|
/datum/design/item/prosfab/pros/head
|
|
name = "Prosthetic Head"
|
|
id = "pros_head"
|
|
build_path = /obj/item/organ/external/head
|
|
time = 30
|
|
materials = list(MAT_STEEL = 18750, MAT_GLASS = 3750)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 3, TECH_DATA = 3) //Saving the values just in case
|
|
|
|
/datum/design/item/prosfab/pros/l_arm
|
|
name = "Prosthetic Left Arm"
|
|
id = "pros_l_arm"
|
|
build_path = /obj/item/organ/external/arm
|
|
time = 20
|
|
materials = list(MAT_STEEL = 10125)
|
|
|
|
/datum/design/item/prosfab/pros/l_hand
|
|
name = "Prosthetic Left Hand"
|
|
id = "pros_l_hand"
|
|
build_path = /obj/item/organ/external/hand
|
|
time = 15
|
|
materials = list(MAT_STEEL = 3375)
|
|
|
|
/datum/design/item/prosfab/pros/r_arm
|
|
name = "Prosthetic Right Arm"
|
|
id = "pros_r_arm"
|
|
build_path = /obj/item/organ/external/arm/right
|
|
time = 20
|
|
materials = list(MAT_STEEL = 10125)
|
|
|
|
/datum/design/item/prosfab/pros/r_hand
|
|
name = "Prosthetic Right Hand"
|
|
id = "pros_r_hand"
|
|
build_path = /obj/item/organ/external/hand/right
|
|
time = 15
|
|
materials = list(MAT_STEEL = 3375)
|
|
|
|
/datum/design/item/prosfab/pros/l_leg
|
|
name = "Prosthetic Left Leg"
|
|
id = "pros_l_leg"
|
|
build_path = /obj/item/organ/external/leg
|
|
time = 20
|
|
materials = list(MAT_STEEL = 8437)
|
|
|
|
/datum/design/item/prosfab/pros/l_foot
|
|
name = "Prosthetic Left Foot"
|
|
id = "pros_l_foot"
|
|
build_path = /obj/item/organ/external/foot
|
|
time = 15
|
|
materials = list(MAT_STEEL = 2813)
|
|
|
|
/datum/design/item/prosfab/pros/r_leg
|
|
name = "Prosthetic Right Leg"
|
|
id = "pros_r_leg"
|
|
build_path = /obj/item/organ/external/leg/right
|
|
time = 20
|
|
materials = list(MAT_STEEL = 8437)
|
|
|
|
/datum/design/item/prosfab/pros/r_foot
|
|
name = "Prosthetic Right Foot"
|
|
id = "pros_r_foot"
|
|
build_path = /obj/item/organ/external/foot/right
|
|
time = 15
|
|
materials = list(MAT_STEEL = 2813)
|
|
|
|
/datum/design/item/prosfab/pros/internal
|
|
category = list("Prosthetics, Internal")
|
|
|
|
/datum/design/item/prosfab/pros/internal/cell
|
|
name = "Prosthetic Powercell"
|
|
id = "pros_cell"
|
|
build_path = /obj/item/organ/internal/cell
|
|
time = 15
|
|
materials = list(MAT_STEEL = 7500, MAT_GLASS = 3000)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/eyes
|
|
name = "Prosthetic Eyes"
|
|
id = "pros_eyes"
|
|
build_path = /obj/item/organ/internal/eyes/robot
|
|
time = 15
|
|
materials = list(MAT_STEEL = 5625, MAT_GLASS = 5625)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/hydraulic
|
|
name = "Hydraulic Hub"
|
|
id = "pros_hydraulic"
|
|
build_path = /obj/item/organ/internal/heart/machine
|
|
time = 15
|
|
materials = list(MAT_STEEL = 7500, MAT_PLASTIC = 3000)
|
|
|
|
/datum/design/item/prosfab/pros/internal/reagcycler
|
|
name = "Reagent Cycler"
|
|
id = "pros_reagcycler"
|
|
build_path = /obj/item/organ/internal/stomach/machine
|
|
time = 15
|
|
materials = list(MAT_STEEL = 7500, MAT_PLASTIC = 3000)
|
|
|
|
/datum/design/item/prosfab/pros/internal/heatsink
|
|
name = "Heatsink"
|
|
id = "pros_heatsink"
|
|
build_path = /obj/item/organ/internal/robotic/heatsink
|
|
time = 15
|
|
materials = list(MAT_STEEL = 7500, MAT_PLASTIC = 3000)
|
|
|
|
/datum/design/item/prosfab/pros/internal/diagnostic
|
|
name = "Diagnostic Controller"
|
|
id = "pros_diagnostic"
|
|
build_path = /obj/item/organ/internal/robotic/diagnostic
|
|
time = 15
|
|
materials = list(MAT_STEEL = 7500, MAT_PLASTIC = 3000)
|
|
|
|
/datum/design/item/prosfab/pros/internal/heart
|
|
name = "Prosthetic Heart"
|
|
id = "pros_heart"
|
|
build_path = /obj/item/organ/internal/heart
|
|
time = 15
|
|
materials = list(MAT_STEEL = 5625, MAT_GLASS = 1000)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/lungs
|
|
name = "Prosthetic Lungs"
|
|
id = "pros_lung"
|
|
build_path = /obj/item/organ/internal/lungs
|
|
time = 15
|
|
materials = list(MAT_STEEL = 5625, MAT_GLASS = 1000)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/liver
|
|
name = "Prosthetic Liver"
|
|
id = "pros_liver"
|
|
build_path = /obj/item/organ/internal/liver
|
|
time = 15
|
|
materials = list(MAT_STEEL = 5625, MAT_GLASS = 1000)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/kidneys
|
|
name = "Prosthetic Kidneys"
|
|
id = "pros_kidney"
|
|
build_path = /obj/item/organ/internal/kidneys
|
|
time = 15
|
|
materials = list(MAT_STEEL = 5625, MAT_GLASS = 1000)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/spleen
|
|
name = "Prosthetic Spleen"
|
|
id = "pros_spleen"
|
|
build_path = /obj/item/organ/internal/spleen
|
|
time = 15
|
|
materials = list(MAT_STEEL = 3000, MAT_GLASS = 750)
|
|
// req_tech = list(TECH_ENGINEERING = 2, TECH_MATERIAL = 2)
|
|
|
|
/datum/design/item/prosfab/pros/internal/larynx
|
|
name = "Prosthetic Larynx"
|
|
id = "pros_larynx"
|
|
build_path = /obj/item/organ/internal/voicebox
|
|
time = 15
|
|
materials = list(MAT_STEEL = 2000, MAT_GLASS = 750, MAT_PLASTIC = 500)
|
|
|
|
/datum/design/item/prosfab/pros/internal/stomach
|
|
name = "Prosthetic Stomach"
|
|
id = "pros_stomach"
|
|
build_path = /obj/item/organ/internal/stomach
|
|
time = 15
|
|
materials = list(MAT_STEEL = 5625, MAT_GLASS = 1000)
|
|
|
|
//////////////////// Cyborg Parts ////////////////////
|
|
/datum/design/item/prosfab/cyborg
|
|
category = list("Cyborg Parts")
|
|
time = 20
|
|
materials = list(MAT_STEEL = 3750)
|
|
|
|
/datum/design/item/prosfab/cyborg/exoskeleton
|
|
name = "Robot Exoskeleton"
|
|
id = "robot_exoskeleton"
|
|
build_path = /obj/item/robot_parts/robot_suit
|
|
time = 50
|
|
materials = list(MAT_STEEL = 37500)
|
|
|
|
/datum/design/item/prosfab/cyborg/torso
|
|
name = "Robot Torso"
|
|
id = "robot_torso"
|
|
build_path = /obj/item/robot_parts/chest
|
|
time = 35
|
|
materials = list(MAT_STEEL = 30000)
|
|
|
|
/datum/design/item/prosfab/cyborg/head
|
|
name = "Robot Head"
|
|
id = "robot_head"
|
|
build_path = /obj/item/robot_parts/head
|
|
time = 35
|
|
materials = list(MAT_STEEL = 18750)
|
|
|
|
/datum/design/item/prosfab/cyborg/l_arm
|
|
name = "Robot Left Arm"
|
|
id = "robot_l_arm"
|
|
build_path = /obj/item/robot_parts/l_arm
|
|
time = 20
|
|
materials = list(MAT_STEEL = 13500)
|
|
|
|
/datum/design/item/prosfab/cyborg/r_arm
|
|
name = "Robot Right Arm"
|
|
id = "robot_r_arm"
|
|
build_path = /obj/item/robot_parts/r_arm
|
|
time = 20
|
|
materials = list(MAT_STEEL = 13500)
|
|
|
|
/datum/design/item/prosfab/cyborg/l_leg
|
|
name = "Robot Left Leg"
|
|
id = "robot_l_leg"
|
|
build_path = /obj/item/robot_parts/l_leg
|
|
time = 20
|
|
materials = list(MAT_STEEL = 11250)
|
|
|
|
/datum/design/item/prosfab/cyborg/r_leg
|
|
name = "Robot Right Leg"
|
|
id = "robot_r_leg"
|
|
build_path = /obj/item/robot_parts/r_leg
|
|
time = 20
|
|
materials = list(MAT_STEEL = 11250)
|
|
|
|
|
|
//////////////////// Cyborg Internals ////////////////////
|
|
/datum/design/item/prosfab/cyborg/component
|
|
category = list("Cyborg Internals")
|
|
build_type = PROSFAB
|
|
time = 12
|
|
materials = list(MAT_STEEL = 7500)
|
|
|
|
/datum/design/item/prosfab/cyborg/component/binary_communication_device
|
|
name = "Binary Communication Device"
|
|
id = "binary_communication_device"
|
|
build_path = /obj/item/robot_parts/robot_component/binary_communication_device
|
|
|
|
/datum/design/item/prosfab/cyborg/component/radio
|
|
name = "Radio"
|
|
id = "radio"
|
|
build_path = /obj/item/robot_parts/robot_component/radio
|
|
|
|
/datum/design/item/prosfab/cyborg/component/actuator
|
|
name = "Actuator"
|
|
id = "actuator"
|
|
build_path = /obj/item/robot_parts/robot_component/actuator
|
|
|
|
/datum/design/item/prosfab/cyborg/component/diagnosis_unit
|
|
name = "Diagnosis Unit"
|
|
id = "diagnosis_unit"
|
|
build_path = /obj/item/robot_parts/robot_component/diagnosis_unit
|
|
|
|
/datum/design/item/prosfab/cyborg/component/camera
|
|
name = "Camera"
|
|
id = "camera"
|
|
build_path = /obj/item/robot_parts/robot_component/camera
|
|
|
|
/datum/design/item/prosfab/cyborg/component/armour
|
|
name = "Armour Plating (Robot)"
|
|
id = "armour"
|
|
build_path = /obj/item/robot_parts/robot_component/armour
|
|
|
|
/datum/design/item/prosfab/cyborg/component/armour_heavy
|
|
name = "Armour Plating (Platform)"
|
|
id = "platform_armour"
|
|
build_path = /obj/item/robot_parts/robot_component/armour_platform
|
|
|
|
/datum/design/item/prosfab/cyborg/component/ai_shell
|
|
name = "AI Remote Interface"
|
|
id = "mmi_ai_shell"
|
|
build_path = /obj/item/mmi/inert/ai_remote
|
|
|
|
//////////////////// Advanced Components ////////////////////
|
|
/datum/design/item/prosfab/cyborg/component/radio_upgraded
|
|
name = "Improved Radio"
|
|
id = "improved_radio"
|
|
build_path = /obj/item/robot_parts/robot_component/radio/upgraded
|
|
req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 5, TECH_PRECURSOR = 1)
|
|
materials = list(MAT_STEEL = 10000, MAT_DIAMOND = 2000, MAT_PLASTEEL = 3000, MAT_GLASS = 6500, MAT_SILVER = 3000, MAT_MORPHIUM = 560, MAT_DURASTEEL = 800)
|
|
|
|
/datum/design/item/prosfab/cyborg/component/actuator_upgraded
|
|
name = "Improved Actuator"
|
|
id = "improved_actuator"
|
|
build_path = /obj/item/robot_parts/robot_component/actuator/upgraded
|
|
req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 5, TECH_PRECURSOR = 1)
|
|
materials = list(MAT_STEEL = 10000, MAT_PLASTEEL = 2500, MAT_MORPHIUM = 500, MAT_DURASTEEL = 500)
|
|
|
|
/datum/design/item/prosfab/cyborg/component/diagnosis_unit_upgraded
|
|
name = "Improved Diagnosis Unit"
|
|
id = "improved_diagnosis_unit"
|
|
build_path = /obj/item/robot_parts/robot_component/diagnosis_unit/upgraded
|
|
req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 5, TECH_PRECURSOR = 1)
|
|
materials = list(MAT_STEEL = 10000, MAT_DIAMOND = 2000, MAT_URANIUM = 4000, MAT_PLASTEEL = 1000, MAT_GLASS = 400, MAT_SILVER = 1000, MAT_MORPHIUM = 420, MAT_DURASTEEL = 600)
|
|
|
|
/datum/design/item/prosfab/cyborg/component/camera_upgraded
|
|
name = "Improved Camera"
|
|
id = "improved_camera"
|
|
build_path = /obj/item/robot_parts/robot_component/camera/upgraded
|
|
req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 5, TECH_PRECURSOR = 1)
|
|
materials = list(MAT_STEEL = 10000, MAT_DIAMOND = 2000, MAT_PLASTEEL = 3000, MAT_GLASS = 6500, MAT_SILVER = 3000, MAT_MORPHIUM = 560, MAT_DURASTEEL = 800)
|
|
|
|
/datum/design/item/prosfab/cyborg/component/binary_communication_device/upgraded
|
|
name = "Improved Binary Communication Device"
|
|
id = "improved_binary_communication_device"
|
|
build_path = /obj/item/robot_parts/robot_component/binary_communication_device/upgraded
|
|
req_tech = list(TECH_MAGNET = 7, TECH_MATERIAL = 5, TECH_PRECURSOR = 1)
|
|
materials = list(MAT_STEEL = 10000, MAT_DIAMOND = 2000, MAT_PLASTEEL = 3000, MAT_GLASS = 6500, MAT_GOLD = 3000, MAT_DURASTEEL = 800)
|
|
|
|
/datum/design/item/prosfab/cyborg/component/armour_very_heavy
|
|
name = "Armour Plating (Prototype)"
|
|
id = "titan_armour"
|
|
build_path = /obj/item/robot_parts/robot_component/armour/armour_titan
|
|
req_tech = list(TECH_MATERIAL = 9, TECH_PRECURSOR = 3)
|
|
materials = list(MAT_STEEL = 12000, MAT_MORPHIUM = 3000, MAT_DURASTEEL = 5000)
|
|
|
|
|
|
//////////////////// Cyborg Modules ////////////////////
|
|
/datum/design/item/prosfab/robot_upgrade
|
|
category = list("Cyborg Modules")
|
|
build_type = PROSFAB
|
|
time = 12
|
|
materials = list(MAT_STEEL = 7500)
|
|
|
|
// Section for utility upgrades
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/utility/rename
|
|
name = "Rename Module"
|
|
desc = "Used to rename a cyborg."
|
|
id = "borg_rename_module"
|
|
build_path = /obj/item/borg/upgrade/utility/rename
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/utility/reset
|
|
name = "Reset Module"
|
|
desc = "Used to reset a cyborg's module. Destroys any other upgrades applied to the robot."
|
|
id = "borg_reset_module"
|
|
build_path = /obj/item/borg/upgrade/utility/reset
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/utility/restart
|
|
name = "Emergency Restart Module"
|
|
desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online."
|
|
id = "borg_restart_module"
|
|
materials = list(MAT_STEEL = 45000, MAT_GLASS = 3750)
|
|
build_path = /obj/item/borg/upgrade/utility/restart
|
|
|
|
// Section for basic upgrades for all cyborgs
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/basic/sizeshift
|
|
name = "Size Alteration Module"
|
|
id = "borg_sizeshift_module"
|
|
req_tech = list(TECH_BLUESPACE = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
|
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000)
|
|
build_path = /obj/item/borg/upgrade/basic/sizeshift
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/basic/vtec
|
|
name = "VTEC Module"
|
|
desc = "Used to kick in a robot's VTEC systems, increasing their speed."
|
|
id = "borg_vtec_module"
|
|
materials = list(MAT_STEEL = 60000, MAT_GLASS = 4500, MAT_GOLD = 3750)
|
|
build_path = /obj/item/borg/upgrade/basic/vtec
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/basic/syndicate
|
|
name = "Scrambled Equipment Module"
|
|
desc = "Allows for the construction of lethal upgrades for cyborgs."
|
|
id = "borg_syndicate_module"
|
|
req_tech = list(TECH_COMBAT = 4, TECH_ILLEGAL = 3)
|
|
materials = list(MAT_STEEL = 7500, MAT_GLASS = 11250, MAT_DIAMOND = 7500)
|
|
build_path = /obj/item/borg/upgrade/basic/syndicate
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/basic/language
|
|
name = "Language Module"
|
|
desc = "Used to let cyborgs other than clerical or service speak a variety of languages."
|
|
id = "borg_language_module"
|
|
req_tech = list(TECH_DATA = 6, TECH_MATERIAL = 6)
|
|
materials = list(MAT_STEEL = 25000, MAT_GLASS = 3000, MAT_GOLD = 350)
|
|
build_path = /obj/item/borg/upgrade/basic/language
|
|
|
|
// Section for advanced upgrades for all cyborgs
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/advanced/bellysizeupgrade
|
|
name = "Robohound Capacity Expansion Module"
|
|
id = "borg_hound_capacity_module"
|
|
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 2)
|
|
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000)
|
|
build_path = /obj/item/borg/upgrade/advanced/bellysizeupgrade
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/advanced/sizegun
|
|
name = "Size Gun Module"
|
|
id = "borg_sizegun_module"
|
|
req_tech = list(TECH_COMBAT = 3, TECH_BLUESPACE = 3, TECH_MATERIAL = 3, TECH_POWER = 2)
|
|
materials = list(MAT_STEEL = 6000, MAT_GLASS = 4000)
|
|
build_path = /obj/item/borg/upgrade/advanced/sizegun
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/advanced/jetpack
|
|
name = "Jetpack Module"
|
|
desc = "A carbon dioxide jetpack suitable for low-gravity mining operations."
|
|
id = "borg_jetpack_module"
|
|
materials = list(MAT_STEEL = 7500, MAT_PHORON = 11250, MAT_URANIUM = 15000)
|
|
build_path = /obj/item/borg/upgrade/advanced/jetpack
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/advanced/advhealth
|
|
name = "Advanced Health Analyzer Module"
|
|
desc = "An advanced health analyzer suitable for diagnosing more serious injuries."
|
|
id = "borg_advhealth_module"
|
|
materials = list(MAT_STEEL = 10000, MAT_GLASS = 6500, MAT_DIAMOND = 350)
|
|
build_path = /obj/item/borg/upgrade/advanced/advhealth
|
|
|
|
/*
|
|
Some job related borg upgrade modules, adding useful items for puppers.
|
|
*/
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/restricted/bellycapupgrade
|
|
name = "Robohound Capability Expansion Module"
|
|
id = "borg_hound_capability_module"
|
|
req_tech = list(TECH_MATERIAL = 5, TECH_ENGINEERING = 4)
|
|
materials = list(MAT_STEEL = 8000, MAT_GLASS = 6000)
|
|
build_path = /obj/item/borg/upgrade/restricted/bellycapupgrade
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/restricted/advrped
|
|
name = "Advanced Rapid Part Exchange Device"
|
|
desc = "Exactly the same as a standard Advanced RPED, but this one has mounting hardware for a Science Borg."
|
|
id = "borg_advrped_module"
|
|
req_tech = list(TECH_ENGINEERING = 6, TECH_MATERIAL = 6)
|
|
materials = list(MAT_STEEL = 30000, MAT_GLASS = 10000)
|
|
build_path = /obj/item/borg/upgrade/restricted/advrped
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/restricted/diamonddrill
|
|
name = "Diamond Drill"
|
|
desc = "A mining drill with a diamond tip, made for use by Mining Borgs."
|
|
id = "borg_ddrill_module"
|
|
req_tech = list(TECH_MATERIAL = 6, TECH_POWER = 5, TECH_ENGINEERING = 5)
|
|
materials = list(MAT_STEEL = 3000, MAT_GLASS = 1000, MAT_DIAMOND = 2000)
|
|
build_path = /obj/item/borg/upgrade/restricted/diamonddrill
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/restricted/pka
|
|
name = "Proto-Kinetic Accelerator"
|
|
desc = "A mining weapon designed for clearing rocks and hostile wildlife. This model is equiped with a self upgrade system, allowing it to attach modules hands free."
|
|
id = "borg_pka_module"
|
|
req_tech = list(TECH_COMBAT = 6, TECH_MATERIAL = 5, TECH_POWER = 4)
|
|
materials = list(MAT_PLASTEEL = 5000, MAT_GLASS = 1000, MAT_URANIUM = 500, MAT_PLATINUM = 350)
|
|
build_path = /obj/item/borg/upgrade/restricted/pka
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/restricted/tasercooler
|
|
name = "Rapid Taser Cooling Module"
|
|
desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate."
|
|
id = "borg_taser_module"
|
|
materials = list(MAT_STEEL = 60000, MAT_GLASS = 4500, MAT_GOLD = 1500, MAT_DIAMOND = 375)
|
|
build_path = /obj/item/borg/upgrade/restricted/tasercooler
|
|
|
|
// Section for quick access for admins, events and such, but can't be produced.
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod
|
|
category = list() // We simply do not sort them in
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod/cyborgtoy
|
|
name = "Donk-Soft Cyborg Blaster"
|
|
id = "borg_hound_cyborg_blaster"
|
|
build_path = /obj/item/borg/upgrade/no_prod/toygun
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod/vision_xray
|
|
name = "X-ray vision"
|
|
id = "borg_hound_vision_xray"
|
|
build_path = /obj/item/borg/upgrade/no_prod/vision_xray
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod/vision_thermal
|
|
name = "Thermal vision"
|
|
id = "borg_hound_vision_thermal"
|
|
build_path = /obj/item/borg/upgrade/no_prod/vision_thermal
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod/vision_meson
|
|
name = "Meson vision"
|
|
id = "borg_hound_vision_meson"
|
|
build_path = /obj/item/borg/upgrade/no_prod/vision_meson
|
|
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod/vision_material
|
|
name = "Material vision"
|
|
id = "borg_hound_vision_material"
|
|
build_path = /obj/item/borg/upgrade/no_prod/vision_material
|
|
|
|
/* //ChompEDIT START - disable for now
|
|
/datum/design/item/prosfab/robot_upgrade/no_prod/vision_anomalous
|
|
name = "Anomalous vision"
|
|
id = "borg_hound_vision_anomalous"
|
|
build_path = /obj/item/borg/upgrade/no_prod/vision_anomalous
|
|
*/ //ChompEDIT END
|
|
|
|
// Synthmorph Bags.
|
|
|
|
/datum/design/item/prosfab/synthmorphbag
|
|
name = "Synthmorph Storage Bag"
|
|
desc = "Used to store or slowly defragment an FBP."
|
|
id = "misc_synth_bag"
|
|
materials = list(MAT_STEEL = 250, MAT_GLASS = 250, MAT_PLASTIC = 2000)
|
|
build_path = /obj/item/bodybag/cryobag/robobag
|
|
|
|
/datum/design/item/prosfab/badge_nt
|
|
name = "NanoTrasen Tag"
|
|
desc = "Used to identify an empty NanoTrasen FBP."
|
|
id = "misc_synth_bag_tag_nt"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag
|
|
|
|
/datum/design/item/prosfab/badge_morph
|
|
name = "Morpheus Tag"
|
|
desc = "Used to identify an empty Morpheus FBP."
|
|
id = "misc_synth_bag_tag_morph"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/morpheus
|
|
|
|
/datum/design/item/prosfab/badge_wardtaka
|
|
name = "Ward-Takahashi Tag"
|
|
desc = "Used to identify an empty Ward-Takahashi FBP."
|
|
id = "misc_synth_bag_tag_wardtaka"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/wardtaka
|
|
|
|
/datum/design/item/prosfab/badge_zenghu
|
|
name = "Zeng-Hu Tag"
|
|
desc = "Used to identify an empty Zeng-Hu FBP."
|
|
id = "misc_synth_bag_tag_zenghu"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/zenghu
|
|
|
|
/datum/design/item/prosfab/badge_gilthari
|
|
name = "Gilthari Tag"
|
|
desc = "Used to identify an empty Gilthari FBP."
|
|
id = "misc_synth_bag_tag_gilthari"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_GOLD = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/gilthari
|
|
req_tech = list(TECH_MATERIAL = 4, TECH_ILLEGAL = 2, TECH_PHORON = 2)
|
|
|
|
/datum/design/item/prosfab/badge_veymed
|
|
name = "Vey-Medical Tag"
|
|
desc = "Used to identify an empty Vey-Medical FBP."
|
|
id = "misc_synth_bag_tag_veymed"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/veymed
|
|
req_tech = list(TECH_MATERIAL = 3, TECH_ILLEGAL = 1, TECH_BIO = 4)
|
|
|
|
/datum/design/item/prosfab/badge_hephaestus
|
|
name = "Hephaestus Tag"
|
|
desc = "Used to identify an empty Hephaestus FBP."
|
|
id = "misc_synth_bag_tag_heph"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/hephaestus
|
|
|
|
/datum/design/item/prosfab/badge_grayson
|
|
name = "Grayson Tag"
|
|
desc = "Used to identify an empty Grayson FBP."
|
|
id = "misc_synth_bag_tag_grayson"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/grayson
|
|
|
|
/datum/design/item/prosfab/badge_xion
|
|
name = "Xion Tag"
|
|
desc = "Used to identify an empty Xion FBP."
|
|
id = "misc_synth_bag_tag_xion"
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 500, MAT_PLASTIC = 1000)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/xion
|
|
|
|
/datum/design/item/prosfab/badge_bishop
|
|
name = "Bishop Tag"
|
|
desc = "Used to identify an empty Bishop FBP."
|
|
id = "misc_synth_bag_tag_bishop"
|
|
materials = list(MAT_STEEL = 500, MAT_GLASS = 2000, MAT_PLASTIC = 500)
|
|
build_path = /obj/item/clothing/accessory/badge/corporate_tag/bishop
|
|
|
|
// Replacement protean bits
|
|
|
|
/datum/design/item/prosfab/orchestrator
|
|
name = "Protean Orchestrator"
|
|
id = "prot_orch"
|
|
build_path = /obj/item/organ/internal/nano/orchestrator
|
|
time = 30
|
|
materials = list(MAT_STEEL = 8000, MAT_GLASS = 2000, MAT_SILVER = 2000, MAT_GOLD = 2000)
|
|
//req_tech = list(TECH_MAGNET = 5, TECH_BLUESPACE = 5, TECH_MATERIAL = 5, TECH_ENGINEERING = 5, TECH_DATA = 5)
|
|
|
|
/datum/design/item/prosfab/refactory
|
|
name = "Protean Refactory"
|
|
id = "prot_refact"
|
|
build_path = /obj/item/organ/internal/nano/refactory
|
|
time = 30
|
|
materials = list(MAT_STEEL = 8000, MAT_GLASS = 2000, MAT_SILVER = 2000, MAT_GOLD = 2000)
|
|
//req_tech = list(TECH_MAGNET = 5, TECH_BLUESPACE = 5, TECH_MATERIAL = 5, TECH_ENGINEERING = 5, TECH_DATA = 5)
|
|
|
|
///// pAI parts!!!
|
|
|
|
//////////////////// Cyborg Parts ////////////////////
|
|
/datum/design/item/prosfab/paiparts
|
|
category = list("pAI Parts")
|
|
time = 20
|
|
materials = list(MAT_STEEL = 1000, MAT_GLASS = 1000)
|
|
|
|
/datum/design/item/prosfab/paiparts/cell
|
|
name = "pAI Cell"
|
|
id = "pai_cell"
|
|
build_path = /obj/item/paiparts/cell
|
|
|
|
/datum/design/item/prosfab/paiparts/processor
|
|
name = "pAI Processor"
|
|
id = "pai_processor"
|
|
build_path = /obj/item/paiparts/processor
|
|
|
|
/datum/design/item/prosfab/paiparts/board
|
|
name = "pAI Board"
|
|
id = "pai_board"
|
|
build_path = /obj/item/paiparts/board
|
|
|
|
/datum/design/item/prosfab/paiparts/capacitor
|
|
name = "pAI capacitor"
|
|
id = "pai_capacitor"
|
|
build_path = /obj/item/paiparts/capacitor
|
|
|
|
/datum/design/item/prosfab/paiparts/projector
|
|
name = "pAI Projector"
|
|
id = "pai_projector"
|
|
build_path = /obj/item/paiparts/projector
|
|
|
|
/datum/design/item/prosfab/paiparts/emitter
|
|
name = "pAI Emitter"
|
|
id = "pai_emitter"
|
|
build_path = /obj/item/paiparts/emitter
|
|
|
|
/datum/design/item/prosfab/paiparts/speech_synthesizer
|
|
name = "pAI Speech Synthesizer"
|
|
id = "pai_speech_synthesizer"
|
|
build_path = /obj/item/paiparts/speech_synthesizer
|