diff --git a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm index 7bbf634d695..51daaeb0132 100644 --- a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm +++ b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm @@ -104,7 +104,7 @@ "bZ" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel,/area/ruin/unpowered) "ca" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) "cb" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) -"cc" = (/obj/structure/computerframe,/turf/open/floor/plasteel,/area/ruin/unpowered) +"cc" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/unpowered) "cd" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen{dir = 1; name = "Bunker Entrance"; network = list("Bunker1"); pixel_x = 0; pixel_y = 2},/turf/open/floor/plasteel,/area/ruin/unpowered) "ce" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "bunker1"; name = "Inner Doors"; pixel_y = 6},/obj/machinery/button/door{id = "bunker2"; name = "Outer Doors"; pixel_y = -4},/turf/open/floor/plasteel/floorgrime,/area/ruin/unpowered) "cf" = (/obj/machinery/door/poddoor{id = "bunker1"; name = "Bunker Door"; tag = "inner"},/turf/open/floor/plating,/area/ruin/unpowered) diff --git a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm index a89e9b0d62c..b0c1f95d53f 100644 --- a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm +++ b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm @@ -7,7 +7,7 @@ "g" = (/obj/structure/closet/crate/secure/loot,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) "h" = (/obj/structure/table,/obj/machinery/button/door{id = "mechaship1"; name = "Mecha Cargo Ship Doors"},/turf/open/floor/plasteel/shuttle,/area/ruin/powered) "i" = (/obj/structure/table,/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) -"j" = (/obj/structure/computerframe,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) +"j" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) "k" = (/obj/effect/decal/cleanable/vomit/old,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) "l" = (/obj/effect/decal/remains/human,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) "m" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plasteel/shuttle,/area/ruin/powered) diff --git a/_maps/RandomRuins/SpaceRuins/onehalf.dmm b/_maps/RandomRuins/SpaceRuins/onehalf.dmm index e4e78df2b49..d5af9dd9789 100644 --- a/_maps/RandomRuins/SpaceRuins/onehalf.dmm +++ b/_maps/RandomRuins/SpaceRuins/onehalf.dmm @@ -105,8 +105,8 @@ "ca" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "cb" = (/obj/structure/table/reinforced,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "cc" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"cd" = (/obj/machinery/light{dir = 1},/obj/structure/computerframe,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) -"ce" = (/obj/structure/computerframe,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"cd" = (/obj/machinery/light{dir = 1},/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) +"ce" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "cf" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Bridge APC"; pixel_y = 24},/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "cg" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/table/reinforced,/obj/item/stack/spacecash/c500{pixel_y = 8},/obj/item/stack/spacecash/c1000,/turf/open/floor/plasteel,/area/ruin/onehalf/bridge) "ch" = (/obj/structure/girder/reinforced,/turf/open/floor/plating/airless,/area/space) diff --git a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm index 8368eef3e58..2403575403f 100644 --- a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm +++ b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm @@ -3,7 +3,7 @@ "c" = (/obj/structure/grille,/turf/open/floor/plating,/area/ruin/unpowered) "d" = (/turf/closed/wall/r_wall,/area/ruin/unpowered) "e" = (/obj/structure/table/reinforced,/obj/item/weapon/stock_parts/cell/hyper,/turf/open/floor/plasteel,/area/ruin/unpowered) -"f" = (/obj/structure/computerframe,/turf/open/floor/plasteel,/area/ruin/unpowered) +"f" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/ruin/unpowered) "g" = (/turf/open/floor/plasteel,/area/ruin/unpowered) "h" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/ruin/unpowered) "i" = (/obj/machinery/door/airlock/external,/turf/open/floor/plating,/area/ruin/unpowered) diff --git a/_maps/RandomZLevels/Academy.dmm b/_maps/RandomZLevels/Academy.dmm index 72d1d2d19ee..6ef98e0b2ae 100644 --- a/_maps/RandomZLevels/Academy.dmm +++ b/_maps/RandomZLevels/Academy.dmm @@ -2,7 +2,7 @@ "ab" = (/turf/closed/wall/r_wall,/area/awaymission/academy/headmaster) "ac" = (/mob/living/simple_animal/hostile/carp/ranged{faction = list("wizard")},/turf/open/space,/area/space) "ad" = (/obj/structure/filingcabinet/filingcabinet,/turf/open/floor/carpet,/area/awaymission/academy/headmaster) -"ae" = (/obj/structure/computerframe{anchored = 1},/turf/open/floor/carpet,/area/awaymission/academy/headmaster) +"ae" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/carpet,/area/awaymission/academy/headmaster) "af" = (/obj/structure/table/reinforced,/obj/item/weapon/pen/red,/turf/open/floor/carpet,/area/awaymission/academy/headmaster) "ag" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/blue,/turf/open/floor/carpet,/area/awaymission/academy/headmaster) "ah" = (/turf/open/floor/carpet,/area/awaymission/academy/headmaster) @@ -401,7 +401,7 @@ "hK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/item/weapon/caution,/turf/open/floor/plasteel{icon_state = "green"; dir = 4},/area/awaymission/academy/academyaft) "hL" = (/obj/structure/mecha_wreckage/durand,/turf/open/floor/plating,/area/awaymission/academy/classrooms) "hM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) -"hN" = (/obj/machinery/constructable_frame/machine_frame,/turf/open/floor/plating,/area/awaymission/academy/academyaft) +"hN" = (/obj/structure/frame/machine,/turf/open/floor/plating,/area/awaymission/academy/academyaft) "hO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/awaymission/academy/academyaft) "hP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) "hQ" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) @@ -423,7 +423,7 @@ "ig" = (/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) "ih" = (/obj/structure/rack,/obj/item/stack/sheet/mineral/plasma{amount = 50},/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) "ii" = (/turf/open/floor/grass,/area/awaymission/academy/academyaft) -"ij" = (/obj/structure/rack,/obj/item/weapon/circuitboard/telecomms/broadcaster,/obj/item/weapon/circuitboard/telecomms/receiver,/obj/item/weapon/circuitboard/telecomms/relay,/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) +"ij" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/telecomms/broadcaster,/obj/item/weapon/circuitboard/machine/telecomms/receiver,/obj/item/weapon/circuitboard/machine/telecomms/relay,/turf/open/floor/plasteel{icon_state = "hydrofloor"},/area/awaymission/academy/academyaft) "ik" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/awaymission/academy/academyaft) "il" = (/turf/open/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft) "im" = (/obj/structure/mirror{pixel_y = 28},/turf/open/floor/plasteel{icon_state = "cafeteria"; dir = 2},/area/awaymission/academy/academyaft) diff --git a/_maps/RandomZLevels/centcomAway.dmm b/_maps/RandomZLevels/centcomAway.dmm index 4366496499d..10bb875ef54 100644 --- a/_maps/RandomZLevels/centcomAway.dmm +++ b/_maps/RandomZLevels/centcomAway.dmm @@ -259,7 +259,7 @@ "eY" = (/turf/closed/wall,/area/awaymission/centcomAway/courtroom) "eZ" = (/obj/structure/table,/obj/item/weapon/storage/lockbox,/turf/open/floor/plasteel/shuttle,/area/awaymission/centcomAway/hangar) "fa" = (/obj/structure/table,/turf/open/floor/plasteel/shuttle,/area/awaymission/centcomAway/hangar) -"fb" = (/obj/structure/computerframe,/turf/open/floor/plasteel/shuttle,/area/awaymission/centcomAway/hangar) +"fb" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/shuttle,/area/awaymission/centcomAway/hangar) "fc" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/pen,/turf/open/floor/plasteel/shuttle,/area/awaymission/centcomAway/hangar) "fd" = (/obj/structure/table,/obj/item/weapon/paper_bin,/turf/open/floor/plasteel/shuttle,/area/awaymission/centcomAway/hangar) "fe" = (/turf/open/floor/plasteel{icon_state = "green"; dir = 10},/area/awaymission/centcomAway/general) @@ -471,7 +471,7 @@ "jc" = (/turf/open/floor/plasteel{icon_state = "ironsand4"; dir = 8; heat_capacity = 1},/area/awaymission/centcomAway/general) "jd" = (/obj/structure/table/wood{dir = 10},/turf/open/floor/plasteel{icon_state = "grimy"},/area/awaymission/centcomAway/general) "je" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel{icon_state = "grimy"},/area/awaymission/centcomAway/general) -"jf" = (/obj/structure/computerframe,/turf/open/floor/plasteel{icon_state = "grimy"},/area/awaymission/centcomAway/general) +"jf" = (/obj/structure/frame/computer,/turf/open/floor/plasteel{icon_state = "grimy"},/area/awaymission/centcomAway/general) "jg" = (/obj/structure/table/reinforced,/obj/item/weapon/pen,/turf/open/floor/plasteel{icon_state = "dark"},/area/awaymission/centcomAway/general) "jh" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel{icon_state = "dark"},/area/awaymission/centcomAway/general) "ji" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/plasteel{icon_state = "vault"; dir = 1},/area/awaymission/centcomAway/hangar) @@ -636,7 +636,7 @@ "ml" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel{icon_state = "vault"; dir = 8},/area/awaymission/centcomAway/cafe) "mm" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) "mn" = (/obj/structure/table,/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) -"mo" = (/obj/structure/computerframe,/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) +"mo" = (/obj/structure/frame/computer,/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) "mp" = (/obj/structure/closet/secure_closet/bar,/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) "mq" = (/obj/structure/table,/obj/item/weapon/storage/box/handcuffs,/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) "mr" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/open/floor/plasteel{icon_state = "redyellowfull"; dir = 5},/area/awaymission/centcomAway/thunderdome) diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index ec6efe1a4c1..94372ad1e39 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -415,7 +415,7 @@ "hY" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel{icon_state = "cafeteria"; dir = 5},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "hZ" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/computer/security/telescreen{desc = "Used for monitoring the research division and the labs within."; name = "research monitor"; network = list("MO19X","MO19R")},/turf/open/floor/plasteel{icon_state = "cafeteria"; dir = 5},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "ia" = (/obj/machinery/computer/aifixer,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel{icon_state = "cafeteria"; dir = 5},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) -"ib" = (/obj/structure/rack,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/circuitboard/teleporter,/turf/open/floor/plasteel{dir = 9; heat_capacity = 1e+006; icon_state = "warnwhite"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) +"ib" = (/obj/structure/rack,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/circuitboard/computer/teleporter,/turf/open/floor/plasteel{dir = 9; heat_capacity = 1e+006; icon_state = "warnwhite"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "ic" = (/obj/structure/rack,/obj/item/device/paicard{pixel_x = 4},/turf/open/floor/plasteel{dir = 1; heat_capacity = 1e+006; icon_state = "warnwhite"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "id" = (/obj/structure/rack,/turf/open/floor/plasteel{dir = 5; heat_capacity = 1e+006; icon_state = "warnwhite"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) "ie" = (/obj/machinery/door/airlock/glass_medical{glass = 0; id_tag = ""; name = "Research Division"; opacity = 1; req_access_txt = "201"; req_one_access_txt = "0"},/turf/open/floor/plasteel{heat_capacity = 1e+006; icon_state = "white"},/area/awaycontent/a2{has_gravity = 1; name = "MO19 Research"}) diff --git a/_maps/RandomZLevels/research.dmm b/_maps/RandomZLevels/research.dmm index 58e77da0d87..b58f159b2e6 100644 --- a/_maps/RandomZLevels/research.dmm +++ b/_maps/RandomZLevels/research.dmm @@ -19,7 +19,7 @@ "as" = (/mob/living/simple_animal/hostile/syndicate/ranged,/turf/open/floor/plasteel/shuttle/red/syndicate,/area/awaymission/research/interior/engineering) "at" = (/obj/machinery/suit_storage_unit/engine,/turf/open/floor/plating,/area/awaymission/research/interior/engineering) "au" = (/turf/open/floor/plating,/area/awaymission/research/interior/engineering) -"av" = (/obj/item/weapon/shard{icon_state = "small"},/obj/machinery/constructable_frame/machine_frame,/obj/item/weapon/circuitboard/smes,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high/empty,/turf/open/floor/plating,/area/awaymission/research/interior/engineering) +"av" = (/obj/item/weapon/shard{icon_state = "small"},/obj/structure/frame/machine,/obj/item/weapon/circuitboard/machine/smes,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high/empty,/turf/open/floor/plating,/area/awaymission/research/interior/engineering) "aw" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plasteel/whiteyellow/side,/area/awaymission/research/interior/engineering) "ax" = (/obj/structure/flora/kirbyplants{icon_state = "plant-20"; layer = 4.1; pixel_y = 3},/turf/open/floor/plasteel/whiteyellow/corner{tag = "icon-whiteyellowcorner (WEST)"; icon_state = "whiteyellowcorner"; dir = 8},/area/awaymission/research/interior/engineering) "ay" = (/obj/structure/chair{dir = 8},/mob/living/simple_animal/hostile/syndicate,/turf/open/floor/plasteel/shuttle/red/syndicate,/area/awaymission/research/interior/engineering) diff --git a/_maps/RandomZLevels/snowdin.dmm b/_maps/RandomZLevels/snowdin.dmm index 209ebe93ddd..fd12bea52ab 100644 --- a/_maps/RandomZLevels/snowdin.dmm +++ b/_maps/RandomZLevels/snowdin.dmm @@ -329,7 +329,7 @@ "gq" = (/turf/open/floor/plasteel/stairs/right{baseturf = /turf/open/floor/plating/asteroid/snow; temperature = 140},/area/awaymission/snowdin/cave) "gr" = (/turf/open/floor/plating,/turf/open/floor/plating/snowed,/area/awaymission/snowdin/post) "gs" = (/obj/structure/girder,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow; icon = 'icons/turf/snow.dmi'; temperature = 140},/area/awaymission/snowdin/post) -"gt" = (/obj/machinery/constructable_frame/machine_frame,/obj/item/weapon/circuitboard/smes,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow},/area/awaymission/snowdin/post) +"gt" = (/obj/structure/frame/machine,/obj/item/weapon/circuitboard/machine/smes,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow},/area/awaymission/snowdin/post) "gu" = (/obj/item/weapon/stock_parts/cell/high/empty,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow},/area/awaymission/snowdin/post) "gv" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow},/area/awaymission/snowdin/post) "gw" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow},/area/awaymission/snowdin/post) @@ -464,7 +464,7 @@ "iY" = (/obj/machinery/light/small,/turf/open/floor/plating/asteroid/snow,/area/awaymission/snowdin) "iZ" = (/obj/machinery/light/small,/turf/open/floor/plating/snowed,/area/awaymission/snowdin) "ja" = (/obj/item/weapon/shard,/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow; icon = 'icons/turf/snow.dmi'; temperature = 140},/area/awaymission/snowdin) -"jb" = (/obj/structure/computerframe,/turf/open/floor/plasteel/shuttle{baseturf = /turf/open/floor/plating/asteroid/snow; icon_state = "shuttlefloor4"; temperature = 180},/area/awaymission/snowdin) +"jb" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/shuttle{baseturf = /turf/open/floor/plating/asteroid/snow; icon_state = "shuttlefloor4"; temperature = 180},/area/awaymission/snowdin) "jc" = (/obj/machinery/door/poddoor/shutters{id = "garagesnow3"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow},/area/awaymission/snowdin/post) "jd" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow; icon = 'icons/turf/snow.dmi'; temperature = 140},/area/awaymission/snowdin/sekret) "je" = (/turf/open/floor/plating{baseturf = /turf/open/floor/plating/asteroid/snow; icon = 'icons/turf/snow.dmi'; temperature = 140},/area/awaymission/snowdin/sekret) diff --git a/_maps/map_files/AsteroidStation/AsteroidStation.dmm b/_maps/map_files/AsteroidStation/AsteroidStation.dmm index f30468aae07..7aa34319ef8 100644 --- a/_maps/map_files/AsteroidStation/AsteroidStation.dmm +++ b/_maps/map_files/AsteroidStation/AsteroidStation.dmm @@ -81,7 +81,7 @@ }, /area/shuttle/syndicate) "aan" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor4" }, @@ -4024,17 +4024,17 @@ /area/storage/tech) "ajc" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/pandemic{ +/obj/item/weapon/circuitboard/computer/pandemic{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/circuitboard/rdconsole, -/obj/item/weapon/circuitboard/rdserver{ +/obj/item/weapon/circuitboard/computer/rdconsole, +/obj/item/weapon/circuitboard/machine/rdserver{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/destructive_analyzer, -/obj/item/weapon/circuitboard/protolathe, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/protolathe, /turf/open/floor/plasteel{ dir = 5; icon_state = "yellow" @@ -4042,11 +4042,11 @@ /area/storage/tech) "ajd" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/robotics{ +/obj/item/weapon/circuitboard/computer/robotics{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/mecha_control{ +/obj/item/weapon/circuitboard/computer/mecha_control{ pixel_x = 1; pixel_y = -1 }, @@ -4064,11 +4064,11 @@ /area/storage/tech) "ajf" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/borgupload{ +/obj/item/weapon/circuitboard/computer/borgupload{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/aiupload{ +/obj/item/weapon/circuitboard/computer/aiupload{ pixel_x = 2; pixel_y = -2 }, @@ -4076,14 +4076,14 @@ /area/storage/tech) "ajg" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/message_monitor{ +/obj/item/weapon/circuitboard/computer/message_monitor{ pixel_y = -5 }, -/obj/item/weapon/circuitboard/crew{ +/obj/item/weapon/circuitboard/computer/crew{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/arcade/battle, +/obj/item/weapon/circuitboard/computer/arcade/battle, /turf/open/floor/plasteel{ dir = 9; icon_state = "yellow" @@ -4483,14 +4483,14 @@ /area/storage/tech) "ajW" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/cloning, -/obj/item/weapon/circuitboard/med_data{ +/obj/item/weapon/circuitboard/computer/cloning, +/obj/item/weapon/circuitboard/computer/med_data{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/clonescanner, -/obj/item/weapon/circuitboard/clonepod, -/obj/item/weapon/circuitboard/scan_consolenew, +/obj/item/weapon/circuitboard/machine/clonescanner, +/obj/item/weapon/circuitboard/machine/clonepod, +/obj/item/weapon/circuitboard/computer/scan_consolenew, /turf/open/floor/plasteel{ dir = 4; icon_state = "yellow" @@ -4508,12 +4508,12 @@ /area/storage/tech) "ajY" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/mining, -/obj/item/weapon/circuitboard/autolathe{ +/obj/item/weapon/circuitboard/computer/mining, +/obj/item/weapon/circuitboard/machine/autolathe{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/communications{ +/obj/item/weapon/circuitboard/computer/communications{ pixel_x = 5; pixel_y = -5 }, @@ -4895,15 +4895,15 @@ /area/storage/tech) "akI" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/secure_data{ +/obj/item/weapon/circuitboard/computer/secure_data{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/security{ +/obj/item/weapon/circuitboard/computer/security{ pixel_x = 1; pixel_y = -1 }, -/obj/item/weapon/circuitboard/card{ +/obj/item/weapon/circuitboard/computer/card{ pixel_x = 2; pixel_y = -2 }, @@ -4969,15 +4969,15 @@ /area/storage/tech) "akO" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/powermonitor{ +/obj/item/weapon/circuitboard/computer/powermonitor{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/stationalert{ +/obj/item/weapon/circuitboard/computer/stationalert{ pixel_x = 1; pixel_y = -1 }, -/obj/item/weapon/circuitboard/atmos_alert{ +/obj/item/weapon/circuitboard/computer/atmos_alert{ pixel_x = 3; pixel_y = -3 }, @@ -10985,14 +10985,14 @@ /area/tcommsat/computer) "axw" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/receiver, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/broadcaster, +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/receiver, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, /obj/machinery/atmospherics/components/unary/vent_scrubber{ on = 1 }, @@ -13581,13 +13581,13 @@ name = "Construction Site" }) "aBX" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plating, /area/construction/Storage{ name = "Construction Site" }) "aBY" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plating, /area/construction/Storage{ name = "Construction Site" @@ -25626,7 +25626,7 @@ /obj/item/solar_assembly, /obj/item/solar_assembly, /obj/item/solar_assembly, -/obj/item/weapon/circuitboard/solar_control, +/obj/item/weapon/circuitboard/computer/solar_control, /obj/item/weapon/electronics/tracker, /turf/open/floor/plasteel{ icon_state = "yellow" @@ -45842,7 +45842,7 @@ /turf/open/floor/plasteel/airless, /area/mine/abandoned) "bOd" = ( -/obj/structure/computerframe{ +/obj/structure/frame/computer{ anchored = 1 }, /obj/effect/decal/cleanable/cobweb2, @@ -47113,7 +47113,7 @@ pixel_x = 31 }, /obj/structure/rack, -/obj/item/weapon/circuitboard/teleporter, +/obj/item/weapon/circuitboard/computer/teleporter, /obj/item/weapon/circuitboard/aicore{ pixel_x = -2; pixel_y = 4 diff --git a/_maps/map_files/BirdStation/BirdStation.dmm b/_maps/map_files/BirdStation/BirdStation.dmm index 5ecccfef356..2ce75a3cb31 100644 --- a/_maps/map_files/BirdStation/BirdStation.dmm +++ b/_maps/map_files/BirdStation/BirdStation.dmm @@ -9,7 +9,7 @@ "aai" = (/obj/structure/table,/obj/item/device/flashlight/lamp{pixel_x = 4; pixel_y = 1},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "aaj" = (/obj/machinery/computer/shuttle/syndicate,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "aak" = (/obj/structure/table,/obj/machinery/button/door{id = "syndieshutters"; name = "remote shutter control"; req_access_txt = "150"},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) -"aal" = (/obj/structure/computerframe,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) +"aal" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "aam" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "aan" = (/obj/structure/chair/comfy/black{dir = 1; icon_state = "comfychair"; name = "pilot's chair"},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "aao" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 10},/obj/item/device/multitool,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) @@ -75,7 +75,7 @@ "abw" = (/obj/structure/table/optable,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "abx" = (/obj/structure/table,/obj/item/weapon/scalpel,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/obj/item/weapon/surgical_drapes,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "aby" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/shuttle/syndicate) -"abz" = (/obj/structure/computerframe,/obj/item/weapon/paper{info = "

Teleporter Instruction


  1. Install circuit board, glass and wiring to complete Teleporter Control Console
  2. Use a screwdriver, wirecutter and screwdriver again on the Teleporter Station to connect it
  3. Set destination with Teleporter Control Computer
  4. Activate Teleporter Hub with Teleporter Station
"; name = "Teleporter Instructions"},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) +"abz" = (/obj/structure/frame/computer,/obj/item/weapon/paper{info = "

Teleporter Instruction


  1. Install circuit board, glass and wiring to complete Teleporter Control Console
  2. Use a screwdriver, wirecutter and screwdriver again on the Teleporter Station to connect it
  3. Set destination with Teleporter Control Computer
  4. Activate Teleporter Hub with Teleporter Station
"; name = "Teleporter Instructions"},/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "abA" = (/obj/machinery/teleport/station,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "abB" = (/obj/machinery/teleport/hub/syndicate,/turf/open/floor/plasteel/shuttle{icon_state = "shuttlefloor4"},/area/shuttle/syndicate) "abC" = (/turf/open/floor/plasteel/black,/area/engine/engineering) @@ -694,7 +694,7 @@ "anr" = (/obj/machinery/computer/arcade,/turf/open/floor/plating,/area/maintenance/fsmaint) "ans" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/turf/open/floor/wood,/area/maintenance/fsmaint) "ant" = (/obj/structure/flora/kirbyplants{anchored = 1; icon_state = "plant-05"; layer = 4.1; name = "incredibly heavy plant"},/turf/open/floor/wood,/area/maintenance/fsmaint) -"anu" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plating,/area/maintenance/fsmaint) +"anu" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/computer/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plating,/area/maintenance/fsmaint) "anv" = (/obj/structure/grille,/turf/open/floor/plating,/area/maintenance/fsmaint) "anw" = (/obj/structure/cable/cyan{icon_state = "1-2"},/turf/open/floor/plasteel,/area/maintenance/fsmaint) "anx" = (/obj/structure/cable/cyan{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) @@ -1555,7 +1555,7 @@ "aDU" = (/obj/structure/cable/cyan{icon_state = "4-8"},/turf/open/floor/plasteel,/area/maintenance/asmaint2) "aDV" = (/obj/structure/cable/cyan{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/cyan/hidden,/turf/open/floor/plasteel/warning/corner,/area/maintenance/asmaint2) "aDW" = (/obj/item/weapon/ed209_assembly,/obj/structure/cable/cyan{icon_state = "0-2"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"aDX" = (/obj/structure/table,/obj/item/weapon/circuitboard/circuit_imprinter,/turf/open/floor/plating,/area/maintenance/asmaint2) +"aDX" = (/obj/structure/table,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/turf/open/floor/plating,/area/maintenance/asmaint2) "aDY" = (/turf/closed/wall/shuttle{icon_state = "swall8"; dir = 2},/area/shuttle/escape) "aDZ" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) "aEa" = (/turf/closed/wall/shuttle{icon_state = "swall4"; dir = 2},/area/shuttle/escape) @@ -2460,7 +2460,7 @@ "aVr" = (/obj/structure/closet/wardrobe/white/medical,/obj/item/weapon/storage/box/bodybags,/turf/open/floor/plasteel/white,/area/security/warden) "aVs" = (/obj/structure/closet{name = "chem implant closet"},/obj/item/weapon/reagent_containers/glass/bottle/cyanide,/obj/item/weapon/reagent_containers/glass/bottle/initropidril,/obj/item/weapon/reagent_containers/glass/bottle/coniine,/obj/item/weapon/reagent_containers/glass/bottle/sodium_thiopental,/obj/item/weapon/storage/box/chemimp,/obj/item/weapon/storage/box/trackimp,/obj/item/weapon/gun/syringe,/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/white,/area/security/warden) "aVt" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/obj/item/clothing/mask/surgical,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/machinery/camera/autoname{icon_state = "camera"; dir = 6},/obj/item/clothing/gloves/color/latex/nitrile,/turf/open/floor/plasteel/white,/area/security/warden) -"aVu" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plating,/area/toxins/xenobiology) +"aVu" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/computer/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plating,/area/toxins/xenobiology) "aVv" = (/obj/machinery/button/flasher{id = "permaflash"; name = "perma flasher button"; pixel_x = 0; pixel_y = 28},/turf/open/floor/plasteel,/area/security/brig) "aVw" = (/obj/effect/spawner/structure/window/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "perma shutter"; name = "perma brig window shutter"},/turf/open/floor/plating,/area/security/brig) "aVx" = (/obj/structure/cable/cyan{icon_state = "1-2"},/turf/open/floor/plasteel/warnwhite{icon_state = "warnwhite"; dir = 4},/area/medical/medbay) @@ -2501,7 +2501,7 @@ "aWg" = (/obj/structure/cable/cyan{icon_state = "1-2"},/turf/open/floor/plasteel,/area/maintenance/asmaint2) "aWh" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel{icon_state = "showroomfloor"},/area/maintenance/asmaint2) "aWi" = (/obj/structure/table,/obj/item/device/flashlight/seclite,/obj/item/clothing/suit/armor/vest,/obj/machinery/light{dir = 1},/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/restraints/legcuffs/beartrap,/turf/open/floor/plasteel{icon_state = "showroomfloor"},/area/maintenance/asmaint2) -"aWj" = (/obj/item/weapon/circuitboard/security,/turf/open/floor/plating,/area/maintenance/asmaint2) +"aWj" = (/obj/item/weapon/circuitboard/computer/security,/turf/open/floor/plating,/area/maintenance/asmaint2) "aWk" = (/obj/structure/window/reinforced,/obj/structure/flora/kirbyplants{icon_state = "plant-17"; layer = 4.1},/turf/open/floor/plasteel/whitebot,/area/maintenance/fore{name = "Security Maintenance"}) "aWl" = (/obj/machinery/vending/assist,/turf/open/floor/plasteel/warning{icon_state = "warning"; dir = 10},/area/maintenance/fore{name = "Security Maintenance"}) "aWm" = (/obj/structure/table,/obj/item/clothing/gloves/color/fyellow,/obj/item/clothing/gloves/color/fyellow,/obj/item/clothing/gloves/color/fyellow,/turf/open/floor/plasteel/warning,/area/maintenance/fore{name = "Security Maintenance"}) @@ -2592,8 +2592,8 @@ "aXT" = (/obj/structure/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) "aXU" = (/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/plasteel/shuttle,/area/shuttle/arrival) "aXV" = (/obj/item/device/flashlight/seclite{name = "dusty seclite"; on = 1},/turf/open/floor/plating/asteroid{name = "dirt"},/area/maintenance/asmaint2) -"aXW" = (/obj/item/weapon/circuitboard/card,/turf/open/floor/plasteel{icon_state = "showroomfloor"},/area/maintenance/asmaint2) -"aXX" = (/obj/structure/computerframe,/turf/open/floor/plasteel{icon_state = "showroomfloor"},/area/maintenance/asmaint2) +"aXW" = (/obj/item/weapon/circuitboard/computer/card,/turf/open/floor/plasteel{icon_state = "showroomfloor"},/area/maintenance/asmaint2) +"aXX" = (/obj/structure/frame/computer,/turf/open/floor/plasteel{icon_state = "showroomfloor"},/area/maintenance/asmaint2) "aXY" = (/obj/structure/flora/kirbyplants{icon_state = "plant-16"; layer = 4.1},/turf/open/floor/plasteel/white,/area/maintenance/fore{name = "Security Maintenance"}) "aXZ" = (/turf/open/floor/plasteel/bot,/area/maintenance/fore{name = "Security Maintenance"}) "aYa" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 10},/turf/open/floor/plasteel,/area/maintenance/fore{name = "Security Maintenance"}) @@ -2784,7 +2784,7 @@ "bbD" = (/obj/effect/spawner/lootdrop{loot = list(/obj/item/organ/gland/bloody = 7, /obj/item/organ/gland/bodysnatch = 4, /obj/item/organ/gland/egg = 7, /obj/item/organ/gland/emp = 3, /obj/item/organ/gland/mindshock = 5, /obj/item/organ/gland/plasma = 7, /obj/item/organ/gland/pop = 5, /obj/item/organ/gland/slime = 4, /obj/item/organ/gland/spiderman = 5, /obj/item/organ/gland/ventcrawling = 1, /obj/item/organ/body_egg/alien_embryo = 1, /obj/item/organ/hivelord_core = 2); lootcount = 3; name = "organ spawner"},/obj/structure/closet/secure_closet{name = "xenobiology research materials locker"; req_access_txt = "55"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) "bbE" = (/mob/living/simple_animal/mouse/brown,/turf/open/floor/wood,/area/maintenance/fore{name = "Security Maintenance"}) "bbF" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plating,/area/maintenance/fore{name = "Security Maintenance"}) -"bbG" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plating,/area/maintenance/fore{name = "Security Maintenance"}) +"bbG" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/computer/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plating,/area/maintenance/fore{name = "Security Maintenance"}) "bbH" = (/obj/machinery/door/airlock/external{req_access_txt = "13"},/obj/structure/cable/cyan{icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fore{name = "Security Maintenance"}) "bbI" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 5},/turf/open/floor/plating,/area/maintenance/fore{name = "Security Maintenance"}) "bbJ" = (/obj/structure/cable/cyan{icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel,/area/maintenance/fore{name = "Security Maintenance"}) @@ -2854,7 +2854,7 @@ "bcV" = (/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/maintenance/asmaint) "bcW" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/asmaint) "bcX" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) -"bcY" = (/obj/structure/table,/obj/item/weapon/circuitboard/autolathe,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bcY" = (/obj/structure/table,/obj/item/weapon/circuitboard/machine/autolathe,/turf/open/floor/plating,/area/maintenance/asmaint2) "bcZ" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/open/floor/plating,/area/maintenance/asmaint2) "bda" = (/turf/open/floor/plasteel/shuttle,/turf/closed/wall/shuttle/interior{icon_state = "swall_f9"},/area/shuttle/transport) "bdb" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/transport) diff --git a/_maps/map_files/DreamStation/dreamstation04.dmm b/_maps/map_files/DreamStation/dreamstation04.dmm index 87cdb1c609c..d9b8f0cce5b 100644 --- a/_maps/map_files/DreamStation/dreamstation04.dmm +++ b/_maps/map_files/DreamStation/dreamstation04.dmm @@ -1434,7 +1434,7 @@ }, /area/shuttle/syndicate) "acC" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor4" }, @@ -2533,7 +2533,7 @@ }, /area/shuttle/abandoned) "aeG" = ( -/obj/structure/computerframe{ +/obj/structure/frame/computer{ anchored = 1 }, /turf/open/floor/plasteel/shuttle{ @@ -2838,7 +2838,7 @@ }, /area/shuttle/abandoned) "afo" = ( -/obj/item/weapon/circuitboard/operating, +/obj/item/weapon/circuitboard/computer/operating, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor3" }, @@ -5745,8 +5745,8 @@ /turf/open/floor/plating, /area/maintenance/fpmaint2) "alK" = ( -/obj/structure/computerframe, -/obj/item/weapon/circuitboard/operating, +/obj/structure/frame/computer, +/obj/item/weapon/circuitboard/computer/operating, /turf/open/floor/plating, /area/maintenance/fpmaint2) "alL" = ( @@ -5889,7 +5889,7 @@ /turf/open/floor/plating, /area/maintenance/fpmaint2) "amj" = ( -/obj/item/weapon/circuitboard/sleeper, +/obj/item/weapon/circuitboard/machine/sleeper, /obj/structure/mirror{ pixel_x = 28 }, @@ -6259,7 +6259,7 @@ /turf/open/floor/plating, /area/maintenance/fpmaint2) "amV" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plating, /area/maintenance/fpmaint2) "amW" = ( @@ -6807,32 +6807,32 @@ "aop" = ( /obj/structure/table, /obj/item/weapon/stock_parts/manipulator, -/obj/item/weapon/circuitboard/microwave, +/obj/item/weapon/circuitboard/machine/microwave, /turf/open/floor/plating{ broken = 1; icon_state = "platingdmg3" }, /area/maintenance/asmaint) "aoq" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plating, /area/maintenance/asmaint) "aor" = ( -/obj/structure/computerframe{ +/obj/structure/frame/computer{ anchored = 1 }, -/obj/item/weapon/circuitboard/arcade/orion_trail, +/obj/item/weapon/circuitboard/computer/arcade/orion_trail, /turf/open/floor/plating, /area/maintenance/asmaint) "aos" = ( -/obj/structure/computerframe{ +/obj/structure/frame/computer{ anchored = 1 }, /turf/open/floor/plating, /area/maintenance/asmaint) "aot" = ( /obj/structure/table, -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plating, /area/maintenance/asmaint) "aou" = ( @@ -10768,7 +10768,7 @@ /obj/structure/rack, /obj/item/weapon/light/tube, /obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/circuitboard/protolathe, +/obj/item/weapon/circuitboard/machine/protolathe, /turf/open/floor/plating, /area/maintenance/asmaint) "awc" = ( @@ -17763,7 +17763,7 @@ /area/maintenance/atmos_control) "aJM" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/circuit_imprinter, +/obj/item/weapon/circuitboard/machine/circuit_imprinter, /obj/item/trash/chips, /turf/open/floor/plating, /area/maintenance/atmos_control) @@ -23619,11 +23619,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/robotics{ +/obj/item/weapon/circuitboard/computer/robotics{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/mecha_control{ +/obj/item/weapon/circuitboard/computer/mecha_control{ pixel_x = 1; pixel_y = -1 }, @@ -23651,11 +23651,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/borgupload{ +/obj/item/weapon/circuitboard/computer/borgupload{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/aiupload{ +/obj/item/weapon/circuitboard/computer/aiupload{ pixel_x = 2; pixel_y = -2 }, @@ -23675,15 +23675,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/crew{ +/obj/item/weapon/circuitboard/computer/crew{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/card{ +/obj/item/weapon/circuitboard/computer/card{ pixel_x = 2; pixel_y = -2 }, -/obj/item/weapon/circuitboard/communications{ +/obj/item/weapon/circuitboard/computer/communications{ pixel_x = 5; pixel_y = -5 }, @@ -23847,7 +23847,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "aVH" = ( -/obj/structure/computerframe{ +/obj/structure/frame/computer{ anchored = 1 }, /turf/open/floor/plating{ @@ -23862,7 +23862,7 @@ /turf/open/floor/plating, /area/maintenance/asmaint) "aVJ" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /obj/effect/spawner/lootdrop{ loot = list(/obj/item/stack/sheet/metal = 1, /obj/item/stack/rods = 2, /obj/item/weapon/shard = 2, "" = 3); lootcount = 2; @@ -27242,16 +27242,16 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/cloning{ +/obj/item/weapon/circuitboard/computer/cloning{ pixel_x = 0 }, -/obj/item/weapon/circuitboard/med_data{ +/obj/item/weapon/circuitboard/computer/med_data{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/clonescanner, -/obj/item/weapon/circuitboard/clonepod, -/obj/item/weapon/circuitboard/scan_consolenew, +/obj/item/weapon/circuitboard/machine/clonescanner, +/obj/item/weapon/circuitboard/machine/clonepod, +/obj/item/weapon/circuitboard/computer/scan_consolenew, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -27262,11 +27262,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/secure_data{ +/obj/item/weapon/circuitboard/computer/secure_data{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/security{ +/obj/item/weapon/circuitboard/computer/security{ pixel_x = 1; pixel_y = -1 }, @@ -27281,12 +27281,12 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/mining, -/obj/item/weapon/circuitboard/autolathe{ +/obj/item/weapon/circuitboard/computer/mining, +/obj/item/weapon/circuitboard/machine/autolathe{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/arcade/battle, +/obj/item/weapon/circuitboard/computer/arcade/battle, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -27402,7 +27402,7 @@ "bcx" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, -/obj/item/weapon/circuitboard/rdconsole, +/obj/item/weapon/circuitboard/computer/rdconsole, /obj/item/weapon/stock_parts/console_screen, /turf/open/floor/plating{ broken = 1; @@ -28690,21 +28690,21 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/pandemic{ +/obj/item/weapon/circuitboard/computer/pandemic{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/circuitboard/rdconsole, -/obj/item/weapon/circuitboard/rdserver{ +/obj/item/weapon/circuitboard/computer/rdconsole, +/obj/item/weapon/circuitboard/machine/rdserver{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/destructive_analyzer, -/obj/item/weapon/circuitboard/protolathe, -/obj/item/weapon/circuitboard/aifixer, -/obj/item/weapon/circuitboard/teleporter, -/obj/item/weapon/circuitboard/circuit_imprinter, -/obj/item/weapon/circuitboard/mechfab, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/protolathe, +/obj/item/weapon/circuitboard/computer/aifixer, +/obj/item/weapon/circuitboard/computer/teleporter, +/obj/item/weapon/circuitboard/machine/circuit_imprinter, +/obj/item/weapon/circuitboard/machine/mechfab, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ tag = "icon-manifold-b-f (NORTH)"; dir = 1 @@ -28716,15 +28716,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/powermonitor{ +/obj/item/weapon/circuitboard/computer/powermonitor{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/stationalert{ +/obj/item/weapon/circuitboard/computer/stationalert{ pixel_x = 1; pixel_y = -1 }, -/obj/item/weapon/circuitboard/atmos_alert{ +/obj/item/weapon/circuitboard/computer/atmos_alert{ pixel_x = 3; pixel_y = -3 }, @@ -28736,12 +28736,12 @@ /area/storage/tech) "bfd" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/receiver, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/broadcaster, -/obj/item/weapon/circuitboard/message_monitor{ +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/receiver, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, +/obj/item/weapon/circuitboard/computer/message_monitor{ pixel_y = -5 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -37083,7 +37083,7 @@ /turf/open/floor/plating, /area/maintenance/fpmaint) "buF" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plating, /area/maintenance/fpmaint) "buG" = ( @@ -38399,7 +38399,7 @@ /turf/open/floor/plating, /area/maintenance/fpmaint) "bwK" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /obj/machinery/power/apc{ aidisabled = 0; auto_name = 1; @@ -47438,7 +47438,7 @@ /turf/open/floor/plating, /area/maintenance/fpmaint) "bMn" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plating, /area/maintenance/fpmaint) "bMo" = ( @@ -61853,7 +61853,7 @@ }, /area/toxins/lab) "cog" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plasteel{ icon_state = "white" }, @@ -62568,18 +62568,18 @@ }, /area/maintenance/electrical) "cpA" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel{ icon_state = "floorgrime" }, /area/construction) "cpB" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/construction) "cpC" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/machinery/airalarm{ pixel_y = 23 }, @@ -62600,7 +62600,7 @@ }, /area/construction) "cpE" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /turf/open/floor/plasteel{ icon_state = "floorgrime" }, @@ -65375,7 +65375,7 @@ pixel_x = -2; pixel_y = 4 }, -/obj/item/weapon/circuitboard/teleporter, +/obj/item/weapon/circuitboard/computer/teleporter, /obj/item/device/aicard, /obj/structure/cable/pink{ tag = "icon-2-8"; @@ -72100,7 +72100,7 @@ "cHe" = ( /obj/structure/closet/crate, /obj/item/weapon/reagent_containers/food/snacks/mint, -/obj/item/weapon/circuitboard/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, /turf/open/floor/plating, /area/maintenance/asmaint2) "cHf" = ( @@ -74722,8 +74722,8 @@ }, /area/maintenance/asmaint2) "cLX" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/chem_master, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/chem_master, /turf/open/floor/plating, /area/maintenance/asmaint2) "cLY" = ( diff --git a/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm b/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm index 65a5dd9837b..b15f8f1c392 100644 --- a/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm +++ b/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm @@ -588,7 +588,7 @@ }, /area/shuttle/syndicate) "abt" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor4" }, @@ -1956,7 +1956,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/machinery/constructable_frame/machine_frame{ +/obj/structure/frame/machine{ desc = "A NanoTrasen hypersleep chamber - this one appears broken. There are exposed bolts for easy detachment using a wrench."; dir = 8; icon = 'icons/obj/Cryogenic2.dmi'; @@ -1992,7 +1992,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/machinery/constructable_frame/machine_frame{ +/obj/structure/frame/machine{ desc = "A NanoTrasen hypersleep chamber - this one appears broken. There are exposed bolts for easy detachment using a wrench."; dir = 4; icon = 'icons/obj/Cryogenic2.dmi'; @@ -2202,8 +2202,8 @@ }, /area/shuttle/abandoned) "adV" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/chem_dispenser, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/chem_dispenser, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -2213,7 +2213,7 @@ }, /area/shuttle/abandoned) "adW" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; @@ -2777,7 +2777,7 @@ }, /area/shuttle/abandoned) "aeR" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -2787,8 +2787,8 @@ }, /area/shuttle/abandoned) "aeS" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/autolathe, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/autolathe, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -3524,8 +3524,8 @@ }, /area/shuttle/abandoned) "aga" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/cyborgrecharger, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/cyborgrecharger, /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; @@ -4212,7 +4212,7 @@ }, /area/shuttle/abandoned) "ahk" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -4244,7 +4244,7 @@ }, /area/shuttle/abandoned) "ahn" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -14688,7 +14688,7 @@ pixel_x = -2; pixel_y = 4 }, -/obj/item/weapon/circuitboard/teleporter, +/obj/item/weapon/circuitboard/computer/teleporter, /turf/open/floor/plasteel{ dir = 6; icon_state = "warnwhite" @@ -17007,11 +17007,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/robotics{ +/obj/item/weapon/circuitboard/computer/robotics{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/mecha_control{ +/obj/item/weapon/circuitboard/computer/mecha_control{ pixel_x = 1; pixel_y = -1 }, @@ -17022,15 +17022,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/crew{ +/obj/item/weapon/circuitboard/computer/crew{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/card{ +/obj/item/weapon/circuitboard/computer/card{ pixel_x = 2; pixel_y = -2 }, -/obj/item/weapon/circuitboard/communications{ +/obj/item/weapon/circuitboard/computer/communications{ pixel_x = 5; pixel_y = -5 }, @@ -17041,11 +17041,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/borgupload{ +/obj/item/weapon/circuitboard/computer/borgupload{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/aiupload{ +/obj/item/weapon/circuitboard/computer/aiupload{ pixel_x = 2; pixel_y = -2 }, @@ -19057,14 +19057,14 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/cloning, -/obj/item/weapon/circuitboard/med_data{ +/obj/item/weapon/circuitboard/computer/cloning, +/obj/item/weapon/circuitboard/computer/med_data{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/clonescanner, -/obj/item/weapon/circuitboard/clonepod, -/obj/item/weapon/circuitboard/scan_consolenew, +/obj/item/weapon/circuitboard/machine/clonescanner, +/obj/item/weapon/circuitboard/machine/clonepod, +/obj/item/weapon/circuitboard/computer/scan_consolenew, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -19691,11 +19691,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/secure_data{ +/obj/item/weapon/circuitboard/computer/secure_data{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/security{ +/obj/item/weapon/circuitboard/computer/security{ pixel_x = 1; pixel_y = -1 }, @@ -20334,15 +20334,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/powermonitor{ +/obj/item/weapon/circuitboard/computer/powermonitor{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/stationalert{ +/obj/item/weapon/circuitboard/computer/stationalert{ pixel_x = 1; pixel_y = -1 }, -/obj/item/weapon/circuitboard/atmos_alert{ +/obj/item/weapon/circuitboard/computer/atmos_alert{ pixel_x = 3; pixel_y = -3 }, @@ -21705,18 +21705,18 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/pandemic{ +/obj/item/weapon/circuitboard/computer/pandemic{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/circuitboard/rdconsole, -/obj/item/weapon/circuitboard/rdserver{ +/obj/item/weapon/circuitboard/computer/rdconsole, +/obj/item/weapon/circuitboard/machine/rdserver{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/destructive_analyzer, -/obj/item/weapon/circuitboard/protolathe, -/obj/item/weapon/circuitboard/aifixer, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/protolathe, +/obj/item/weapon/circuitboard/computer/aifixer, /obj/machinery/light_switch{ pixel_x = -25 }, @@ -22455,12 +22455,12 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/mining, -/obj/item/weapon/circuitboard/autolathe{ +/obj/item/weapon/circuitboard/computer/mining, +/obj/item/weapon/circuitboard/machine/autolathe{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/arcade/battle, +/obj/item/weapon/circuitboard/computer/arcade/battle, /obj/machinery/light/small{ dir = 8 }, @@ -23206,12 +23206,12 @@ /area/hallway/primary/starboard) "aOL" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/receiver, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/broadcaster, -/obj/item/weapon/circuitboard/message_monitor{ +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/receiver, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, +/obj/item/weapon/circuitboard/computer/message_monitor{ pixel_y = -5 }, /turf/open/floor/plating, @@ -44400,7 +44400,7 @@ /obj/item/solar_assembly, /obj/item/solar_assembly, /obj/item/solar_assembly, -/obj/item/weapon/circuitboard/solar_control, +/obj/item/weapon/circuitboard/computer/solar_control, /obj/item/weapon/electronics/tracker, /obj/item/weapon/paper/solar, /obj/structure/cable{ diff --git a/_maps/map_files/MetaStation/MetaStation.v41I.dmm b/_maps/map_files/MetaStation/MetaStation.v41I.dmm index bbec2be5967..43d40cb3424 100644 --- a/_maps/map_files/MetaStation/MetaStation.v41I.dmm +++ b/_maps/map_files/MetaStation/MetaStation.v41I.dmm @@ -20887,7 +20887,7 @@ /obj/item/solar_assembly, /obj/item/solar_assembly, /obj/item/solar_assembly, -/obj/item/weapon/circuitboard/solar_control, +/obj/item/weapon/circuitboard/computer/solar_control, /obj/item/weapon/electronics/tracker, /obj/item/weapon/paper/solar, /turf/open/floor/plasteel{ @@ -31654,15 +31654,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/powermonitor{ +/obj/item/weapon/circuitboard/computer/powermonitor{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/stationalert{ +/obj/item/weapon/circuitboard/computer/stationalert{ pixel_x = 1; pixel_y = -1 }, -/obj/item/weapon/circuitboard/atmos_alert{ +/obj/item/weapon/circuitboard/computer/atmos_alert{ pixel_x = 3; pixel_y = -3 }, @@ -31675,11 +31675,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/secure_data{ +/obj/item/weapon/circuitboard/computer/secure_data{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/security{ +/obj/item/weapon/circuitboard/computer/security{ pixel_x = 1; pixel_y = -1 }, @@ -31696,16 +31696,16 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/cloning{ +/obj/item/weapon/circuitboard/computer/cloning{ pixel_x = 0 }, -/obj/item/weapon/circuitboard/med_data{ +/obj/item/weapon/circuitboard/computer/med_data{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/clonescanner, -/obj/item/weapon/circuitboard/clonepod, -/obj/item/weapon/circuitboard/scan_consolenew, +/obj/item/weapon/circuitboard/machine/clonescanner, +/obj/item/weapon/circuitboard/machine/clonepod, +/obj/item/weapon/circuitboard/computer/scan_consolenew, /turf/open/floor/plasteel{ icon_state = "dark" }, @@ -33760,11 +33760,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/borgupload{ +/obj/item/weapon/circuitboard/computer/borgupload{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/aiupload{ +/obj/item/weapon/circuitboard/computer/aiupload{ pixel_x = 2; pixel_y = -2 }, @@ -33804,14 +33804,14 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/message_monitor{ +/obj/item/weapon/circuitboard/computer/message_monitor{ pixel_y = -5 }, -/obj/item/weapon/circuitboard/arcade/battle{ +/obj/item/weapon/circuitboard/computer/arcade/battle{ pixel_x = -4; pixel_y = 2 }, -/obj/item/weapon/circuitboard/arcade/orion_trail{ +/obj/item/weapon/circuitboard/computer/arcade/orion_trail{ pixel_x = 4 }, /turf/open/floor/plasteel{ @@ -33823,8 +33823,8 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/mining, -/obj/item/weapon/circuitboard/autolathe{ +/obj/item/weapon/circuitboard/computer/mining, +/obj/item/weapon/circuitboard/machine/autolathe{ pixel_x = 3; pixel_y = -3 }, @@ -33837,17 +33837,17 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/pandemic{ +/obj/item/weapon/circuitboard/computer/pandemic{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/circuitboard/rdconsole, -/obj/item/weapon/circuitboard/rdserver{ +/obj/item/weapon/circuitboard/computer/rdconsole, +/obj/item/weapon/circuitboard/machine/rdserver{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/destructive_analyzer, -/obj/item/weapon/circuitboard/protolathe, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/protolathe, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel{ icon_state = "dark" @@ -34518,15 +34518,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/crew{ +/obj/item/weapon/circuitboard/computer/crew{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/card{ +/obj/item/weapon/circuitboard/computer/card{ pixel_x = 2; pixel_y = -2 }, -/obj/item/weapon/circuitboard/communications{ +/obj/item/weapon/circuitboard/computer/communications{ pixel_x = 5; pixel_y = -5 }, @@ -35451,11 +35451,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/robotics{ +/obj/item/weapon/circuitboard/computer/robotics{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/mecha_control{ +/obj/item/weapon/circuitboard/computer/mecha_control{ pixel_x = 1; pixel_y = -1 }, @@ -56963,14 +56963,14 @@ /area/bridge) "bOg" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/receiver, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/broadcaster, +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/receiver, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 1; on = 1 @@ -79097,7 +79097,7 @@ pixel_x = -2; pixel_y = 4 }, -/obj/item/weapon/circuitboard/teleporter, +/obj/item/weapon/circuitboard/computer/teleporter, /turf/open/floor/plasteel{ icon_state = "cafeteria"; dir = 5 @@ -96286,7 +96286,7 @@ }, /area/shuttle/syndicate) "cXz" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor4" }, @@ -97775,8 +97775,8 @@ }, /area/shuttle/abandoned) "daw" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/cyborgrecharger, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/cyborgrecharger, /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; @@ -97944,7 +97944,7 @@ }, /area/shuttle/abandoned) "daO" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/effect/decal/cleanable/cobweb, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; @@ -98040,7 +98040,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/machinery/constructable_frame/machine_frame{ +/obj/structure/frame/machine{ desc = "A NanoTrasen hypersleep chamber - this one appears broken. There are exposed bolts for easy detachment using a wrench."; dir = 1; icon = 'icons/obj/Cryogenic2.dmi'; @@ -98057,7 +98057,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/machinery/constructable_frame/machine_frame{ +/obj/structure/frame/machine{ desc = "A NanoTrasen hypersleep chamber - this one appears broken. There are exposed bolts for easy detachment using a wrench."; dir = 1; icon = 'icons/obj/Cryogenic2.dmi'; @@ -98352,7 +98352,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/machinery/constructable_frame/machine_frame{ +/obj/structure/frame/machine{ desc = "A NanoTrasen hypersleep chamber - this one appears broken. There are exposed bolts for easy detachment using a wrench."; dir = 2; icon = 'icons/obj/Cryogenic2.dmi'; @@ -98369,7 +98369,7 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, -/obj/machinery/constructable_frame/machine_frame{ +/obj/structure/frame/machine{ desc = "A NanoTrasen hypersleep chamber - this one appears broken. There are exposed bolts for easy detachment using a wrench."; dir = 2; icon = 'icons/obj/Cryogenic2.dmi'; @@ -98465,7 +98465,7 @@ }, /area/shuttle/abandoned) "dbC" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -98643,7 +98643,7 @@ }, /area/shuttle/abandoned) "dbS" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /obj/effect/decal/cleanable/oil, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; @@ -98654,8 +98654,8 @@ }, /area/shuttle/abandoned) "dbT" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/autolathe, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/autolathe, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -98787,8 +98787,8 @@ /turf/open/floor/plasteel/shuttle, /area/shuttle/abandoned) "dcd" = ( -/obj/machinery/constructable_frame/machine_frame, -/obj/item/weapon/circuitboard/chem_dispenser, +/obj/structure/frame/machine, +/obj/item/weapon/circuitboard/machine/chem_dispenser, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -98798,7 +98798,7 @@ }, /area/shuttle/abandoned) "dce" = ( -/obj/machinery/constructable_frame/machine_frame, +/obj/structure/frame/machine, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" diff --git a/_maps/map_files/MiniStation/MiniStation.dmm b/_maps/map_files/MiniStation/MiniStation.dmm index aaebffe3620..4220fed6d56 100644 --- a/_maps/map_files/MiniStation/MiniStation.dmm +++ b/_maps/map_files/MiniStation/MiniStation.dmm @@ -13107,7 +13107,7 @@ /obj/item/solar_assembly, /obj/item/solar_assembly, /obj/item/solar_assembly, -/obj/item/weapon/circuitboard/solar_control, +/obj/item/weapon/circuitboard/computer/solar_control, /obj/item/weapon/electronics/tracker, /obj/item/weapon/paper/solar, /turf/open/floor/plating{ @@ -13528,7 +13528,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "Cw" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor4" }, @@ -15520,7 +15520,7 @@ /turf/open/floor/plating, /area/shuttle/syndicate) "Hd" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /obj/item/weapon/paper{ info = "

Teleporter Instruction


  1. Install circuit board, glass and wiring to complete Teleporter Control Console
  2. Use a screwdriver, wirecutter and screwdriver again on the Teleporter Station to connect it
  3. Set destination with Teleporter Control Computer
  4. Activate Teleporter Hub with Teleporter Station
"; name = "Teleporter Instructions" diff --git a/_maps/map_files/TgStation/tgstation.2.1.3.dmm b/_maps/map_files/TgStation/tgstation.2.1.3.dmm index 4b6ad4ccfca..ee5c7cfc719 100644 --- a/_maps/map_files/TgStation/tgstation.2.1.3.dmm +++ b/_maps/map_files/TgStation/tgstation.2.1.3.dmm @@ -7034,7 +7034,7 @@ /area/maintenance/fpmaint2) "ann" = ( /obj/item/weapon/electronics/airalarm, -/obj/item/weapon/circuitboard/seed_extractor, +/obj/item/weapon/circuitboard/machine/seed_extractor, /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance{ lootcount = 4; @@ -7502,7 +7502,7 @@ /area/maintenance/fpmaint2) "aoo" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/monkey_recycler, +/obj/item/weapon/circuitboard/machine/monkey_recycler, /turf/open/floor/plating, /area/maintenance/fpmaint2) "aop" = ( @@ -10443,11 +10443,11 @@ /obj/item/weapon/shard{ icon_state = "medium" }, -/obj/item/weapon/circuitboard/operating, +/obj/item/weapon/circuitboard/computer/operating, /turf/open/floor/plating, /area/maintenance/fpmaint2) "auZ" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plating, /area/maintenance/fpmaint2) "ava" = ( @@ -35006,7 +35006,7 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "buA" = ( -/obj/structure/computerframe, +/obj/structure/frame/computer, /turf/open/floor/plasteel/shuttle{ icon_state = "shuttlefloor4" }, @@ -41168,11 +41168,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/borgupload{ +/obj/item/weapon/circuitboard/computer/borgupload{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/aiupload{ +/obj/item/weapon/circuitboard/computer/aiupload{ pixel_x = 2; pixel_y = -2 }, @@ -41199,36 +41199,36 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/pandemic{ +/obj/item/weapon/circuitboard/computer/pandemic{ pixel_x = -3; pixel_y = 3 }, -/obj/item/weapon/circuitboard/rdconsole, -/obj/item/weapon/circuitboard/rdserver{ +/obj/item/weapon/circuitboard/computer/rdconsole, +/obj/item/weapon/circuitboard/machine/rdserver{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/destructive_analyzer, -/obj/item/weapon/circuitboard/protolathe, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/protolathe, /obj/structure/cable{ d1 = 1; d2 = 2; icon_state = "1-2" }, -/obj/item/weapon/circuitboard/aifixer, -/obj/item/weapon/circuitboard/teleporter, -/obj/item/weapon/circuitboard/circuit_imprinter, -/obj/item/weapon/circuitboard/mechfab, +/obj/item/weapon/circuitboard/computer/aifixer, +/obj/item/weapon/circuitboard/computer/teleporter, +/obj/item/weapon/circuitboard/machine/circuit_imprinter, +/obj/item/weapon/circuitboard/machine/mechfab, /turf/open/floor/plating, /area/storage/tech) "bGx" = ( /obj/structure/rack, -/obj/item/weapon/circuitboard/telecomms/processor, -/obj/item/weapon/circuitboard/telecomms/receiver, -/obj/item/weapon/circuitboard/telecomms/server, -/obj/item/weapon/circuitboard/telecomms/bus, -/obj/item/weapon/circuitboard/telecomms/broadcaster, -/obj/item/weapon/circuitboard/message_monitor{ +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/receiver, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, +/obj/item/weapon/circuitboard/computer/message_monitor{ pixel_y = -5 }, /turf/open/floor/plating, @@ -41238,12 +41238,12 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/mining, -/obj/item/weapon/circuitboard/autolathe{ +/obj/item/weapon/circuitboard/computer/mining, +/obj/item/weapon/circuitboard/machine/autolathe{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/arcade/battle, +/obj/item/weapon/circuitboard/computer/arcade/battle, /turf/open/floor/plating, /area/storage/tech) "bGz" = ( @@ -41848,15 +41848,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/crew{ +/obj/item/weapon/circuitboard/computer/crew{ pixel_x = -1; pixel_y = 1 }, -/obj/item/weapon/circuitboard/card{ +/obj/item/weapon/circuitboard/computer/card{ pixel_x = 2; pixel_y = -2 }, -/obj/item/weapon/circuitboard/communications{ +/obj/item/weapon/circuitboard/computer/communications{ pixel_x = 5; pixel_y = -5 }, @@ -42787,11 +42787,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/robotics{ +/obj/item/weapon/circuitboard/computer/robotics{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/mecha_control{ +/obj/item/weapon/circuitboard/computer/mecha_control{ pixel_x = 1; pixel_y = -1 }, @@ -42813,16 +42813,16 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/cloning{ +/obj/item/weapon/circuitboard/computer/cloning{ pixel_x = 0 }, -/obj/item/weapon/circuitboard/med_data{ +/obj/item/weapon/circuitboard/computer/med_data{ pixel_x = 3; pixel_y = -3 }, -/obj/item/weapon/circuitboard/clonescanner, -/obj/item/weapon/circuitboard/clonepod, -/obj/item/weapon/circuitboard/scan_consolenew, +/obj/item/weapon/circuitboard/machine/clonescanner, +/obj/item/weapon/circuitboard/machine/clonepod, +/obj/item/weapon/circuitboard/computer/scan_consolenew, /turf/open/floor/plating, /area/storage/tech) "bJl" = ( @@ -42830,15 +42830,15 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/powermonitor{ +/obj/item/weapon/circuitboard/computer/powermonitor{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/stationalert{ +/obj/item/weapon/circuitboard/computer/stationalert{ pixel_x = 1; pixel_y = -1 }, -/obj/item/weapon/circuitboard/atmos_alert{ +/obj/item/weapon/circuitboard/computer/atmos_alert{ pixel_x = 3; pixel_y = -3 }, @@ -42849,11 +42849,11 @@ dir = 8; layer = 2.9 }, -/obj/item/weapon/circuitboard/secure_data{ +/obj/item/weapon/circuitboard/computer/secure_data{ pixel_x = -2; pixel_y = 2 }, -/obj/item/weapon/circuitboard/security{ +/obj/item/weapon/circuitboard/computer/security{ pixel_x = 1; pixel_y = -1 }, @@ -56170,7 +56170,7 @@ /obj/item/solar_assembly, /obj/item/solar_assembly, /obj/item/solar_assembly, -/obj/item/weapon/circuitboard/solar_control, +/obj/item/weapon/circuitboard/computer/solar_control, /obj/item/weapon/electronics/tracker, /obj/item/weapon/paper/solar, /turf/open/floor/plasteel, @@ -63494,7 +63494,7 @@ }, /area/shuttle/abandoned) "czy" = ( -/obj/structure/computerframe{ +/obj/structure/frame/computer{ anchored = 1 }, /turf/open/floor/plasteel/shuttle{ diff --git a/_maps/map_files/generic/z3.dmm b/_maps/map_files/generic/z3.dmm index 16243f9502c..140b55a7d2b 100644 --- a/_maps/map_files/generic/z3.dmm +++ b/_maps/map_files/generic/z3.dmm @@ -32,7 +32,7 @@ "cj" = (/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) "ck" = (/obj/structure/table,/obj/item/weapon/paper,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) "cl" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/item/weapon/pen/blue,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) -"cm" = (/obj/structure/computerframe,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"cm" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) "cn" = (/obj/structure/table,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) "co" = (/obj/item/weapon/reagent_containers/food/snacks/meat/slab/synthmeat{name = "Cuban Pete-Meat"},/turf/open/floor/engine,/area/tcommsat/chamber) "cp" = (/obj/structure/grille,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) @@ -99,7 +99,7 @@ "dz" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/airless{icon_state = "dark"},/area/tcommsat/chamber) "dA" = (/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless{icon_state = "dark"},/area/tcommsat/chamber) "dB" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/tcommsat/chamber) -"dC" = (/obj/structure/rack,/obj/item/weapon/circuitboard/teleporter,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) +"dC" = (/obj/structure/rack,/obj/item/weapon/circuitboard/computer/teleporter,/turf/open/floor/plasteel/airless,/area/tcommsat/chamber) "dD" = (/obj/item/device/radio/off,/turf/open/floor/plasteel/airless{icon_state = "dark"},/area/tcommsat/chamber) "dE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/tcommsat/chamber) "dF" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating/airless,/area/tcommsat/chamber) @@ -159,11 +159,11 @@ "eH" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel{dir = 10; icon_state = "warning"},/area/tcommsat/chamber) "eI" = (/turf/open/floor/plasteel{dir = 2; icon_state = "warning"},/area/tcommsat/chamber) "eJ" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel{dir = 6; icon_state = "warning"},/area/tcommsat/chamber) -"eL" = (/obj/structure/computerframe,/turf/open/floor/plating,/area/tcommsat/chamber) +"eL" = (/obj/structure/frame/computer,/turf/open/floor/plating,/area/tcommsat/chamber) "eM" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/tcommsat/chamber) "eN" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/tcommsat/chamber) "eO" = (/turf/closed/wall/r_wall,/area/AIsattele) -"eP" = (/obj/structure/computerframe,/turf/open/floor/plating/airless,/area/AIsattele) +"eP" = (/obj/structure/frame/computer,/turf/open/floor/plating/airless,/area/AIsattele) "eQ" = (/obj/machinery/teleport/station,/turf/open/floor/plating/airless,/area/AIsattele) "eR" = (/obj/machinery/teleport/hub,/turf/open/floor/plating/airless,/area/AIsattele) "eS" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/AIsattele) @@ -184,7 +184,7 @@ "fh" = (/obj/item/weapon/shard,/obj/item/weapon/electronics/apc,/turf/open/floor/plating/airless,/area/AIsattele) "fi" = (/obj/structure/closet,/turf/open/floor/plating/airless,/area/AIsattele) "fj" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plating/airless,/area/AIsattele) -"fk" = (/obj/structure/closet/crate,/obj/item/device/aicard,/obj/item/device/multitool,/obj/item/weapon/weldingtool,/obj/item/weapon/wrench,/obj/item/weapon/circuitboard/teleporter,/turf/open/floor/plating/airless,/area/AIsattele) +"fk" = (/obj/structure/closet/crate,/obj/item/device/aicard,/obj/item/device/multitool,/obj/item/weapon/weldingtool,/obj/item/weapon/wrench,/obj/item/weapon/circuitboard/computer/teleporter,/turf/open/floor/plating/airless,/area/AIsattele) "fl" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating/airless,/area/AIsattele) "fm" = (/obj/structure/lattice,/turf/open/space,/area/AIsattele) "fn" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/AIsattele) diff --git a/_maps/map_files/generic/z4.dmm b/_maps/map_files/generic/z4.dmm index aec065d7d4f..9ebfeee4a01 100644 --- a/_maps/map_files/generic/z4.dmm +++ b/_maps/map_files/generic/z4.dmm @@ -41,7 +41,7 @@ "aO" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel{icon_state = "cafeteria"},/area/djstation) "aP" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 1; dir = 8; freerange = 1; listening = 0; name = "Pirate Radio Broadcast Channel"; pixel_x = 0},/turf/open/floor/plasteel{icon_state = "cafeteria"},/area/djstation) "aQ" = (/obj/structure/table,/obj/item/weapon/paper/djstation,/turf/open/floor/plasteel{icon_state = "cafeteria"},/area/djstation) -"aR" = (/obj/structure/computerframe{anchored = 1},/turf/open/floor/plasteel{icon_state = "grimy"},/area/djstation) +"aR" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plasteel{icon_state = "grimy"},/area/djstation) "aS" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel{icon_state = "grimy"},/area/djstation) "aT" = (/obj/machinery/light/small,/turf/open/floor/plasteel{icon_state = "grimy"},/area/djstation) "aU" = (/obj/structure/closet,/turf/open/floor/plasteel{icon_state = "grimy"},/area/djstation) @@ -147,8 +147,8 @@ "cQ" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/gravity_generator) "cR" = (/obj/structure/window/fulltile,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) "cS" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cT" = (/obj/structure/computerframe,/turf/open/floor/plasteel,/area/derelict/bridge) -"cU" = (/obj/structure/computerframe,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/derelict/bridge) +"cT" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/derelict/bridge) +"cU" = (/obj/structure/frame/computer,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/derelict/bridge) "cV" = (/obj/structure/table,/turf/open/floor/plasteel,/area/derelict/bridge) "cW" = (/obj/machinery/computer/security,/turf/open/floor/plasteel,/area/derelict/bridge) "cX" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/turf/open/floor/plasteel,/area/derelict/bridge) @@ -246,7 +246,7 @@ "eL" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) "eM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) "eN" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"eO" = (/obj/structure/computerframe,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"eO" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "eP" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/solar_control) "eQ" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/solar_control) "eR" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) @@ -359,7 +359,7 @@ "gU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) "gV" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) "gW" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gX" = (/obj/structure/rack,/obj/item/weapon/circuitboard/autolathe,/obj/item/weapon/circuitboard/protolathe{pixel_x = -5; pixel_y = -3},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"gX" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/autolathe,/obj/item/weapon/circuitboard/machine/protolathe{pixel_x = -5; pixel_y = -3},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "gY" = (/turf/open/floor/plasteel{dir = 4; icon_state = "chapel"},/area/derelict/medical/chapel) "gZ" = (/turf/open/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel) "ha" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical) @@ -378,7 +378,7 @@ "hn" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/derelict/arrival) "ho" = (/obj/structure/window/reinforced,/turf/open/space,/area/space) "hp" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary) -"hq" = (/obj/structure/rack,/obj/item/weapon/circuitboard/circuit_imprinter,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"hq" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "hr" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel{dir = 4; icon_state = "chapel"},/area/derelict/medical/chapel) "hs" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel) "ht" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) @@ -389,7 +389,7 @@ "hy" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical) "hz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical) "hA" = (/obj/item/stack/cable_coil/cut{amount = 2; dir = 2; icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"hB" = (/obj/structure/computerframe,/obj/item/weapon/circuitboard/rdconsole,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) +"hB" = (/obj/structure/frame/computer,/obj/item/weapon/circuitboard/computer/rdconsole,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) "hC" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/space) "hD" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless,/area/space) "hE" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/space) @@ -416,7 +416,7 @@ "ia" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/arrival) "ib" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/derelict/arrival) "ic" = (/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) -"id" = (/obj/structure/rack,/obj/item/weapon/circuitboard/smes,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"id" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/smes,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "ie" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/space) "if" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel{dir = 4; icon_state = "chapel"},/area/derelict/medical/chapel) "ig" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel) @@ -522,7 +522,7 @@ "kp" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) "kq" = (/obj/structure/door_assembly/door_assembly_mai{name = "airlock assembly"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) "kr" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/bridge/ai_upload) -"ks" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/constructable_frame/machine_frame,/obj/item/weapon/stock_parts/console_screen,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) +"ks" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/frame/machine,/obj/item/weapon/stock_parts/console_screen,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) "kt" = (/obj/item/weapon/wirecutters,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) "ku" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) "kv" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/item/drone_shell,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) @@ -571,7 +571,7 @@ "lo" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/item/wallframe/apc,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) "lp" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "lq" = (/obj/item/weapon/ore/slag,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"lr" = (/obj/structure/rack,/obj/item/weapon/circuitboard/smes,/turf/open/floor/plasteel,/area/derelict/bridge/access) +"lr" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/smes,/turf/open/floor/plasteel,/area/derelict/bridge/access) "ls" = (/obj/item/weapon/stock_parts/matter_bin,/turf/open/space,/area/space) "lt" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "derelictsolar"; name = "Derelict Solar Array"},/turf/open/floor/plasteel/airless,/area/solar/derelict_aft) "lu" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/space,/area/space) @@ -659,7 +659,7 @@ "mY" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) "mZ" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) "na" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/bridge/ai_upload) -"nb" = (/obj/structure/rack,/obj/item/weapon/circuitboard/microwave,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"nb" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/microwave,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "nc" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload) "nd" = (/turf/open/space,/area/derelict/bridge/ai_upload) "ne" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{icon_state = "intact"; dir = 5},/turf/open/floor/plating/airless,/area/derelict/atmospherics) @@ -669,11 +669,11 @@ "ni" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) "nj" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/atmospherics) "nk" = (/obj/machinery/power/apc{dir = 8; name = "Worn-out APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"nl" = (/obj/structure/computerframe,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) +"nl" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) "nm" = (/obj/machinery/door/airlock/external,/turf/open/floor/plasteel,/area/derelict/solar_control) "nn" = (/turf/open/floor/plasteel{icon_state = "damaged2"; initial_gas_mix = "TEMP=2.7"},/area/derelict/atmospherics) "no" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/atmospherics) -"np" = (/obj/structure/rack,/obj/item/weapon/circuitboard/cryo_tube,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"np" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/cryo_tube,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "nq" = (/obj/machinery/light,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) "nr" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) "ns" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) @@ -712,7 +712,7 @@ "nZ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/space) "oa" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) "ob" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"oc" = (/obj/structure/computerframe,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) +"oc" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) "od" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/arrival) "oe" = (/obj/machinery/light{dir = 1},/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/derelict/medical) "of" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/space,/area/space) @@ -745,7 +745,7 @@ "oG" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel) "oH" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical) "oI" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel{dir = 1; icon_state = "chapel"},/area/derelict/medical/chapel) -"oJ" = (/obj/structure/computerframe,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) +"oJ" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) "oK" = (/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) "oL" = (/obj/structure/closet/wardrobe/genetics_white,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel/airless{icon_state = "white"},/area/derelict/medical) "oM" = (/obj/machinery/door/airlock/command{name = "Teleporter Room"},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) @@ -780,7 +780,7 @@ "pp" = (/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) "pq" = (/obj/structure/window/fulltile,/turf/open/space,/area/derelict/atmospherics) "pr" = (/obj/structure/closet/wardrobe/orange,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/weapon/shovel/spade,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/airless,/area/space) -"ps" = (/obj/structure/computerframe,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) +"ps" = (/obj/structure/frame/computer,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) "pt" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/atmospherics) "pu" = (/obj/structure/lattice,/turf/open/space,/area/derelict/atmospherics) "pv" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) @@ -835,7 +835,7 @@ "qu" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_aft) "qv" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/space,/area/solar/derelict_aft) "qw" = (/obj/item/device/aicard,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload) -"qx" = (/obj/structure/rack,/obj/item/weapon/circuitboard/solar_control,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) +"qx" = (/obj/structure/rack,/obj/item/weapon/circuitboard/computer/solar_control,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) "qy" = (/obj/item/ammo_casing/a357{pixel_x = -5},/obj/item/ammo_casing/a357{pixel_x = 5; pixel_y = 6},/obj/item/ammo_casing/a357,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) "qz" = (/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) "qA" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) diff --git a/_maps/map_files/generic/z6.dmm b/_maps/map_files/generic/z6.dmm index 82a78c133c6..8044fc094c2 100644 --- a/_maps/map_files/generic/z6.dmm +++ b/_maps/map_files/generic/z6.dmm @@ -186,7 +186,7 @@ "dD" = (/turf/open/floor/plasteel{dir = 4; icon_state = "warning"},/area/awaymission/BMPship/Aft) "dE" = (/obj/structure/table,/obj/item/weapon/paper{info = "I'm no scientist, but judging from the design and components, it seems to be some kind of teleporter. This thing is gonna be worth a lot of cash to the right man. The boys are excited, as they have every right to be, and I've let them crack into that case of beer we got. I normally wouldn't allow such a thing, but this is a time for celebration! It's not like a couple drinks will hurt anything."; name = "Captain's log entry"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) "dF" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) -"dG" = (/obj/structure/computerframe{anchored = 1},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) +"dG" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) "dH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/awaymission/BMPship/Fore) "dI" = (/obj/machinery/hydroponics,/turf/open/floor/plasteel{icon_state = "green"; dir = 10},/area/awaymission/BMPship/Midship) "dJ" = (/turf/open/floor/plasteel{icon_state = "green"},/area/awaymission/BMPship/Midship) @@ -344,8 +344,8 @@ "gF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/awaymission/BMPship/Aft) "gG" = (/turf/closed/wall/shuttle{icon_state = "swallc2"},/area/awaymission/BMPship/Aft) "gH" = (/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/turf/closed/wall/shuttle{dir = 3; icon_state = "swall_f10"; layer = 2},/area/awaymission/BMPship/Fore) -"gI" = (/obj/structure/computerframe{anchored = 1},/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Fore) -"gJ" = (/obj/structure/computerframe{anchored = 1},/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) +"gI" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plating/airless{icon_state = "panelscorched"},/area/awaymission/BMPship/Fore) +"gJ" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plating/airless{icon_state = "platingdmg1"},/area/awaymission/BMPship/Fore) "gK" = (/obj/machinery/light/small,/turf/open/floor/plasteel{icon_state = "bar"},/area/awaymission/BMPship/Midship) "gL" = (/turf/open/floor/plasteel{icon_state = "platingdmg3"},/area/awaymission/BMPship/Midship) "gM" = (/turf/open/floor/plasteel{icon_state = "platingdmg1"},/area/awaymission/BMPship/Midship) diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 68cc017cfd3..253c17eeeb0 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -25,16 +25,20 @@ /obj/machinery/sleeper/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - component_parts += new /obj/item/weapon/circuitboard/sleeper(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/sleeper(null) + B.apply_default_parts(src) update_icon() +/obj/item/weapon/circuitboard/machine/sleeper + name = "circuit board (Sleeper)" + build_path = /obj/machinery/sleeper + origin_tech = "programming=3;biotech=2;engineering=3;materials=3" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/console_screen = 2) + /obj/machinery/sleeper/RefreshParts() var/E for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) @@ -186,4 +190,4 @@ /obj/machinery/sleeper/old - icon_state = "oldpod" + icon_state = "oldpod" diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index 393f2f4f600..529e77bf55a 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -32,14 +32,19 @@ var/list/announcement_systems = list() announcement_systems += src radio = new /obj/item/device/radio/headset/ai(src) - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/announcement_system(null) - component_parts += new /obj/item/stack/cable_coil(null, 2) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/announcement_system(null) + B.apply_default_parts(src) update_icon() +/obj/item/weapon/circuitboard/machine/announcement_system + name = "circuit board (Announcement System)" + build_path = /obj/machinery/announcement_system + origin_tech = "programming=3;bluespace=2" + req_components = list( + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/console_screen = 1) + /obj/machinery/announcement_system/update_icon() if(is_operational()) icon_state = (panel_open ? "AAS_On_Open" : "AAS_On") @@ -178,4 +183,4 @@ var/list/announcement_systems = list() /obj/machinery/announcement_system/emag_act() if(!emagged) emagged = 1 - act_up() + act_up() \ No newline at end of file diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 5e03d4b9dc3..4014ad407ec 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -47,20 +47,23 @@ /obj/machinery/autolathe/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/autolathe(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) materials = new /datum/material_container(src, list(MAT_METAL=1, MAT_GLASS=1)) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/autolathe(null) + B.apply_default_parts(src) wires = new /datum/wires/autolathe(src) files = new /datum/research/autolathe(src) matching_designs = list() +/obj/item/weapon/circuitboard/machine/autolathe + name = "circuit board (Autolathe)" + build_path = /obj/machinery/autolathe + origin_tech = "engineering=2;programming=2" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 3, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/console_screen = 1) + /obj/machinery/autolathe/Destroy() qdel(wires) wires = null diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 604fb26bed0..b6a576e12f5 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -25,16 +25,8 @@ /obj/machinery/clonepod/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/clonepod(null) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(null) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/clonepod(null) + B.apply_default_parts(src) /obj/machinery/clonepod/RefreshParts() speed_coeff = 0 @@ -47,6 +39,16 @@ if(heal_level > 100) heal_level = 100 +/obj/item/weapon/circuitboard/machine/clonepod + name = "circuit board (Clone Pod)" + build_path = /obj/machinery/clonepod + origin_tech = "programming=3;biotech=3" + req_components = list( + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/scanning_module = 2, + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/weapon/stock_parts/console_screen = 1) + //The return of data disks?? Just for transferring between genetics machine/cloning machine. //TO-DO: Make the genetics machine accept them. /obj/item/weapon/disk/data diff --git a/code/game/machinery/computer/Operating.dm b/code/game/machinery/computer/Operating.dm index ea7a6a1c704..0989ee50a59 100644 --- a/code/game/machinery/computer/Operating.dm +++ b/code/game/machinery/computer/Operating.dm @@ -3,7 +3,7 @@ desc = "Used to monitor the vitals of a patient during surgery." icon_screen = "crew" icon_keyboard = "med_key" - circuit = /obj/item/weapon/circuitboard/operating + circuit = /obj/item/weapon/circuitboard/computer/operating var/mob/living/carbon/human/patient = null var/obj/structure/table/optable/table = null diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 69c53cf517b..962fb705408 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -4,7 +4,7 @@ req_access = list(access_captain, access_robotics, access_heads) var/mob/living/silicon/ai/occupier = null var/active = 0 - circuit = /obj/item/weapon/circuitboard/aifixer + circuit = /obj/item/weapon/circuitboard/computer/aifixer icon_keyboard = "tech_key" icon_screen = "ai-fixer" diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 9c036f6cbf0..1b50cab81af 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -44,7 +44,7 @@ // If it's a generic arcade machine, pick a random arcade // circuit board for it and make the new machine if(!circuit) - var/choice = pick(subtypesof(/obj/item/weapon/circuitboard/arcade)) + var/choice = pick(subtypesof(/obj/item/weapon/circuitboard/computer/arcade)) var/obj/item/weapon/circuitboard/CB = new choice() new CB.build_path(loc, CB) qdel(src) @@ -93,7 +93,7 @@ name = "arcade machine" desc = "Does not support Pinball." icon_state = "arcade" - circuit = /obj/item/weapon/circuitboard/arcade/battle + circuit = /obj/item/weapon/circuitboard/computer/arcade/battle var/enemy_name = "Space Villian" var/temp = "Winners don't use space drugs" //Temporary message, for attack messages, etc var/player_hp = 30 //Player health/attack points @@ -327,7 +327,7 @@ name = "The Orion Trail" desc = "Learn how our ancestors got to Orion, and have fun in the process!" icon_state = "arcade" - circuit = /obj/item/weapon/circuitboard/arcade/orion_trail + circuit = /obj/item/weapon/circuitboard/computer/arcade/orion_trail var/busy = 0 //prevent clickspam that allowed people to ~speedrun~ the game. var/engine = 0 var/hull = 0 diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm index e6f306e03c8..6d3587d5507 100644 --- a/code/game/machinery/computer/atmos_alert.dm +++ b/code/game/machinery/computer/atmos_alert.dm @@ -1,7 +1,7 @@ /obj/machinery/computer/atmos_alert name = "atmospheric alert console" desc = "Used to monitor the station's air alarms." - circuit = /obj/item/weapon/circuitboard/atmos_alert + circuit = /obj/item/weapon/circuitboard/computer/atmos_alert icon_screen = "alert:0" icon_keyboard = "atmos_key" var/list/priority_alarms = list() diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index 32e3ae5c38e..3f40993ffad 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -68,7 +68,7 @@ desc = "Used to monitor the station's atmospherics sensors." icon_screen = "tank" icon_keyboard = "atmos_key" - circuit = /obj/item/weapon/circuitboard/atmos_control + circuit = /obj/item/weapon/circuitboard/computer/atmos_control var/frequency = 1441 var/list/sensors = list( @@ -146,7 +146,7 @@ var/input_tag var/output_tag frequency = 1441 - circuit = /obj/item/weapon/circuitboard/atmos_control/tank + circuit = /obj/item/weapon/circuitboard/computer/atmos_control/tank var/list/input_info var/list/output_info diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 620b7f37e6a..73717cf3f7c 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -1,292 +1,10 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 - -/obj/structure/computerframe - density = 1 - anchored = 0 - name = "computer-frame" - icon = 'icons/obj/stock_parts.dmi' +/obj/structure/frame/computer + name = "computer frame" icon_state = "0" - var/state = 0 - var/obj/item/weapon/circuitboard/circuit = null -// weight = 1.0E8 - -/obj/item/weapon/circuitboard - density = 0 anchored = 0 - w_class = 2 - name = "circuit board" - icon = 'icons/obj/module.dmi' - icon_state = "id_mod" - item_state = "electronic" - origin_tech = "programming=2" - materials = list(MAT_GLASS=200) - var/frequency = null - var/build_path = null - var/board_type = "computer" - var/list/req_components = null - var/powernet = null - var/list/records = null - var/frame_desc = null + state = 0 -/obj/item/weapon/circuitboard/turbine_computer - name = "circuit board (Turbine Computer)" - build_path = /obj/machinery/computer/turbine_computer - origin_tech = "programming=4;engineering=4;powerstorage=4" -/obj/item/weapon/circuitboard/telesci_console - name = "circuit board (Telescience Console)" - build_path = /obj/machinery/computer/telescience - origin_tech = "programming=3;bluespace=2" -/obj/item/weapon/circuitboard/message_monitor - name = "circuit board (Message Monitor)" - build_path = /obj/machinery/computer/message_monitor - origin_tech = "programming=3" -/obj/item/weapon/circuitboard/security - name = "circuit board (Security)" - build_path = /obj/machinery/computer/security -/obj/item/weapon/circuitboard/aicore - name = "circuit board (AI core)" - origin_tech = "programming=4;biotech=2" - board_type = "other" -/obj/item/weapon/circuitboard/aiupload - name = "circuit board (AI Upload)" - build_path = /obj/machinery/computer/upload/ai - origin_tech = "programming=4" -/obj/item/weapon/circuitboard/borgupload - name = "circuit board (Cyborg Upload)" - build_path = /obj/machinery/computer/upload/borg - origin_tech = "programming=4" -/obj/item/weapon/circuitboard/med_data - name = "circuit board (Medical Records Console)" - build_path = /obj/machinery/computer/med_data -/obj/item/weapon/circuitboard/pandemic - name = "circuit board (PanD.E.M.I.C. 2200)" - build_path = /obj/machinery/computer/pandemic - origin_tech = "programming=2;biotech=2" -/obj/item/weapon/circuitboard/scan_consolenew - name = "circuit board (DNA Machine)" - build_path = /obj/machinery/computer/scan_consolenew - origin_tech = "programming=2;biotech=2" -/obj/item/weapon/circuitboard/communications - name = "circuit board (Communications)" - build_path = /obj/machinery/computer/communications - origin_tech = "programming=2;magnets=2" - var/lastTimeUsed = 0 - -/obj/item/weapon/circuitboard/card - name = "circuit board (ID Console)" - build_path = /obj/machinery/computer/card -/obj/item/weapon/circuitboard/card/centcom - name = "circuit board (Centcom ID Console)" - build_path = /obj/machinery/computer/card/centcom -/obj/item/weapon/circuitboard/card/minor - name = "circuit board (Department Management Console)" - build_path = /obj/machinery/computer/card/minor - var/target_dept = 1 -//obj/item/weapon/circuitboard/shield -// name = "Circuit board (Shield Control)" -// build_path = /obj/machinery/computer/stationshield -/obj/item/weapon/circuitboard/teleporter - name = "circuit board (Teleporter)" - build_path = /obj/machinery/computer/teleporter - origin_tech = "programming=2;bluespace=2" -/obj/item/weapon/circuitboard/secure_data - name = "circuit board (Security Records Console)" - build_path = /obj/machinery/computer/secure_data -/obj/item/weapon/circuitboard/stationalert - name = "circuit board (Station Alerts)" - build_path = /obj/machinery/computer/station_alert -/*/obj/item/weapon/circuitboard/atmospheresiphonswitch - name = "circuit board (Atmosphere siphon control)" - build_path = /obj/machinery/computer/atmosphere/siphonswitch*/ -/obj/item/weapon/circuitboard/atmos_control - name = "circuit board (Atmospheric Monitor)" - build_path = /obj/machinery/computer/atmos_control -/obj/item/weapon/circuitboard/atmos_control/tank - name = "circuit board (Tank Control)" - build_path = /obj/machinery/computer/atmos_control/tank - origin_tech = "programming=2;engineering=3;materials=2" -/obj/item/weapon/circuitboard/atmos_alert - name = "circuit board (Atmospheric Alert)" - build_path = /obj/machinery/computer/atmos_alert -/obj/item/weapon/circuitboard/pod - name = "circuit board (Massdriver control)" - build_path = /obj/machinery/computer/pod -/obj/item/weapon/circuitboard/robotics - name = "circuit board (Robotics Control)" - build_path = /obj/machinery/computer/robotics - origin_tech = "programming=3" -/obj/item/weapon/circuitboard/cloning - name = "circuit board (Cloning)" - build_path = /obj/machinery/computer/cloning - origin_tech = "programming=3;biotech=3" -/obj/item/weapon/circuitboard/arcade/battle - name = "circuit board (Arcade Battle)" - build_path = /obj/machinery/computer/arcade/battle - origin_tech = "programming=1" -/obj/item/weapon/circuitboard/arcade/orion_trail - name = "circuit board (Orion Trail)" - build_path = /obj/machinery/computer/arcade/orion_trail -/obj/item/weapon/circuitboard/turbine_control - name = "circuit board (Turbine control)" - build_path = /obj/machinery/computer/turbine_computer -/obj/item/weapon/circuitboard/solar_control - name = "circuit board (Solar Control)" //name fixed 250810 - build_path = /obj/machinery/power/solar_control - origin_tech = "programming=2;powerstorage=2" -/obj/item/weapon/circuitboard/powermonitor - name = "circuit board (Power Monitor)" //name fixed 250810 - build_path = /obj/machinery/computer/monitor -/obj/item/weapon/circuitboard/olddoor - name = "circuit board (DoorMex)" - build_path = /obj/machinery/computer/pod/old -/obj/item/weapon/circuitboard/syndicatedoor - name = "circuit board (ProComp Executive)" - build_path = /obj/machinery/computer/pod/old/syndicate -/obj/item/weapon/circuitboard/swfdoor - name = "circuit board (Magix)" - build_path = /obj/machinery/computer/pod/old/swf -/obj/item/weapon/circuitboard/prisoner - name = "circuit board (Prisoner Management Console)" - build_path = /obj/machinery/computer/prisoner -/obj/item/weapon/circuitboard/rdconsole - name = "circuit board (RD Console)" - build_path = /obj/machinery/computer/rdconsole/core -/obj/item/weapon/circuitboard/mecha_control - name = "circuit board (Exosuit Control Console)" - build_path = /obj/machinery/computer/mecha -/obj/item/weapon/circuitboard/rdservercontrol - name = "circuit board (R&D Server Control)" - build_path = /obj/machinery/computer/rdservercontrol -/obj/item/weapon/circuitboard/crew - name = "circuit board (Crew Monitoring Console)" - build_path = /obj/machinery/computer/crew - origin_tech = "programming=3;biotech=2;magnets=2" -/obj/item/weapon/circuitboard/mech_bay_power_console - name = "circuit board (Mech Bay Power Control Console)" - build_path = /obj/machinery/computer/mech_bay_power_console - origin_tech = "programming=2;powerstorage=3" -/obj/item/weapon/circuitboard/cargo - name = "circuit board (Supply Console)" - build_path = /obj/machinery/computer/cargo - origin_tech = "programming=3" - var/contraband = 0 - var/emagged = 0 -/obj/item/weapon/circuitboard/cargo/request - name = "circuit board (Supply Request Console)" - build_path = /obj/machinery/computer/cargo/request -/obj/item/weapon/circuitboard/operating - name = "circuit board (Operating Computer)" - build_path = /obj/machinery/computer/operating - origin_tech = "programming=2;biotech=2" -/obj/item/weapon/circuitboard/mining - name = "circuit board (Outpost Status Display)" - build_path = /obj/machinery/computer/security/mining -/obj/item/weapon/circuitboard/comm_monitor - name = "circuit board (Telecommunications Monitor)" - build_path = /obj/machinery/computer/telecomms/monitor - origin_tech = "programming=3" -/obj/item/weapon/circuitboard/comm_server - name = "circuit board (Telecommunications Server Monitor)" - build_path = /obj/machinery/computer/telecomms/server - origin_tech = "programming=3" -/obj/item/weapon/circuitboard/shuttle - name = "circuit board (Shuttle)" - build_path = /obj/machinery/computer/shuttle - var/shuttleId - var/possible_destinations = "" -/obj/item/weapon/circuitboard/labor_shuttle - name = "circuit board (Labor Shuttle)" - build_path = /obj/machinery/computer/shuttle/labor -/obj/item/weapon/circuitboard/labor_shuttle/one_way - name = "circuit board (Prisoner Shuttle Console)" - build_path = /obj/machinery/computer/shuttle/labor/one_way -/obj/item/weapon/circuitboard/ferry - name = "circuit board (Transport Ferry)" - build_path = /obj/machinery/computer/shuttle/ferry -/obj/item/weapon/circuitboard/ferry/request - name = "circuit board (Transport Ferry Console)" - build_path = /obj/machinery/computer/shuttle/ferry/request -/obj/item/weapon/circuitboard/mining_shuttle - name = "circuit board (Mining Shuttle)" - build_path = /obj/machinery/computer/shuttle/mining -/obj/item/weapon/circuitboard/white_ship - name = "circuit board (White Ship)" - build_path = /obj/machinery/computer/shuttle/white_ship -/obj/item/weapon/circuitboard/holodeck// Not going to let people get this, but it's just here for future - name = "circuit board (Holodeck Control)" - build_path = /obj/machinery/computer/holodeck - origin_tech = "programming=4" -/obj/item/weapon/circuitboard/aifixer - name = "circuit board (AI Integrity Restorer)" - build_path = /obj/machinery/computer/aifixer - origin_tech = "programming=3;biotech=2" -/*/obj/item/weapon/circuitboard/prison_shuttle - name = "circuit board (Prison Shuttle)" - build_path = /obj/machinery/computer/prison_shuttle*/ -/obj/item/weapon/circuitboard/slot_machine - name = "circuit board (Slot Machine)" - build_path = /obj/machinery/computer/slot_machine - origin_tech = "programming=1" -/obj/item/weapon/circuitboard/libraryconsole - name = "circuit board (Library Visitor Console)" - build_path = /obj/machinery/computer/libraryconsole - origin_tech = "programming=1" - -/obj/item/weapon/circuitboard/card/minor/attackby(obj/item/I, mob/user, params) - if(istype(I,/obj/item/device/multitool)) - var/list/dept_list = list("general","security","medical","science","engineering") - var/choice = input("Currently set to [dept_list[target_dept]] personnel database. Changing to:","Multitool-Circuitboard interface") as null|anything in dept_list - if(choice) - target_dept = dept_list.Find(choice) - return - -/obj/item/weapon/circuitboard/cargo/attackby(obj/item/I, mob/user, params) - if(istype(I,/obj/item/device/multitool)) - if(!emagged) - contraband = !contraband - user << "Receiver spectrum set to [contraband ? "Broad" : "Standard"]." - else - user << "The spectrum chip is unresponsive." - if(istype(I,/obj/item/weapon/card/emag)) - if(!emagged) - contraband = TRUE - emagged = TRUE - user << "You adjust [src]'s routing and receiver spectrum, unlocking special supplies and contraband." - -/obj/item/weapon/circuitboard/rdconsole/attackby(obj/item/I, mob/user, params) - if(istype(I,/obj/item/weapon/screwdriver)) - if(build_path == /obj/machinery/computer/rdconsole/core) - name = "circuit board (RD Console - Robotics)" - build_path = /obj/machinery/computer/rdconsole/robotics - user << "Access protocols successfully updated." - else - name = "circuit board (RD Console)" - build_path = /obj/machinery/computer/rdconsole/core - user << "Defaulting access protocols." - return - -/obj/item/weapon/circuitboard/libraryconsole/attackby(obj/item/I, mob/user, params) - if(istype(I,/obj/item/weapon/screwdriver)) - if(build_path == /obj/machinery/computer/libraryconsole/bookmanagement) - name = "circuit board (Library Visitor Console)" - build_path = /obj/machinery/computer/libraryconsole - user << "Defaulting access protocols." - else - name = "circuit board (Book Inventory Management Console)" - build_path = /obj/machinery/computer/libraryconsole/bookmanagement - user << "Access protocols successfully updated." - return - -/obj/item/weapon/circuitboard/shuttle/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/device/multitool)) - var/chosen_id = round(input(usr, "Choose an ID number (-1 for reset):", "Input an Integer", null) as num|null) - if(chosen_id >= 0) - shuttleId = chosen_id - else - shuttleId = initial(shuttleId) - return - -/obj/structure/computerframe/attackby(obj/item/P, mob/user, params) +/obj/structure/frame/computer/attackby(obj/item/P, mob/user, params) add_fingerprint(user) switch(state) if(0) @@ -319,19 +37,19 @@ user << "You unfasten the frame." anchored = 0 state = 0 - if(istype(P, /obj/item/weapon/circuitboard) && !circuit) - var/obj/item/weapon/circuitboard/B = P - if(B.board_type == "computer") - if(!user.drop_item()) - return - playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You place the circuit board inside the frame." - icon_state = "1" - circuit = P - circuit.add_fingerprint(user) - P.loc = null - else - user << "This frame does not accept circuit boards of this type!" + if(istype(P, /obj/item/weapon/circuitboard/computer) && !circuit) + if(!user.drop_item()) + return + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + user << "You place the circuit board inside the frame." + icon_state = "1" + circuit = P + circuit.add_fingerprint(user) + P.loc = null + + else if(istype(P, /obj/item/weapon/circuitboard) && !circuit) + user << "This frame does not accept circuit boards of this type!" + if(istype(P, /obj/item/weapon/screwdriver) && circuit) playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) user << "You screw the circuit board into place." @@ -402,3 +120,291 @@ var/obj/B = new src.circuit.build_path (src.loc, circuit) transfer_fingerprints_to(B) qdel(src) + + + +/obj/item/weapon/circuitboard + name = "circuit board" + icon = 'icons/obj/module.dmi' + icon_state = "id_mod" + item_state = "electronic" + origin_tech = "programming=2" + materials = list(MAT_GLASS=1000) + w_class = 2 + var/build_path = null + +/obj/item/weapon/circuitboard/computer/turbine_computer + name = "circuit board (Turbine Computer)" + build_path = /obj/machinery/computer/turbine_computer + origin_tech = "programming=4;engineering=4;powerstorage=4" +/obj/item/weapon/circuitboard/computer/telesci_console + name = "circuit board (Telescience Console)" + build_path = /obj/machinery/computer/telescience + origin_tech = "programming=3;bluespace=2" +/obj/item/weapon/circuitboard/computer/message_monitor + name = "circuit board (Message Monitor)" + build_path = /obj/machinery/computer/message_monitor + origin_tech = "programming=3" +/obj/item/weapon/circuitboard/computer/security + name = "circuit board (Security Cameras)" + build_path = /obj/machinery/computer/security + +/obj/item/weapon/circuitboard/computer/aiupload + name = "circuit board (AI Upload)" + build_path = /obj/machinery/computer/upload/ai + origin_tech = "programming=4" +/obj/item/weapon/circuitboard/computer/borgupload + name = "circuit board (Cyborg Upload)" + build_path = /obj/machinery/computer/upload/borg + origin_tech = "programming=4" +/obj/item/weapon/circuitboard/computer/med_data + name = "circuit board (Medical Records Console)" + build_path = /obj/machinery/computer/med_data +/obj/item/weapon/circuitboard/computer/pandemic + name = "circuit board (PanD.E.M.I.C. 2200)" + build_path = /obj/machinery/computer/pandemic + origin_tech = "programming=2;biotech=2" +/obj/item/weapon/circuitboard/computer/scan_consolenew + name = "circuit board (DNA Machine)" + build_path = /obj/machinery/computer/scan_consolenew + origin_tech = "programming=2;biotech=2" +/obj/item/weapon/circuitboard/computer/communications + name = "circuit board (Communications)" + build_path = /obj/machinery/computer/communications + origin_tech = "programming=2;magnets=2" + var/lastTimeUsed = 0 + +/obj/item/weapon/circuitboard/computer/card + name = "circuit board (ID Console)" + build_path = /obj/machinery/computer/card +/obj/item/weapon/circuitboard/computer/card/centcom + name = "circuit board (Centcom ID Console)" + build_path = /obj/machinery/computer/card/centcom + +/obj/item/weapon/circuitboard/computer/card/minor + name = "circuit board (Department Management Console)" + build_path = /obj/machinery/computer/card/minor + var/target_dept = 1 + var/list/dept_list = list("General","Security","Medical","Science","Engineering") + +/obj/item/weapon/circuitboard/computer/card/minor/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weapon/screwdriver)) + target_dept = (target_dept == dept_list.len) ? 1 : (target_dept + 1) + user << "You set the board to \"[dept_list[target_dept]]\"." + else + return ..() + +/obj/item/weapon/circuitboard/computer/card/minor/examine(user) + ..() + user << "Currently set to \"[dept_list[target_dept]]\"." + +//obj/item/weapon/circuitboard/computer/shield +// name = "Circuit board (Shield Control)" +// build_path = /obj/machinery/computer/stationshield +/obj/item/weapon/circuitboard/computer/teleporter + name = "circuit board (Teleporter)" + build_path = /obj/machinery/computer/teleporter + origin_tech = "programming=2;bluespace=2" +/obj/item/weapon/circuitboard/computer/secure_data + name = "circuit board (Security Records Console)" + build_path = /obj/machinery/computer/secure_data +/obj/item/weapon/circuitboard/computer/stationalert + name = "circuit board (Station Alerts)" + build_path = /obj/machinery/computer/station_alert +/*/obj/item/weapon/circuitboard/computer/atmospheresiphonswitch + name = "circuit board (Atmosphere siphon control)" + build_path = /obj/machinery/computer/atmosphere/siphonswitch*/ +/obj/item/weapon/circuitboard/computer/atmos_control + name = "circuit board (Atmospheric Monitor)" + build_path = /obj/machinery/computer/atmos_control +/obj/item/weapon/circuitboard/computer/atmos_control/tank + name = "circuit board (Tank Control)" + build_path = /obj/machinery/computer/atmos_control/tank + origin_tech = "programming=2;engineering=3;materials=2" +/obj/item/weapon/circuitboard/computer/atmos_alert + name = "circuit board (Atmospheric Alert)" + build_path = /obj/machinery/computer/atmos_alert +/obj/item/weapon/circuitboard/computer/pod + name = "circuit board (Massdriver control)" + build_path = /obj/machinery/computer/pod +/obj/item/weapon/circuitboard/computer/robotics + name = "circuit board (Robotics Control)" + build_path = /obj/machinery/computer/robotics + origin_tech = "programming=3" +/obj/item/weapon/circuitboard/computer/cloning + name = "circuit board (Cloning)" + build_path = /obj/machinery/computer/cloning + origin_tech = "programming=3;biotech=3" +/obj/item/weapon/circuitboard/computer/arcade/battle + name = "circuit board (Arcade Battle)" + build_path = /obj/machinery/computer/arcade/battle + origin_tech = "programming=1" +/obj/item/weapon/circuitboard/computer/arcade/orion_trail + name = "circuit board (Orion Trail)" + build_path = /obj/machinery/computer/arcade/orion_trail +/obj/item/weapon/circuitboard/computer/turbine_control + name = "circuit board (Turbine control)" + build_path = /obj/machinery/computer/turbine_computer +/obj/item/weapon/circuitboard/computer/solar_control + name = "circuit board (Solar Control)" //name fixed 250810 + build_path = /obj/machinery/power/solar_control + origin_tech = "programming=2;powerstorage=2" +/obj/item/weapon/circuitboard/computer/powermonitor + name = "circuit board (Power Monitor)" //name fixed 250810 + build_path = /obj/machinery/computer/monitor +/obj/item/weapon/circuitboard/computer/olddoor + name = "circuit board (DoorMex)" + build_path = /obj/machinery/computer/pod/old +/obj/item/weapon/circuitboard/computer/syndicatedoor + name = "circuit board (ProComp Executive)" + build_path = /obj/machinery/computer/pod/old/syndicate +/obj/item/weapon/circuitboard/computer/swfdoor + name = "circuit board (Magix)" + build_path = /obj/machinery/computer/pod/old/swf +/obj/item/weapon/circuitboard/computer/prisoner + name = "circuit board (Prisoner Management Console)" + build_path = /obj/machinery/computer/prisoner + + +/obj/item/weapon/circuitboard/computer/rdconsole + name = "circuit board (RD Console)" + build_path = /obj/machinery/computer/rdconsole/core + +/obj/item/weapon/circuitboard/computer/rdconsole/attackby(obj/item/I, mob/user, params) + if(istype(I,/obj/item/weapon/screwdriver)) + if(build_path == /obj/machinery/computer/rdconsole/core) + name = "circuit board (RD Console - Robotics)" + build_path = /obj/machinery/computer/rdconsole/robotics + user << "Access protocols successfully updated." + else + name = "circuit board (RD Console)" + build_path = /obj/machinery/computer/rdconsole/core + user << "Defaulting access protocols." + else + return ..() + +/obj/item/weapon/circuitboard/computer/mecha_control + name = "circuit board (Exosuit Control Console)" + build_path = /obj/machinery/computer/mecha +/obj/item/weapon/circuitboard/computer/rdservercontrol + name = "circuit board (R&D Server Control)" + build_path = /obj/machinery/computer/rdservercontrol +/obj/item/weapon/circuitboard/computer/crew + name = "circuit board (Crew Monitoring Console)" + build_path = /obj/machinery/computer/crew + origin_tech = "programming=3;biotech=2;magnets=2" +/obj/item/weapon/circuitboard/computer/mech_bay_power_console + name = "circuit board (Mech Bay Power Control Console)" + build_path = /obj/machinery/computer/mech_bay_power_console + origin_tech = "programming=2;powerstorage=3" + +/obj/item/weapon/circuitboard/computer/cargo + name = "circuit board (Supply Console)" + build_path = /obj/machinery/computer/cargo + origin_tech = "programming=3" + var/contraband = 0 + var/emagged = 0 + +/obj/item/weapon/circuitboard/computer/cargo/attackby(obj/item/I, mob/user, params) + if(istype(I,/obj/item/device/multitool)) + if(!emagged) + contraband = !contraband + user << "Receiver spectrum set to [contraband ? "Broad" : "Standard"]." + else + user << "The spectrum chip is unresponsive." + else if(istype(I,/obj/item/weapon/card/emag)) + if(!emagged) + contraband = TRUE + emagged = TRUE + user << "You adjust [src]'s routing and receiver spectrum, unlocking special supplies and contraband." + else + return ..() + + +/obj/item/weapon/circuitboard/computer/cargo/request + name = "circuit board (Supply Request Console)" + build_path = /obj/machinery/computer/cargo/request + +/obj/item/weapon/circuitboard/computer/operating + name = "circuit board (Operating Computer)" + build_path = /obj/machinery/computer/operating + origin_tech = "programming=2;biotech=2" +/obj/item/weapon/circuitboard/computer/mining + name = "circuit board (Outpost Status Display)" + build_path = /obj/machinery/computer/security/mining +/obj/item/weapon/circuitboard/computer/comm_monitor + name = "circuit board (Telecommunications Monitor)" + build_path = /obj/machinery/computer/telecomms/monitor + origin_tech = "programming=3" +/obj/item/weapon/circuitboard/computer/comm_server + name = "circuit board (Telecommunications Server Monitor)" + build_path = /obj/machinery/computer/telecomms/server + origin_tech = "programming=3" + +/obj/item/weapon/circuitboard/computer/shuttle + name = "circuit board (Shuttle)" + build_path = /obj/machinery/computer/shuttle + var/shuttleId + var/possible_destinations = "" + +/obj/item/weapon/circuitboard/computer/shuttle/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/device/multitool)) + var/chosen_id = round(input(usr, "Choose an ID number (-1 for reset):", "Input an Integer", null) as num|null) + if(chosen_id >= 0) + shuttleId = chosen_id + else + shuttleId = initial(shuttleId) + else + return ..() + +/obj/item/weapon/circuitboard/computer/labor_shuttle + name = "circuit board (Labor Shuttle)" + build_path = /obj/machinery/computer/shuttle/labor +/obj/item/weapon/circuitboard/computer/labor_shuttle/one_way + name = "circuit board (Prisoner Shuttle Console)" + build_path = /obj/machinery/computer/shuttle/labor/one_way +/obj/item/weapon/circuitboard/computer/ferry + name = "circuit board (Transport Ferry)" + build_path = /obj/machinery/computer/shuttle/ferry +/obj/item/weapon/circuitboard/computer/ferry/request + name = "circuit board (Transport Ferry Console)" + build_path = /obj/machinery/computer/shuttle/ferry/request +/obj/item/weapon/circuitboard/computer/mining_shuttle + name = "circuit board (Mining Shuttle)" + build_path = /obj/machinery/computer/shuttle/mining +/obj/item/weapon/circuitboard/computer/white_ship + name = "circuit board (White Ship)" + build_path = /obj/machinery/computer/shuttle/white_ship +/obj/item/weapon/circuitboard/computer/holodeck// Not going to let people get this, but it's just here for future + name = "circuit board (Holodeck Control)" + build_path = /obj/machinery/computer/holodeck + origin_tech = "programming=4" +/obj/item/weapon/circuitboard/computer/aifixer + name = "circuit board (AI Integrity Restorer)" + build_path = /obj/machinery/computer/aifixer + origin_tech = "programming=3;biotech=2" +/*/obj/item/weapon/circuitboard/computer/prison_shuttle + name = "circuit board (Prison Shuttle)" + build_path = /obj/machinery/computer/prison_shuttle*/ +/obj/item/weapon/circuitboard/computer/slot_machine + name = "circuit board (Slot Machine)" + build_path = /obj/machinery/computer/slot_machine + origin_tech = "programming=1" + +/obj/item/weapon/circuitboard/computer/libraryconsole + name = "circuit board (Library Visitor Console)" + build_path = /obj/machinery/computer/libraryconsole + origin_tech = "programming=1" + +/obj/item/weapon/circuitboard/computer/libraryconsole/attackby(obj/item/I, mob/user, params) + if(istype(I,/obj/item/weapon/screwdriver)) + if(build_path == /obj/machinery/computer/libraryconsole/bookmanagement) + name = "circuit board (Library Visitor Console)" + build_path = /obj/machinery/computer/libraryconsole + user << "Defaulting access protocols." + else + name = "circuit board (Book Inventory Management Console)" + build_path = /obj/machinery/computer/libraryconsole/bookmanagement + user << "Access protocols successfully updated." + else + return ..() \ No newline at end of file diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 0bdb44931a3..c13ba3af2c4 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -3,7 +3,7 @@ desc = "Used to access the various cameras on the station." icon_screen = "cameras" icon_keyboard = "security_key" - circuit = /obj/item/weapon/circuitboard/security + circuit = /obj/item/weapon/circuitboard/computer/security var/last_pic = 1 var/list/network = list("SS13") var/mapping = 0//For the overview file, interesting bit of code. @@ -177,4 +177,4 @@ icon_screen = "mining" icon_keyboard = "mining_key" network = list("MINE") - circuit = "/obj/item/weapon/circuitboard/mining" + circuit = /obj/item/weapon/circuitboard/computer/mining diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index df02f37b5cb..0bbbeda6165 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -10,7 +10,7 @@ var/time_last_changed_position = 0 icon_screen = "id" icon_keyboard = "id_key" req_one_access = list(access_heads, access_change_ids) - circuit = /obj/item/weapon/circuitboard/card + circuit = /obj/item/weapon/circuitboard/computer/card var/obj/item/weapon/card/id/scan = null var/obj/item/weapon/card/id/modify = null var/authenticated = 0 @@ -483,18 +483,18 @@ var/time_last_changed_position = 0 /obj/machinery/computer/card/centcom name = "\improper Centcom identification console" - circuit = /obj/item/weapon/circuitboard/card/centcom + circuit = /obj/item/weapon/circuitboard/computer/card/centcom req_access = list(access_cent_captain) /obj/machinery/computer/card/minor name = "department management console" desc = "You can use this to change ID's for specific departments." icon_screen = "idminor" - circuit = /obj/item/weapon/circuitboard/card/minor + circuit = /obj/item/weapon/circuitboard/computer/card/minor /obj/machinery/computer/card/minor/New() ..() - var/obj/item/weapon/circuitboard/card/minor/typed_circuit = circuit + var/obj/item/weapon/circuitboard/computer/card/minor/typed_circuit = circuit if(target_dept) typed_circuit.target_dept = target_dept else diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index fc252a50ab4..dc0b949a187 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -4,7 +4,7 @@ desc = "Used to clone people and manage DNA." icon_screen = "dna" icon_keyboard = "med_key" - circuit = /obj/item/weapon/circuitboard/cloning + circuit = /obj/item/weapon/circuitboard/computer/cloning req_access = list(access_heads) //Only used for record deletion right now. var/obj/machinery/dna_scannernew/scanner = null //Linked scanner. For scanning. var/obj/machinery/clonepod/pod1 = null //Linked cloning pod. diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index e2a77542cee..4416ed3e8e3 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -9,7 +9,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 icon_screen = "comm" icon_keyboard = "tech_key" req_access = list(access_heads) - circuit = /obj/item/weapon/circuitboard/communications + circuit = /obj/item/weapon/circuitboard/computer/communications var/authenticated = 0 var/auth_id = "Unknown" //Who is currently logged in? var/list/messagetitle = list() @@ -57,7 +57,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if(!href_list["operation"]) return - var/obj/item/weapon/circuitboard/communications/CM = circuit + var/obj/item/weapon/circuitboard/computer/communications/CM = circuit switch(href_list["operation"]) // main interface if("main") @@ -611,5 +611,5 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 return ..() /obj/machinery/computer/communications/proc/overrideCooldown() - var/obj/item/weapon/circuitboard/communications/CM = circuit + var/obj/item/weapon/circuitboard/computer/communications/CM = circuit CM.lastTimeUsed = 0 \ No newline at end of file diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 1ae36a3a43d..35ca17a8641 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -7,7 +7,7 @@ use_power = 1 idle_power_usage = 300 active_power_usage = 300 - var/obj/item/weapon/circuitboard/circuit = null // if circuit==null, computer can't disassembly + var/obj/item/weapon/circuitboard/computer/circuit = null // if circuit==null, computer can't disassembly var/processing = 0 var/brightness_on = 2 var/icon_keyboard = "generic_key" @@ -18,9 +18,8 @@ ..(location) if(C && istype(C)) circuit = C - else - if(circuit) - circuit = new circuit(null) + else if(circuit) + circuit = new circuit(null) power_change() update_icon() @@ -85,7 +84,7 @@ user << " You start to disconnect the monitor..." if(do_after(user, 20/I.toolspeed, target = src)) deconstruction() - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) + var/obj/structure/frame/computer/A = new /obj/structure/frame/computer( src.loc ) A.circuit = circuit A.anchored = 1 circuit = null diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index ad992d3aba3..ab820645505 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -6,7 +6,7 @@ use_power = 1 idle_power_usage = 250 active_power_usage = 500 - circuit = "/obj/item/weapon/circuitboard/crew" + circuit = /obj/item/weapon/circuitboard/computer/crew /obj/machinery/computer/crew/attack_ai(mob/user) if(stat & (BROKEN|NOPOWER)) diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index e2a29dfe536..597b90129a7 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -22,7 +22,7 @@ icon_screen = "dna" icon_keyboard = "med_key" density = 1 - circuit = /obj/item/weapon/circuitboard/scan_consolenew + circuit = /obj/item/weapon/circuitboard/computer/scan_consolenew var/radduration = 2 var/radstrength = 1 diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm index 292fc7163b6..3c066205601 100644 --- a/code/game/machinery/computer/law.dm +++ b/code/game/machinery/computer/law.dm @@ -33,7 +33,7 @@ /obj/machinery/computer/upload/ai name = "\improper AI upload console" desc = "Used to upload laws to the AI." - circuit = /obj/item/weapon/circuitboard/aiupload + circuit = /obj/item/weapon/circuitboard/computer/aiupload /obj/machinery/computer/upload/ai/attack_hand(mob/user) if(..()) @@ -57,7 +57,7 @@ /obj/machinery/computer/upload/borg name = "cyborg upload console" desc = "Used to upload laws to Cyborgs." - circuit = /obj/item/weapon/circuitboard/borgupload + circuit = /obj/item/weapon/circuitboard/computer/borgupload /obj/machinery/computer/upload/borg/attack_hand(mob/user) if(..()) diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index b3e94a26be5..51c0c3e8264 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -6,7 +6,7 @@ icon_screen = "medcomp" icon_keyboard = "med_key" req_one_access = list(access_medical, access_forensics_lockers) - circuit = /obj/item/weapon/circuitboard/med_data + circuit = /obj/item/weapon/circuitboard/computer/med_data var/obj/item/weapon/card/id/scan = null var/authenticated = null var/rank = null diff --git a/code/game/machinery/computer/message.dm b/code/game/machinery/computer/message.dm index cab29214d2e..8a74f5f09ee 100644 --- a/code/game/machinery/computer/message.dm +++ b/code/game/machinery/computer/message.dm @@ -8,7 +8,7 @@ name = "message monitor console" desc = "Used to Monitor the crew's messages, that are sent via PDA. Can also be used to view Request Console messages." icon_screen = "comm_logs" - circuit = /obj/item/weapon/circuitboard/message_monitor + circuit = /obj/item/weapon/circuitboard/computer/message_monitor //Server linked to. var/obj/machinery/message_server/linkedServer = null //Sparks effect - For emag diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index ab5a89b97e9..8a837a5af5a 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -4,7 +4,6 @@ icon_screen = "explosive" icon_keyboard = "security_key" req_access = list(access_brig) - circuit = "/obj/item/weapon/circuitboard/prisoner" var/id = 0 var/temp = null var/status = 0 @@ -12,7 +11,7 @@ var/stop = 0 var/screen = 0 // 0 - No Access Denied, 1 - Access allowed var/obj/item/weapon/card/id/prisoner/inserted_id - circuit = /obj/item/weapon/circuitboard/prisoner + circuit = /obj/item/weapon/circuitboard/computer/prisoner /obj/machinery/computer/prisoner/attack_hand(mob/user) if(..()) diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index a71bb8d789a..1348622a0ff 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -7,7 +7,7 @@ icon_screen = "robot" icon_keyboard = "rd_key" req_access = list(access_robotics) - circuit = /obj/item/weapon/circuitboard/robotics + circuit = /obj/item/weapon/circuitboard/computer/robotics var/temp = null /obj/machinery/computer/robotics/proc/can_control(mob/user, mob/living/silicon/robot/R) diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index a1bf31d718e..cd113558b7c 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -6,7 +6,7 @@ icon_screen = "security" icon_keyboard = "security_key" req_one_access = list(access_security, access_forensics_lockers) - circuit = /obj/item/weapon/circuitboard/secure_data + circuit = /obj/item/weapon/circuitboard/computer/secure_data var/obj/item/weapon/card/id/scan = null var/authenticated = null var/rank = null diff --git a/code/game/machinery/computer/station_alert.dm b/code/game/machinery/computer/station_alert.dm index 70442f0dbbc..b6e5672e8f3 100644 --- a/code/game/machinery/computer/station_alert.dm +++ b/code/game/machinery/computer/station_alert.dm @@ -3,7 +3,7 @@ desc = "Used to access the station's automated alert system." icon_screen = "alert:0" icon_keyboard = "atmos_key" - circuit = /obj/item/weapon/circuitboard/stationalert + circuit = /obj/item/weapon/circuitboard/computer/stationalert var/alarms = list("Fire" = list(), "Atmosphere" = list(), "Power" = list()) /obj/machinery/computer/station_alert/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 1732f1ea7fb..cc914875006 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -1,67 +1,78 @@ -//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31 - -/obj/machinery/constructable_frame //Made into a seperate type to make future revisions easier. - name = "machine frame" +/obj/structure/frame + name = "frame" icon = 'icons/obj/stock_parts.dmi' icon_state = "box_0" density = 1 anchored = 1 - use_power = 0 var/obj/item/weapon/circuitboard/circuit = null + var/state = 1 + +/obj/structure/frame/examine(user) + ..() + if(circuit) + user << "It has \a [circuit] installed." + +/obj/structure/frame/machine + name = "machine frame" var/list/components = null var/list/req_components = null var/list/req_component_names = null // user-friendly names of components - var/state = 1 -// unfortunately, we have to instance the objects really quickly to get the names -// fortunately, this is only called once when the board is added and the items are immediately GC'd -// and none of the parts do much in their constructors -/obj/machinery/constructable_frame/proc/update_namelist() +/obj/structure/frame/machine/examine(user) + ..() + if(state == 3 && req_components && req_component_names) + var/hasContent = 0 + var/requires = "It requires" + + for(var/i = 1 to req_components.len) + var/tname = req_components[i] + var/amt = req_components[tname] + if(amt == 0) + continue + var/use_and = i == req_components.len + requires += "[(hasContent ? (use_and ? ", and" : ",") : "")] [amt] [amt == 1 ? req_component_names[tname] : "[req_component_names[tname]]\s"]" + hasContent = 1 + + if(hasContent) + user << requires + "." + else + user << "It does not require any more components." + +/obj/structure/frame/machine/proc/update_namelist() if(!req_components) return req_component_names = new() for(var/tname in req_components) - var/path = tname - var/obj/O = new path() - req_component_names[tname] = O.name + if(ispath(tname, /obj/item/stack)) + var/obj/item/stack/S = tname + var/singular_name = initial(S.singular_name) + if(singular_name) + req_component_names[tname] = singular_name + else + req_component_names[tname] = initial(S.name) + else + var/obj/O = tname + req_component_names[tname] = initial(O.name) -/obj/machinery/constructable_frame/proc/get_req_components_amt() +/obj/structure/frame/machine/proc/get_req_components_amt() var/amt = 0 for(var/path in req_components) amt += req_components[path] return amt -// update description of required components remaining -/obj/machinery/constructable_frame/proc/update_req_desc() - if(!req_components || !req_component_names) - return - - var/hasContent = 0 - desc = "Requires" - for(var/i = 1 to req_components.len) - var/tname = req_components[i] - var/amt = req_components[tname] - if(amt == 0) - continue - var/use_and = i == req_components.len - desc += "[(hasContent ? (use_and ? ", and" : ",") : "")] [amt] [amt == 1 ? req_component_names[tname] : "[req_component_names[tname]]\s"]" - hasContent = 1 - - if(!hasContent) - desc = "Does not require any more components." - else - desc += "." - -/obj/machinery/constructable_frame/machine_frame/attackby(obj/item/P, mob/user, params) +/obj/structure/frame/machine/attackby(obj/item/P, mob/user, params) if(P.crit_fail) user << "This part is faulty, you cannot add this to the machine!" return switch(state) if(1) - if(istype(P, /obj/item/weapon/circuitboard)) + if(istype(P, /obj/item/weapon/circuitboard/machine)) user << "The frame needs wiring first!" - return + + else if(istype(P, /obj/item/weapon/circuitboard)) + user << "This frame does not accept circuit boards of this type!" + if(istype(P, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = P if(C.get_amount() >= 5) @@ -102,26 +113,26 @@ user << "You [anchored ? "un" : ""]secure [name]." anchored = !anchored - if(istype(P, /obj/item/weapon/circuitboard)) + if(istype(P, /obj/item/weapon/circuitboard/machine)) if(!anchored) user << "The frame needs to be secured first!" return - var/obj/item/weapon/circuitboard/B = P - if(B.board_type == "machine") - if(!user.drop_item()) - return - playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You add the circuit board to the frame." - circuit = P - P.loc = src - icon_state = "box_2" - state = 3 - components = list() - req_components = circuit.req_components.Copy() - update_namelist() - update_req_desc() - else - user << "This frame does not accept circuit boards of this type!" + var/obj/item/weapon/circuitboard/machine/B = P + if(!user.drop_item()) + return + playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) + user << "You add the circuit board to the frame." + circuit = B + B.loc = src + icon_state = "box_2" + state = 3 + components = list() + req_components = B.req_components.Copy() + update_namelist() + + else if(istype(P, /obj/item/weapon/circuitboard)) + user << "This frame does not accept circuit boards of this type!" + if(istype(P, /obj/item/weapon/wirecutters)) playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) user << "You remove the cables." @@ -191,31 +202,35 @@ for(var/obj/item/weapon/stock_parts/part in added_components) components += part user << "[part.name] applied." - replacer.play_rped_sound() - - update_req_desc() + if(added_components.len) + replacer.play_rped_sound() return if(istype(P, /obj/item) && get_req_components_amt()) for(var/I in req_components) if(istype(P, I) && (req_components[I] > 0)) - if(istype(P, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/CP = P - var/cable_color = CP.item_color - if(CP.use(1)) - var/obj/item/stack/cable_coil/CC = new /obj/item/stack/cable_coil(src, 1, cable_color) - components += CC - req_components[I]-- - update_req_desc() - else - user << "You need more cable!" + if(istype(P, /obj/item/stack)) + var/obj/item/stack/S = P + var/used_amt = min(round(S.get_amount()), req_components[I]) + + if(used_amt && S.use(used_amt)) + var/obj/item/stack/NS = locate(S.merge_type) in components + + if(!NS) + NS = new S.merge_type(src, used_amt) + components += NS + else + NS.add(used_amt) + + req_components[I] -= used_amt + user << "You add [P] to [src]." return if(!user.drop_item()) break + user << "You add [P] to [src]." P.loc = src components += P req_components[I]-- - update_req_desc() return 1 user << "You cannot add that to the machine!" return 0 @@ -224,318 +239,61 @@ //Machine Frame Circuit Boards /*Common Parts: Parts List: Ignitor, Timer, Infra-red laser, Infra-red sensor, t_scanner, Capacitor, Valve, sensor unit, micro-manipulator, console screen, beaker, Microlaser, matter bin, power cells. -Note: Once everything is added to the public areas, will add m_amt and g_amt to circuit boards since autolathe won't be able -to destroy them and players will be able to make replacements. */ -/obj/item/weapon/circuitboard/vendor - name = "circuit board (Booze-O-Mat Vendor)" - build_path = /obj/machinery/vending/boozeomat - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/vending_refill/boozeomat = 3) +/obj/item/weapon/circuitboard/machine + var/list/req_components = null - var/list/names_paths = list(/obj/machinery/vending/boozeomat = "Booze-O-Mat", - /obj/machinery/vending/coffee = "Solar's Best Hot Drinks", - /obj/machinery/vending/snack = "Getmore Chocolate Corp", - /obj/machinery/vending/cola = "Robust Softdrinks", - /obj/machinery/vending/cigarette = "ShadyCigs Deluxe", - /obj/machinery/vending/autodrobe = "AutoDrobe") +/obj/item/weapon/circuitboard/machine/proc/apply_default_parts(obj/machinery/M) + if(!req_components) + return -/obj/item/weapon/circuitboard/vendor/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/weapon/screwdriver)) - set_type(pick(names_paths), user) + M.component_parts = list(src) + loc = null + + for(var/comp_path in req_components) + var/comp_amt = req_components[comp_path] + if(!comp_amt) + continue + + if(ispath(comp_path, /obj/item/stack)) + M.component_parts += new comp_path(null, comp_amt) + else + for(var/i in 1 to comp_amt) + M.component_parts += new comp_path(null) + + M.RefreshParts() -/obj/item/weapon/circuitboard/vendor/proc/set_type(typepath, mob/user) - build_path = typepath - name = "circuit board ([names_paths[build_path]] Vendor)" - user << "You set the board to [names_paths[build_path]]." - req_components = list(text2path("/obj/item/weapon/vending_refill/[copytext("[build_path]", 24)]") = 3) //Never before has i used a method as horrible as this one, im so sorry - -/obj/item/weapon/circuitboard/announcement_system - name = "circuit board (Announcement System)" - build_path = /obj/machinery/announcement_system - board_type = "machine" - origin_tech = "programming=3;bluespace=2" - req_components = list( - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/smes +/obj/item/weapon/circuitboard/machine/smes name = "circuit board (SMES)" build_path = /obj/machinery/power/smes - board_type = "machine" origin_tech = "programming=4;powerstorage=5;engineering=5" req_components = list( /obj/item/stack/cable_coil = 5, /obj/item/weapon/stock_parts/cell = 5, /obj/item/weapon/stock_parts/capacitor = 1) -/obj/item/weapon/circuitboard/emitter - name = "circuit board (Emitter)" - build_path = /obj/machinery/power/emitter - board_type = "machine" - origin_tech = "programming=4;powerstorage=5;engineering=5" - req_components = list( - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/manipulator = 1) - -/obj/item/weapon/circuitboard/power_compressor - name = "circuit board (Power Compressor)" - build_path = /obj/machinery/power/compressor - board_type = "machine" - origin_tech = "programming=4;powerstorage=5;engineering=4" - req_components = list( - /obj/item/stack/cable_coil = 5, - /obj/item/weapon/stock_parts/manipulator = 6) - -/obj/item/weapon/circuitboard/power_turbine - name = "circuit board (Power Turbine)" - build_path = /obj/machinery/power/turbine - board_type = "machine" - origin_tech = "programming=4;powerstorage=4;engineering=5" - req_components = list( - /obj/item/stack/cable_coil = 5, - /obj/item/weapon/stock_parts/capacitor = 6) - -/obj/item/weapon/circuitboard/mech_recharger - name = "circuit board (Mechbay Recharger)" - build_path = /obj/machinery/mech_bay_recharge_port - board_type = "machine" - origin_tech = "programming=3;powerstorage=4;engineering=4" - req_components = list( - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/capacitor = 5) - -/obj/item/weapon/circuitboard/teleporter_hub +/obj/item/weapon/circuitboard/machine/teleporter_hub name = "circuit board (Teleporter Hub)" build_path = /obj/machinery/teleport/hub - board_type = "machine" origin_tech = "programming=3;engineering=5;bluespace=5;materials=4" req_components = list( /obj/item/weapon/ore/bluespace_crystal = 3, /obj/item/weapon/stock_parts/matter_bin = 1) -/obj/item/weapon/circuitboard/teleporter_station +/obj/item/weapon/circuitboard/machine/teleporter_station name = "circuit board (Teleporter Station)" build_path = /obj/machinery/teleport/station - board_type = "machine" origin_tech = "programming=4;engineering=4;bluespace=4" req_components = list( /obj/item/weapon/ore/bluespace_crystal = 2, /obj/item/weapon/stock_parts/capacitor = 2, /obj/item/weapon/stock_parts/console_screen = 1) -/obj/item/weapon/circuitboard/telesci_pad - name = "circuit board (Telepad)" - build_path = /obj/machinery/telepad - board_type = "machine" - origin_tech = "programming=4;engineering=3;materials=3;bluespace=4" - req_components = list( - /obj/item/weapon/ore/bluespace_crystal = 2, - /obj/item/weapon/stock_parts/capacitor = 1, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/sleeper - name = "circuit board (Sleeper)" - build_path = /obj/machinery/sleeper - board_type = "machine" - origin_tech = "programming=3;biotech=2;engineering=3;materials=3" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/console_screen = 2) - -/obj/item/weapon/circuitboard/cryo_tube - name = "circuit board (Cryotube)" - build_path = /obj/machinery/atmospherics/components/unary/cryo_cell - board_type = "machine" - origin_tech = "programming=4;biotech=3;engineering=4" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/console_screen = 4) - -/obj/item/weapon/circuitboard/thermomachine - name = "circuit board (Thermomachine)" - desc = "You can use a screwdriver to switch between heater and freezer." - board_type = "machine" - origin_tech = "programming=3;plasmatech=3" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 2, - /obj/item/weapon/stock_parts/micro_laser = 2, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/thermomachine/attackby(obj/item/I, mob/user, params) - var/obj/item/weapon/circuitboard/freezer = /obj/item/weapon/circuitboard/thermomachine/freezer - var/obj/item/weapon/circuitboard/heater = /obj/item/weapon/circuitboard/thermomachine/heater - var/obj/item/weapon/circuitboard/newtype - - if(istype(I, /obj/item/weapon/screwdriver)) - var/new_setting = "Heater" - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - if(build_path == initial(heater.build_path)) - newtype = freezer - new_setting = "Freezer" - else - newtype = heater - name = initial(newtype.name) - build_path = initial(newtype.build_path) - user << "You change the circuitboard setting to \"[new_setting]\"." - -/obj/item/weapon/circuitboard/thermomachine/freezer - name = "circuit board (Freezer)" - build_path = /obj/machinery/atmospherics/components/unary/thermomachine/freezer - -/obj/item/weapon/circuitboard/thermomachine/heater - name = "circuit board (Heater)" - build_path = /obj/machinery/atmospherics/components/unary/thermomachine/heater - -/obj/item/weapon/circuitboard/space_heater - name = "circuit board (Space Heater)" - build_path = /obj/machinery/space_heater - board_type = "machine" - origin_tech = "programming=2;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/capacitor = 1, - /obj/item/stack/cable_coil = 3) - -/obj/item/weapon/circuitboard/biogenerator - name = "circuit board (Biogenerator)" - build_path = /obj/machinery/biogenerator - board_type = "machine" - origin_tech = "programming=3;biotech=2;materials=3" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/hydroponics - name = "circuit board (Hydroponics Tray)" - build_path = /obj/machinery/hydroponics/constructable - board_type = "machine" - origin_tech = "programming=1;biotech=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 2, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/microwave - name = "circuit board (Microwave)" - build_path = /obj/machinery/microwave - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/gibber - name = "circuit board (Gibber)" - build_path = /obj/machinery/gibber - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1) - -/obj/item/weapon/circuitboard/tesla_coil - name = "circuit board (Tesla Coil)" - build_path = /obj/machinery/power/tesla_coil - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/capacitor = 1) - -/obj/item/weapon/circuitboard/grounding_rod - name = "circuit board (Grounding Rod)" - build_path = /obj/machinery/power/grounding_rod - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/capacitor = 1) - -/obj/item/weapon/circuitboard/processor - name = "circuit board (Food processor)" - build_path = /obj/machinery/processor - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1) - -/obj/item/weapon/circuitboard/recycler - name = "circuit board (Recycler)" - build_path = /obj/machinery/recycler - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1) - -/obj/item/weapon/circuitboard/seed_extractor - name = "circuit board (Seed Extractor)" - build_path = /obj/machinery/seed_extractor - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1) - -/obj/item/weapon/circuitboard/smartfridge - name = "circuit board (Smartfridge)" - build_path = /obj/machinery/smartfridge - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1) - -/obj/item/weapon/circuitboard/smartfridge/New(loc, new_type) - if(new_type) - build_path = new_type - -/obj/item/weapon/circuitboard/smartfridge/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/weapon/screwdriver)) - var/list/fridges = list(/obj/machinery/smartfridge = "default", - /obj/machinery/smartfridge/drinks = "drinks", - /obj/machinery/smartfridge/extract = "slimes", - /obj/machinery/smartfridge/chemistry = "chems", - /obj/machinery/smartfridge/chemistry/virology = "viruses") - - var/position = fridges.Find(build_path, fridges) - position = (position == fridges.len) ? 1 : (position + 1) - build_path = fridges[position] - user << "You set the board to [fridges[build_path]]." - -/obj/item/weapon/circuitboard/monkey_recycler - name = "circuit board (Monkey Recycler)" - build_path = /obj/machinery/monkey_recycler - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1) - -/obj/item/weapon/circuitboard/holopad - name = "circuit board (AI Holopad)" - build_path = /obj/machinery/hologram/holopad - board_type = "machine" - origin_tech = "programming=1" - req_components = list( - /obj/item/weapon/stock_parts/capacitor = 1) - -/obj/item/weapon/circuitboard/chem_dispenser +/obj/item/weapon/circuitboard/machine/chem_dispenser name = "circuit board (Portable Chem Dispenser)" build_path = /obj/machinery/chem_dispenser/constructable - board_type = "machine" origin_tech = "materials=4;engineering=4;programming=4;plasmatech=3;biotech=3" req_components = list( /obj/item/weapon/stock_parts/matter_bin = 2, @@ -544,269 +302,12 @@ to destroy them and players will be able to make replacements. /obj/item/weapon/stock_parts/console_screen = 1, /obj/item/weapon/stock_parts/cell = 1) -/obj/item/weapon/circuitboard/chem_master - name = "circuit board (Chem Master 2999)" - build_path = /obj/machinery/chem_master/constructable - board_type = "machine" - origin_tech = "materials=2;programming=2;biotech=1" +/obj/item/weapon/circuitboard/machine/telesci_pad + name = "circuit board (Telepad)" + build_path = /obj/machinery/telepad + origin_tech = "programming=4;engineering=3;materials=3;bluespace=4" req_components = list( - /obj/item/weapon/reagent_containers/glass/beaker = 2, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/chem_heater - name = "circuit board (Chemical Heater)" - build_path = /obj/machinery/chem_heater - board_type = "machine" - origin_tech = "materials=2;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -//Almost the same recipe as destructive analyzer to give people choices. -/obj/item/weapon/circuitboard/experimentor - name = "circuit board (E.X.P.E.R.I-MENTOR)" - build_path = /obj/machinery/r_n_d/experimentor - board_type = "machine" - origin_tech = "magnets=1;engineering=1;programming=1;biotech=1;bluespace=2" - req_components = list( - /obj/item/weapon/stock_parts/scanning_module = 1, - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/weapon/stock_parts/micro_laser = 2) - - -/obj/item/weapon/circuitboard/destructive_analyzer - name = "circuit board (Destructive Analyzer)" - build_path = /obj/machinery/r_n_d/destructive_analyzer - board_type = "machine" - origin_tech = "magnets=2;engineering=2;programming=2" - req_components = list( - /obj/item/weapon/stock_parts/scanning_module = 1, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/micro_laser = 1) - -/obj/item/weapon/circuitboard/autolathe - name = "circuit board (Autolathe)" - build_path = /obj/machinery/autolathe - board_type = "machine" - origin_tech = "engineering=2;programming=2" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 3, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/protolathe - name = "circuit board (Protolathe)" - build_path = /obj/machinery/r_n_d/protolathe - board_type = "machine" - origin_tech = "engineering=2;programming=2" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 2, - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/weapon/reagent_containers/glass/beaker = 2) - - -/obj/item/weapon/circuitboard/circuit_imprinter - name = "circuit board (Circuit Imprinter)" - build_path = /obj/machinery/r_n_d/circuit_imprinter - board_type = "machine" - origin_tech = "engineering=2;programming=2" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/reagent_containers/glass/beaker = 2) - -/obj/item/weapon/circuitboard/pacman - name = "circuit board (PACMAN-type Generator)" - build_path = /obj/machinery/power/port_gen/pacman - board_type = "machine" - origin_tech = "programming=3;powerstorage=3;plasmatech=3;engineering=3" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/capacitor = 1) - -/obj/item/weapon/circuitboard/pacman/super - name = "circuit board (SUPERPACMAN-type Generator)" - build_path = /obj/machinery/power/port_gen/pacman/super - origin_tech = "programming=3;powerstorage=4;engineering=4" - -/obj/item/weapon/circuitboard/pacman/mrs - name = "circuit board (MRSPACMAN-type Generator)" - build_path = "/obj/machinery/power/port_gen/pacman/mrs" - origin_tech = "programming=3;powerstorage=5;engineering=5" - -obj/item/weapon/circuitboard/rdserver - name = "circuit board (R&D Server)" - build_path = /obj/machinery/r_n_d/server - board_type = "machine" - origin_tech = "programming=3" - req_components = list( - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/scanning_module = 1) - -/obj/item/weapon/circuitboard/mechfab - name = "circuit board (Exosuit Fabricator)" - build_path = /obj/machinery/mecha_part_fabricator - board_type = "machine" - origin_tech = "programming=3;engineering=3" - req_components = list( - /obj/item/weapon/stock_parts/matter_bin = 2, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/clonepod - name = "circuit board (Clone Pod)" - build_path = /obj/machinery/clonepod - board_type = "machine" - origin_tech = "programming=3;biotech=3" - req_components = list( - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/scanning_module = 2, - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/weapon/stock_parts/console_screen = 1) - -/obj/item/weapon/circuitboard/clonescanner - name = "circuit board (Cloning Scanner)" - build_path = /obj/machinery/dna_scannernew - board_type = "machine" - origin_tech = "programming=2;biotech=2" - req_components = list( - /obj/item/weapon/stock_parts/scanning_module = 1, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/console_screen = 1, - /obj/item/stack/cable_coil = 2,) - -/obj/item/weapon/circuitboard/cyborgrecharger - name = "circuit board (Cyborg Recharger)" - build_path = /obj/machinery/recharge_station - board_type = "machine" - origin_tech = "powerstorage=3;engineering=3" - req_components = list( - /obj/item/weapon/stock_parts/capacitor = 2, - /obj/item/weapon/stock_parts/cell = 1, - /obj/item/weapon/stock_parts/manipulator = 1,) - -/obj/item/weapon/circuitboard/recharger - name = "circuit board (Weapon Recharger)" - build_path = /obj/machinery/recharger - board_type = "machine" - origin_tech = "powerstorage=3;engineering=3;materials=4" - req_components = list( - /obj/item/weapon/stock_parts/capacitor = 1,) - -// Telecomms circuit boards: - -/obj/item/weapon/circuitboard/telecomms/receiver - name = "circuit board (Subspace Receiver)" - build_path = /obj/machinery/telecomms/receiver - board_type = "machine" - origin_tech = "programming=2;engineering=2;bluespace=1" - req_components = list( - /obj/item/weapon/stock_parts/subspace/ansible = 1, - /obj/item/weapon/stock_parts/subspace/filter = 1, - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/weapon/stock_parts/micro_laser = 1) - -/obj/item/weapon/circuitboard/telecomms/hub - name = "circuit board (Hub Mainframe)" - build_path = /obj/machinery/telecomms/hub - board_type = "machine" - origin_tech = "programming=2;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/subspace/filter = 2) - -/obj/item/weapon/circuitboard/telecomms/relay - name = "circuit board (Relay Mainframe)" - build_path = /obj/machinery/telecomms/relay - board_type = "machine" - origin_tech = "programming=2;engineering=2;bluespace=2" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/subspace/filter = 2) - -/obj/item/weapon/circuitboard/telecomms/bus - name = "circuit board (Bus Mainframe)" - build_path = /obj/machinery/telecomms/bus - board_type = "machine" - origin_tech = "programming=2;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/weapon/ore/bluespace_crystal = 2, + /obj/item/weapon/stock_parts/capacitor = 1, /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/subspace/filter = 1) - -/obj/item/weapon/circuitboard/telecomms/processor - name = "circuit board (Processor Unit)" - build_path = /obj/machinery/telecomms/processor - board_type = "machine" - origin_tech = "programming=2;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 3, - /obj/item/weapon/stock_parts/subspace/filter = 1, - /obj/item/weapon/stock_parts/subspace/treatment = 2, - /obj/item/weapon/stock_parts/subspace/analyzer = 1, - /obj/item/stack/cable_coil = 2, - /obj/item/weapon/stock_parts/subspace/amplifier = 1) - -/obj/item/weapon/circuitboard/telecomms/server - name = "circuit board (Telecommunication Server)" - build_path = /obj/machinery/telecomms/server - board_type = "machine" - origin_tech = "programming=2;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/subspace/filter = 1) - -/obj/item/weapon/circuitboard/telecomms/broadcaster - name = "circuit board (Subspace Broadcaster)" - build_path = /obj/machinery/telecomms/broadcaster - board_type = "machine" - origin_tech = "programming=2;engineering=2;bluespace=1" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 2, - /obj/item/stack/cable_coil = 1, - /obj/item/weapon/stock_parts/subspace/filter = 1, - /obj/item/weapon/stock_parts/subspace/crystal = 1, - /obj/item/weapon/stock_parts/micro_laser/high = 2) -/obj/item/weapon/circuitboard/ore_redemption - name = "circuit board (Ore Redemption)" - build_path = /obj/machinery/mineral/ore_redemption - board_type = "machine" - origin_tech = "programming=1;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/console_screen = 1, - /obj/item/weapon/stock_parts/matter_bin = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/device/assembly/igniter = 1) - -/obj/item/weapon/circuitboard/mining_equipment_vendor - name = "circuit board (Mining Equipment Vendor)" - build_path = /obj/machinery/mineral/equipment_vendor - board_type = "machine" - origin_tech = "programming=1;engineering=2" - req_components = list( - /obj/item/weapon/stock_parts/console_screen = 1, - /obj/item/weapon/stock_parts/matter_bin = 3) - -/obj/item/weapon/circuitboard/mining_equipment_vendor/golem - name = "circuit board (Golem Ship Equipment Vendor)" - build_path = /obj/machinery/mineral/equipment_vendor/golem - -/obj/item/weapon/circuitboard/plantgenes - name = "circuit board (Plant DNA Manipulator)" - build_path = /obj/machinery/plantgenes - board_type = "machine" - origin_tech = "programming=2;biotech=3" - req_components = list( - /obj/item/weapon/stock_parts/manipulator = 1, - /obj/item/weapon/stock_parts/micro_laser = 1, - /obj/item/weapon/stock_parts/console_screen = 1, - /obj/item/weapon/stock_parts/scanning_module = 1,) \ No newline at end of file + /obj/item/weapon/stock_parts/console_screen = 1) \ No newline at end of file diff --git a/code/game/machinery/dna_scanner.dm b/code/game/machinery/dna_scanner.dm index ed656b1a1df..192ff9df7d1 100644 --- a/code/game/machinery/dna_scanner.dm +++ b/code/game/machinery/dna_scanner.dm @@ -15,16 +15,19 @@ /obj/machinery/dna_scannernew/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/clonescanner(null) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/clonescanner(null) + B.apply_default_parts(src) +/obj/item/weapon/circuitboard/machine/clonescanner + name = "circuit board (Cloning Scanner)" + build_path = /obj/machinery/dna_scannernew + origin_tech = "programming=2;biotech=2" + req_components = list( + /obj/item/weapon/stock_parts/scanning_module = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/console_screen = 1, + /obj/item/stack/cable_coil = 2) /obj/machinery/dna_scannernew/RefreshParts() scan_level = 0 diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index 5d03cc6f5f2..49bf6e7d916 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -45,10 +45,15 @@ var/const/HOLOPAD_MODE = RANGE_BASED /obj/machinery/hologram/holopad/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/holopad(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/holopad(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/holopad + name = "circuit board (AI Holopad)" + build_path = /obj/machinery/hologram/holopad + origin_tech = "programming=1" + req_components = list(/obj/item/weapon/stock_parts/capacitor = 1) + /obj/machinery/hologram/holopad/RefreshParts() var/holograph_range = 4 diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 7751dcb8bb6..77028a43d1a 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -347,7 +347,7 @@ Class Procs: if(.) deconstruction() playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) - var/obj/machinery/constructable_frame/machine_frame/M = new /obj/machinery/constructable_frame/machine_frame(loc) + var/obj/structure/frame/machine/M = new /obj/structure/frame/machine(loc) transfer_fingerprints_to(M) M.state = 2 M.icon_state = "box_1" @@ -396,7 +396,7 @@ Class Procs: var/shouldplaysound = 0 if(istype(W) && component_parts) if(panel_open || W.works_from_distance) - var/obj/item/weapon/circuitboard/CB = locate(/obj/item/weapon/circuitboard) in component_parts + var/obj/item/weapon/circuitboard/machine/CB = locate(/obj/item/weapon/circuitboard/machine) in component_parts var/P if(W.works_from_distance) display_parts(user) diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 3ae2ded9223..fe5d9ac35a8 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -12,10 +12,14 @@ /obj/machinery/recharger/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/recharger() - component_parts += new /obj/item/weapon/stock_parts/capacitor() - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/recharger(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/recharger + name = "circuit board (Weapon Recharger)" + build_path = /obj/machinery/recharger + origin_tech = "powerstorage=3;engineering=3;materials=4" + req_components = list(/obj/item/weapon/stock_parts/capacitor = 1) /obj/machinery/recharger/RefreshParts() for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index ae9a16c729d..d7397ebabf4 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -7,7 +7,6 @@ use_power = 1 idle_power_usage = 5 active_power_usage = 1000 - var/circuitboard = "/obj/item/weapon/circuitboard/cyborgrecharger" req_access = list(access_robotics) var/recharge_speed var/repairs @@ -15,15 +14,19 @@ /obj/machinery/recharge_station/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/cyborgrecharger(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/cell/high(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/cyborgrecharger(null) + B.apply_default_parts(src) update_icon() +/obj/item/weapon/circuitboard/machine/cyborgrecharger + name = "circuit board (Cyborg Recharger)" + build_path = /obj/machinery/recharge_station + origin_tech = "powerstorage=3;engineering=3" + req_components = list( + /obj/item/weapon/stock_parts/capacitor = 2, + /obj/item/weapon/stock_parts/cell = 1, + /obj/item/weapon/stock_parts/manipulator = 1) + /obj/machinery/recharge_station/RefreshParts() recharge_speed = 0 repairs = 0 diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index 542975781f3..a37a0e4d14e 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -17,16 +17,20 @@ var/const/SAFETY_COOLDOWN = 100 var/datum/material_container/materials /obj/machinery/recycler/New() - // On us ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/recycler(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) materials = new /datum/material_container(src, list(MAT_METAL=1, MAT_GLASS=1, MAT_PLASMA=1, MAT_SILVER=1, MAT_GOLD=1, MAT_DIAMOND=1, MAT_URANIUM=1, MAT_BANANIUM=1)) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/recycler(null) + B.apply_default_parts(src) update_icon() +/obj/item/weapon/circuitboard/machine/recycler + name = "circuit board (Recycler)" + build_path = /obj/machinery/recycler + origin_tech = "programming=1" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1) + /obj/machinery/recycler/RefreshParts() var/amt_made = 0 var/mat_mod = 0 diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm index 6322b95731d..a204918d41b 100644 --- a/code/game/machinery/slotmachine.dm +++ b/code/game/machinery/slotmachine.dm @@ -21,7 +21,7 @@ density = 1 use_power = 1 idle_power_usage = 50 - circuit = /obj/item/weapon/circuitboard/slot_machine + circuit = /obj/item/weapon/circuitboard/computer/slot_machine var/money = 3000 //How much money it has CONSUMED var/plays = 0 var/working = 0 diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index b164bc08c20..ed76ccd8768 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -24,14 +24,19 @@ /obj/machinery/space_heater/New() ..() cell = new(src) - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/space_heater(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/stack/cable_coil(null, 3) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/space_heater(null) + B.apply_default_parts(src) update_icon() +/obj/item/weapon/circuitboard/machine/space_heater + name = "circuit board (Space Heater)" + build_path = /obj/machinery/space_heater + origin_tech = "programming=2;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/capacitor = 1, + /obj/item/stack/cable_coil = 3) + /obj/machinery/space_heater/construction() qdel(cell) cell = null diff --git a/code/game/machinery/telecomms/computers/logbrowser.dm b/code/game/machinery/telecomms/computers/logbrowser.dm index 0485e45950e..61598ca32bc 100644 --- a/code/game/machinery/telecomms/computers/logbrowser.dm +++ b/code/game/machinery/telecomms/computers/logbrowser.dm @@ -14,7 +14,7 @@ var/universal_translate = 0 // set to 1 if it can translate nonhuman speech req_access = list(access_tcomsat) - circuit = "/obj/item/weapon/circuitboard/comm_server" + circuit = /obj/item/weapon/circuitboard/computer/comm_server /obj/machinery/computer/telecomms/server/attack_hand(mob/user) if(..()) diff --git a/code/game/machinery/telecomms/computers/telemonitor.dm b/code/game/machinery/telecomms/computers/telemonitor.dm index f7ed78a1315..0fd04b25361 100644 --- a/code/game/machinery/telecomms/computers/telemonitor.dm +++ b/code/game/machinery/telecomms/computers/telemonitor.dm @@ -16,7 +16,7 @@ var/network = "NULL" // the network to probe var/temp = "" // temporary feedback messages - circuit = "/obj/item/weapon/circuitboard/comm_monitor" + circuit = /obj/item/weapon/circuitboard/computer/comm_monitor /obj/machinery/computer/telecomms/monitor/attack_hand(mob/user) if(..()) diff --git a/code/game/machinery/telecomms/machines/broadcaster.dm b/code/game/machinery/telecomms/machines/broadcaster.dm index 91106eae92e..c00bb1a412c 100644 --- a/code/game/machinery/telecomms/machines/broadcaster.dm +++ b/code/game/machinery/telecomms/machines/broadcaster.dm @@ -19,7 +19,6 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept machinetype = 5 /*heatgen = 0 delay = 7*/ - circuitboard = "/obj/item/weapon/circuitboard/telecomms/broadcaster" /obj/machinery/telecomms/broadcaster/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) // Don't broadcast rejected signals @@ -95,16 +94,19 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept /obj/machinery/telecomms/broadcaster/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/broadcaster(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/crystal(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser/high(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser/high(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/broadcaster(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster + name = "circuit board (Subspace Broadcaster)" + build_path = /obj/machinery/telecomms/broadcaster + origin_tech = "programming=2;engineering=2;bluespace=1" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/subspace/filter = 1, + /obj/item/weapon/stock_parts/subspace/crystal = 1, + /obj/item/weapon/stock_parts/micro_laser = 2) /obj/machinery/telecomms/broadcaster/Destroy() // In case message_delay is left on 1, otherwise it won't reset the list and people can't say the same thing twice anymore. diff --git a/code/game/machinery/telecomms/machines/bus.dm b/code/game/machinery/telecomms/machines/bus.dm index 7b747d4d332..6c98596c884 100644 --- a/code/game/machinery/telecomms/machines/bus.dm +++ b/code/game/machinery/telecomms/machines/bus.dm @@ -18,7 +18,6 @@ idle_power_usage = 50 machinetype = 2 //heatgen = 20 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/bus" netspeed = 40 var/change_frequency = 0 @@ -52,14 +51,17 @@ /obj/machinery/telecomms/bus/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/bus(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/bus(null) + B.apply_default_parts(src) +/obj/item/weapon/circuitboard/machine/telecomms/bus + name = "circuit board (Bus Mainframe)" + build_path = /obj/machinery/telecomms/bus + origin_tech = "programming=2;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/subspace/filter = 1) diff --git a/code/game/machinery/telecomms/machines/hub.dm b/code/game/machinery/telecomms/machines/hub.dm index b52adc8cb8d..d5aebbc45fc 100644 --- a/code/game/machinery/telecomms/machines/hub.dm +++ b/code/game/machinery/telecomms/machines/hub.dm @@ -19,7 +19,6 @@ idle_power_usage = 80 machinetype = 7 //heatgen = 40 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/hub" long_range_link = 1 netspeed = 40 @@ -36,16 +35,17 @@ /obj/machinery/telecomms/hub/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/hub(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 2) - RefreshParts() - + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/hub(null) + B.apply_default_parts(src) +/obj/item/weapon/circuitboard/machine/telecomms/hub + name = "circuit board (Hub Mainframe)" + build_path = /obj/machinery/telecomms/hub + origin_tech = "programming=2;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/subspace/filter = 2) diff --git a/code/game/machinery/telecomms/machines/processor.dm b/code/game/machinery/telecomms/machines/processor.dm index 18f8ee4d3e0..71cfc2ec5a6 100644 --- a/code/game/machinery/telecomms/machines/processor.dm +++ b/code/game/machinery/telecomms/machines/processor.dm @@ -18,7 +18,6 @@ machinetype = 3 //heatgen = 100 //delay = 5 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/processor" var/process_mode = 1 // 1 = Uncompress Signals, 0 = Compress Signals /obj/machinery/telecomms/processor/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) @@ -38,22 +37,20 @@ /obj/machinery/telecomms/processor/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/processor(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/treatment(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/treatment(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/analyzer(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/amplifier(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 2) - RefreshParts() - - - + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/processor(null) + B.apply_default_parts(src) +/obj/item/weapon/circuitboard/machine/telecomms/processor + name = "circuit board (Processor Unit)" + build_path = /obj/machinery/telecomms/processor + origin_tech = "programming=2;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 3, + /obj/item/weapon/stock_parts/subspace/filter = 1, + /obj/item/weapon/stock_parts/subspace/treatment = 2, + /obj/item/weapon/stock_parts/subspace/analyzer = 1, + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/subspace/amplifier = 1) //Preset Processors diff --git a/code/game/machinery/telecomms/machines/receiver.dm b/code/game/machinery/telecomms/machines/receiver.dm index b1dc2b53c92..095bb0cfca2 100644 --- a/code/game/machinery/telecomms/machines/receiver.dm +++ b/code/game/machinery/telecomms/machines/receiver.dm @@ -17,7 +17,6 @@ idle_power_usage = 30 machinetype = 1 //heatgen = 0 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/receiver" /obj/machinery/telecomms/receiver/receive_signal(datum/signal/signal) @@ -54,16 +53,18 @@ /obj/machinery/telecomms/receiver/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/receiver(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/ansible(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser/high(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - RefreshParts() - + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/receiver(null) + B.apply_default_parts(src) +/obj/item/weapon/circuitboard/machine/telecomms/receiver + name = "circuit board (Subspace Receiver)" + build_path = /obj/machinery/telecomms/receiver + origin_tech = "programming=2;engineering=2;bluespace=1" + req_components = list( + /obj/item/weapon/stock_parts/subspace/ansible = 1, + /obj/item/weapon/stock_parts/subspace/filter = 1, + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/weapon/stock_parts/micro_laser = 1) diff --git a/code/game/machinery/telecomms/machines/relay.dm b/code/game/machinery/telecomms/machines/relay.dm index 51d76d47255..a11e521eea3 100644 --- a/code/game/machinery/telecomms/machines/relay.dm +++ b/code/game/machinery/telecomms/machines/relay.dm @@ -16,7 +16,6 @@ idle_power_usage = 30 machinetype = 8 //heatgen = 0 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/relay" netspeed = 5 long_range_link = 1 var/broadcasting = 1 @@ -48,16 +47,17 @@ /obj/machinery/telecomms/relay/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/relay(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 2) - RefreshParts() - + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/relay(null) + B.apply_default_parts(src) +/obj/item/weapon/circuitboard/machine/telecomms/relay + name = "circuit board (Relay Mainframe)" + build_path = /obj/machinery/telecomms/relay + origin_tech = "programming=2;engineering=2;bluespace=2" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/subspace/filter = 2) diff --git a/code/game/machinery/telecomms/machines/server.dm b/code/game/machinery/telecomms/machines/server.dm index 9e54644b1f1..b68e618daf3 100644 --- a/code/game/machinery/telecomms/machines/server.dm +++ b/code/game/machinery/telecomms/machines/server.dm @@ -17,7 +17,6 @@ idle_power_usage = 15 machinetype = 4 //heatgen = 50 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/server" var/list/log_entries = list() var/list/stored_names = list() var/list/TrafficActions = list() @@ -35,15 +34,19 @@ /obj/machinery/telecomms/server/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telecomms/server(null) - component_parts += new /obj/item/weapon/stock_parts/subspace/filter(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/telecomms/server(null) + B.apply_default_parts(src) server_radio = new() +/obj/item/weapon/circuitboard/machine/telecomms/server + name = "circuit board (Telecommunication Server)" + build_path = /obj/machinery/telecomms/server + origin_tech = "programming=2;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/subspace/filter = 1) + /obj/machinery/telecomms/server/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) if(signal.data["message"]) diff --git a/code/game/machinery/telecomms/telecomunications.dm b/code/game/machinery/telecomms/telecomunications.dm index 161de617ea5..21aece34bb8 100644 --- a/code/game/machinery/telecomms/telecomunications.dm +++ b/code/game/machinery/telecomms/telecomunications.dm @@ -29,7 +29,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() var/toggled = 1 // Is it toggled on var/on = 1 var/long_range_link = 0 // Can you link it across Z levels or on the otherside of the map? (Relay & Hub) - var/circuitboard = null // string pointing to a circuitboard type var/hide = 0 // Is it a hidden machine? var/listening_level = 0 // 0 = auto set in New() - this is the z level that the machine is listening to. diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index 38c914ecaf5..bb5479c82c9 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -3,7 +3,7 @@ desc = "Used to control a linked teleportation Hub and Station." icon_screen = "teleport" icon_keyboard = "teleport_key" - circuit = "/obj/item/weapon/circuitboard/teleporter" + circuit = /obj/item/weapon/circuitboard/computer/teleporter var/obj/item/device/gps/locked = null var/regime_set = "Teleporter" var/id = null @@ -256,7 +256,7 @@ ..() link_power_station() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/teleporter_hub(null) + component_parts += new /obj/item/weapon/circuitboard/machine/teleporter_hub(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) @@ -364,7 +364,7 @@ /obj/machinery/teleport/station/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/teleporter_station(null) + component_parts += new /obj/item/weapon/circuitboard/machine/teleporter_station(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/weapon/stock_parts/capacitor(null) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 30cce02c00d..55479c7e462 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -58,14 +58,8 @@ ..() wires = new /datum/wires/vending(src) if(refill_canister) //constructable vending machine - component_parts = list() - var/obj/item/weapon/circuitboard/vendor/V = new(null) - V.set_type(type) - component_parts += V - component_parts += new refill_canister - component_parts += new refill_canister - component_parts += new refill_canister - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/vendor(null) + B.apply_default_parts(src) else build_inventory(products) build_inventory(contraband, 1) @@ -78,6 +72,44 @@ last_slogan = world.time + rand(0, slogan_delay) power_change() +/obj/item/weapon/circuitboard/machine/vendor + name = "circuit board (Booze-O-Mat Vendor)" + build_path = /obj/machinery/vending/boozeomat + origin_tech = "programming=1" + req_components = list( + /obj/item/weapon/vending_refill/boozeomat = 3) + + var/list/names_paths = list(/obj/machinery/vending/boozeomat = "Booze-O-Mat", + /obj/machinery/vending/coffee = "Solar's Best Hot Drinks", + /obj/machinery/vending/snack = "Getmore Chocolate Corp", + /obj/machinery/vending/cola = "Robust Softdrinks", + /obj/machinery/vending/cigarette = "ShadyCigs Deluxe", + /obj/machinery/vending/autodrobe = "AutoDrobe") + +/obj/item/weapon/circuitboard/machine/vendor/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weapon/screwdriver)) + var/position = names_paths.Find(build_path) + position = (position == names_paths.len) ? 1 : (position + 1) + var/typepath = names_paths[position] + + user << "You set the board to \"[names_paths[typepath]]\"." + set_type(typepath) + else + return ..() + +/obj/item/weapon/circuitboard/machine/vendor/proc/set_type(var/obj/machinery/vending/typepath) + build_path = typepath + name = "circuit board ([names_paths[build_path]] Vendor)" + req_components = list(initial(typepath.refill_canister) = 3) + +/obj/item/weapon/circuitboard/machine/vendor/apply_default_parts(obj/machinery/M) + for(var/typepath in names_paths) + if(istype(M, typepath)) + set_type(typepath) + break + ..() + + /obj/machinery/vending/Destroy() qdel(wires) wires = null diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index f3f730d4bc7..c3847474e60 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -26,17 +26,18 @@ /obj/machinery/mech_bay_recharge_port/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/mech_recharger(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/mech_recharger(null) + B.apply_default_parts(src) recharging_turf = get_step(loc, dir) +/obj/item/weapon/circuitboard/machine/mech_recharger + name = "circuit board (Mechbay Recharger)" + build_path = /obj/machinery/mech_bay_recharge_port + origin_tech = "programming=3;powerstorage=4;engineering=4" + req_components = list( + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/capacitor = 5) + /obj/machinery/mech_bay_recharge_port/RefreshParts() var/MC for(var/obj/item/weapon/stock_parts/capacitor/C in component_parts) @@ -82,7 +83,7 @@ desc = "Used to control mechbay power ports." icon_screen = "recharge_comp" icon_keyboard = "rd_key" - circuit = /obj/item/weapon/circuitboard/mech_bay_power_console + circuit = /obj/item/weapon/circuitboard/computer/mech_bay_power_console var/obj/machinery/mech_bay_recharge_port/recharge_port /obj/machinery/computer/mech_bay_power_console/attack_ai(mob/user) diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 5748be75618..5de9c676059 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -46,16 +46,20 @@ /obj/machinery/mecha_part_fabricator/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/mechfab(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/mechfab(null) + B.apply_default_parts(src) files = new /datum/research(src) //Setup the research data holder. +/obj/item/weapon/circuitboard/machine/mechfab + name = "circuit board (Exosuit Fabricator)" + build_path = /obj/machinery/mecha_part_fabricator + origin_tech = "programming=3;engineering=3" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 2, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/console_screen = 1) + /obj/machinery/mecha_part_fabricator/RefreshParts() var/T = 0 diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm index ab7641dd681..0fc08605bcf 100644 --- a/code/game/mecha/mecha_control_console.dm +++ b/code/game/mecha/mecha_control_console.dm @@ -4,7 +4,7 @@ icon_screen = "mecha" icon_keyboard = "tech_key" req_access = list(access_robotics) - circuit = "/obj/item/weapon/circuitboard/mecha_control" + circuit = /obj/item/weapon/circuitboard/computer/mecha_control var/list/located = list() var/screen = 0 var/stored_data diff --git a/code/game/mecha/mecha_parts.dm b/code/game/mecha/mecha_parts.dm index c14ddd5470c..40037689a9e 100644 --- a/code/game/mecha/mecha_parts.dm +++ b/code/game/mecha/mecha_parts.dm @@ -321,7 +321,6 @@ icon = 'icons/obj/module.dmi' icon_state = "std_mod" item_state = "electronic" - board_type = "other" flags = CONDUCT force = 5 w_class = 2 diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 84f474abe0a..76cf1ff5a33 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -26,11 +26,12 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \ new/datum/stack_recipe("floor tile", /obj/item/stack/tile/plasteel, 1, 4, 20), \ new/datum/stack_recipe("metal rod", /obj/item/stack/rods, 1, 2, 60), \ null, \ - new/datum/stack_recipe("computer frame", /obj/structure/computerframe, 5, time = 25, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("wall girders", /obj/structure/girder, 2, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("wall girders", /obj/structure/girder, 2, time = 40, one_per_turf = 1, on_floor = 1), \ + null, \ + new/datum/stack_recipe("computer frame", /obj/structure/frame/computer, 5, time = 25, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("machine frame", /obj/structure/frame/machine, 5, time = 25, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("airlock assembly", /obj/structure/door_assembly, 4, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("firelock frame", /obj/structure/firelock_frame, 3, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("machine frame", /obj/machinery/constructable_frame/machine_frame, 5, time = 25, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("turret frame", /obj/machinery/porta_turret_construct, 5, time = 25, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("meatspike frame", /obj/structure/kitchenspike_frame, 5, time = 25, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("reflector frame", /obj/structure/reflector, 5, time = 25, one_per_turf = 1, on_floor = 1), \ diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index b4e7b5dd5ef..7da9e29ce27 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -64,6 +64,7 @@ return if (!src || get_amount() <= 0) user << browse(null, "window=stack") + return user.set_machine(src) //for correct work of onclose var/t1 = text("Constructions from []Amount Left: []
", src, src.get_amount()) for(var/i=1;i<=recipes.len,i++) diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 99b3a72e6ae..6538bba7f06 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -804,7 +804,7 @@ /obj/item/weapon/storage/box/rndboards/New() ..() - new /obj/item/weapon/circuitboard/protolathe(src) - new /obj/item/weapon/circuitboard/destructive_analyzer(src) - new /obj/item/weapon/circuitboard/circuit_imprinter(src) - new /obj/item/weapon/circuitboard/rdconsole(src) + new /obj/item/weapon/circuitboard/machine/protolathe(src) + new /obj/item/weapon/circuitboard/machine/destructive_analyzer(src) + new /obj/item/weapon/circuitboard/machine/circuit_imprinter(src) + new /obj/item/weapon/circuitboard/computer/rdconsole(src) diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index ef533fe16a1..0e0ff304900 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -246,3 +246,8 @@ atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/ qdel(src) else //If for some reason you use an empty card on an empty AI terminal. user << "There is no AI loaded on this terminal!" + + +/obj/item/weapon/circuitboard/aicore + name = "circuit board (AI core)" + origin_tech = "programming=4;biotech=2" diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index d896d93a9a3..cdd0e0fea57 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -22,14 +22,17 @@ /obj/machinery/atmospherics/components/unary/cryo_cell/New() ..() initialize_directions = dir - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/cryo_tube(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/cryo_tube(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/cryo_tube + name = "circuit board (Cryotube)" + build_path = /obj/machinery/atmospherics/components/unary/cryo_cell + origin_tech = "programming=4;biotech=3;engineering=4" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/console_screen = 4) /obj/machinery/atmospherics/components/unary/cryo_cell/construction() ..(dir, dir) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm index ed142bbf4ed..fc06e542cba 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm @@ -17,14 +17,37 @@ /obj/machinery/atmospherics/components/unary/thermomachine/New() ..() initialize_directions = dir - component_parts = list() - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/thermomachine(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/thermomachine + name = "circuit board (Thermomachine)" + desc = "You can use a screwdriver to switch between heater and freezer." + origin_tech = "programming=3;plasmatech=3" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 2, + /obj/item/weapon/stock_parts/micro_laser = 2, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/console_screen = 1) + +/obj/item/weapon/circuitboard/machine/thermomachine/attackby(obj/item/I, mob/user, params) + var/obj/item/weapon/circuitboard/machine/freezer = /obj/item/weapon/circuitboard/machine/thermomachine/freezer + var/obj/item/weapon/circuitboard/machine/heater = /obj/item/weapon/circuitboard/machine/thermomachine/heater + var/obj/item/weapon/circuitboard/machine/newtype + + if(istype(I, /obj/item/weapon/screwdriver)) + var/new_setting = "Heater" + playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + if(build_path == initial(heater.build_path)) + newtype = freezer + new_setting = "Freezer" + else + newtype = heater + name = initial(newtype.name) + build_path = initial(newtype.build_path) + user << "You change the circuitboard setting to \"[new_setting]\"." + else + return ..() /obj/machinery/atmospherics/components/unary/thermomachine/construction() ..(dir,dir) @@ -169,7 +192,12 @@ /obj/machinery/atmospherics/components/unary/thermomachine/freezer/New() ..() - component_parts += new /obj/item/weapon/circuitboard/thermomachine/freezer(null) + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/thermomachine/freezer(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/thermomachine/freezer + name = "circuit board (Freezer)" + build_path = /obj/machinery/atmospherics/components/unary/thermomachine/freezer /obj/machinery/atmospherics/components/unary/thermomachine/freezer/RefreshParts() ..() @@ -189,7 +217,12 @@ /obj/machinery/atmospherics/components/unary/thermomachine/heater/New() ..() - component_parts += new /obj/item/weapon/circuitboard/thermomachine/heater(null) + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/thermomachine/heater(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/thermomachine/heater + name = "circuit board (Heater)" + build_path = /obj/machinery/atmospherics/components/unary/thermomachine/heater /obj/machinery/atmospherics/components/unary/thermomachine/heater/RefreshParts() ..() diff --git a/code/modules/cargo/console.dm b/code/modules/cargo/console.dm index 472d2442557..4a3e5bdfec0 100644 --- a/code/modules/cargo/console.dm +++ b/code/modules/cargo/console.dm @@ -2,7 +2,7 @@ name = "supply console" desc = "Used to order supplies, approve requests, and control the shuttle." icon_screen = "supply" - circuit = /obj/item/weapon/circuitboard/cargo + circuit = /obj/item/weapon/circuitboard/computer/cargo var/requestonly = FALSE var/contraband = FALSE @@ -10,12 +10,12 @@ name = "supply request console" desc = "Used to request supplies from cargo." icon_screen = "request" - circuit = /obj/item/weapon/circuitboard/cargo/request + circuit = /obj/item/weapon/circuitboard/computer/cargo/request requestonly = TRUE /obj/machinery/computer/cargo/New() ..() - var/obj/item/weapon/circuitboard/cargo/board = circuit + var/obj/item/weapon/circuitboard/computer/cargo/board = circuit contraband = board.contraband emagged = board.emagged @@ -28,7 +28,7 @@ contraband = TRUE // This also permamently sets this on the circuit board - var/obj/item/weapon/circuitboard/cargo/board = circuit + var/obj/item/weapon/circuitboard/computer/cargo/board = circuit board.contraband = TRUE board.emagged = TRUE diff --git a/code/modules/cargo/exports/parts.dm b/code/modules/cargo/exports/parts.dm index b78bb3b2e37..51a563918fb 100644 --- a/code/modules/cargo/exports/parts.dm +++ b/code/modules/cargo/exports/parts.dm @@ -13,7 +13,7 @@ /datum/export/solar/control_board cost = 150 unit_name = "solar panel control board" - export_types = list(/obj/item/weapon/circuitboard/solar_control) + export_types = list(/obj/item/weapon/circuitboard/computer/solar_control) diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index ef1c1ef85cd..ef657aedc10 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -530,7 +530,7 @@ /obj/item/solar_assembly, /obj/item/solar_assembly, /obj/item/solar_assembly, - /obj/item/weapon/circuitboard/solar_control, + /obj/item/weapon/circuitboard/computer/solar_control, /obj/item/weapon/electronics/tracker, /obj/item/weapon/paper/solar) crate_name = "solar panel crate" diff --git a/code/modules/food&drinks/kitchen machinery/gibber.dm b/code/modules/food&drinks/kitchen machinery/gibber.dm index 84a92fbaca7..93e3d1799fd 100644 --- a/code/modules/food&drinks/kitchen machinery/gibber.dm +++ b/code/modules/food&drinks/kitchen machinery/gibber.dm @@ -48,11 +48,16 @@ /obj/machinery/gibber/New() ..() src.overlays += image('icons/obj/kitchen.dmi', "grjam") - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/gibber(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/gibber(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/gibber + name = "circuit board (Gibber)" + build_path = /obj/machinery/gibber + origin_tech = "programming=1" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1) /obj/machinery/gibber/RefreshParts() var/gib_time = 40 diff --git a/code/modules/food&drinks/kitchen machinery/microwave.dm b/code/modules/food&drinks/kitchen machinery/microwave.dm index 878d51853b1..5e8171bf0dd 100644 --- a/code/modules/food&drinks/kitchen machinery/microwave.dm +++ b/code/modules/food&drinks/kitchen machinery/microwave.dm @@ -24,13 +24,18 @@ /obj/machinery/microwave/New() create_reagents(100) - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/microwave(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 2) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/microwave(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/microwave + name = "circuit board (Microwave)" + build_path = /obj/machinery/microwave + origin_tech = "programming=1;magnets=1" + req_components = list( + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/console_screen = 1) /obj/machinery/microwave/RefreshParts() var/E diff --git a/code/modules/food&drinks/kitchen machinery/monkeyrecycler.dm b/code/modules/food&drinks/kitchen machinery/monkeyrecycler.dm index b1e7f5632fd..a446c16d444 100644 --- a/code/modules/food&drinks/kitchen machinery/monkeyrecycler.dm +++ b/code/modules/food&drinks/kitchen machinery/monkeyrecycler.dm @@ -16,11 +16,16 @@ /obj/machinery/monkey_recycler/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/monkey_recycler(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/monkey_recycler(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/monkey_recycler + name = "circuit board (Monkey Recycler)" + build_path = /obj/machinery/monkey_recycler + origin_tech = "programming=1;biotech=2" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1) /obj/machinery/monkey_recycler/RefreshParts() var/req_grind = 5 diff --git a/code/modules/food&drinks/kitchen machinery/processor.dm b/code/modules/food&drinks/kitchen machinery/processor.dm index ab460e14999..f0c41e5f082 100644 --- a/code/modules/food&drinks/kitchen machinery/processor.dm +++ b/code/modules/food&drinks/kitchen machinery/processor.dm @@ -16,12 +16,17 @@ var/rating_amount = 1 /obj/machinery/processor/New() - ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/processor(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - RefreshParts() + ..() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/processor(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/processor + name = "circuit board (Food Processor)" + build_path = /obj/machinery/processor + origin_tech = "programming=1" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1) /obj/machinery/processor/RefreshParts() for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) diff --git a/code/modules/food&drinks/kitchen machinery/smartfridge.dm b/code/modules/food&drinks/kitchen machinery/smartfridge.dm index 1eac74d44c7..ca7dfd00041 100644 --- a/code/modules/food&drinks/kitchen machinery/smartfridge.dm +++ b/code/modules/food&drinks/kitchen machinery/smartfridge.dm @@ -19,10 +19,33 @@ /obj/machinery/smartfridge/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/smartfridge(null, type) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/smartfridge(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/smartfridge + name = "circuit board (Smartfridge)" + build_path = /obj/machinery/smartfridge + origin_tech = "programming=1" + req_components = list(/obj/item/weapon/stock_parts/matter_bin = 1) + +/obj/item/weapon/circuitboard/machine/smartfridge/New(loc, new_type) + if(new_type) + build_path = new_type + +/obj/item/weapon/circuitboard/machine/smartfridge/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weapon/screwdriver)) + var/list/fridges = list(/obj/machinery/smartfridge = "default", + /obj/machinery/smartfridge/drinks = "drinks", + /obj/machinery/smartfridge/extract = "slimes", + /obj/machinery/smartfridge/chemistry = "chems", + /obj/machinery/smartfridge/chemistry/virology = "viruses") + + var/position = fridges.Find(build_path, fridges) + position = (position == fridges.len) ? 1 : (position + 1) + build_path = fridges[position] + user << "You set the board to [fridges[build_path]]." + else + return ..() /obj/machinery/smartfridge/construction() for(var/datum/A in contents) diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index 9ebde1d58ab..c951b922b8b 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -16,15 +16,20 @@ var/max_items = 40 /obj/machinery/biogenerator/New() - ..() - create_reagents(1000) - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/biogenerator(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() + ..() + create_reagents(1000) + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/biogenerator(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/biogenerator + name = "circuit board (Biogenerator)" + build_path = /obj/machinery/biogenerator + origin_tech = "programming=3;biotech=2;materials=3" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/stack/cable_coil = 1, + /obj/item/weapon/stock_parts/console_screen = 1) /obj/machinery/biogenerator/RefreshParts() var/E = 0 diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index 1f062578259..2f0e44878b3 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -23,13 +23,18 @@ /obj/machinery/plantgenes/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/plantgenes(src) - component_parts += new /obj/item/weapon/stock_parts/console_screen(src) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) - component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/plantgenes(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/plantgenes + name = "circuit board (Plant DNA Manipulator)" + build_path = /obj/machinery/plantgenes + origin_tech = "programming=2;biotech=3" + req_components = list( + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/console_screen = 1, + /obj/item/weapon/stock_parts/scanning_module = 1) /obj/machinery/plantgenes/RefreshParts() rating = 0 @@ -353,7 +358,7 @@ /obj/machinery/plantgenes/seedvault/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/plantgenes(src) + component_parts += new /obj/item/weapon/circuitboard/machine/plantgenes(src) component_parts += new /obj/item/weapon/stock_parts/console_screen(src) component_parts += new /obj/item/weapon/stock_parts/scanning_module/triphasic(src) component_parts += new /obj/item/weapon/stock_parts/micro_laser/quadultra(src) diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 09d0f9b748f..ce238c7eaa1 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -34,13 +34,17 @@ /obj/machinery/hydroponics/constructable/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/hydroponics(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/hydroponics(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/hydroponics + name = "circuit board (Hydroponics Tray)" + build_path = /obj/machinery/hydroponics/constructable + origin_tech = "programming=1;biotech=1" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 2, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/console_screen = 1) /obj/machinery/hydroponics/constructable/RefreshParts() var/tmp_capacity = 0 diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index e7e63b26e23..1d146cdff00 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -50,11 +50,16 @@ /obj/machinery/seed_extractor/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/seed_extractor(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/seed_extractor(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/seed_extractor + name = "circuit board (Seed Extractor)" + build_path = /obj/machinery/seed_extractor + origin_tech = "programming=1" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1) /obj/machinery/seed_extractor/RefreshParts() for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 16862d3e8a5..bdad0908afe 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -19,7 +19,7 @@ icon_state = "oldcomp" icon_screen = "library" icon_keyboard = null - circuit = /obj/item/weapon/circuitboard/libraryconsole + circuit = /obj/item/weapon/circuitboard/computer/libraryconsole var/screenstate = 0 var/title var/category = "Any" diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index 58a7559c55c..9503ed2808b 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -24,14 +24,19 @@ /obj/machinery/mineral/ore_redemption/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/ore_redemption(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/device/assembly/igniter(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/ore_redemption(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/ore_redemption + name = "circuit board (Ore Redemption)" + build_path = /obj/machinery/mineral/ore_redemption + origin_tech = "programming=1;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/console_screen = 1, + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/device/assembly/igniter = 1) /obj/machinery/mineral/ore_redemption/RefreshParts() var/ore_pickup_rate_temp = 15 @@ -322,13 +327,16 @@ /obj/machinery/mineral/equipment_vendor/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/mining_equipment_vendor(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/mining_equipment_vendor(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/mining_equipment_vendor + name = "circuit board (Mining Equipment Vendor)" + build_path = /obj/machinery/mineral/equipment_vendor + origin_tech = "programming=1;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/console_screen = 1, + /obj/item/weapon/stock_parts/matter_bin = 3) /obj/machinery/mineral/equipment_vendor/power_change() ..() @@ -1151,10 +1159,9 @@ /obj/machinery/mineral/equipment_vendor/golem/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/mining_equipment_vendor/golem(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/mining_equipment_vendor/golem(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/mining_equipment_vendor/golem + name = "circuit board (Golem Ship Equipment Vendor)" + build_path = /obj/machinery/mineral/equipment_vendor/golem diff --git a/code/modules/mining/laborcamp/laborshuttle.dm b/code/modules/mining/laborcamp/laborshuttle.dm index 079eaeab8dd..2e88d4e413c 100644 --- a/code/modules/mining/laborcamp/laborshuttle.dm +++ b/code/modules/mining/laborcamp/laborshuttle.dm @@ -1,7 +1,7 @@ /obj/machinery/computer/shuttle/labor name = "labor shuttle console" desc = "Used to call and send the labor camp shuttle." - circuit = /obj/item/weapon/circuitboard/labor_shuttle + circuit = /obj/item/weapon/circuitboard/computer/labor_shuttle shuttleId = "laborcamp" possible_destinations = "laborcamp_home;laborcamp_away" req_access = list(access_brig) @@ -11,7 +11,7 @@ name = "prisoner shuttle console" desc = "A one-way shuttle console, used to summon the shuttle to the labor camp." possible_destinations = "laborcamp_away" - circuit = /obj/item/weapon/circuitboard/labor_shuttle/one_way + circuit = /obj/item/weapon/circuitboard/computer/labor_shuttle/one_way req_access = list( ) /obj/machinery/computer/shuttle/labor/one_way/Topic(href, href_list) diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 0619d722f44..c577ca74bee 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -53,7 +53,7 @@ /obj/machinery/computer/shuttle/mining name = "Mining Shuttle Console" desc = "Used to call and send the mining shuttle." - circuit = /obj/item/weapon/circuitboard/mining_shuttle + circuit = /obj/item/weapon/circuitboard/computer/mining_shuttle shuttleId = "mining" possible_destinations = "mining_home;mining_away" no_destination_swap = 1 diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index d6a58af95cf..5a1dffc3c42 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -85,7 +85,7 @@ //Parrots will generally sit on their perch unless something catches their eye. //These vars store their preffered perch and if they dont have one, what they can use as a perch var/obj/parrot_perch = null - var/obj/desired_perches = list(/obj/structure/computerframe, /obj/structure/displaycase, \ + var/obj/desired_perches = list(/obj/structure/frame/computer, /obj/structure/displaycase, \ /obj/structure/filingcabinet, /obj/machinery/teleport, \ /obj/machinery/computer, /obj/machinery/clonepod, \ /obj/machinery/dna_scannernew, /obj/machinery/telecomms, \ diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index f1b3d4ccbbc..6d29f794ee6 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -251,6 +251,7 @@ /obj/item/weapon/stock_parts/cell/bluespace name = "bluespace power cell" + desc = "A rechargable transdimensional power cell." origin_tech = "powerstorage=7" icon_state = "bscell" maxcharge = 40000 diff --git a/code/modules/power/monitor.dm b/code/modules/power/monitor.dm index b0f11026686..5f663a89c30 100644 --- a/code/modules/power/monitor.dm +++ b/code/modules/power/monitor.dm @@ -6,7 +6,7 @@ use_power = 2 idle_power_usage = 20 active_power_usage = 100 - circuit = /obj/item/weapon/circuitboard/powermonitor + circuit = /obj/item/weapon/circuitboard/computer/powermonitor var/obj/structure/cable/attached diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 09b33ebb881..a61bef51c4f 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -94,7 +94,7 @@ display round(lastgen) and plasmatank amount var/max_sheets = 100 var/sheet_name = "" var/sheet_path = /obj/item/stack/sheet/mineral/plasma - var/board_path = "/obj/item/weapon/circuitboard/pacman" + var/board_path = /obj/item/weapon/circuitboard/machine/pacman var/sheet_left = 0 // How much is left of the sheet var/time_per_sheet = 260 var/current_heat = 0 @@ -106,16 +106,31 @@ display round(lastgen) and plasmatank amount /obj/machinery/power/port_gen/pacman/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) - component_parts += new /obj/item/stack/cable_coil(src, 1) - component_parts += new /obj/item/stack/cable_coil(src, 1) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new board_path(src) + var/obj/item/weapon/circuitboard/machine/B = new board_path(null) + B.apply_default_parts(src) + var/obj/sheet = new sheet_path(null) sheet_name = sheet.name - RefreshParts() + +/obj/item/weapon/circuitboard/machine/pacman + name = "circuit board (PACMAN-type Generator)" + build_path = /obj/machinery/power/port_gen/pacman + origin_tech = "programming=3;powerstorage=3;plasmatech=3;engineering=3" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/capacitor = 1) + +/obj/item/weapon/circuitboard/machine/pacman/super + name = "circuit board (SUPERPACMAN-type Generator)" + build_path = /obj/machinery/power/port_gen/pacman/super + origin_tech = "programming=3;powerstorage=4;engineering=4" + +/obj/item/weapon/circuitboard/machine/pacman/mrs + name = "circuit board (MRSPACMAN-type Generator)" + build_path = "/obj/machinery/power/port_gen/pacman/mrs" + origin_tech = "programming=3;powerstorage=5;engineering=5" /obj/machinery/power/port_gen/pacman/Destroy() DropFuel() @@ -316,7 +331,7 @@ display round(lastgen) and plasmatank amount sheet_path = /obj/item/stack/sheet/mineral/uranium power_gen = 15000 time_per_sheet = 85 - board_path = "/obj/item/weapon/circuitboard/pacman/super" + board_path = /obj/item/weapon/circuitboard/machine/pacman/super overheat() explosion(src.loc, 3, 3, 3, -1) @@ -326,6 +341,6 @@ display round(lastgen) and plasmatank amount sheet_path = /obj/item/stack/sheet/mineral/diamond power_gen = 40000 time_per_sheet = 80 - board_path = "/obj/item/weapon/circuitboard/pacman/mrs" + board_path = /obj/item/weapon/circuitboard/machine/pacman/mrs overheat() explosion(src.loc, 4, 4, 4, -1) diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 051ca76dc48..660e1b409c1 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -29,12 +29,18 @@ /obj/machinery/power/emitter/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/emitter(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/emitter(null) + B.apply_default_parts(src) RefreshParts() +/obj/item/weapon/circuitboard/machine/emitter + name = "circuit board (Emitter)" + build_path = /obj/machinery/power/emitter + origin_tech = "programming=4;powerstorage=5;engineering=5" + req_components = list( + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/manipulator = 1) + /obj/machinery/power/emitter/RefreshParts() var/max_firedelay = 120 var/firedelay = 120 diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 6543360d433..4cc5fb43e77 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -44,7 +44,7 @@ /obj/machinery/power/smes/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/smes(null) + component_parts += new /obj/item/weapon/circuitboard/machine/smes(null) for(var/i in 1 to 5) component_parts += new /obj/item/weapon/stock_parts/cell/high/empty(null) component_parts += new /obj/item/stack/cable_coil(null, 5) diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 48553748ed3..827da56ee9b 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -442,9 +442,9 @@ if(do_after(user, 20/I.toolspeed, target = src)) if (src.stat & BROKEN) user << "The broken glass falls out." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) + var/obj/structure/frame/computer/A = new /obj/structure/frame/computer( src.loc ) new /obj/item/weapon/shard( src.loc ) - var/obj/item/weapon/circuitboard/solar_control/M = new /obj/item/weapon/circuitboard/solar_control( A ) + var/obj/item/weapon/circuitboard/computer/solar_control/M = new /obj/item/weapon/circuitboard/computer/solar_control( A ) for (var/obj/C in src) C.loc = src.loc A.circuit = M @@ -454,8 +454,8 @@ qdel(src) else user << "You disconnect the monitor." - var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) - var/obj/item/weapon/circuitboard/solar_control/M = new /obj/item/weapon/circuitboard/solar_control( A ) + var/obj/structure/frame/computer/A = new /obj/structure/frame/computer( src.loc ) + var/obj/item/weapon/circuitboard/computer/solar_control/M = new /obj/item/weapon/circuitboard/computer/solar_control( A ) for (var/obj/C in src) C.loc = src.loc A.circuit = M diff --git a/code/modules/power/tesla/coil.dm b/code/modules/power/tesla/coil.dm index 721fb142ee6..ddb453f9082 100644 --- a/code/modules/power/tesla/coil.dm +++ b/code/modules/power/tesla/coil.dm @@ -10,10 +10,14 @@ /obj/machinery/power/tesla_coil/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/tesla_coil(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/tesla_coil(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/tesla_coil + name = "circuit board (Tesla Coil)" + build_path = /obj/machinery/power/tesla_coil + origin_tech = "programming=1;engineering=2;powerstorage=3" + req_components = list(/obj/item/weapon/stock_parts/capacitor = 1) /obj/machinery/power/tesla_coil/RefreshParts() var/power_multiplier = 0 @@ -62,10 +66,14 @@ /obj/machinery/power/grounding_rod/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/grounding_rod(null) - component_parts += new /obj/item/weapon/stock_parts/capacitor(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/grounding_rod(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/grounding_rod + name = "circuit board (Grounding Rod)" + build_path = /obj/machinery/power/grounding_rod + origin_tech = "programming=1;engineering=1;powerstorage=1" + req_components = list(/obj/item/weapon/stock_parts/capacitor = 1) /obj/machinery/power/grounding_rod/attackby(obj/item/W, mob/user, params) if(default_deconstruction_screwdriver(user, "grounding_rod", "grounding_rod", W)) diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm index 1e5036354ad..a4a7f60b165 100644 --- a/code/modules/power/turbine.dm +++ b/code/modules/power/turbine.dm @@ -58,7 +58,7 @@ desc = "A computer to remotely control a gas turbine." icon_screen = "turbinecomp" icon_keyboard = "tech_key" - circuit = /obj/item/weapon/circuitboard/turbine_computer + circuit = /obj/item/weapon/circuitboard/computer/turbine_computer var/obj/machinery/power/compressor/compressor var/id = 0 @@ -66,21 +66,20 @@ /obj/machinery/power/compressor/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/power_compressor(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/stack/cable_coil(null, 5) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/power_compressor(null) + B.apply_default_parts(src) // The inlet of the compressor is the direction it faces gas_contained = new inturf = get_step(src, dir) +/obj/item/weapon/circuitboard/machine/power_compressor + name = "circuit board (Power Compressor)" + build_path = /obj/machinery/power/compressor + origin_tech = "programming=4;powerstorage=5;engineering=4" + req_components = list( + /obj/item/stack/cable_coil = 5, + /obj/item/weapon/stock_parts/manipulator = 6) /obj/machinery/power/compressor/initialize() ..() @@ -188,20 +187,18 @@ /obj/machinery/power/turbine/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/power_turbine(src) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new /obj/item/weapon/stock_parts/capacitor(src) - component_parts += new /obj/item/stack/cable_coil(src, 5) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/power_turbine(null) + B.apply_default_parts(src) // The outlet is pointed at the direction of the turbine component - outturf = get_step(src, dir) +/obj/item/weapon/circuitboard/machine/power_turbine + name = "circuit board (Power Turbine)" + build_path = /obj/machinery/power/turbine + origin_tech = "programming=4;powerstorage=4;engineering=5" + req_components = list( + /obj/item/stack/cable_coil = 5, + /obj/item/weapon/stock_parts/capacitor = 6) /obj/machinery/power/turbine/initialize() ..() diff --git a/code/modules/procedural mapping/mapGenerators/syndicate.dm b/code/modules/procedural mapping/mapGenerators/syndicate.dm index fc3d9dc0387..98e87a8b91d 100644 --- a/code/modules/procedural mapping/mapGenerators/syndicate.dm +++ b/code/modules/procedural mapping/mapGenerators/syndicate.dm @@ -15,7 +15,7 @@ clusterCheckFlags = CLUSTER_CHECK_ALL spawnableTurfs = list() spawnableAtoms = list(/obj/structure/table = 20,/obj/structure/chair = 15,/obj/structure/chair/stool = 10, \ - /obj/structure/computerframe = 15, /obj/item/weapon/storage/toolbox/syndicate = 15 ,\ + /obj/structure/frame/computer = 15, /obj/item/weapon/storage/toolbox/syndicate = 15 ,\ /obj/structure/closet/syndicate = 25, /obj/machinery/suit_storage_unit/syndicate = 15) /datum/mapGeneratorModule/splatterLayer/syndieMobs diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index c36bcf88bc9..38da68a18ad 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -225,7 +225,7 @@ /obj/machinery/chem_dispenser/constructable/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/chem_dispenser(null) + component_parts += new /obj/item/weapon/circuitboard/machine/chem_dispenser(null) component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) component_parts += new /obj/item/weapon/stock_parts/matter_bin(null) component_parts += new /obj/item/weapon/stock_parts/manipulator(null) diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index edd2c9dd055..5a097bdc746 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -13,11 +13,16 @@ /obj/machinery/chem_heater/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/chem_heater(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/chem_heater(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/chem_heater + name = "circuit board (Chemical Heater)" + build_path = /obj/machinery/chem_heater + origin_tech = "materials=2;engineering=2" + req_components = list( + /obj/item/weapon/stock_parts/micro_laser = 1, + /obj/item/weapon/stock_parts/console_screen = 1) /obj/machinery/chem_heater/RefreshParts() heater_coefficient = 0.10 diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index 8aba55937ef..4730cd0f891 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -1,6 +1,6 @@ /obj/machinery/chem_master name = "ChemMaster 3000" - desc = "Used to bottle chemicals to create pills." + desc = "Used to seperate chemicals and distribute them in a variety of forms." density = 1 anchored = 1 icon = 'icons/obj/chemical.dmi' @@ -16,6 +16,37 @@ /obj/machinery/chem_master/New() create_reagents(100) overlays += "waitlight" + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/chem_master(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/chem_master + name = "circuit board (ChemMaster 3000)" + build_path = /obj/machinery/chem_master + origin_tech = "materials=2;programming=2;biotech=1" + req_components = list( + /obj/item/weapon/reagent_containers/glass/beaker = 2, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/console_screen = 1) + +/obj/item/weapon/circuitboard/machine/chem_master/attackby(obj/item/I, mob/user, params) + if(istype(I, /obj/item/weapon/screwdriver)) + var/new_name = "ChemMaster" + var/new_path = /obj/machinery/chem_master + + if(build_path == /obj/machinery/chem_master) + new_name = "CondiMaster" + new_path = /obj/machinery/chem_master/condimaster + + build_path = new_path + name = "circuit board ([new_name] 3000)" + user << "You change the circuit board setting to \"[new_name]\"." + else + return ..() + +/obj/machinery/chem_master/RefreshParts() + reagents.maximum_volume = 0 + for(var/obj/item/weapon/reagent_containers/glass/beaker/B in component_parts) + reagents.maximum_volume += B.reagents.maximum_volume /obj/machinery/chem_master/ex_act(severity, target) if(severity < 3) @@ -33,6 +64,21 @@ stat |= NOPOWER /obj/machinery/chem_master/attackby(obj/item/I, mob/user, params) + if(default_deconstruction_screwdriver(user, "mixer0_nopower", "mixer0", I)) + if(beaker) + beaker.loc = src.loc + beaker = null + reagents.clear_reagents() + if(bottle) + bottle.loc = src.loc + bottle = null + return + + else if(exchange_parts(user, I)) + return + else if(default_deconstruction_crowbar(I)) + return + if(default_unfasten_wrench(user, I)) return @@ -329,33 +375,6 @@ desc = "Used to create condiments and other cooking supplies." condi = 1 -/obj/machinery/chem_master/constructable - name = "ChemMaster 2999" - desc = "Used to seperate chemicals and distribute them in a variety of forms." - -/obj/machinery/chem_master/constructable/New() - ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/chem_master(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/console_screen(null) - component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(null) - component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(null) - -/obj/machinery/chem_master/constructable/attackby(obj/item/B, mob/user, params) - if(default_deconstruction_screwdriver(user, "mixer0_nopower", "mixer0", B)) - if(beaker) - beaker.loc = src.loc - beaker = null - reagents.clear_reagents() - if(bottle) - bottle.loc = src.loc - bottle = null - return - - else if(exchange_parts(user, B)) - return - else if(default_deconstruction_crowbar(B)) - return - else - return ..() \ No newline at end of file +/obj/item/weapon/circuitboard/machine/chem_master/condi + name = "circuit board (CondiMaster 3000)" + build_path = /obj/machinery/chem_master/condimaster \ No newline at end of file diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index 7fe9064c014..0fc16281542 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -5,7 +5,7 @@ anchored = 1 icon = 'icons/obj/chemical.dmi' icon_state = "mixer0" - circuit = /obj/item/weapon/circuitboard/pandemic + circuit = /obj/item/weapon/circuitboard/computer/pandemic use_power = 1 idle_power_usage = 20 var/temp_html = "" diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index b113b49127d..2cdc11189e1 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -32,15 +32,19 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). /obj/machinery/r_n_d/circuit_imprinter/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/circuit_imprinter(src) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) - component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(src) - component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(src) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/circuit_imprinter(null) + B.apply_default_parts(src) reagents.my_atom = src +/obj/item/weapon/circuitboard/machine/circuit_imprinter + name = "circuit board (Circuit Imprinter)" + build_path = /obj/machinery/r_n_d/circuit_imprinter + origin_tech = "engineering=2;programming=2" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/reagent_containers/glass/beaker = 2) + /obj/machinery/r_n_d/circuit_imprinter/RefreshParts() var/T = 0 for(var/obj/item/weapon/reagent_containers/glass/G in component_parts) diff --git a/code/modules/research/designs/AI_module_designs.dm b/code/modules/research/designs/AI_module_designs.dm index d945d5d79a4..c25d7ffbe13 100644 --- a/code/modules/research/designs/AI_module_designs.dm +++ b/code/modules/research/designs/AI_module_designs.dm @@ -2,6 +2,16 @@ //////////AI Module Disks////////// /////////////////////////////////// +/datum/design/aicore + name = "AI Design (AI Core)" + desc = "Allows for the construction of circuit boards used to build new AI cores." + id = "aicore" + req_tech = list("programming" = 4, "biotech" = 3) + build_type = IMPRINTER + materials = list(MAT_GLASS = 1000, "sacid" = 20) + build_path = /obj/item/weapon/circuitboard/aicore + category = list("AI Modules") + /datum/design/safeguard_module name = "Module Design (Safeguard)" diff --git a/code/modules/research/designs/comp_board_designs.dm b/code/modules/research/designs/comp_board_designs.dm index 9eeaebdd865..1da2314a25b 100644 --- a/code/modules/research/designs/comp_board_designs.dm +++ b/code/modules/research/designs/comp_board_designs.dm @@ -7,17 +7,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/security - category = list("Computer Boards") - -/datum/design/aicore - name = "AI Design (AI Core)" - desc = "Allows for the construction of circuit boards used to build new AI cores." - id = "aicore" - req_tech = list("programming" = 4, "biotech" = 3) - build_type = IMPRINTER - materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/aicore + build_path = /obj/item/weapon/circuitboard/computer/security category = list("Computer Boards") /datum/design/aiupload @@ -27,7 +17,7 @@ req_tech = list("programming" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/aiupload + build_path = /obj/item/weapon/circuitboard/computer/aiupload category = list("Computer Boards") /datum/design/borgupload @@ -37,7 +27,7 @@ req_tech = list("programming" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/borgupload + build_path = /obj/item/weapon/circuitboard/computer/borgupload category = list("Computer Boards") /datum/design/med_data @@ -47,7 +37,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/med_data + build_path = /obj/item/weapon/circuitboard/computer/med_data category = list("Computer Boards") /datum/design/operating @@ -57,7 +47,7 @@ req_tech = list("programming" = 2, "biotech" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/operating + build_path = /obj/item/weapon/circuitboard/computer/operating category = list("Computer Boards") /datum/design/pandemic @@ -67,7 +57,7 @@ req_tech = list("programming" = 2, "biotech" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/pandemic + build_path = /obj/item/weapon/circuitboard/computer/pandemic category = list("Computer Boards") /datum/design/scan_console @@ -77,7 +67,7 @@ req_tech = list("programming" = 2, "biotech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/scan_consolenew + build_path = /obj/item/weapon/circuitboard/computer/scan_consolenew category = list("Computer Boards") /datum/design/comconsole @@ -87,7 +77,7 @@ req_tech = list("programming" = 2, "magnets" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/communications + build_path = /obj/item/weapon/circuitboard/computer/communications category = list("Computer Boards") /datum/design/idcardconsole @@ -97,7 +87,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/card + build_path = /obj/item/weapon/circuitboard/computer/card category = list("Computer Boards") /datum/design/crewconsole @@ -107,7 +97,7 @@ req_tech = list("programming" = 3, "magnets" = 2, "biotech" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/crew + build_path = /obj/item/weapon/circuitboard/computer/crew category = list("Computer Boards") @@ -118,7 +108,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/secure_data + build_path = /obj/item/weapon/circuitboard/computer/secure_data category = list("Computer Boards") /datum/design/atmosalerts @@ -128,7 +118,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/atmos_alert + build_path = /obj/item/weapon/circuitboard/computer/atmos_alert category = list("Computer Boards") /datum/design/atmos_control @@ -138,7 +128,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/atmos_control + build_path = /obj/item/weapon/circuitboard/computer/atmos_control category = list("Computer Boards") /datum/design/robocontrol @@ -148,7 +138,7 @@ req_tech = list("programming" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/robotics + build_path = /obj/item/weapon/circuitboard/computer/robotics category = list("Computer Boards") /datum/design/arcadebattle @@ -158,7 +148,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/arcade/battle + build_path = /obj/item/weapon/circuitboard/computer/arcade/battle category = list("Computer Boards") /datum/design/orion_trail @@ -168,7 +158,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/arcade/orion_trail + build_path = /obj/item/weapon/circuitboard/computer/arcade/orion_trail category = list("Computer Boards") /datum/design/slot_machine @@ -178,7 +168,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/slot_machine + build_path = /obj/item/weapon/circuitboard/computer/slot_machine category = list("Computer Boards") /datum/design/powermonitor @@ -188,7 +178,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/powermonitor + build_path = /obj/item/weapon/circuitboard/computer/powermonitor category = list("Computer Boards") /datum/design/solarcontrol @@ -198,7 +188,7 @@ req_tech = list("programming" = 2, "powerstorage" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/solar_control + build_path = /obj/item/weapon/circuitboard/computer/solar_control category = list("Computer Boards") /datum/design/prisonmanage @@ -208,7 +198,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/prisoner + build_path = /obj/item/weapon/circuitboard/computer/prisoner category = list("Computer Boards") /datum/design/mechacontrol @@ -218,7 +208,7 @@ req_tech = list("programming" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/mecha_control + build_path = /obj/item/weapon/circuitboard/computer/mecha_control category = list("Computer Boards") /datum/design/mechapower @@ -228,7 +218,7 @@ req_tech = list("programming" = 2, "powerstorage" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/mech_bay_power_console + build_path = /obj/item/weapon/circuitboard/computer/mech_bay_power_console category = list("Computer Boards") /datum/design/rdconsole @@ -238,7 +228,7 @@ req_tech = list("programming" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/rdconsole + build_path = /obj/item/weapon/circuitboard/computer/rdconsole category = list("Computer Boards") /datum/design/cargo @@ -248,7 +238,7 @@ req_tech = list("programming" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/cargo + build_path = /obj/item/weapon/circuitboard/computer/cargo category = list("Computer Boards") /datum/design/cargorequest @@ -258,7 +248,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/cargo/request + build_path = /obj/item/weapon/circuitboard/computer/cargo/request category = list("Computer Boards") /datum/design/mining @@ -268,7 +258,7 @@ req_tech = list("programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/mining + build_path = /obj/item/weapon/circuitboard/computer/mining category = list("Computer Boards") /datum/design/comm_monitor @@ -278,7 +268,7 @@ req_tech = list("programming" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/comm_monitor + build_path = /obj/item/weapon/circuitboard/computer/comm_monitor category = list("Computer Boards") /datum/design/comm_server @@ -288,7 +278,7 @@ req_tech = list("programming" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/comm_server + build_path = /obj/item/weapon/circuitboard/computer/comm_server category = list("Computer Boards") /datum/design/message_monitor @@ -298,7 +288,7 @@ req_tech = list("programming" = 5) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/message_monitor + build_path = /obj/item/weapon/circuitboard/computer/message_monitor category = list("Computer Boards") /datum/design/aifixer @@ -308,7 +298,7 @@ req_tech = list("programming" = 3, "biotech" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/aifixer + build_path = /obj/item/weapon/circuitboard/computer/aifixer category = list("Computer Boards") /datum/design/libraryconsole @@ -318,5 +308,5 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/libraryconsole + build_path = /obj/item/weapon/circuitboard/computer/libraryconsole category = list("Computer Boards") diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index 0a4b1da496b..fe53f327a7e 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -9,7 +9,7 @@ req_tech = list("programming" = 4, "powerstorage" = 5, "engineering" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/smes + build_path = /obj/item/weapon/circuitboard/machine/smes category = list ("Engineering Machinery") /datum/design/announcement_system @@ -19,7 +19,7 @@ req_tech = list("programming" = 3, "bluespace" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/announcement_system + build_path = /obj/item/weapon/circuitboard/machine/announcement_system category = list("Subspace Telecomms") /datum/design/turbine_computer @@ -29,7 +29,7 @@ req_tech = list("programming" = 4, "powerstorage" = 4, "engineering" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/turbine_computer + build_path = /obj/item/weapon/circuitboard/computer/turbine_computer category = list ("Engineering Machinery") /datum/design/emitter @@ -39,7 +39,7 @@ req_tech = list("programming" = 4, "powerstorage" = 5, "engineering" = 5) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/emitter + build_path = /obj/item/weapon/circuitboard/machine/emitter category = list ("Engineering Machinery") /datum/design/power_compressor @@ -49,7 +49,7 @@ req_tech = list("programming" = 4, "powerstorage" = 5, "engineering" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/power_compressor + build_path = /obj/item/weapon/circuitboard/machine/power_compressor category = list ("Engineering Machinery") /datum/design/power_turbine @@ -59,7 +59,7 @@ req_tech = list("programming" = 4, "powerstorage" = 4, "engineering" = 5) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/power_turbine + build_path = /obj/item/weapon/circuitboard/machine/power_turbine category = list ("Engineering Machinery") /datum/design/thermomachine @@ -69,7 +69,7 @@ req_tech = list("programming" = 3, "plasmatech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/thermomachine + build_path = /obj/item/weapon/circuitboard/machine/thermomachine category = list ("Engineering Machinery") /datum/design/space_heater @@ -79,7 +79,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/space_heater + build_path = /obj/item/weapon/circuitboard/machine/space_heater category = list ("Engineering Machinery") /datum/design/teleport_station @@ -89,7 +89,7 @@ req_tech = list("programming" = 4, "bluespace" = 4, "engineering" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/teleporter_station + build_path = /obj/item/weapon/circuitboard/machine/teleporter_station category = list ("Teleportation Machinery") /datum/design/teleport_hub @@ -99,7 +99,7 @@ req_tech = list("programming" = 3, "bluespace" = 5, "materials" = 4, "engineering" = 5) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/teleporter_hub + build_path = /obj/item/weapon/circuitboard/machine/teleporter_hub category = list ("Teleportation Machinery") /datum/design/telepad @@ -109,7 +109,7 @@ req_tech = list("programming" = 4, "bluespace" = 4, "materials" = 3, "engineering" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telesci_pad + build_path = /obj/item/weapon/circuitboard/machine/telesci_pad category = list ("Teleportation Machinery") /datum/design/teleconsole @@ -119,7 +119,7 @@ req_tech = list("programming" = 3, "bluespace" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/teleporter + build_path = /obj/item/weapon/circuitboard/computer/teleporter category = list("Teleportation Machinery") /datum/design/telesci_console @@ -129,7 +129,7 @@ req_tech = list("programming" = 3, "bluespace" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telesci_console + build_path = /obj/item/weapon/circuitboard/computer/telesci_console category = list("Teleportation Machinery") /datum/design/sleeper @@ -139,7 +139,7 @@ req_tech = list("programming" = 3, "biotech" = 2, "materials" = 3, "engineering" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/sleeper + build_path = /obj/item/weapon/circuitboard/machine/sleeper category = list ("Medical Machinery") /datum/design/cryotube @@ -149,7 +149,7 @@ req_tech = list("programming" = 4, "biotech" = 3, "engineering" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/cryo_tube + build_path = /obj/item/weapon/circuitboard/machine/cryo_tube category = list ("Medical Machinery") /datum/design/chem_dispenser @@ -159,7 +159,7 @@ req_tech = list("programming" = 4, "biotech" = 3, "engineering" = 4, "materials" = 4, "plasmatech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/chem_dispenser + build_path = /obj/item/weapon/circuitboard/machine/chem_dispenser category = list ("Medical Machinery") /datum/design/chem_master @@ -169,7 +169,7 @@ req_tech = list("biotech" = 1, "materials" = 2, "programming" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/chem_master + build_path = /obj/item/weapon/circuitboard/machine/chem_master category = list ("Medical Machinery") /datum/design/chem_heater @@ -179,7 +179,7 @@ req_tech = list("engineering" = 2, "materials" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/chem_heater + build_path = /obj/item/weapon/circuitboard/machine/chem_heater category = list ("Medical Machinery") /datum/design/clonecontrol @@ -189,7 +189,7 @@ req_tech = list("programming" = 3, "biotech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/cloning + build_path = /obj/item/weapon/circuitboard/computer/cloning category = list("Medical Machinery") /datum/design/clonepod @@ -199,7 +199,7 @@ req_tech = list("programming" = 3, "biotech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/clonepod + build_path = /obj/item/weapon/circuitboard/machine/clonepod category = list("Medical Machinery") /datum/design/clonescanner @@ -209,7 +209,7 @@ req_tech = list("programming" = 3, "biotech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/clonescanner + build_path = /obj/item/weapon/circuitboard/machine/clonescanner category = list("Medical Machinery") /datum/design/biogenerator @@ -219,7 +219,7 @@ req_tech = list("programming" = 3, "biotech" = 2, "materials" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/biogenerator + build_path = /obj/item/weapon/circuitboard/machine/biogenerator category = list ("Hydroponics Machinery") /datum/design/hydroponics @@ -229,7 +229,7 @@ req_tech = list("programming" = 1, "biotech" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/hydroponics + build_path = /obj/item/weapon/circuitboard/machine/hydroponics category = list ("Hydroponics Machinery") /datum/design/destructive_analyzer @@ -239,7 +239,7 @@ req_tech = list("programming" = 2, "magnets" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/destructive_analyzer + build_path = /obj/item/weapon/circuitboard/machine/destructive_analyzer category = list("Research Machinery") /datum/design/experimentor @@ -249,7 +249,7 @@ req_tech = list("programming" = 2, "magnets" = 2, "engineering" = 2, "bluespace" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/experimentor + build_path = /obj/item/weapon/circuitboard/machine/experimentor category = list("Research Machinery") /datum/design/protolathe @@ -259,7 +259,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/protolathe + build_path = /obj/item/weapon/circuitboard/machine/protolathe category = list("Research Machinery") /datum/design/circuit_imprinter @@ -269,7 +269,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/circuit_imprinter + build_path = /obj/item/weapon/circuitboard/machine/circuit_imprinter category = list("Research Machinery") /datum/design/rdservercontrol @@ -279,7 +279,7 @@ req_tech = list("programming" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/rdservercontrol + build_path = /obj/item/weapon/circuitboard/computer/rdservercontrol category = list("Research Machinery") /datum/design/rdserver @@ -289,7 +289,7 @@ req_tech = list("programming" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/rdserver + build_path = /obj/item/weapon/circuitboard/machine/rdserver category = list("Research Machinery") /datum/design/mechfab @@ -299,7 +299,7 @@ req_tech = list("programming" = 3, "engineering" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/mechfab + build_path = /obj/item/weapon/circuitboard/machine/mechfab category = list("Research Machinery") /datum/design/cyborgrecharger @@ -309,7 +309,7 @@ req_tech = list("powerstorage" = 3, "engineering" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/cyborgrecharger + build_path = /obj/item/weapon/circuitboard/machine/cyborgrecharger category = list("Research Machinery") /datum/design/mech_recharger @@ -319,7 +319,7 @@ req_tech = list("programming" = 3, "powerstorage" = 4, "engineering" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/mech_recharger + build_path = /obj/item/weapon/circuitboard/machine/mech_recharger category = list("Research Machinery") /datum/design/microwave @@ -329,7 +329,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/microwave + build_path = /obj/item/weapon/circuitboard/machine/microwave category = list ("Misc. Machinery") /datum/design/gibber @@ -339,7 +339,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/gibber + build_path = /obj/item/weapon/circuitboard/machine/gibber category = list ("Misc. Machinery") /datum/design/smartfridge @@ -349,7 +349,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/smartfridge + build_path = /obj/item/weapon/circuitboard/machine/smartfridge category = list ("Misc. Machinery") /datum/design/monkey_recycler @@ -359,7 +359,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/monkey_recycler + build_path = /obj/item/weapon/circuitboard/machine/monkey_recycler category = list ("Misc. Machinery") /datum/design/seed_extractor @@ -369,7 +369,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/seed_extractor + build_path = /obj/item/weapon/circuitboard/machine/seed_extractor category = list ("Misc. Machinery") /datum/design/processor @@ -379,7 +379,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/processor + build_path = /obj/item/weapon/circuitboard/machine/processor category = list ("Misc. Machinery") /datum/design/recycler @@ -389,7 +389,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/recycler + build_path = /obj/item/weapon/circuitboard/machine/recycler category = list ("Misc. Machinery") /datum/design/holopad @@ -399,7 +399,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/holopad + build_path = /obj/item/weapon/circuitboard/machine/holopad category = list ("Misc. Machinery") /datum/design/autolathe @@ -409,7 +409,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/autolathe + build_path = /obj/item/weapon/circuitboard/machine/autolathe category = list ("Misc. Machinery") /datum/design/recharger @@ -419,7 +419,7 @@ req_tech = list("powerstorage" = 3, "engineering" = 3, "materials" = 4) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20, MAT_GOLD = 100) - build_path = /obj/item/weapon/circuitboard/recharger + build_path = /obj/item/weapon/circuitboard/machine/recharger category = list("Misc. Machinery") /datum/design/vendor @@ -429,7 +429,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/vendor + build_path = /obj/item/weapon/circuitboard/machine/vendor category = list ("Misc. Machinery") /datum/design/ore_redemption @@ -439,7 +439,7 @@ req_tech = list("programming" = 1, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/ore_redemption + build_path = /obj/item/weapon/circuitboard/machine/ore_redemption category = list ("Misc. Machinery") @@ -450,7 +450,7 @@ req_tech = list("programming" = 1, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/mining_equipment_vendor + build_path = /obj/item/weapon/circuitboard/machine/mining_equipment_vendor category = list ("Misc. Machinery") /datum/design/tesla_coil @@ -460,7 +460,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/tesla_coil + build_path = /obj/item/weapon/circuitboard/machine/tesla_coil category = list ("Misc. Machinery") /datum/design/grounding_rod @@ -470,7 +470,7 @@ req_tech = list("programming" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/grounding_rod + build_path = /obj/item/weapon/circuitboard/machine/grounding_rod category = list ("Misc. Machinery") /datum/design/plantgenes @@ -480,5 +480,5 @@ req_tech = list("programming" = 4, "biotech" = 3) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/plantgenes + build_path = /obj/item/weapon/circuitboard/machine/plantgenes category = list ("Misc. Machinery") diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index 0719aafb9e8..11bb5c755be 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -79,7 +79,7 @@ build_type = IMPRINTER reliability = 79 materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/pacman + build_path = /obj/item/weapon/circuitboard/machine/pacman category = list("Engineering Machinery") /datum/design/superpacman @@ -90,7 +90,7 @@ build_type = IMPRINTER reliability = 76 materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/pacman/super + build_path = /obj/item/weapon/circuitboard/machine/pacman/super category = list("Engineering Machinery") /datum/design/mrspacman @@ -101,5 +101,5 @@ build_type = IMPRINTER reliability = 74 materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/pacman/mrs + build_path = /obj/item/weapon/circuitboard/machine/pacman/mrs category = list("Engineering Machinery") diff --git a/code/modules/research/designs/telecomms_designs.dm b/code/modules/research/designs/telecomms_designs.dm index 0a36d63e6fa..baa6bb689ba 100644 --- a/code/modules/research/designs/telecomms_designs.dm +++ b/code/modules/research/designs/telecomms_designs.dm @@ -9,7 +9,7 @@ req_tech = list("programming" = 2, "engineering" = 2, "bluespace" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/receiver + build_path = /obj/item/weapon/circuitboard/machine/telecomms/receiver category = list("Subspace Telecomms") /datum/design/telecomms_bus @@ -19,7 +19,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/bus + build_path = /obj/item/weapon/circuitboard/machine/telecomms/bus category = list("Subspace Telecomms") /datum/design/telecomms_hub @@ -29,7 +29,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/hub + build_path = /obj/item/weapon/circuitboard/machine/telecomms/hub category = list("Subspace Telecomms") /datum/design/telecomms_relay @@ -39,7 +39,7 @@ req_tech = list("programming" = 2, "engineering" = 2, "bluespace" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/relay + build_path = /obj/item/weapon/circuitboard/machine/telecomms/relay category = list("Subspace Telecomms") /datum/design/telecomms_processor @@ -49,7 +49,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/processor + build_path = /obj/item/weapon/circuitboard/machine/telecomms/processor category = list("Subspace Telecomms") /datum/design/telecomms_server @@ -59,7 +59,7 @@ req_tech = list("programming" = 2, "engineering" = 2) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/server + build_path = /obj/item/weapon/circuitboard/machine/telecomms/server category = list("Subspace Telecomms") /datum/design/subspace_broadcaster @@ -69,5 +69,5 @@ req_tech = list("programming" = 2, "engineering" = 2, "bluespace" = 1) build_type = IMPRINTER materials = list(MAT_GLASS = 1000, "sacid" = 20) - build_path = /obj/item/weapon/circuitboard/telecomms/broadcaster + build_path = /obj/item/weapon/circuitboard/machine/telecomms/broadcaster category = list("Subspace Telecomms") \ No newline at end of file diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm index 85a492092c5..a3b856b5f0f 100644 --- a/code/modules/research/destructive_analyzer.dm +++ b/code/modules/research/destructive_analyzer.dm @@ -15,12 +15,17 @@ Note: Must be placed within 3 tiles of the R&D Console /obj/machinery/r_n_d/destructive_analyzer/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/destructive_analyzer(null) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(null) - component_parts += new /obj/item/weapon/stock_parts/manipulator(null) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(null) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/destructive_analyzer(null) + B.apply_default_parts(src) + +/obj/item/weapon/circuitboard/machine/destructive_analyzer + name = "circuit board (Destructive Analyzer)" + build_path = /obj/machinery/r_n_d/destructive_analyzer + origin_tech = "magnets=2;engineering=2;programming=2" + req_components = list( + /obj/item/weapon/stock_parts/scanning_module = 1, + /obj/item/weapon/stock_parts/manipulator = 1, + /obj/item/weapon/stock_parts/micro_laser = 1) /obj/machinery/r_n_d/destructive_analyzer/RefreshParts() var/T = 0 diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index 7ae08a0338b..62216b39872 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -81,17 +81,21 @@ /obj/machinery/r_n_d/experimentor/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/experimentor(src) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(src) - component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) - component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/experimentor(null) + B.apply_default_parts(src) + trackedIan = locate(/mob/living/simple_animal/pet/dog/corgi/Ian) in mob_list trackedRuntime = locate(/mob/living/simple_animal/pet/cat/Runtime) in mob_list SetTypeReactions() - RefreshParts() + +/obj/item/weapon/circuitboard/machine/experimentor + name = "circuit board (E.X.P.E.R.I-MENTOR)" + build_path = /obj/machinery/r_n_d/experimentor + origin_tech = "magnets=1;engineering=1;programming=1;biotech=1;bluespace=2" + req_components = list( + /obj/item/weapon/stock_parts/scanning_module = 1, + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/weapon/stock_parts/micro_laser = 2) /obj/machinery/r_n_d/experimentor/RefreshParts() for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index e704dd823ae..70c6c1c0451 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -34,19 +34,21 @@ Note: Must be placed west/left of and R&D console to function. /obj/machinery/r_n_d/protolathe/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/protolathe(src) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) - component_parts += new /obj/item/weapon/stock_parts/matter_bin(src) - component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - component_parts += new /obj/item/weapon/stock_parts/manipulator(src) - component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(src) - component_parts += new /obj/item/weapon/reagent_containers/glass/beaker(src) materials = new(src, list(MAT_METAL=1, MAT_GLASS=1, MAT_SILVER=1, MAT_GOLD=1, MAT_DIAMOND=1, MAT_PLASMA=1, MAT_URANIUM=1, MAT_BANANIUM=1)) - RefreshParts() + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/protolathe(null) + B.apply_default_parts(src) reagents.my_atom = src +/obj/item/weapon/circuitboard/machine/protolathe + name = "circuit board (Protolathe)" + build_path = /obj/machinery/r_n_d/protolathe + origin_tech = "engineering=2;programming=2" + req_components = list( + /obj/item/weapon/stock_parts/matter_bin = 2, + /obj/item/weapon/stock_parts/manipulator = 2, + /obj/item/weapon/reagent_containers/glass/beaker = 2) + /obj/machinery/r_n_d/protolathe/Destroy() qdel(materials) return ..() diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index f8f2ef29743..5da672ae25d 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -33,7 +33,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, name = "R&D Console" icon_screen = "rdcomp" icon_keyboard = "rd_key" - circuit = /obj/item/weapon/circuitboard/rdconsole + circuit = /obj/item/weapon/circuitboard/computer/rdconsole var/datum/research/files //Stores all the collected research data. var/obj/item/weapon/disk/tech_disk/t_disk = null //Stores the technology disk. var/obj/item/weapon/disk/design_disk/d_disk = null //Stores the design disk. diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index dc2192aa25e..1e5e26d41ce 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -16,13 +16,17 @@ /obj/machinery/r_n_d/server/New() ..() - component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/rdserver(null) - component_parts += new /obj/item/weapon/stock_parts/scanning_module(null) - component_parts += new /obj/item/stack/cable_coil(null, 1) - component_parts += new /obj/item/stack/cable_coil(null, 1) - RefreshParts() - initialize(); //Agouri + var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/rdserver(null) + B.apply_default_parts(src) + initialize() //Agouri + +/obj/item/weapon/circuitboard/machine/rdserver + name = "circuit board (R&D Server)" + build_path = /obj/machinery/r_n_d/server + origin_tech = "programming=3" + req_components = list( + /obj/item/stack/cable_coil = 2, + /obj/item/weapon/stock_parts/scanning_module = 1) /obj/machinery/r_n_d/server/Destroy() griefProtection() @@ -177,7 +181,7 @@ var/list/servers = list() var/list/consoles = list() var/badmin = 0 - circuit = /obj/item/weapon/circuitboard/rdservercontrol + circuit = /obj/item/weapon/circuitboard/computer/rdservercontrol /obj/machinery/computer/rdservercontrol/Topic(href, href_list) if(..()) diff --git a/code/modules/shuttle/computer.dm b/code/modules/shuttle/computer.dm index 2b5968cc068..74e2343be67 100644 --- a/code/modules/shuttle/computer.dm +++ b/code/modules/shuttle/computer.dm @@ -3,13 +3,13 @@ icon_screen = "shuttle" icon_keyboard = "tech_key" req_access = list( ) - circuit = /obj/item/weapon/circuitboard/shuttle + circuit = /obj/item/weapon/circuitboard/computer/shuttle var/shuttleId var/possible_destinations = "" var/admin_controlled var/no_destination_swap = 0 -/obj/machinery/computer/shuttle/New(location, obj/item/weapon/circuitboard/shuttle/C) +/obj/machinery/computer/shuttle/New(location, obj/item/weapon/circuitboard/computer/shuttle/C) ..() if(istype(C)) possible_destinations = C.possible_destinations diff --git a/code/modules/shuttle/ferry.dm b/code/modules/shuttle/ferry.dm index 0921e074f06..f5b142dc4ed 100644 --- a/code/modules/shuttle/ferry.dm +++ b/code/modules/shuttle/ferry.dm @@ -1,13 +1,13 @@ /obj/machinery/computer/shuttle/ferry name = "transport ferry console" - circuit = /obj/item/weapon/circuitboard/ferry + circuit = /obj/item/weapon/circuitboard/computer/ferry shuttleId = "ferry" possible_destinations = "ferry_home;ferry_away" /obj/machinery/computer/shuttle/ferry/request name = "ferry console" - circuit = /obj/item/weapon/circuitboard/ferry/request + circuit = /obj/item/weapon/circuitboard/computer/ferry/request var/cooldown //prevents spamming admins possible_destinations = "ferry_home" admin_controlled = 1 diff --git a/code/modules/shuttle/white_ship.dm b/code/modules/shuttle/white_ship.dm index 4749a5e8d17..924a210e22a 100644 --- a/code/modules/shuttle/white_ship.dm +++ b/code/modules/shuttle/white_ship.dm @@ -1,6 +1,6 @@ /obj/machinery/computer/shuttle/white_ship name = "White Ship Console" desc = "Used to control the White Ship." - circuit = /obj/item/weapon/circuitboard/white_ship + circuit = /obj/item/weapon/circuitboard/computer/white_ship shuttleId = "whiteship" possible_destinations = "whiteship_away;whiteship_home;whiteship_z4;whiteship_lavaland" \ No newline at end of file diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm index 8e640ed006d..2259bb961f1 100644 --- a/code/modules/telesci/telepad.dm +++ b/code/modules/telesci/telepad.dm @@ -13,7 +13,7 @@ /obj/machinery/telepad/New() ..() component_parts = list() - component_parts += new /obj/item/weapon/circuitboard/telesci_pad(null) + component_parts += new /obj/item/weapon/circuitboard/machine/telesci_pad(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) component_parts += new /obj/item/weapon/stock_parts/capacitor(null) diff --git a/code/modules/telesci/telesci_computer.dm b/code/modules/telesci/telesci_computer.dm index e0f333b8007..59237bfd1b0 100644 --- a/code/modules/telesci/telesci_computer.dm +++ b/code/modules/telesci/telesci_computer.dm @@ -3,7 +3,7 @@ desc = "Used to teleport objects to and from the telescience telepad." icon_screen = "teleport" icon_keyboard = "teleport_key" - circuit = /obj/item/weapon/circuitboard/telesci_console + circuit = /obj/item/weapon/circuitboard/computer/telesci_console var/sending = 1 var/obj/machinery/telepad/telepad = null var/temp_msg = "Telescience control console initialized.
Welcome." diff --git a/icons/obj/stock_parts.dmi b/icons/obj/stock_parts.dmi index 8b5b5b812e4..6589aabb869 100644 Binary files a/icons/obj/stock_parts.dmi and b/icons/obj/stock_parts.dmi differ