From 012fb38de232416adaa5f6e2d8a7cac4a5bc4b6e Mon Sep 17 00:00:00 2001 From: Kelenius Date: Wed, 12 Aug 2015 21:46:11 +0300 Subject: [PATCH] Finalizes mechfab --- code/__defines/research.dm | 2 +- code/game/mecha/equipment/mecha_equipment.dm | 2 - .../mecha/equipment/tools/medical_tools.dm | 3 - code/game/mecha/equipment/tools/tools.dm | 10 - code/game/mecha/equipment/weapons/weapons.dm | 1 - code/game/mecha/mecha_control_console.dm | 2 - code/game/objects/items/devices/flash.dm | 2 - code/game/objects/items/robot/robot_parts.dm | 2 - .../objects/items/robot/robot_upgrades.dm | 8 - .../game/objects/items/weapons/power_cells.dm | 4 - code/modules/mob/living/carbon/brain/MMI.dm | 4 - .../mob/living/carbon/brain/posibrain.dm | 2 - code/modules/research/designs.dm | 9 +- code/modules/research/mechfab_designs.dm | 289 ++++++++++++------ nano/templates/mechfab.tmpl | 7 +- 15 files changed, 210 insertions(+), 137 deletions(-) diff --git a/code/__defines/research.dm b/code/__defines/research.dm index 87e6bb5f42..9eb06df5e7 100644 --- a/code/__defines/research.dm +++ b/code/__defines/research.dm @@ -14,5 +14,5 @@ #define IMPRINTER 1 //For circuits. Uses glass/chemicals. #define PROTOLATHE 2 //New stuff. Uses glass/metal/chemicals -#define MECHFAB 4 //Remember, objects utilising this flag should have construction_time and construction_cost vars. +#define MECHFAB 4 //Mechfab #define CHASSIS 8 //For protolathe, but differently \ No newline at end of file diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm index 733fe7bf82..db1cb3d004 100644 --- a/code/game/mecha/equipment/mecha_equipment.dm +++ b/code/game/mecha/equipment/mecha_equipment.dm @@ -7,8 +7,6 @@ icon_state = "mecha_equip" force = 5 origin_tech = list(TECH_MATERIAL = 2) - //construction_time = 100 - //construction_cost = list(DEFAULT_WALL_MATERIAL=10000) var/equip_cooldown = 0 var/equip_ready = 1 var/energy_drain = 0 diff --git a/code/game/mecha/equipment/tools/medical_tools.dm b/code/game/mecha/equipment/tools/medical_tools.dm index 754f0dc4c3..e57ea2e2ca 100644 --- a/code/game/mecha/equipment/tools/medical_tools.dm +++ b/code/game/mecha/equipment/tools/medical_tools.dm @@ -6,7 +6,6 @@ origin_tech = list(TECH_DATA = 2, TECH_BIO = 3) energy_drain = 20 range = MELEE - //construction_cost = list(DEFAULT_WALL_MATERIAL=5000,"glass"=10000) equip_cooldown = 20 var/mob/living/carbon/occupant = null var/datum/global_iterator/pr_mech_sleeper @@ -386,8 +385,6 @@ range = MELEE|RANGED equip_cooldown = 10 origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4, TECH_MAGNET = 4, TECH_DATA = 3) - //construction_time = 200 - //construction_cost = list(DEFAULT_WALL_MATERIAL=3000,"glass"=2000) required_type = /obj/mecha/medical New() diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index 1de3d98ed0..fbae64b6cd 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -128,7 +128,6 @@ desc = "This is an upgraded version of the drill that'll pierce the heavens! (Can be attached to: Combat and Engineering Exosuits)" icon_state = "mecha_diamond_drill" origin_tech = list(TECH_MATERIAL = 4, TECH_ENGINERING = 3) - //construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"diamond"=6500) equip_cooldown = 20 force = 15 @@ -255,8 +254,6 @@ equip_cooldown = 10 energy_drain = 250 range = MELEE|RANGED - //construction_time = 1200 - //construction_cost = list(DEFAULT_WALL_MATERIAL=30000,"phoron"=25000,"silver"=20000,"gold"=20000) var/mode = 0 //0 - deconstruct, 1 - wall or floor, 2 - airlock. var/disabled = 0 //malf @@ -506,7 +503,6 @@ equip_cooldown = 10 energy_drain = 50 range = 0 - //construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"silver"=5000) var/deflect_coeff = 1.15 var/damage_coeff = 0.8 @@ -556,7 +552,6 @@ equip_cooldown = 10 energy_drain = 50 range = 0 - //construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"gold"=5000) var/deflect_coeff = 1.15 var/damage_coeff = 0.8 @@ -627,7 +622,6 @@ equip_cooldown = 20 energy_drain = 100 range = 0 - //construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"gold"=1000,"silver"=2000,"glass"=5000) var/health_boost = 2 var/datum/global_iterator/pr_repair_droid var/icon/droid_overlay @@ -722,7 +716,6 @@ equip_cooldown = 10 energy_drain = 0 range = 0 - //construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"gold"=2000,"silver"=3000,"glass"=2000) var/datum/global_iterator/pr_energy_relay var/coeff = 100 var/list/use_channels = list(EQUIP,ENVIRON,LIGHT) @@ -839,7 +832,6 @@ equip_cooldown = 10 energy_drain = 0 range = MELEE - //construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000) var/datum/global_iterator/pr_mech_generator var/coeff = 100 var/obj/item/stack/material/fuel @@ -974,7 +966,6 @@ desc = "Generates power using uranium. Pollutes the environment." icon_state = "tesla" origin_tech = list(TECH_POWER = 3, TECH_ENGINERING = 3) - //construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"silver"=500,"glass"=1000) max_fuel = 50000 fuel_per_cycle_idle = 10 fuel_per_cycle_active = 30 @@ -1072,7 +1063,6 @@ origin_tech = list(TECH_ENGINERING = 1, TECH_BIO = 1) energy_drain = 10 range = MELEE - //construction_cost = list(DEFAULT_WALL_MATERIAL=5000,"glass"=5000) equip_cooldown = 20 var/mob/living/carbon/occupant = null var/door_locked = 1 diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 3f59feef7f..913f9acb72 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -274,7 +274,6 @@ /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang//Because I am a heartless bastard -Sieve name = "\improper SOP-6 grenade launcher" projectile = /obj/item/weapon/grenade/flashbang/clusterbang - //construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"gold"=6000,"uranium"=6000) /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited/get_equip_info()//Limited version of the clusterbang launcher that can't reload return "* [chassis.selected==src?"":""][src.name][chassis.selected==src?"":""]\[[src.projectiles]\]" diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm index 723180bcb2..75b8d075d1 100644 --- a/code/game/mecha/mecha_control_console.dm +++ b/code/game/mecha/mecha_control_console.dm @@ -69,8 +69,6 @@ icon = 'icons/obj/device.dmi' icon_state = "motion2" origin_tech = list(TECH_DATA = 2, TECH_MAGNET = 2) - //construction_time = 50 - //construction_cost = list(DEFAULT_WALL_MATERIAL=500) proc/get_mecha_info() if(!in_mecha()) diff --git a/code/game/objects/items/devices/flash.dm b/code/game/objects/items/devices/flash.dm index 8f9fa27093..c253976b76 100644 --- a/code/game/objects/items/devices/flash.dm +++ b/code/game/objects/items/devices/flash.dm @@ -194,8 +194,6 @@ desc = "When a problem arises, SCIENCE is the solution." icon_state = "sflash" origin_tech = list(TECH_MAGNET = 2, TECH_COMBAT = 1) - var/construction_cost = list(DEFAULT_WALL_MATERIAL=750,"glass"=750) - var/construction_time=100 /obj/item/device/flash/synthetic/attack(mob/living/M as mob, mob/user as mob) ..() diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 32237e694c..ad8cffd671 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -5,8 +5,6 @@ icon_state = "blank" flags = CONDUCT slot_flags = SLOT_BELT - var/construction_time = 100 - var/list/construction_cost = list(DEFAULT_WALL_MATERIAL=20000,"glass"=5000) var/list/part = null // Order of args is important for installing robolimbs. var/sabotaged = 0 //Emagging limbs can have repercussions when installed as prosthetics. var/model_info diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 999303a91d..4c690010b8 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -6,8 +6,6 @@ desc = "Protected by FRM." icon = 'icons/obj/module.dmi' icon_state = "cyborg_upgrade" - var/construction_time = 120 - var/construction_cost = list(DEFAULT_WALL_MATERIAL=10000) var/locked = 0 var/require_module = 0 var/installed = 0 @@ -43,7 +41,6 @@ name = "robot reclassification board" desc = "Used to rename a cyborg." icon_state = "cyborg_upgrade1" - construction_cost = list(DEFAULT_WALL_MATERIAL=35000) var/heldname = "default name" /obj/item/borg/upgrade/rename/attack_self(mob/user as mob) @@ -61,7 +58,6 @@ /obj/item/borg/upgrade/restart name = "robot emergency restart module" desc = "Used to force a restart of a disabled-but-repaired robot, bringing it back online." - construction_cost = list(DEFAULT_WALL_MATERIAL=60000 , "glass"=5000) icon_state = "cyborg_upgrade1" @@ -85,7 +81,6 @@ /obj/item/borg/upgrade/vtec name = "robotic VTEC Module" desc = "Used to kick in a robot's VTEC systems, increasing their speed." - construction_cost = list(DEFAULT_WALL_MATERIAL=80000 , "glass"=6000 , "gold"= 5000) icon_state = "cyborg_upgrade2" require_module = 1 @@ -102,7 +97,6 @@ /obj/item/borg/upgrade/tasercooler name = "robotic Rapid Taser Cooling Module" desc = "Used to cool a mounted taser, increasing the potential current in it and thus its recharge rate." - construction_cost = list(DEFAULT_WALL_MATERIAL=80000 , "glass"=6000 , "gold"= 2000, "diamond" = 500) icon_state = "cyborg_upgrade3" require_module = 1 @@ -137,7 +131,6 @@ /obj/item/borg/upgrade/jetpack name = "mining robot jetpack" desc = "A carbon dioxide jetpack suitable for low-gravity mining operations." - construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"phoron"=15000,"uranium" = 20000) icon_state = "cyborg_upgrade3" require_module = 1 @@ -159,7 +152,6 @@ /obj/item/borg/upgrade/syndicate/ name = "illegal equipment module" desc = "Unlocks the hidden, deadlier functions of a robot" - construction_cost = list(DEFAULT_WALL_MATERIAL=10000,"glass"=15000,"diamond" = 10000) icon_state = "cyborg_upgrade3" require_module = 1 diff --git a/code/game/objects/items/weapons/power_cells.dm b/code/game/objects/items/weapons/power_cells.dm index bd5e56495a..535cb65ed5 100644 --- a/code/game/objects/items/weapons/power_cells.dm +++ b/code/game/objects/items/weapons/power_cells.dm @@ -14,8 +14,6 @@ var/maxcharge = 1000 var/rigged = 0 // true if rigged to explode var/minor_fault = 0 //If not 100% reliable, it will build up faults. - var/construction_cost = list(DEFAULT_WALL_MATERIAL=750,"glass"=75) - var/construction_time=100 matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50) suicide_act(mob/user) @@ -83,7 +81,6 @@ icon_state = "scell" maxcharge = 20000 matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 70) - construction_cost = list(DEFAULT_WALL_MATERIAL=750,"glass"=100) /obj/item/weapon/cell/super/empty/New() ..() @@ -95,7 +92,6 @@ icon_state = "hpcell" maxcharge = 30000 matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 80) - construction_cost = list(DEFAULT_WALL_MATERIAL=500,"glass"=150,"gold"=200,"silver"=200) /obj/item/weapon/cell/hyper/empty/New() ..() diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 49e8c6ad52..19ab2ff50e 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -25,10 +25,6 @@ w_class = 3 origin_tech = list(TECH_BIO = 3) - var/list/construction_cost = list(DEFAULT_WALL_MATERIAL=1000,"glass"=500) - var/construction_time = 75 - //these vars are so the mecha fabricator doesn't shit itself anymore. --NEO - req_access = list(access_robotics) //Revised. Brainmob is now contained directly within object of transfer. MMI in this case. diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm index ffb37dc116..1326427914 100644 --- a/code/modules/mob/living/carbon/brain/posibrain.dm +++ b/code/modules/mob/living/carbon/brain/posibrain.dm @@ -6,8 +6,6 @@ w_class = 3 origin_tech = list(TECH_ENGINERING = 4, TECH_MATERIAL = 4, TECH_BLUESPACE = 2, TECH_DATA = 4) - construction_cost = list(DEFAULT_WALL_MATERIAL=500,"glass"=500,"silver"=200,"gold"=200,"phoron"=100,"diamond"=10) - construction_time = 75 var/searching = 0 var/askDelay = 10 * 60 * 1 req_access = list(access_robotics) diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index 0787cc5f2f..695cc94894 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -639,13 +639,17 @@ datum/design/circuit/shield sort_string = "VACAA" /datum/design/item/posibrain + name = "Positronic brain" id = "posibrain" req_tech = list(TECH_ENGINERING = 4, TECH_MATERIAL = 6, TECH_BLUESPACE = 2, TECH_DATA = 4) + build_type = PROTOLATHE | MECHFAB materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 1000, "silver" = 1000, "gold" = 500, "phoron" = 500, "diamond" = 100) build_path = /obj/item/device/mmi/digital/posibrain + category = "Misc" sort_string = "VACAB" -/datum/design/item/medical/mmi +/datum/design/item/mmi + name = "Man-machine interface" id = "mmi" req_tech = list(TECH_DATA = 2, TECH_BIO = 3) build_type = PROTOLATHE | MECHFAB @@ -654,7 +658,8 @@ datum/design/circuit/shield category = "Misc" sort_string = "VACBA" -/datum/design/item/medical/mmi_radio +/datum/design/item/mmi_radio + name = "Radio-enabled man-machine interface" id = "mmi_radio" req_tech = list(TECH_DATA = 2, TECH_BIO = 4) build_type = PROTOLATHE | MECHFAB diff --git a/code/modules/research/mechfab_designs.dm b/code/modules/research/mechfab_designs.dm index 0210ec670e..1ee452ffe5 100644 --- a/code/modules/research/mechfab_designs.dm +++ b/code/modules/research/mechfab_designs.dm @@ -7,49 +7,49 @@ category = "Robot" /datum/design/item/mechfab/robot/exoskeleton - name = "Robot Exoskeleton" + name = "Robot exoskeleton" id = "robot_exoskeleton" build_path = /obj/item/robot_parts/robot_suit time = 50 materials = list(DEFAULT_WALL_MATERIAL = 50000) /datum/design/item/mechfab/robot/torso - name = "Robot Torso" + name = "Robot torso" id = "robot_torso" build_path = /obj/item/robot_parts/chest time = 35 materials = list(DEFAULT_WALL_MATERIAL = 40000) /datum/design/item/mechfab/robot/head - name = "Robot Head" + name = "Robot head" id = "robot_head" build_path = /obj/item/robot_parts/head time = 35 materials = list(DEFAULT_WALL_MATERIAL = 25000) /datum/design/item/mechfab/robot/l_arm - name = "Robot Left Arm" + name = "Robot left arm" id = "robot_l_arm" build_path = /obj/item/robot_parts/l_arm time = 20 materials = list(DEFAULT_WALL_MATERIAL = 18000) /datum/design/item/mechfab/robot/r_arm - name = "Robot Right Arm" + name = "Robot right arm" id = "robot_r_arm" build_path = /obj/item/robot_parts/r_arm time = 20 materials = list(DEFAULT_WALL_MATERIAL = 18000) /datum/design/item/mechfab/robot/l_leg - name = "Robot Left LeG" + name = "Robot left leg" id = "robot_l_leg" build_path = /obj/item/robot_parts/l_leg time = 20 materials = list(DEFAULT_WALL_MATERIAL = 15000) /datum/design/item/mechfab/robot/r_leg - name = "Robot Right Leg" + name = "Robot right leg" id = "robot_r_leg" build_path = /obj/item/robot_parts/r_leg time = 20 @@ -60,7 +60,7 @@ materials = list(DEFAULT_WALL_MATERIAL = 5000) /datum/design/item/mechfab/robot/component/binary_communication_device - name = "Binary Communication Device" + name = "Binary communication device" id = "binary_communication_device" build_path = /obj/item/robot_parts/robot_component/binary_communication_device @@ -75,7 +75,7 @@ build_path = /obj/item/robot_parts/robot_component/actuator /datum/design/item/mechfab/robot/component/diagnosis_unit - name = "Diagnosis Unit" + name = "Diagnosis unit" id = "diagnosis_unit" build_path = /obj/item/robot_parts/robot_component/diagnosis_unit @@ -85,7 +85,7 @@ build_path = /obj/item/robot_parts/robot_component/camera /datum/design/item/mechfab/robot/component/armour - name = "Armour Plating" + name = "Armour plating" id = "armour" build_path = /obj/item/robot_parts/robot_component/armour @@ -93,47 +93,47 @@ category = "Ripley" /datum/design/item/mechfab/ripley/chassis - name = "Ripley Chassis" + name = "Ripley chassis" id = "ripley_chassis" build_path = /obj/item/mecha_parts/chassis/ripley time = 10 materials = list(DEFAULT_WALL_MATERIAL = 20000) /datum/design/item/mechfab/ripley/chassis/firefighter - name = "Firefigher Chassis" + name = "Firefigher chassis" id = "firefighter_chassis" build_path = /obj/item/mecha_parts/chassis/firefighter /datum/design/item/mechfab/ripley/torso - name = "Ripley Torso" + name = "Ripley torso" id = "ripley_torso" build_path = /obj/item/mecha_parts/part/ripley_torso time = 20 materials = list(DEFAULT_WALL_MATERIAL = 40000, "glass" = 15000) /datum/design/item/mechfab/ripley/left_arm - name = "Ripley Left Arm" + name = "Ripley left arm" id = "ripley_left_arm" build_path = /obj/item/mecha_parts/part/ripley_left_arm time = 15 materials = list(DEFAULT_WALL_MATERIAL = 25000) /datum/design/item/mechfab/ripley/right_arm - name = "Ripley Right Arm" + name = "Ripley right arm" id = "ripley_right_arm" build_path = /obj/item/mecha_parts/part/ripley_right_arm time = 15 materials = list(DEFAULT_WALL_MATERIAL = 25000) /datum/design/item/mechfab/ripley/left_leg - name = "Ripley Left Leg" + name = "Ripley left leg" id = "ripley_left_leg" build_path = /obj/item/mecha_parts/part/ripley_left_leg time = 15 materials = list(DEFAULT_WALL_MATERIAL = 30000) /datum/design/item/mechfab/ripley/right_leg - name = "Ripley Right Leg" + name = "Ripley right leg" id = "ripley_right_leg" build_path = /obj/item/mecha_parts/part/ripley_right_leg time = 15 @@ -143,49 +143,49 @@ category = "Odysseus" /datum/design/item/mechfab/odysseus/chassis - name = "Odysseus Chassis" + name = "Odysseus chassis" id = "odysseus_chassis" build_path = /obj/item/mecha_parts/chassis/odysseus time = 10 materials = list(DEFAULT_WALL_MATERIAL = 20000) /datum/design/item/mechfab/odysseus/torso - name = "Odysseus Torso" + name = "Odysseus torso" id = "odysseus_torso" build_path = /obj/item/mecha_parts/part/odysseus_torso time = 18 materials = list(DEFAULT_WALL_MATERIAL = 25000) /datum/design/item/mechfab/odysseus/head - name = "Odysseus Head" + name = "Odysseus head" id = "odysseus_head" build_path = /obj/item/mecha_parts/part/odysseus_head time = 10 materials = list(DEFAULT_WALL_MATERIAL = 2000, "glass" = 10000) /datum/design/item/mechfab/odysseus/left_arm - name = "Odysseus Left Arm" + name = "Odysseus left arm" id = "odysseus_left_arm" build_path = /obj/item/mecha_parts/part/odysseus_left_arm time = 12 materials = list(DEFAULT_WALL_MATERIAL = 10000) /datum/design/item/mechfab/odysseus/right_arm - name = "Odysseus Right Arm" + name = "Odysseus right arm" id = "odysseus_right_arm" build_path = /obj/item/mecha_parts/part/odysseus_right_arm time = 12 materials = list(DEFAULT_WALL_MATERIAL = 10000) /datum/design/item/mechfab/odysseus/left_leg - name = "Odysseus Left Leg" + name = "Odysseus left leg" id = "odysseus_left_leg" build_path = /obj/item/mecha_parts/part/odysseus_left_leg time = 13 materials = list(DEFAULT_WALL_MATERIAL = 15000) /datum/design/item/mechfab/odysseus/right_leg - name = "Odysseus Right Leg" + name = "Odysseus right leg" id = "odysseus_right_leg" build_path = /obj/item/mecha_parts/part/odysseus_right_leg time = 13 @@ -195,56 +195,56 @@ category = "Gygax" /datum/design/item/mechfab/gygax/chassis - name = "Gygax Chassis" + name = "Gygax chassis" id = "gygax_chassis" build_path = /obj/item/mecha_parts/chassis/gygax time = 10 materials = list(DEFAULT_WALL_MATERIAL = 25000) /datum/design/item/mechfab/gygax/torso - name = "Gygax Torso" + name = "Gygax torso" id = "gygax_torso" build_path = /obj/item/mecha_parts/part/gygax_torso time = 30 materials = list(DEFAULT_WALL_MATERIAL = 50000, "glass" = 20000) /datum/design/item/mechfab/gygax/head - name = "Gygax Head" + name = "Gygax head" id = "gygax_head" build_path = /obj/item/mecha_parts/part/gygax_head time = 20 materials = list(DEFAULT_WALL_MATERIAL = 20000, "glass" = 10000) /datum/design/item/mechfab/gygax/left_arm - name = "Gygax Left Arm" + name = "Gygax left arm" id = "gygax_left_arm" build_path = /obj/item/mecha_parts/part/gygax_left_arm time = 20 materials = list(DEFAULT_WALL_MATERIAL = 30000) /datum/design/item/mechfab/gygax/right_arm - name = "Gygax Right Arm" + name = "Gygax right arm" id = "gygax_right_arm" build_path = /obj/item/mecha_parts/part/gygax_right_arm time = 20 materials = list(DEFAULT_WALL_MATERIAL = 30000) /datum/design/item/mechfab/gygax/left_leg - name = "Gygax Left Leg" + name = "Gygax left leg" id = "gygax_left_leg" build_path = /obj/item/mecha_parts/part/gygax_left_leg time = 20 materials = list(DEFAULT_WALL_MATERIAL = 35000) /datum/design/item/mechfab/gygax/right_leg - name = "Gygax Right Leg" + name = "Gygax right leg" id = "gygax_right_leg" build_path = /obj/item/mecha_parts/part/gygax_right_leg time = 20 materials = list(DEFAULT_WALL_MATERIAL = 35000) /datum/design/item/mechfab/gygax/armour - name = "Gygax Armour Plates" + name = "Gygax armour plates" id = "gygax_armour" build_path = /obj/item/mecha_parts/part/gygax_armour time = 60 @@ -254,233 +254,336 @@ category = "Durand" /datum/design/item/mechfab/durand/chassis - name = "Durand Chassis" + name = "Durand chassis" id = "durand_chassis" build_path = /obj/item/mecha_parts/chassis/durand time = 10 materials = list(DEFAULT_WALL_MATERIAL = 25000) /datum/design/item/mechfab/durand/torso - name = "Durand Torso" + name = "Durand torso" id = "durand_torso" build_path = /obj/item/mecha_parts/part/durand_torso time = 30 materials = list(DEFAULT_WALL_MATERIAL = 55000, "glass" = 20000, "silver" = 10000) /datum/design/item/mechfab/durand/head - name = "Durand Head" + name = "Durand head" id = "durand_head" build_path = /obj/item/mecha_parts/part/durand_head time = 20 materials = list(DEFAULT_WALL_MATERIAL = 25000, "glass" = 10000, "silver" = 3000) /datum/design/item/mechfab/durand/left_arm - name = "Durand Left Arm" + name = "Durand left arm" id = "durand_left_arm" build_path = /obj/item/mecha_parts/part/durand_left_arm time = 20 materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000) /datum/design/item/mechfab/durand/right_arm - name = "Durand Right Arm" + name = "Durand right arm" id = "durand_right_arm" build_path = /obj/item/mecha_parts/part/durand_right_arm time = 20 materials = list(DEFAULT_WALL_MATERIAL = 35000, "silver" = 3000) /datum/design/item/mechfab/durand/left_leg - name = "Durand Left Leg" + name = "Durand left leg" id = "durand_left_leg" build_path = /obj/item/mecha_parts/part/durand_left_leg time = 20 materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000) /datum/design/item/mechfab/durand/right_leg - name = "Durand Right Leg" + name = "Durand right leg" id = "durand_right_leg" build_path = /obj/item/mecha_parts/part/durand_right_leg time = 20 materials = list(DEFAULT_WALL_MATERIAL = 40000, "silver" = 3000) /datum/design/item/mechfab/durand/armour - //name = "Durand Armour Plates" + name = "Durand armour plates" id = "durand_armour" build_path = /obj/item/mecha_parts/part/durand_armour time = 60 materials = list(DEFAULT_WALL_MATERIAL = 50000, "uranium" = 10000) -/* - "Exosuit Equipment"=list( - /obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp, - /obj/item/mecha_parts/mecha_equipment/tool/drill, - /obj/item/mecha_parts/mecha_equipment/tool/extinguisher, - /obj/item/mecha_parts/mecha_equipment/tool/cable_layer, - /obj/item/mecha_parts/mecha_equipment/tool/sleeper, - /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun, - /obj/item/mecha_parts/mecha_equipment/tool/passenger, - ///obj/item/mecha_parts/mecha_equipment/repair_droid, - /obj/item/mecha_parts/mecha_equipment/generator, - ///obj/item/mecha_parts/mecha_equipment/jetpack, //TODO MECHA JETPACK SPRITE MISSING - /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser, - /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg - ), +/datum/design/item/robot_upgrade + build_type = MECHFAB + time = 12 + materials = list(DEFAULT_WALL_MATERIAL = 10000) + category = "Cyborg Upgrade Modules" - "Robotic Upgrade Modules" = list( - /obj/item/borg/upgrade/reset, - /obj/item/borg/upgrade/rename, - /obj/item/borg/upgrade/restart, - /obj/item/borg/upgrade/vtec, - /obj/item/borg/upgrade/tasercooler, - /obj/item/borg/upgrade/jetpack - ), +/datum/design/item/robot_upgrade/rename + name = "Rename module" + desc = "Used to rename a cyborg." + id = "borg_rename_module" + build_path = /obj/item/borg/upgrade/rename - "Misc"=list(/obj/item/mecha_parts/mecha_tracking) - ) - */ +/datum/design/item/robot_upgrade/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/reset +/datum/design/item/robot_upgrade/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(DEFAULT_WALL_MATERIAL = 60000, "glass" = 5000) + build_path = /obj/item/borg/upgrade/restart + +/datum/design/item/robot_upgrade/vtec + name = "VTEC module" + desc = "Used to kick in a robot's VTEC systems, increasing their speed." + id = "borg_vtec_module" + materials = list(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 5000) + build_path = /obj/item/borg/upgrade/vtec + +/datum/design/item/robot_upgrade/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(DEFAULT_WALL_MATERIAL = 80000, "glass" = 6000, "gold" = 2000, "diamond" = 500) + build_path = /obj/item/borg/upgrade/tasercooler + +/datum/design/item/robot_upgrade/jetpack + name = "Jetpack module" + desc = "A carbon dioxide jetpack suitable for low-gravity mining operations." + id = "borg_jetpack_module" + materials = list(DEFAULT_WALL_MATERIAL = 10000, "phoron" = 15000, "uranium" = 20000) + build_path = /obj/item/borg/upgrade/jetpack + +/datum/design/item/robot_upgrade/syndicate + name = "Illegal upgrade" + 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(DEFAULT_WALL_MATERIAL = 10000, "glass" = 15000, "diamond" = 10000) + build_path = /obj/item/borg/upgrade/syndicate + +/datum/design/item/mecha_tracking + name = "Exosuit tracking beacon" + build_type = MECHFAB + time = 5 + materials = list(DEFAULT_WALL_MATERIAL = 500) + build_path = /obj/item/mecha_parts/mecha_tracking + category = "Misc" /datum/design/item/mecha build_type = MECHFAB category = "Exosuit Equipment" - -/datum/design/item/mecha/AssembleDesignName() - ..() - name = "Exosuit module design ([item_name])" - -/datum/design/item/mecha/weapon/AssembleDesignName() - ..() - name = "Exosuit weapon design ([item_name])" + time = 10 + materials = list(DEFAULT_WALL_MATERIAL = 10000) /datum/design/item/mecha/AssembleDesignDesc() if(!desc) desc = "Allows for the construction of \a '[item_name]' exosuit module." +/datum/design/item/mecha/hydraulic_clamp + name = "Hydraulic clamp" + id = "hydraulic_clamp" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp + +/datum/design/item/mecha/drill + name = "Drill" + id = "drill" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill + +/datum/design/item/mecha/extinguisher + name = "Extinguisher" + id = "extinguisher" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/extinguisher + +/datum/design/item/mecha/cable_layer + name = "Cable layer" + id = "mech_cable_layer" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/cable_layer + +/datum/design/item/mecha/sleeper + name = "Sleeper" + id = "mech_sleeper" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/sleeper + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 10000) + +/datum/design/item/mecha/syringe_gun + name = "Syringe gun" + id = "mech_syringe_gun" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun + time = 20 + materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 2000) + +/* +/datum/design/item/mecha/syringe_gun + desc = "Exosuit-mounted syringe gun and chemical synthesizer." + id = "mech_syringe_gun" + req_tech = list(TECH_MATERIAL = 3, TECH_BIO = 4, TECH_MAGNET = 4, TECH_DATA = 3) + build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun + */ + +/datum/design/item/mecha/passenger + name = "Passenger compartment" + id = "mech_passenger" + build_path = /obj/item/mecha_parts/mecha_equipment/tool/passenger + materials = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 5000) + +//obj/item/mecha_parts/mecha_equipment/repair_droid, +//obj/item/mecha_parts/mecha_equipment/jetpack, //TODO MECHA JETPACK SPRITE MISSING + +/datum/design/item/mecha/generator + name = "Phoron generator" + id = "mech_generator" + build_path = /obj/item/mecha_parts/mecha_equipment/generator + +/datum/design/item/mecha/taser + name = "PBT \"Pacifier\" mounted taser" + id = "mech_taser" + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser + +/datum/design/item/mecha/lmg + name = "Ultra AC 2" + id = "mech_lmg" + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/lmg + /datum/design/item/mecha/weapon req_tech = list(TECH_COMBAT = 3) // *** Weapon modules /datum/design/item/mecha/weapon/scattershot + name = "LBX AC 10 \"Scattershot\"" id = "mech_scattershot" req_tech = list(TECH_COMBAT = 4) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot /datum/design/item/mecha/weapon/laser + name = "CH-PS \"Immolator\" laser" id = "mech_laser" req_tech = list(TECH_COMBAT = 3, TECH_MAGNET = 3) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser /datum/design/item/mecha/weapon/laser_rigged + name = "Jury-rigged welder-laser" desc = "Allows for the construction of a welder-laser assembly package for non-combat exosuits." id = "mech_laser_rigged" req_tech = list(TECH_COMBAT = 2, TECH_MAGNET = 2) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/riggedlaser /datum/design/item/mecha/weapon/laser_heavy + name = "CH-LC \"Solaris\" laser cannon" id = "mech_laser_heavy" req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy /datum/design/item/mecha/weapon/ion + name = "mkIV ion heavy cannon" id = "mech_ion" req_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 4) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/ion /datum/design/item/mecha/weapon/grenade_launcher + name = "SGL-6 grenade launcher" id = "mech_grenade_launcher" req_tech = list(TECH_COMBAT = 3) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang /datum/design/item/mecha/weapon/clusterbang_launcher + name = "SOP-6 grenade launcher" desc = "A weapon that violates the Geneva Convention at 6 rounds per minute." id = "clusterbang_launcher" req_tech = list(TECH_COMBAT= 5, TECH_MATERIAL = 5, TECH_ILLEGAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 6000, "uranium" = 6000) build_path = /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang/clusterbang/limited // *** Nonweapon modules /datum/design/item/mecha/wormhole_gen + name = "Wormhole generator" desc = "An exosuit module that can generate small quasi-stable wormholes." id = "mech_wormhole_gen" req_tech = list(TECH_BLUESPACE = 3, TECH_MAGNET = 2) build_path = /obj/item/mecha_parts/mecha_equipment/wormhole_generator /datum/design/item/mecha/teleporter + name = "Teleporter" desc = "An exosuit module that allows teleportation to any position in view." id = "mech_teleporter" req_tech = list(TECH_BLUESPACE = 10, TECH_MAGNET = 5) build_path = /obj/item/mecha_parts/mecha_equipment/teleporter /datum/design/item/mecha/rcd + name = "RCD" desc = "An exosuit-mounted rapid construction device." id = "mech_rcd" - req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER=4, TECH_ENGINERING = 4) + time = 120 + materials = list(DEFAULT_WALL_MATERIAL = 30000, "phoron" = 25000, "silver" = 20000, "gold" = 20000) + req_tech = list(TECH_MATERIAL = 4, TECH_BLUESPACE = 3, TECH_MAGNET = 4, TECH_POWER = 4, TECH_ENGINERING = 4) build_path = /obj/item/mecha_parts/mecha_equipment/tool/rcd /datum/design/item/mecha/gravcatapult + name = "Gravitational catapult" desc = "An exosuit-mounted gravitational catapult." id = "mech_gravcatapult" req_tech = list(TECH_BLUESPACE = 2, TECH_MAGNET = 3, TECH_ENGINERING = 3) build_path = /obj/item/mecha_parts/mecha_equipment/gravcatapult /datum/design/item/mecha/repair_droid + name = "Repair droid" desc = "Automated repair droid, exosuits' best companion. BEEP BOOP" id = "mech_repair_droid" req_tech = list(TECH_MAGNET = 3, TECH_DATA = 3, TECH_ENGINERING = 3) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 1000, "silver" = 2000, "glass" = 5000) build_path = /obj/item/mecha_parts/mecha_equipment/repair_droid /datum/design/item/mecha/phoron_generator - desc = "Exosuit-mounted phoron generator." + desc = "Phoron reactor." id = "mech_phoron_generator" req_tech = list(TECH_PHORON = 2, TECH_POWER= 2, TECH_ENGINERING = 2) build_path = /obj/item/mecha_parts/mecha_equipment/generator + materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000) /datum/design/item/mecha/energy_relay + name = "Energy relay" id = "mech_energy_relay" req_tech = list(TECH_MAGNET = 4, TECH_POWER = 3) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "gold" = 2000, "silver" = 3000, "glass" = 2000) build_path = /obj/item/mecha_parts/mecha_equipment/tesla_energy_relay /datum/design/item/mecha/ccw_armor + name = "CCW armor booster" desc = "Exosuit close-combat armor booster." id = "mech_ccw_armor" req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 4) + materials = list(DEFAULT_WALL_MATERIAL = 20000, "silver" = 5000) build_path = /obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster /datum/design/item/mecha/proj_armor desc = "Exosuit projectile armor booster." id = "mech_proj_armor" - req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_ENGINERING=3) + req_tech = list(TECH_MATERIAL = 5, TECH_COMBAT = 5, TECH_ENGINERING = 3) + materials = list(DEFAULT_WALL_MATERIAL = 20000, "gold" = 5000) build_path = /obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster -/datum/design/item/mecha/syringe_gun - desc = "Exosuit-mounted syringe gun and chemical synthesizer." - id = "mech_syringe_gun" - req_tech = list(TECH_MATERIAL = 3, TECH_BIO=4, TECH_MAGNET=4, TECH_DATA=3) - build_path = /obj/item/mecha_parts/mecha_equipment/tool/syringe_gun - /datum/design/item/mecha/diamond_drill + name = "Diamond drill" desc = "A diamond version of the exosuit drill. It's harder, better, faster, stronger." id = "mech_diamond_drill" req_tech = list(TECH_MATERIAL = 4, TECH_ENGINERING = 3) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "diamond" = 6500) build_path = /obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill /datum/design/item/mecha/generator_nuclear + name = "Nuclear reactor" desc = "Exosuit-held nuclear reactor. Converts uranium and everyone's health to energy." id = "mech_generator_nuclear" req_tech = list(TECH_POWER= 3, TECH_ENGINERING = 3, TECH_MATERIAL = 3) + materials = list(DEFAULT_WALL_MATERIAL = 10000, "silver" = 500, "glass" = 1000) build_path = /obj/item/mecha_parts/mecha_equipment/generator/nuclear /datum/design/item/synthetic_flash + name = "Synthetic flash" id = "sflash" req_tech = list(TECH_MAGNET = 3, TECH_COMBAT = 2) build_type = MECHFAB materials = list("metal" = 750, "glass" = 750) build_path = /obj/item/device/flash/synthetic - category = "Misc" - -/datum/design/item/borg_syndicate_module - name = "Cyborg lethal weapons upgrade" - desc = "Allows for the construction of lethal upgrades for cyborgs." - id = "borg_syndicate_module" - build_type = MECHFAB - req_tech = list(TECH_COMBAT = 4, TECH_ILLEGAL = 3) - build_path = /obj/item/borg/upgrade/syndicate - category = "Cyborg Upgrade Modules" \ No newline at end of file + category = "Misc" \ No newline at end of file diff --git a/nano/templates/mechfab.tmpl b/nano/templates/mechfab.tmpl index e4e30cdb39..6f5faab8a0 100644 --- a/nano/templates/mechfab.tmpl +++ b/nano/templates/mechfab.tmpl @@ -21,7 +21,12 @@ {{for data.buildable}} {{if value.category == data.category}}
- {{:helper.link(value.name, null, {'build' : value.id})}} - {{:value.resourses}}, {{:value.time}} +
+ {{:helper.link(value.name, null, {'build' : value.id})}} +
+
+ {{:value.resourses}}, {{:value.time}} +
{{/if}} {{/for}}