diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm
index 83fae86ad6..001bebcd7a 100755
--- a/code/game/machinery/computer/communications.dm
+++ b/code/game/machinery/computer/communications.dm
@@ -132,8 +132,7 @@
return
var/new_sec_level = SECLEVEL2NUM(params["newSecurityLevel"])
- if (new_sec_level != SEC_LEVEL_GREEN && new_sec_level != SEC_LEVEL_BLUE
- && new_sec_level != SEC_LEVEL_AMBER)
+ if (new_sec_level != SEC_LEVEL_GREEN && new_sec_level != SEC_LEVEL_BLUE && new_sec_level != SEC_LEVEL_AMBER)
return
if (GLOB.security_level == new_sec_level)
return
@@ -221,7 +220,7 @@
nuke_request(reason, usr)
to_chat(usr, "Request sent.")
usr.log_message("has requested the nuclear codes from CentCom with reason \"[reason]\"", LOG_SAY)
- priority_announce("The codes for the on-station nuclear self-destruct have been requested by [usr]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self-Destruct Codes Requested", 'sound/ai/commandreport.ogg')
+ priority_announce("The codes for the on-station nuclear self-destruct have been requested by [usr]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self-Destruct Codes Requested", "commandreport")
playsound(src, 'sound/machines/terminal_prompt.ogg', 50, FALSE)
COOLDOWN_START(src, important_action_cooldown, IMPORTANT_ACTION_COOLDOWN)
if ("restoreBackupRoutingData")
diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm
index 002753c5d4..0303117b96 100644
--- a/code/game/mecha/mech_fabricator.dm
+++ b/code/game/mecha/mech_fabricator.dm
@@ -676,4 +676,3 @@
/obj/machinery/mecha_part_fabricator/offstation
link_on_init = FALSE
- circuit = /obj/item/circuitboard/machine/mechfab/offstation
diff --git a/code/game/objects/items/circuitboards/computer_circuitboards.dm b/code/game/objects/items/circuitboards/computer_circuitboards.dm
index bbb2289eb5..f6f8bb6998 100644
--- a/code/game/objects/items/circuitboards/computer_circuitboards.dm
+++ b/code/game/objects/items/circuitboards/computer_circuitboards.dm
@@ -103,89 +103,89 @@
name = "Carbon Dioxide Supply Control (Computer Board)"
build_path = /obj/machinery/computer/atmos_control/tank/carbon_tank
-/obj/item/circuitboard/computer/atmos_control/tank/bz_tank
- name = "BZ Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/bz_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/bz_tank
+// name = "BZ Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/bz_tank
-/obj/item/circuitboard/computer/atmos_control/tank/freon_tank
- name = "Freon Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/freon_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/freon_tank
+// name = "Freon Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/freon_tank
-/obj/item/circuitboard/computer/atmos_control/tank/halon_tank
- name = "Halon Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/halon_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/halon_tank
+// name = "Halon Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/halon_tank
-/obj/item/circuitboard/computer/atmos_control/tank/healium_tank
- name = "Healium Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/healium_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/healium_tank
+// name = "Healium Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/healium_tank
-/obj/item/circuitboard/computer/atmos_control/tank/hydrogen_tank
- name = "Hydrogen Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/hydrogen_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/hydrogen_tank
+// name = "Hydrogen Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/hydrogen_tank
-/obj/item/circuitboard/computer/atmos_control/tank/hypernoblium_tank
- name = "Hypernoblium Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/hypernoblium_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/hypernoblium_tank
+// name = "Hypernoblium Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/hypernoblium_tank
-/obj/item/circuitboard/computer/atmos_control/tank/miasma_tank
- name = "Miasma Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/miasma_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/miasma_tank
+// name = "Miasma Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/miasma_tank
-/obj/item/circuitboard/computer/atmos_control/tank/nitryl_tank
- name = "Nitryl Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/nitryl_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/nitryl_tank
+// name = "Nitryl Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/nitryl_tank
-/obj/item/circuitboard/computer/atmos_control/tank/pluoxium_tank
- name = "Pluoxium Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/pluoxium_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/pluoxium_tank
+// name = "Pluoxium Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/pluoxium_tank
-/obj/item/circuitboard/computer/atmos_control/tank/proto_nitrate_tank
- name = "Proto-Nitrate Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/proto_nitrate_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/proto_nitrate_tank
+// name = "Proto-Nitrate Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/proto_nitrate_tank
-/obj/item/circuitboard/computer/atmos_control/tank/stimulum_tank
- name = "Stimulum Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/stimulum_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/stimulum_tank
+// name = "Stimulum Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/stimulum_tank
-/obj/item/circuitboard/computer/atmos_control/tank/tritium_tank
- name = "Tritium Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/tritium_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/tritium_tank
+// name = "Tritium Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/tritium_tank
-/obj/item/circuitboard/computer/atmos_control/tank/water_vapor
- name = "Water Vapor Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/water_vapor
+// /obj/item/circuitboard/computer/atmos_control/tank/water_vapor
+// name = "Water Vapor Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/water_vapor
-/obj/item/circuitboard/computer/atmos_control/tank/zauker_tank
- name = "Zauker Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/zauker_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/zauker_tank
+// name = "Zauker Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/zauker_tank
-/obj/item/circuitboard/computer/atmos_control/tank/helium_tank
- name = "Helium Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/helium_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/helium_tank
+// name = "Helium Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/helium_tank
-/obj/item/circuitboard/computer/atmos_control/tank/antinoblium_tank
- name = "Antinoblium Supply Control (Computer Board)"
- build_path = /obj/machinery/computer/atmos_control/tank/antinoblium_tank
+// /obj/item/circuitboard/computer/atmos_control/tank/antinoblium_tank
+// name = "Antinoblium Supply Control (Computer Board)"
+// build_path = /obj/machinery/computer/atmos_control/tank/antinoblium_tank
/obj/item/circuitboard/computer/auxiliary_base
name = "Auxiliary Base Management Console (Computer Board)"
icon_state = "engineering"
- build_path = /obj/machinery/computer/auxiliary_base
+ build_path = /obj/machinery/computer/auxillary_base
/obj/item/circuitboard/computer/base_construction
name = "circuit board (Generic Base Construction Console)"
icon_state = "engineering"
build_path = /obj/machinery/computer/camera_advanced/base_construction
-/obj/item/circuitboard/computer/base_construction/aux
- name = "circuit board (Aux Mining Base Construction Console)"
- icon_state = "engineering"
- build_path = /obj/machinery/computer/camera_advanced/base_construction/aux
+// /obj/item/circuitboard/computer/base_construction/aux
+// name = "circuit board (Aux Mining Base Construction Console)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/computer/camera_advanced/base_construction/aux
-/obj/item/circuitboard/computer/base_construction/centcom
- name = "circuit board (Centcom Base Construction Console)"
- icon_state = "engineering"
- build_path = /obj/machinery/computer/camera_advanced/base_construction/centcom
+// /obj/item/circuitboard/computer/base_construction/centcom
+// name = "circuit board (Centcom Base Construction Console)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/computer/camera_advanced/base_construction/centcom
/obj/item/circuitboard/computer/comm_monitor
name = "Telecommunications Monitor (Computer Board)"
@@ -336,10 +336,10 @@
icon_state = "generic"
build_path = /obj/machinery/computer/shuttle/white_ship
-/obj/item/circuitboard/computer/white_ship/bridge
- name = "White Ship Bridge (Computer Board)"
- icon_state = "generic"
- build_path = /obj/machinery/computer/shuttle/white_ship/bridge
+// /obj/item/circuitboard/computer/white_ship/bridge
+// name = "White Ship Bridge (Computer Board)"
+// icon_state = "generic"
+// build_path = /obj/machinery/computer/shuttle/white_ship/bridge
/obj/item/circuitboard/computer/white_ship/pod
name = "Salvage Pod (Computer Board)"
@@ -349,9 +349,13 @@
name = "Salvage Pod Recall (Computer Board)"
build_path = /obj/machinery/computer/shuttle/white_ship/pod/recall
-/obj/item/circuitboard/computer/bountypad
- name = "Bounty Pad (Computer Board)"
- build_path = /obj/machinery/computer/piratepad_control/civilian
+/obj/item/circuitboard/computer/snow_taxi
+ name = "Snow Taxi (Computer Board)"
+ build_path = /obj/machinery/computer/shuttle/snow_taxi
+
+// /obj/item/circuitboard/computer/bountypad
+// name = "Bounty Pad (Computer Board)"
+// build_path = /obj/machinery/computer/piratepad_control/civilian
/obj/item/circuitboard/computer/security/shuttle
name = "Shuttlelinking Security Cameras (Computer Board)"
@@ -421,11 +425,28 @@
name = "Nanite Cloud Control (Computer Board)"
icon_state = "science"
build_path = /obj/machinery/computer/nanite_cloud_controller
+/obj/item/circuitboard/computer/rdconsole/production
+ name = "R&D Console Production Only (Computer Board)"
+ icon_state = "science"
+ build_path = /obj/machinery/computer/rdconsole/production
/obj/item/circuitboard/computer/rdconsole
name = "R&D Console (Computer Board)"
icon_state = "science"
- build_path = /obj/machinery/computer/rdconsole
+ build_path = /obj/machinery/computer/rdconsole/core
+
+/obj/item/circuitboard/computer/rdconsole/attackby(obj/item/I, mob/user, params)
+ if(istype(I, /obj/item/screwdriver))
+ if(build_path == /obj/machinery/computer/rdconsole/core)
+ name = "R&D Console - Robotics (Computer Board)"
+ build_path = /obj/machinery/computer/rdconsole/robotics
+ to_chat(user, "Access protocols successfully updated.")
+ else
+ name = "R&D Console (Computer Board)"
+ build_path = /obj/machinery/computer/rdconsole/core
+ to_chat(user, "Defaulting access protocols.")
+ else
+ return ..()
/obj/item/circuitboard/computer/rdservercontrol
name = "R&D Server Control (Computer Board)"
@@ -457,10 +478,10 @@
icon_state = "science"
build_path = /obj/machinery/computer/scan_consolenew
-/obj/item/circuitboard/computer/mechpad
- name = "Mecha Orbital Pad Console (Computer Board)"
- icon_state = "science"
- build_path = /obj/machinery/computer/mechpad
+// /obj/item/circuitboard/computer/mechpad
+// name = "Mecha Orbital Pad Console (Computer Board)"
+// icon_state = "science"
+// build_path = /obj/machinery/computer/mechpad
//Security
@@ -489,10 +510,10 @@
icon_state = "security"
build_path = /obj/machinery/computer/secure_data
-/obj/item/circuitboard/computer/warrant
- name = "Security Warrant Viewer (Computer Board)"
- icon_state = "security"
- build_path = /obj/machinery/computer/warrant
+// /obj/item/circuitboard/computer/warrant
+// name = "Security Warrant Viewer (Computer Board)"
+// icon_state = "security"
+// build_path = /obj/machinery/computer/warrant
/obj/item/circuitboard/computer/security
name = "Security Cameras (Computer Board)"
@@ -562,6 +583,10 @@
name = "Supply Request Console (Computer Board)"
build_path = /obj/machinery/computer/cargo/request
+/obj/item/circuitboard/computer/bounty
+ name = "Nanotrasen Bounty Console (Computer Board)"
+ build_path = /obj/machinery/computer/bounty
+
/obj/item/circuitboard/computer/ferry
name = "Transport Ferry (Computer Board)"
icon_state = "supply"
@@ -589,3 +614,8 @@
/obj/item/circuitboard/computer/shuttle/docker
name = "Shuttle Navigation Computer (Computer Board)"
build_path = /obj/machinery/computer/camera_advanced/shuttle_docker/custom
+
+// DIY shuttle
+/obj/item/circuitboard/computer/shuttle/flight_control
+ name = "Shuttle Flight Control (Computer Board)"
+ build_path = /obj/machinery/computer/custom_shuttle
diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm
index f03a4fb9bc..5d8ee1229a 100644
--- a/code/game/objects/items/circuitboards/machine_circuitboards.dm
+++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm
@@ -66,6 +66,51 @@
/obj/item/stock_parts/manipulator = 1,
/obj/item/stack/sheet/glass = 1)
+/obj/item/circuitboard/machine/tesla_coil
+ name = "Tesla Controller (Machine Board)"
+ desc = "You can use a screwdriver to switch between Research and Power Generation."
+ icon_state = "engineering"
+ build_path = /obj/machinery/power/tesla_coil
+ req_components = list(/obj/item/stock_parts/capacitor = 1)
+ needs_anchored = FALSE
+
+#define PATH_POWERCOIL /obj/machinery/power/tesla_coil/power
+#define PATH_RPCOIL /obj/machinery/power/tesla_coil/research
+
+/obj/item/circuitboard/machine/tesla_coil/Initialize()
+ . = ..()
+ if(build_path)
+ build_path = PATH_POWERCOIL
+
+/obj/item/circuitboard/machine/tesla_coil/attackby(obj/item/I, mob/user, params)
+ if(istype(I, /obj/item/screwdriver))
+ var/obj/item/circuitboard/new_type
+ var/new_setting
+ switch(build_path)
+ if(PATH_POWERCOIL)
+ new_type = /obj/item/circuitboard/machine/tesla_coil/research
+ new_setting = "Research"
+ if(PATH_RPCOIL)
+ new_type = /obj/item/circuitboard/machine/tesla_coil/power
+ new_setting = "Power"
+ name = initial(new_type.name)
+ build_path = initial(new_type.build_path)
+ I.play_tool_sound(src)
+ to_chat(user, "You change the circuitboard setting to \"[new_setting]\".")
+ else
+ return ..()
+
+/obj/item/circuitboard/machine/tesla_coil/power
+ name = "Tesla Coil (Machine Board)"
+ build_path = PATH_POWERCOIL
+
+/obj/item/circuitboard/machine/tesla_coil/research
+ name = "Tesla Corona Researcher (Machine Board)"
+ build_path = PATH_RPCOIL
+
+#undef PATH_POWERCOIL
+#undef PATH_RPCOIL
+
/obj/item/circuitboard/machine/grounding_rod
name = "Grounding Rod (Machine Board)"
icon_state = "engineering"
@@ -212,6 +257,10 @@
icon_state = "engineering"
build_path = /obj/machinery/power/port_gen/pacman/super
+/obj/item/circuitboard/machine/pacman/mrs
+ name = "MRSPACMAN-type Generator (Machine Board)"
+ build_path = /obj/machinery/power/port_gen/pacman/mrs
+
/obj/item/circuitboard/machine/power_compressor
name = "Power Compressor (Machine Board)"
icon_state = "engineering"
@@ -264,12 +313,12 @@
/obj/item/stack/sheet/mineral/uranium = 10,
/obj/item/stack/sheet/mineral/plasma = 5)
-/obj/item/circuitboard/machine/scanner_gate
- name = "Scanner Gate (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/scanner_gate
- req_components = list(
- /obj/item/stock_parts/scanning_module = 3)
+// /obj/item/circuitboard/machine/scanner_gate
+// name = "Scanner Gate (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/scanner_gate
+// req_components = list(
+// /obj/item/stock_parts/scanning_module = 3)
/obj/item/circuitboard/machine/smes
name = "SMES (Machine Board)"
@@ -287,8 +336,7 @@
/obj/item/circuitboard/machine/thermomachine
name = "Thermomachine (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/atmospherics/components/unary/thermomachine/freezer
+ desc = "You can use a screwdriver to switch between heater and freezer."
var/pipe_layer = PIPING_LAYER_DEFAULT
req_components = list(
/obj/item/stock_parts/matter_bin = 2,
@@ -296,61 +344,103 @@
/obj/item/stack/cable_coil = 1,
/obj/item/stack/sheet/glass = 1)
-/obj/item/circuitboard/machine/thermomachine/multitool_act(mob/living/user, obj/item/multitool/I)
+#define PATH_FREEZER /obj/machinery/atmospherics/components/unary/thermomachine/freezer
+#define PATH_HEATER /obj/machinery/atmospherics/components/unary/thermomachine/heater
+
+/obj/item/circuitboard/machine/thermomachine/Initialize()
. = ..()
- if (istype(I))
+ if(!build_path)
+ if(prob(50))
+ name = "Freezer (Machine Board)"
+ build_path = PATH_FREEZER
+ else
+ name = "Heater (Machine Board)"
+ build_path = PATH_HEATER
+
+/obj/item/circuitboard/machine/thermomachine/attackby(obj/item/I, mob/user, params)
+ if(istype(I, /obj/item/screwdriver))
+ var/obj/item/circuitboard/new_type
+ var/new_setting
+ switch(build_path)
+ if(PATH_FREEZER)
+ new_type = /obj/item/circuitboard/machine/thermomachine/heater
+ new_setting = "Heater"
+ if(PATH_HEATER)
+ new_type = /obj/item/circuitboard/machine/thermomachine/freezer
+ new_setting = "Freezer"
+ name = initial(new_type.name)
+ build_path = initial(new_type.build_path)
+ I.play_tool_sound(src)
+ to_chat(user, "You change the circuitboard setting to \"[new_setting]\".")
+ return
+
+ if(I.tool_behaviour == TOOL_MULTITOOL)
pipe_layer = (pipe_layer >= PIPING_LAYER_MAX) ? PIPING_LAYER_MIN : (pipe_layer + 1)
to_chat(user, "You change the circuitboard to layer [pipe_layer].")
+ return
+
+ . = ..()
/obj/item/circuitboard/machine/thermomachine/examine()
. = ..()
- . += "It is set to layer [pipe_layer]."
+ . += "It is set to layer [pipe_layer]. Use a Multitool on the circuit to change this."
-/obj/item/circuitboard/machine/HFR_fuel_input
- name = "HFR Fuel Input (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/atmospherics/components/unary/hypertorus/fuel_input
- req_components = list(
- /obj/item/stack/sheet/plasteel = 5)
+/obj/item/circuitboard/machine/thermomachine/heater
+ name = "Heater (Machine Board)"
+ build_path = PATH_HEATER
-/obj/item/circuitboard/machine/HFR_waste_output
- name = "HFR Waste Output (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/atmospherics/components/unary/hypertorus/waste_output
- req_components = list(
- /obj/item/stack/sheet/plasteel = 5)
+/obj/item/circuitboard/machine/thermomachine/freezer
+ name = "Freezer (Machine Board)"
+ build_path = PATH_FREEZER
-/obj/item/circuitboard/machine/HFR_moderator_input
- name = "HFR Moderator Input (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/atmospherics/components/unary/hypertorus/moderator_input
- req_components = list(
- /obj/item/stack/sheet/plasteel = 5)
+#undef PATH_FREEZER
+#undef PATH_HEATER
-/obj/item/circuitboard/machine/HFR_core
- name = "HFR core (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/atmospherics/components/unary/hypertorus/core
- req_components = list(
- /obj/item/stack/cable_coil = 10,
- /obj/item/stack/sheet/glass = 10,
- /obj/item/stack/sheet/plasteel = 10)
+// /obj/item/circuitboard/machine/HFR_fuel_input
+// name = "HFR Fuel Input (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/atmospherics/components/unary/hypertorus/fuel_input
+// req_components = list(
+// /obj/item/stack/sheet/plasteel = 5)
-/obj/item/circuitboard/machine/HFR_corner
- name = "HFR Corner (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/hypertorus/corner
- req_components = list(
- /obj/item/stack/sheet/plasteel = 5)
+// /obj/item/circuitboard/machine/HFR_waste_output
+// name = "HFR Waste Output (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/atmospherics/components/unary/hypertorus/waste_output
+// req_components = list(
+// /obj/item/stack/sheet/plasteel = 5)
-/obj/item/circuitboard/machine/HFR_interface
- name = "HFR Interface (Machine Board)"
- icon_state = "engineering"
- build_path = /obj/machinery/hypertorus/interface
- req_components = list(
- /obj/item/stack/cable_coil = 10,
- /obj/item/stack/sheet/glass = 10,
- /obj/item/stack/sheet/plasteel = 5)
+// /obj/item/circuitboard/machine/HFR_moderator_input
+// name = "HFR Moderator Input (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/atmospherics/components/unary/hypertorus/moderator_input
+// req_components = list(
+// /obj/item/stack/sheet/plasteel = 5)
+
+// /obj/item/circuitboard/machine/HFR_core
+// name = "HFR core (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/atmospherics/components/unary/hypertorus/core
+// req_components = list(
+// /obj/item/stack/cable_coil = 10,
+// /obj/item/stack/sheet/glass = 10,
+// /obj/item/stack/sheet/plasteel = 10)
+
+// /obj/item/circuitboard/machine/HFR_corner
+// name = "HFR Corner (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/hypertorus/corner
+// req_components = list(
+// /obj/item/stack/sheet/plasteel = 5)
+
+// /obj/item/circuitboard/machine/HFR_interface
+// name = "HFR Interface (Machine Board)"
+// icon_state = "engineering"
+// build_path = /obj/machinery/hypertorus/interface
+// req_components = list(
+// /obj/item/stack/cable_coil = 10,
+// /obj/item/stack/sheet/glass = 10,
+// /obj/item/stack/sheet/plasteel = 5)
//Generic
@@ -478,17 +568,17 @@
/obj/item/stack/cable_coil = 3)
needs_anchored = FALSE
-/obj/item/circuitboard/machine/electrolyzer
- name = "Electrolyzer (Machine Board)"
- icon_state = "generic"
- build_path = /obj/machinery/electrolyzer
- req_components = list(
- /obj/item/stock_parts/electrolite = 2,
- /obj/item/stock_parts/capacitor = 2,
- /obj/item/stack/cable_coil = 5,
- /obj/item/stack/sheet/glass = 1)
+// /obj/item/circuitboard/machine/electrolyzer
+// name = "Electrolyzer (Machine Board)"
+// icon_state = "generic"
+// build_path = /obj/machinery/electrolyzer
+// req_components = list(
+// /obj/item/stock_parts/electrolite = 2,
+// /obj/item/stock_parts/capacitor = 2,
+// /obj/item/stack/cable_coil = 5,
+// /obj/item/stack/sheet/glass = 1)
- needs_anchored = FALSE
+// needs_anchored = FALSE
/obj/item/circuitboard/machine/techfab
@@ -594,24 +684,30 @@
/obj/item/stack/sheet/glass = 1,
/obj/item/vending_refill/donksoft = 1)
-/obj/item/circuitboard/machine/bountypad
- name = "Civilian Bounty Pad (Machine Board)"
- icon_state = "generic"
- build_path = /obj/machinery/piratepad/civilian
- req_components = list(
- /obj/item/stock_parts/card_reader = 1,
- /obj/item/stock_parts/scanning_module = 1,
- /obj/item/stock_parts/micro_laser = 1
- )
+// /obj/item/circuitboard/machine/bountypad
+// name = "Civilian Bounty Pad (Machine Board)"
+// icon_state = "generic"
+// build_path = /obj/machinery/piratepad/civilian
+// req_components = list(
+// /obj/item/stock_parts/card_reader = 1,
+// /obj/item/stock_parts/scanning_module = 1,
+// /obj/item/stock_parts/micro_laser = 1
+// )
-/obj/item/circuitboard/machine/accounting
- name = "Account Registration Device (Machine Board)"
- icon_state = "command"
- build_path = /obj/machinery/accounting
- req_components = list(
- /obj/item/stock_parts/card_reader = 1,
- /obj/item/stock_parts/scanning_module = 1
- )
+// /obj/item/circuitboard/machine/accounting
+// name = "Account Registration Device (Machine Board)"
+// icon_state = "command"
+// build_path = /obj/machinery/accounting
+// req_components = list(
+// /obj/item/stock_parts/card_reader = 1,
+// /obj/item/stock_parts/scanning_module = 1
+// )
+
+/obj/item/circuitboard/machine/colormate
+ name = "Colormate (Machine Board)"
+ icon_state = "generic"
+ build_path = /obj/machinery/gear_painter
+ req_components = list()
//Medical
@@ -680,6 +776,16 @@
else
return ..()
+/obj/item/circuitboard/machine/autobottler
+ name = "Auto-Bottler (Machine Board)"
+ icon_state = "medical"
+ build_path = /obj/machinery/rnd/production/protolathe/department/autobottler //Manips make you print things cheaper, even chems
+ req_components = list(/obj/item/stock_parts/matter_bin = 5,
+ /obj/item/stack/sheet/glass = 2,
+ /obj/item/stock_parts/capacitor = 1,
+ /obj/item/stack/cable_coil = 5,
+ /obj/item/reagent_containers/glass/beaker = 6) //So it can hold lots of chems
+
/obj/item/circuitboard/machine/bloodbankgen
name = "Blood Bank Generator (Machine Board)"
icon_state = "medical"
@@ -690,6 +796,17 @@
/obj/item/stack/cable_coil = 5,
/obj/item/stack/sheet/glass = 1)
+/obj/item/circuitboard/machine/clonescanner
+ name = "Cloning Scanner (Machine Board)"
+ icon_state = "medical"
+ build_path = /obj/machinery/dna_scannernew
+ req_components = list(
+ /obj/item/stock_parts/scanning_module = 1,
+ /obj/item/stock_parts/matter_bin = 1,
+ /obj/item/stock_parts/micro_laser = 1,
+ /obj/item/stack/sheet/glass = 1,
+ /obj/item/stack/cable_coil = 2)
+
/obj/item/circuitboard/machine/clonepod
name = "Clone Pod (Machine Board)"
icon_state = "medical"
@@ -714,12 +831,12 @@
/obj/item/stack/cable_coil = 1,
/obj/item/stack/sheet/glass = 4)
-/obj/item/circuitboard/machine/fat_sucker
- name = "Lipid Extractor (Machine Board)"
- icon_state = "medical"
- build_path = /obj/machinery/fat_sucker
- req_components = list(/obj/item/stock_parts/micro_laser = 1,
- /obj/item/kitchen/fork = 1)
+// /obj/item/circuitboard/machine/fat_sucker
+// name = "Lipid Extractor (Machine Board)"
+// icon_state = "medical"
+// build_path = /obj/machinery/fat_sucker
+// req_components = list(/obj/item/stock_parts/micro_laser = 1,
+// /obj/item/kitchen/fork = 1)
/obj/item/circuitboard/machine/harvester
name = "Harvester (Machine Board)"
@@ -727,27 +844,27 @@
build_path = /obj/machinery/harvester
req_components = list(/obj/item/stock_parts/micro_laser = 4)
-/obj/item/circuitboard/machine/medical_kiosk
- name = "Medical Kiosk (Machine Board)"
- icon_state = "medical"
- build_path = /obj/machinery/medical_kiosk
- var/custom_cost = 10
- req_components = list(
- /obj/item/healthanalyzer = 1,
- /obj/item/stock_parts/scanning_module = 1)
+// /obj/item/circuitboard/machine/medical_kiosk
+// name = "Medical Kiosk (Machine Board)"
+// icon_state = "medical"
+// build_path = /obj/machinery/medical_kiosk
+// var/custom_cost = 10
+// req_components = list(
+// /obj/item/healthanalyzer = 1,
+// /obj/item/stock_parts/scanning_module = 1)
-/obj/item/circuitboard/machine/medical_kiosk/multitool_act(mob/living/user)
- . = ..()
- var/new_cost = input("Set a new cost for using this medical kiosk.","New cost", custom_cost) as num|null
- if(!new_cost || (loc != user))
- to_chat(user, "You must hold the circuitboard to change its cost!")
- return
- custom_cost = clamp(round(new_cost, 1), 10, 1000)
- to_chat(user, "The cost is now set to [custom_cost].")
+// /obj/item/circuitboard/machine/medical_kiosk/multitool_act(mob/living/user)
+// . = ..()
+// var/new_cost = input("Set a new cost for using this medical kiosk.","New cost", custom_cost) as num|null
+// if(!new_cost || (loc != user))
+// to_chat(user, "You must hold the circuitboard to change its cost!")
+// return
+// custom_cost = clamp(round(new_cost, 1), 10, 1000)
+// to_chat(user, "The cost is now set to [custom_cost].")
-/obj/item/circuitboard/machine/medical_kiosk/examine(mob/user)
- . = ..()
- . += "The cost to use this kiosk is set to [custom_cost]."
+// /obj/item/circuitboard/machine/medical_kiosk/examine(mob/user)
+// . = ..()
+// . += "The cost to use this kiosk is set to [custom_cost]."
/obj/item/circuitboard/machine/limbgrower
name = "Limb Grower (Machine Board)"
@@ -802,14 +919,14 @@
/obj/item/stock_parts/cell = 1)
needs_anchored = FALSE
-/obj/item/circuitboard/machine/stasis
- name = "\improper Lifeform Stasis Unit (Machine Board)"
- icon_state = "medical"
- build_path = /obj/machinery/stasis
- req_components = list(
- /obj/item/stack/cable_coil = 3,
- /obj/item/stock_parts/manipulator = 1,
- /obj/item/stock_parts/capacitor = 1)
+// /obj/item/circuitboard/machine/stasis
+// name = "\improper Lifeform Stasis Unit (Machine Board)"
+// icon_state = "medical"
+// build_path = /obj/machinery/stasis
+// req_components = list(
+// /obj/item/stack/cable_coil = 3,
+// /obj/item/stock_parts/manipulator = 1,
+// /obj/item/stock_parts/capacitor = 1)
/obj/item/circuitboard/machine/medipen_refiller
name = "Medipen Refiller (Machine Board)"
@@ -996,11 +1113,11 @@
/obj/item/stack/sheet/glass = 1,
/obj/item/stack/cable_coil = 2)
-/obj/item/circuitboard/machine/mechpad
- name = "Mecha Orbital Pad (Machine Board)"
- icon_state = "science"
- build_path = /obj/machinery/mechpad
- req_components = list()
+// /obj/item/circuitboard/machine/mechpad
+// name = "Mecha Orbital Pad (Machine Board)"
+// icon_state = "science"
+// build_path = /obj/machinery/mechpad
+// req_components = list()
//Security
@@ -1073,12 +1190,12 @@
build_path = /obj/machinery/deepfryer
req_components = list(/obj/item/stock_parts/micro_laser = 1)
needs_anchored = FALSE
-/obj/item/circuitboard/machine/griddle
- name = "circuit board (Griddle)"
- icon_state = "service"
- build_path = /obj/machinery/griddle
- req_components = list(/obj/item/stock_parts/micro_laser = 1)
- needs_anchored = FALSE
+// /obj/item/circuitboard/machine/griddle
+// name = "circuit board (Griddle)"
+// icon_state = "service"
+// build_path = /obj/machinery/griddle
+// req_components = list(/obj/item/stock_parts/micro_laser = 1)
+// needs_anchored = FALSE
/obj/item/circuitboard/machine/dish_drive
name = "Dish Drive (Machine Board)"
@@ -1126,6 +1243,10 @@
/obj/item/stack/sheet/glass = 1)
needs_anchored = FALSE
+/obj/item/circuitboard/machine/hydroponics/automagic
+ name = "Automatic Hydroponics Tray (Machine Board)"
+ build_path = /obj/machinery/hydroponics/constructable/automagic
+
/obj/item/circuitboard/machine/microwave
name = "Microwave (Machine Board)"
icon_state = "service"
@@ -1191,8 +1312,8 @@
name = "Vend-A-Tray (Machine Board)"
icon_state = "service"
build_path = /obj/structure/displaycase/forsale
- req_components = list(
- /obj/item/stock_parts/card_reader = 1)
+ req_components = list()
+ // /obj/item/stock_parts/card_reader = 1)
//Supply
@@ -1248,7 +1369,7 @@
/obj/item/stack/cable_coil = 5)
/obj/item/circuitboard/machine/techfab/department/cargo
- name = "\impropfierer Departmental Techfab (Machine Board) - Cargo"
+ name = "\improper Departmental Techfab (Machine Board) - Cargo"
icon_state = "supply"
build_path = /obj/machinery/rnd/production/techfab/department/cargo
@@ -1297,16 +1418,16 @@
/obj/item/stock_parts/scanning_module = 2
)
-/obj/item/circuitboard/machine/plumbing_receiver
- name = "Chemical Recipient (Machine Board)"
- icon_state = "medical"
- build_path = /obj/machinery/plumbing/receiver
- req_components = list(
- /obj/item/stack/ore/bluespace_crystal = 1,
- /obj/item/stock_parts/capacitor = 2,
- /obj/item/stack/sheet/glass = 1)
- def_components = list(/obj/item/stack/ore/bluespace_crystal = /obj/item/stack/ore/bluespace_crystal/artificial)
- needs_anchored = FALSE
+// /obj/item/circuitboard/machine/plumbing_receiver
+// name = "Chemical Recipient (Machine Board)"
+// icon_state = "medical"
+// build_path = /obj/machinery/plumbing/receiver
+// req_components = list(
+// /obj/item/stack/ore/bluespace_crystal = 1,
+// /obj/item/stock_parts/capacitor = 2,
+// /obj/item/stack/sheet/glass = 1)
+// def_components = list(/obj/item/stack/ore/bluespace_crystal = /obj/item/stack/ore/bluespace_crystal/artificial)
+// needs_anchored = FALSE
// /obj/item/circuitboard/machine/skill_station
// name = "Skill Station (Machine Board)"
diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm
index 2eda9f126a..5fdb22010e 100644
--- a/code/game/objects/structures/displaycase.dm
+++ b/code/game/objects/structures/displaycase.dm
@@ -345,7 +345,7 @@
name = initial(I.name)
icon = initial(I.icon)
icon_state = initial(I.icon_state)
-/* Selling people in jars is currently disabled.
+
/obj/structure/displaycase/forsale
name = "vend-a-tray"
icon = 'icons/obj/stationobjs.dmi'
@@ -354,9 +354,9 @@
density = FALSE
max_integrity = 100
req_access = null
- showpiece_type = /obj/item/reagent_containers/food
+ start_showpiece_type = /obj/item/reagent_containers/food
alert = FALSE //No, we're not calling the fire department because someone stole your cookie.
- glass_fix = FALSE //Fixable with tools instead.
+ // glass_fix = FALSE //Fixable with tools instead.
///The price of the item being sold. Altered by grab intent ID use.
var/sale_price = 20
///The Account which will receive payment for purchases. Set by the first ID to swipe the tray.
@@ -437,7 +437,7 @@
payments_acc.adjust_money(sale_price)
usr.put_in_hands(showpiece)
to_chat(usr, "You purchase [showpiece] for [sale_price] credits.")
- playsound(src, 'sound/effects/cashregister.ogg', 40, TRUE)
+ // playsound(src, 'sound/effects/cashregister.ogg', 40, TRUE)
icon = 'icons/obj/stationobjs.dmi'
flick("laserbox_vend", src)
showpiece = null
@@ -553,4 +553,3 @@
/obj/structure/displaycase/forsale/kitchen
desc = "A display case with an ID-card swiper. Use your ID to purchase the contents. Meant for the bartender and chef."
req_one_access = list(ACCESS_KITCHEN, ACCESS_BAR)
-*/
diff --git a/code/modules/cargo/packs/vending.dm b/code/modules/cargo/packs/vending.dm
index 810cfd8d6e..e55f24d91e 100644
--- a/code/modules/cargo/packs/vending.dm
+++ b/code/modules/cargo/packs/vending.dm
@@ -79,7 +79,7 @@
desc = "A fun way to spend the shift. Contains unmentionable desires."
cost = 2000
contraband = TRUE
- contains = list(/obj/item/vending_refill/kink, /obj/item/circuitboard/machine/kinkmate)
+ contains = list(/obj/item/vending_refill/kink)
crate_name = "Kinkmate construction kit"
/datum/supply_pack/vending/medical
diff --git a/code/modules/mining/aux_base.dm b/code/modules/mining/aux_base.dm
index b10177ebaf..feb4b4b2da 100644
--- a/code/modules/mining/aux_base.dm
+++ b/code/modules/mining/aux_base.dm
@@ -25,7 +25,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also
var/possible_destinations
clockwork = TRUE
var/obj/item/gps/internal/base/locator
- circuit = /obj/item/circuitboard/computer/auxillary_base
+ circuit = /obj/item/circuitboard/computer/auxiliary_base
/obj/machinery/computer/auxillary_base/Initialize()
. = ..()
diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm
index dd315a03b5..3634af924c 100644
--- a/code/modules/vending/_vending.dm
+++ b/code/modules/vending/_vending.dm
@@ -162,10 +162,6 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C
///Name of lighting mask for the vending machine
var/light_mask
-/obj/item/circuitboard
- ///determines if the circuit board originated from a vendor off station or not.
- var/onstation = TRUE
-
/**
* Initialize the vending machine
*
diff --git a/tgui/packages/tgui-panel/Panel.js b/tgui/packages/tgui-panel/Panel.js
index fdd7977f4e..b04cd62967 100644
--- a/tgui/packages/tgui-panel/Panel.js
+++ b/tgui/packages/tgui-panel/Panel.js
@@ -33,7 +33,7 @@ export const Panel = (props, context) => {
}
}
return (
-
+
@@ -116,7 +116,7 @@ export const Panel = (props, context) => {
const HoboPanel = (props, context) => {
const settings = useSettings(context);
return (
-
+