diff --git a/code/__defines/research/techweb_nodes.dm b/code/__defines/research/techweb_nodes.dm index 812c25bba8..7b4be28fb4 100644 --- a/code/__defines/research/techweb_nodes.dm +++ b/code/__defines/research/techweb_nodes.dm @@ -111,6 +111,8 @@ #define TECHWEB_NODE_PARTS_HYPER "parts_hyper" #define TECHWEB_NODE_PARTS_OMNI "parts_omni" #define TECHWEB_NODE_PARTS_UPG "parts_upg" +#define TECHWEB_NODE_PARTS_EMP_PROOF "parts_empproof" +#define TECHWEB_NODE_PARTS_RECHARGING "parts_recharging" #define TECHWEB_NODE_PASSIVE_IMPLANTS "passive_implants" #define TECHWEB_NODE_PLASMA_CONTROL "plasma_control" #define TECHWEB_NODE_PLASMA_MINING "plasma_mining" @@ -139,3 +141,5 @@ #define TECHWEB_NODE_TELECOMS "telecoms" #define TECHWEB_NODE_UNREGULATED_BLUESPACE "unregulated_bluespace" #define TECHWEB_NODE_XENOBIOLOGY "xenobiology" +#define TECHWEB_NODE_TELEPORTER "teleporter" +#define TECHWEB_NODE_CONFETTI "confetti" diff --git a/code/modules/power/cells/device_cells.dm b/code/modules/power/cells/device_cells.dm index 097c3fd41d..aa4683a4e5 100644 --- a/code/modules/power/cells/device_cells.dm +++ b/code/modules/power/cells/device_cells.dm @@ -179,3 +179,30 @@ /obj/item/cell/device/weapon/recharge/alien/omni/empty charge = 0 + +/* + * Giga + */ +/obj/item/cell/device/giga + name = "giga device power cell" + desc = "A small power cell that holds a blistering amount of energy, constructed by clever scientists using secrets gleaned from alien technology." + icon_state = "meb_m_hi" + charge = 10000 + maxcharge = 10000 + charge_amount = 20 + origin_tech = list(TECH_POWER = 8) + +/obj/item/cell/device/giga/empty + charge = 0 + +/obj/item/cell/device/super + name = "super device power cell" + desc = "A small upgraded power cell designed to power handheld devices." + icon_state = "m_hy" + charge = 3600 + maxcharge = 3600 + charge_amount = 20 + origin_tech = list(TECH_POWER = 3) + +/obj/item/cell/device/super/empty + charge = 0 diff --git a/code/modules/research/tg/designs/boards/science.dm b/code/modules/research/tg/designs/boards/science.dm index 24cbec92c8..a040ab9b11 100644 --- a/code/modules/research/tg/designs/boards/science.dm +++ b/code/modules/research/tg/designs/boards/science.dm @@ -178,3 +178,21 @@ RND_CATEGORY_MACHINE + RND_SUBCATEGORY_MACHINE_RESEARCH ) departmental_flags = DEPARTMENT_BITFLAG_SCIENCE + +/datum/design_techweb/board/teleporter_hub + name = "teleporter hub" + id = "teleporter_hub" + build_path = /obj/item/circuitboard/teleporter_hub + category = list( + RND_CATEGORY_MACHINE + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/board/teleporter_station + name = "teleporter station" + id = "teleporter_station" + build_path = /obj/item/circuitboard/teleporter_station + category = list( + RND_CATEGORY_MACHINE + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING diff --git a/code/modules/research/tg/designs/misc_designs.dm b/code/modules/research/tg/designs/misc_designs.dm index 6635ef92c8..4e654b2720 100644 --- a/code/modules/research/tg/designs/misc_designs.dm +++ b/code/modules/research/tg/designs/misc_designs.dm @@ -132,3 +132,15 @@ RND_CATEGORY_EQUIPMENT + RND_SUBCATEGORY_EQUIPMENT_SCIENCE ) departmental_flags = DEPARTMENT_BITFLAG_SCIENCE + +/datum/design_techweb/borgos + name = "Borg-O's Recipe" + desc = "A recipe for the cult classic Borg-O's meal. Warning: Not suitable for organic consumption." + id = "borgos1" + materials = list(MAT_STEEL = 5000) + build_path = /obj/item/trash/rkibble + build_type = PROTOLATHE //I...I guess??? + category = list( + RND_CATEGORY_EQUIPMENT + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SCIENCE diff --git a/code/modules/research/tg/designs/stock_part_designs.dm b/code/modules/research/tg/designs/stock_part_designs.dm index 149037d327..78658ae099 100644 --- a/code/modules/research/tg/designs/stock_part_designs.dm +++ b/code/modules/research/tg/designs/stock_part_designs.dm @@ -482,3 +482,110 @@ RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_EXCHANGERS ) departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE + +/* +//Big Cells +*/ +/datum/design_techweb/potato_cell + name = "Potato Cell" + id = "potato_cell" + materials = list(MAT_STEEL = 100, MAT_GLASS = 10) + build_path = /obj/item/cell/potato + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_1 + ) + departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE + +/datum/design_techweb/giga_cell + name = "Giga-Capacity Cell" + id = "giga_cell" + materials = list(MAT_STEEL = 1000, MAT_GOLD = 300, MAT_SILVER = 300, MAT_GLASS = 100, MAT_PHORON = 1000, MAT_DURASTEEL = 100, MAT_URANIUM = 100) + build_path = /obj/item/cell/giga + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_5 + ) + departmental_flags = DEPARTMENT_BITFLAG_ENGINEERING | DEPARTMENT_BITFLAG_SCIENCE + +/* +//Device Cells +*/ + +/datum/design_techweb/cell_device_empproof + name = "Device Cell, EMP-Proof" + id = "empproof_device" + materials = list(MAT_STEEL = 350, MAT_GLASS = 25, MAT_MORPHIUM = 25, MAT_PHORON = 25) + build_path = /obj/item/cell/device/empproof + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_3 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/cell_advance_device_empproof + name = "Device Cell, Advanced EMP-Proof" + id = "empproof_advanced_device" + materials = list(MAT_STEEL = 700, MAT_GLASS = 50, MAT_MORPHIUM = 50, MAT_PHORON = 50) + build_path = /obj/item/cell/device/weapon/empproof + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_4 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/cell_advance_device_recharge + name = "Device Cell, Advanced Recharging" + id = "recharging_advanced_device" + materials = list(MAT_STEEL = 1000, MAT_GLASS = 400, MAT_DURASTEEL = 100, MAT_METALHYDROGEN = 200, MAT_VERDANTIUM = 150, MAT_PHORON = 2000) + build_path = /obj/item/cell/device/weapon/recharge + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_5 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/cell_super_device + name = "Device Cell, Super" + id = "super_device" + materials = list(MAT_STEEL = 700, MAT_GLASS = 70, MAT_GOLD = 50, MAT_SILVER = 20) + build_path = /obj/item/cell/device/super + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_3 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/cell_hype_device + name = "Device Cell, Hyper" + id = "hyper_device" + materials = list(MAT_STEEL = 1400, MAT_GLASS = 1400, MAT_GOLD = 150, MAT_SILVER = 150) + build_path = /obj/item/cell/device/hyper + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_4 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/cell_giga_device + name = "Device Cell, Giga" + id = "giga_device" + materials = list(MAT_STEEL = 2000, MAT_GOLD = 500, MAT_SILVER = 500, MAT_GLASS = 100, MAT_PHORON = 2000, MAT_DURASTEEL = 200, MAT_URANIUM = 200) + build_path = /obj/item/cell/device/giga + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_5 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/cell_omni_device + name = "Device Cell, Omni" + build_type = PROTOLATHE + id = "omni-device" + materials = list(MAT_STEEL = 1700, MAT_GLASS = 550, MAT_DURASTEEL = 230, MAT_MORPHIUM = 320, MAT_METALHYDROGEN = 600, MAT_URANIUM = 60, MAT_VERDANTIUM = 150, MAT_PHORON = 900) + build_path = /obj/item/cell/device/weapon/recharge/alien/omni + build_type = PROTOLATHE + category = list( + RND_CATEGORY_STOCK_PARTS + RND_SUBCATEGORY_STOCK_PARTS_5 + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING diff --git a/code/modules/research/tg/designs/tool_designs.dm b/code/modules/research/tg/designs/tool_designs.dm index acb4524734..e47c89aa60 100644 --- a/code/modules/research/tg/designs/tool_designs.dm +++ b/code/modules/research/tg/designs/tool_designs.dm @@ -886,3 +886,60 @@ RND_CATEGORY_TOOLS + RND_SUBCATEGORY_TOOLS_ENGINEERING_ADVANCED ) departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/mail_scanner + name = "Mail Scanner" + id = "mail_scanner" + materials = list(MAT_STEEL = 500, MAT_GLASS = 500) + build_path = /obj/item/mail_scanner + build_type = PROTOLATHE + category = list( + RND_CATEGORY_MACHINE + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_CARGO + +/datum/design_techweb/atmos_holosign + name = "Atmos Holosign" + id = "atmos_holosign" + materials = list(MAT_STEEL = 1000, MAT_GLASS = 500) + build_path = /obj/item/holosign_creator/combifan + build_type = PROTOLATHE + category = list( + RND_CATEGORY_MACHINE + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_ENGINEERING + +/datum/design_techweb/confetti_cannon + name = "Confetti Cannon" + desc = "Stuff it with paper and shoot! You'll be a hit at every party." + id = "confetti_cannon" + materials = list(MAT_STEEL = 3000, MAT_GLASS = 3000) + build_path = /obj/item/gun/launcher/confetti_cannon + build_type = PROTOLATHE + category = list( + RND_CATEGORY_TOOLS + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE + + +/datum/design_techweb/floor_painter + name = "Floor Painter" + id = "floor_painter" + materials = list(MAT_STEEL = 3000, MAT_GLASS = 500) + build_path = /obj/item/floor_painter + build_type = PROTOLATHE + category = list( + RND_CATEGORY_MACHINE + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_SERVICE + +/datum/design_techweb/medical_holosign + name = "Medical Holosign" + id = "medical_holosign" + materials = list(MAT_STEEL = 1000, MAT_GLASS = 500) + build_path = /obj/item/holosign_creator/medical + build_type = PROTOLATHE + category = list( + RND_CATEGORY_MACHINE + ) + departmental_flags = DEPARTMENT_BITFLAG_SCIENCE | DEPARTMENT_BITFLAG_MEDICAL diff --git a/code/modules/research/tg/techwebs/nodes/engi_nodes.dm b/code/modules/research/tg/techwebs/nodes/engi_nodes.dm index 42a467fb3b..a07a22525a 100644 --- a/code/modules/research/tg/techwebs/nodes/engi_nodes.dm +++ b/code/modules/research/tg/techwebs/nodes/engi_nodes.dm @@ -15,6 +15,7 @@ "device_cell", "weapon_cell", "high_mech_cell", + "potato_cell", // "basic_scanning", // "condenser", // "igniter", @@ -57,6 +58,7 @@ "phasic_sensor", "ultra_micro_laser", "hyper_cell", + "super_device", "hyper_device_cell", "arped", ) @@ -78,6 +80,7 @@ "hyper_sensor", "hyper_micro_laser", "hyper_cell", + "hyper_device", ) research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_4_POINTS) discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier3_any = TECHWEB_TIER_4_POINTS) @@ -123,6 +126,8 @@ "omni_capacitor", "omni_sensor", "omni_micro_laser", + "giga_device", + "giga_cell", ) research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_5_POINTS) discount_experiments = list(/datum/experiment/scanning/points/machinery_tiered_scan/tier4_any = TECHWEB_TIER_5_POINTS) @@ -257,6 +262,7 @@ "advancedtscanner", "rapidpipedispenser", "protohypospray", + "atmos_holosign", // "flatpacker", // "rangedanalyzer", // "rtd_loaded", @@ -331,6 +337,42 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_2_POINTS) announce_channels = list(CHANNEL_ENGINEERING,CHANNEL_MEDICAL) +/datum/techweb_node/cells_empproof + id = TECHWEB_NODE_PARTS_EMP_PROOF + display_name = "EMP-Proof Parts" + description = "Advanced batteries that are able to withstand strong bursts of energy without failure." + prereq_ids = list(TECHWEB_NODE_PARTS_HYPER) + design_ids = list( + "empproof_device", + "empproof_advanced_device", + ) + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_4_POINTS) + announce_channels = list(CHANNEL_ENGINEERING) + +/datum/techweb_node/cells_recharging + id = TECHWEB_NODE_PARTS_RECHARGING + display_name = "Self Charging Batteries" + description = "The end-game of battery technology, these batteries self charge." + prereq_ids = list(TECHWEB_NODE_PARTS_OMNI) + design_ids = list( + "recharging_advanced_device", + "omni-device", + ) + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_5_POINTS) + announce_channels = list(CHANNEL_ENGINEERING) + +/datum/techweb_node/teleporter + id = TECHWEB_NODE_TELEPORTER + display_name = "Teleportation Machinery" + description = "Allows for the creation of teleportation machinery that spontaneously transports an entity." + prereq_ids = list(TECHWEB_NODE_PARTS_ADV) + design_ids = list( + "teleporter_hub", + "teleporter_station", + ) + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_3_POINTS) + announce_channels = list(CHANNEL_ENGINEERING) + /datum/techweb_node/thermal_vision id = TECHWEB_NODE_THERMAL_VISION display_name = "Thermal Visor Technology" diff --git a/code/modules/research/tg/techwebs/nodes/medbay_nodes.dm b/code/modules/research/tg/techwebs/nodes/medbay_nodes.dm index 2cdbfd4a25..1627f15edb 100644 --- a/code/modules/research/tg/techwebs/nodes/medbay_nodes.dm +++ b/code/modules/research/tg/techwebs/nodes/medbay_nodes.dm @@ -84,6 +84,7 @@ "organ_ripper", "bone_clamp", "roller_bed", + "medical_holosign", // "smoke_machine", // "healthanalyzer_advanced", // "mod_health_analyzer", diff --git a/code/modules/research/tg/techwebs/nodes/service_nodes.dm b/code/modules/research/tg/techwebs/nodes/service_nodes.dm index 810dea5fef..23aca3c54a 100644 --- a/code/modules/research/tg/techwebs/nodes/service_nodes.dm +++ b/code/modules/research/tg/techwebs/nodes/service_nodes.dm @@ -10,6 +10,8 @@ "ear_translator", "walkpod", "juke_remote", + "mail_scanner", + "floor_painter", // "fax", // "sec_pen", // "handlabel", @@ -242,6 +244,8 @@ "fryer_board", "cerealmaker_board", "candymachine_board", + // "food_replicator", + "borgos1", // "range", // "souppot", // "processor", @@ -258,3 +262,14 @@ ) research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_2_POINTS) announce_channels = list(CHANNEL_SERVICE) + +/datum/techweb_node/confetti_cannon + id = TECHWEB_NODE_CONFETTI + display_name = "Confetti Cannon" + description = "Less explosive than fireworks yet more messy!" + prereq_ids = list(TECHWEB_NODE_PARTS_ADV) + design_ids = list( + "confetti_cannon", + ) + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = TECHWEB_TIER_1_POINTS) + announce_channels = list(CHANNEL_COMMON) diff --git a/icons/obj/power_cells_old.dmi b/icons/obj/power_cells_old.dmi index c934a06186..30291cc12b 100644 Binary files a/icons/obj/power_cells_old.dmi and b/icons/obj/power_cells_old.dmi differ