mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 11:34:19 +01:00
Some more work on the Telecomms:
You can now access a hidden maintenance interface in all the telecomm machinery by using a Multitool on them. You can now build telecommunication machines, albeit they require a substantial amount of research and materials to make. Added in a few new stock parts constructable in the R&D Protolathe. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2844 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -309,6 +309,7 @@
|
||||
m_amt = 50
|
||||
g_amt = 20
|
||||
origin_tech = "magnets=1;engineering=1"
|
||||
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
|
||||
|
||||
/obj/item/blueprints
|
||||
name = "station blueprints"
|
||||
|
||||
@@ -458,6 +458,7 @@
|
||||
var/registered = null
|
||||
var/assignment = null
|
||||
var/obj/item/weapon/photo/PHOTO = null
|
||||
var/dorm = 0 // determines if this ID has claimed a dorm already
|
||||
|
||||
/obj/item/weapon/card/id/gold
|
||||
name = "identification card"
|
||||
@@ -1668,6 +1669,63 @@
|
||||
rating = 3
|
||||
m_amt = 80
|
||||
|
||||
// Subspace stock parts
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/ansible
|
||||
name = "Subspace Ansible"
|
||||
icon_state = "subspace_ansible"
|
||||
desc = "A compact module capable of sensing extradimensional activity."
|
||||
origin_tech = "programming=3;magnets=5;materials=4;bluespace=2"
|
||||
m_amt = 30
|
||||
g_amt = 10
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/filter
|
||||
name = "Hyperwave Filter"
|
||||
icon_state = "hyperwave_filter"
|
||||
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
|
||||
origin_tech = "programming=4;magnets=2"
|
||||
m_amt = 30
|
||||
g_amt = 10
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/amplifier
|
||||
name = "Subspace Amplifier"
|
||||
icon_state = "subspace_amplifier"
|
||||
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
|
||||
origin_tech = "programming=3;magnets=4;materials=4;bluespace=2"
|
||||
m_amt = 30
|
||||
g_amt = 10
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/treatment
|
||||
name = "Subspace Treatment Disk"
|
||||
icon_state = "treatment_disk"
|
||||
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
|
||||
origin_tech = "programming=3;magnets=2;materials=5;bluespace=2"
|
||||
m_amt = 30
|
||||
g_amt = 10
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/analyzer
|
||||
name = "Subspace Wavelength Analyzer"
|
||||
icon_state = "treatment_disk"
|
||||
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
|
||||
origin_tech = "programming=3;magnets=4;materials=4;bluespace=2"
|
||||
m_amt = 30
|
||||
g_amt = 10
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/crystal
|
||||
name = "Ansible Crystal"
|
||||
icon_state = "ansible_crystal"
|
||||
desc = "A crystal made from pure glass used to transmit laser databursts to subspace."
|
||||
origin_tech = "magnets=4;materials=4;bluespace=2"
|
||||
g_amt = 50
|
||||
|
||||
/obj/item/weapon/stock_parts/subspace/transmitter
|
||||
name = "Subspace Transmitter"
|
||||
icon_state = "subspace_transmitter"
|
||||
desc = "A large piece of equipment used to open a window into the subspace dimension."
|
||||
origin_tech = "magnets=5;materials=5;bluespace=3"
|
||||
m_amt = 50
|
||||
|
||||
|
||||
/obj/item/weapon/ectoplasm
|
||||
name = "ectoplasm"
|
||||
desc = "spooky"
|
||||
|
||||
@@ -234,3 +234,73 @@ obj/item/weapon/circuitboard/rdserver
|
||||
"/obj/item/weapon/stock_parts/micro_laser" = 1,
|
||||
"/obj/item/weapon/stock_parts/console_screen" = 1,
|
||||
"/obj/item/weapon/cable_coil" = 2,)
|
||||
|
||||
|
||||
// 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=4;engineering=3;bluespace=2"
|
||||
frame_desc = "Requires 1 Subspace Ansible, 1 Hyperwave Filter, 2 Manipulators, and 1 Advanced Scanning Module."
|
||||
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/scanning_module/adv" = 1)
|
||||
|
||||
/obj/item/weapon/circuitboard/telecomms/bus
|
||||
name = "Circuit Board (Bus Mainframe)"
|
||||
build_path = "/obj/machinery/telecomms/bus"
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;engineering=4"
|
||||
frame_desc = "Requires 2 Manipulators, 1 Cable Coil and 1 Hyperwave Filter."
|
||||
req_components = list(
|
||||
"/obj/item/weapon/stock_parts/manipulator" = 2,
|
||||
"/obj/item/weapon/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=4;engineering=4"
|
||||
frame_desc = "Requires 5 Manipulators, 1 Hyperwave Filter, 2 Treatment Disks, 1 Wavelength Analyzer, 2 Cable Coils and 1 Subspace Amplifier."
|
||||
req_components = list(
|
||||
"/obj/item/weapon/stock_parts/manipulator" = 5,
|
||||
"/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/weapon/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=4;engineering=4"
|
||||
frame_desc = "Requires 2 Manipulators, 1 Cable Coil and 1 Hyperwave Filter."
|
||||
req_components = list(
|
||||
"/obj/item/weapon/stock_parts/manipulator" = 2,
|
||||
"/obj/item/weapon/cable_coil" = 1,
|
||||
"/obj/item/weapon/stock_parts/subspace/filter" = 1)
|
||||
|
||||
/obj/item/weapon/circuitboard/telecomms/broadcaster
|
||||
name = "Circuit Board (Bus Mainframe)"
|
||||
build_path = "/obj/machinery/telecomms/broadcaster"
|
||||
board_type = "machine"
|
||||
origin_tech = "programming=4;engineering=4;bluespace=2"
|
||||
frame_desc = "Requires 2 Manipulators, 1 Cable Coil, 1 Hyperwave Filter, 1 Ansible Crystal, 1 Subspace Transmitter, 1 Subspace Amplifier and 4 High-Powered Micro-Lasers. "
|
||||
req_components = list(
|
||||
"/obj/item/weapon/stock_parts/manipulator" = 2,
|
||||
"/obj/item/weapon/cable_coil" = 1,
|
||||
"/obj/item/weapon/stock_parts/subspace/filter" = 1,
|
||||
"/obj/item/weapon/stock_parts/subspace/crystal" = 1,
|
||||
"/obj/item/weapon/stock_parts/subspace/transmitter" = 1,
|
||||
"/obj/item/weapon/stock_parts/subspace/amplifier" = 1,
|
||||
"/obj/item/weapon/stock_parts/micro_laser/high" = 4)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
|
||||
/obj/machinery/telecomms/broadcaster
|
||||
name = "subspace broadcaster"
|
||||
name = "Subspace Broadcaster"
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "broadcaster"
|
||||
desc = "A dish-shaped machine used to broadcast processed subspace signals."
|
||||
@@ -31,6 +31,11 @@
|
||||
|
||||
signal.data["done"] = 1 // mark the signal as being broadcasted
|
||||
|
||||
// Search for the original signal and mark it as done as well
|
||||
var/datum/signal/original = signal.data["original"]
|
||||
if(original)
|
||||
original.data["done"] = 1
|
||||
|
||||
/* --- Do a snazzy animation! --- */
|
||||
flick("broadcaster_send", src)
|
||||
|
||||
@@ -295,7 +300,5 @@
|
||||
else
|
||||
R.show_message(rendered, 2)
|
||||
|
||||
// If the signal doesn't need to be used by intercoms or anything:
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -59,26 +59,36 @@
|
||||
var/race // The actual race of the mob
|
||||
var/language = "Human" // MMIs, pAIs, Cyborgs and humans all speak Human
|
||||
var/mobtype = "[C.parameters["mobtype"]]"
|
||||
switch(mobtype)
|
||||
var/mob/M = new mobtype
|
||||
|
||||
if("/mob/living/carbon/human")
|
||||
race = "Human"
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
race = "Human"
|
||||
|
||||
if("/mob/living/carbon/monkey")
|
||||
race = "Monkey"
|
||||
language = race
|
||||
else if(istype(M, /mob/living/carbon/monkey))
|
||||
race = "Monkey"
|
||||
language = race
|
||||
|
||||
if("/mob/living/carbon/metroid")
|
||||
race = "Metroid"
|
||||
language = race
|
||||
else if(istype(M, /mob/living/carbon/alien) || istype(M, /mob/living/carbon/metroid))
|
||||
race = "Alien"
|
||||
language = race
|
||||
|
||||
if("/mob/living/carbon/alien")
|
||||
race = "Alien"
|
||||
language = race
|
||||
|
||||
if(findtext("C.parameters["mobtype"]", "/mob/living/silicon"))
|
||||
else if(istype(M, /mob/living/silicon))
|
||||
race = "Artificial Life"
|
||||
|
||||
else if(istype(M, /mob/living/simple_animal/corgi))
|
||||
race = "Dog"
|
||||
language = race
|
||||
|
||||
else if(istype(M, /mob/living/simple_animal/cat))
|
||||
race = "Cat"
|
||||
language = race
|
||||
|
||||
else
|
||||
race = "<i>Unidentifiable</i>"
|
||||
language = race
|
||||
|
||||
del(M)
|
||||
|
||||
// -- If the orator is a human, or universal translate is active, OR mob has universal speech on --
|
||||
|
||||
if(language == "Human" || universal_translate || C.parameters["uspeech"])
|
||||
@@ -139,7 +149,7 @@
|
||||
|
||||
if("scan")
|
||||
if(servers.len > 0)
|
||||
temp = "- FAILED: CANNOT PROBE WHEN BUFFER FULL -"
|
||||
temp = "<font color = #D70B00>- FAILED: CANNOT PROBE WHEN BUFFER FULL -</font color>"
|
||||
|
||||
else
|
||||
for(var/obj/machinery/telecomms/server/T in range(25, src))
|
||||
@@ -147,9 +157,9 @@
|
||||
servers.Add(T)
|
||||
|
||||
if(!servers.len)
|
||||
temp = "- FAILED: UNABLE TO LOCATE SERVERS IN \[[network]\] -"
|
||||
temp = "<font color = #D70B00>- FAILED: UNABLE TO LOCATE SERVERS IN \[[network]\] -</font color>"
|
||||
else
|
||||
temp = "- [servers.len] SERVERS PROBED & BUFFERED -"
|
||||
temp = "<font color = #336699>- [servers.len] SERVERS PROBED & BUFFERED -</font color>"
|
||||
|
||||
screen = 0
|
||||
|
||||
@@ -158,20 +168,28 @@
|
||||
|
||||
var/datum/comm_log_entry/D = SelectedServer.log_entries[text2num(href_list["delete"])]
|
||||
|
||||
temp = "- DELETED ENTRY: [D.name] -"
|
||||
temp = "<font color = #336699>- DELETED ENTRY: [D.name] -</font color>"
|
||||
|
||||
SelectedServer.log_entries.Remove(D)
|
||||
del(D)
|
||||
|
||||
else
|
||||
temp = "<font color = #D70B00>- FAILED: NO SELECTED MACHINE -</font color>"
|
||||
|
||||
if(href_list["input"])
|
||||
|
||||
var/newnet = input(usr, "Which network do you want to view?", "Comm Monitor", network) as null|text
|
||||
if(newnet && usr in range(1, src))
|
||||
network = newnet
|
||||
screen = 0
|
||||
machines = list()
|
||||
temp = "- NEW NETWORK TAG SET IN ADDRESS \[[network]\] -"
|
||||
|
||||
if(newnet && usr in range(1, src) && newnet != network)
|
||||
if(length(newnet) > 15)
|
||||
temp = "<font color = #D70B00>- FAILED: NETWORK TAG STRING TOO LENGHTLY -</font color>"
|
||||
|
||||
else
|
||||
|
||||
network = newnet
|
||||
screen = 0
|
||||
machines = list()
|
||||
temp = "<font color = #336699>- NEW NETWORK TAG SET IN ADDRESS \[[network]\] -</font color>"
|
||||
|
||||
updateUsrDialog()
|
||||
return
|
||||
|
||||
@@ -16,9 +16,11 @@
|
||||
list/links = list() // list of machines this machine is linked to
|
||||
traffic = 0 // value increases as traffic increases
|
||||
list/autolinkers = list() // list of text/number values to link with
|
||||
id = "" // identification string
|
||||
id = "NULL" // identification string
|
||||
network = "NULL" // the network of the machinery
|
||||
|
||||
list/freq_listening = list() // list of frequencies to tune into: if none, will listen to all
|
||||
|
||||
machinetype = 0 // just a hacky way of preventing alike machines from pairing
|
||||
|
||||
|
||||
@@ -48,6 +50,13 @@
|
||||
// receive information from linked machinery
|
||||
..()
|
||||
|
||||
proc/is_freq_listening(datum/signal/signal)
|
||||
// return 1 if found, 0 if not found
|
||||
if((signal.frequency in freq_listening) || (!freq_listening.len))
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
New()
|
||||
..()
|
||||
if(autolinkers.len)
|
||||
@@ -68,7 +77,7 @@
|
||||
*/
|
||||
|
||||
/obj/machinery/telecomms/receiver
|
||||
name = "subspace receiver"
|
||||
name = "Subspace Receiver"
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "broadcast receiver"
|
||||
desc = "This machine has a dish-like shape and green lights. It is designed to detect and process subspace radio activity."
|
||||
@@ -77,18 +86,16 @@
|
||||
use_power = 1
|
||||
idle_power_usage = 30
|
||||
machinetype = 1
|
||||
var
|
||||
list/freq_listening = list() // list of frequencies that are being tuned into
|
||||
// you can use "ALL" on any machine using this var
|
||||
|
||||
receive_signal(datum/signal/signal)
|
||||
|
||||
if(signal.transmission_method == 2)
|
||||
|
||||
if( (signal.frequency in freq_listening) || ("ALL" in freq_listening) ) // detect subspace signals
|
||||
if(is_freq_listening(signal)) // detect subspace signals
|
||||
|
||||
var/datum/signal/copy = new
|
||||
copy.copy_from(signal) // copy information to new signal
|
||||
copy.data["original"] = signal
|
||||
|
||||
relay_information(copy) // ideally relay the information to bus units
|
||||
|
||||
@@ -103,7 +110,7 @@
|
||||
*/
|
||||
|
||||
/obj/machinery/telecomms/bus
|
||||
name = "bus mainframe"
|
||||
name = "Bus Mainframe"
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "bus1"
|
||||
desc = "A mighty piece of hardware used to send massive amounts of data quickly."
|
||||
@@ -115,20 +122,21 @@
|
||||
|
||||
receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
|
||||
|
||||
if(signal.data["compression"]) // if signal is still compressed from subspace transmission
|
||||
// send to one linked processor unit
|
||||
if(is_freq_listening(signal))
|
||||
if(signal.data["compression"]) // if signal is still compressed from subspace transmission
|
||||
// send to one linked processor unit
|
||||
|
||||
var/send_to_processor = relay_information(signal, "/obj/machinery/telecomms/processor", 1)
|
||||
var/send_to_processor = relay_information(signal, "/obj/machinery/telecomms/processor", 1)
|
||||
|
||||
if(!send_to_processor) // failed to send to a processor, relay information anyway
|
||||
if(!send_to_processor) // failed to send to a processor, relay information anyway
|
||||
relay_information(signal, "/obj/machinery/telecomms/server")
|
||||
|
||||
|
||||
else // the signal has been decompressed by a processor unit
|
||||
// send to all linked server units
|
||||
relay_information(signal, "/obj/machinery/telecomms/server")
|
||||
|
||||
|
||||
else // the signal has been decompressed by a processor unit
|
||||
// send to all linked server units
|
||||
relay_information(signal, "/obj/machinery/telecomms/server")
|
||||
|
||||
|
||||
|
||||
/*
|
||||
The processor is a very simple machine that decompresses subspace signals and
|
||||
@@ -137,7 +145,7 @@
|
||||
*/
|
||||
|
||||
/obj/machinery/telecomms/processor
|
||||
name = "processor unit"
|
||||
name = "Processor Unit"
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "processor_on"
|
||||
desc = "This machine is used to process large quantities of information."
|
||||
@@ -149,8 +157,9 @@
|
||||
|
||||
receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
|
||||
|
||||
signal.data["compression"] = 0 // uncompress subspace signal
|
||||
relay_direct_information(signal, machine_from) // send the signal back to the machine
|
||||
if(is_freq_listening(signal))
|
||||
signal.data["compression"] = 0 // uncompress subspace signal
|
||||
relay_direct_information(signal, machine_from) // send the signal back to the machine
|
||||
|
||||
|
||||
|
||||
@@ -163,7 +172,7 @@
|
||||
|
||||
|
||||
/obj/machinery/telecomms/server
|
||||
name = "telecommunication server"
|
||||
name = "Telecommunication Server"
|
||||
icon = 'stationobjs.dmi'
|
||||
icon_state = "comm_server"
|
||||
desc = "A machine used to store data and network statistics."
|
||||
@@ -173,14 +182,13 @@
|
||||
idle_power_usage = 15
|
||||
machinetype = 4
|
||||
var
|
||||
list/freq_listening = list()
|
||||
list/log_entries = list()
|
||||
|
||||
receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from)
|
||||
|
||||
if(signal.data["message"] && !signal.data["compression"])
|
||||
|
||||
if( (signal.frequency in freq_listening) || ("ALL" in freq_listening) )
|
||||
if(is_freq_listening(signal))
|
||||
|
||||
// if signal contains discernable data
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
|
||||
if("probe")
|
||||
if(machines.len > 0)
|
||||
temp = "- FAILED: CANNOT PROBE WHEN BUFFER FULL -"
|
||||
temp = "<font color = #D70B00>- FAILED: CANNOT PROBE WHEN BUFFER FULL -</font color>"
|
||||
|
||||
else
|
||||
for(var/obj/machinery/telecomms/T in range(25, src))
|
||||
@@ -103,9 +103,9 @@
|
||||
machines.Add(T)
|
||||
|
||||
if(!machines.len)
|
||||
temp = "- FAILED: UNABLE TO LOCATE NETWORK ENTITIES IN \[[network]\] -"
|
||||
temp = "<font color = #D70B00>- FAILED: UNABLE TO LOCATE NETWORK ENTITIES IN \[[network]\] -</font color>"
|
||||
else
|
||||
temp = "- [machines.len] ENTITIES LOCATED & BUFFERED -"
|
||||
temp = "<font color = #336699>- [machines.len] ENTITIES LOCATED & BUFFERED -</font color>"
|
||||
|
||||
screen = 0
|
||||
|
||||
@@ -113,11 +113,15 @@
|
||||
if(href_list["input"])
|
||||
|
||||
var/newnet = input(usr, "Which network do you want to view?", "Comm Monitor", network) as null|text
|
||||
if(newnet && usr in range(1, src))
|
||||
network = newnet
|
||||
screen = 0
|
||||
machines = list()
|
||||
temp = "- NEW NETWORK TAG SET IN ADDRESS \[[network]\] -"
|
||||
if(newnet && usr in range(1, src) && newnet != network)
|
||||
if(length(newnet) > 15)
|
||||
temp = "<font color = #D70B00>- FAILED: NETWORK TAG STRING TOO LENGHTLY -</font color>"
|
||||
|
||||
else
|
||||
network = newnet
|
||||
screen = 0
|
||||
machines = list()
|
||||
temp = "<font color = #336699>- NEW NETWORK TAG SET IN ADDRESS \[[network]\] -</font color>"
|
||||
|
||||
updateUsrDialog()
|
||||
return
|
||||
|
||||
@@ -478,6 +478,51 @@ datum
|
||||
build_path = "/obj/item/weapon/aiModule/tyrant"
|
||||
|
||||
|
||||
|
||||
///////////////////////////////////
|
||||
/////Subspace Telecomms////////////
|
||||
///////////////////////////////////
|
||||
subspace_receiver
|
||||
name = "Circuit Design (Subspace Receiver)"
|
||||
desc = "Allows for the construction of Subspace Receiver equipment."
|
||||
id = "s-receiver"
|
||||
req_tech = list("programming" = 4, "engineering" = 3, "bluespace" = 2)
|
||||
build_type = IMPRINTER
|
||||
materials = list("$glass" = 2000, "acid" = 20)
|
||||
|
||||
telecomms_bus
|
||||
name = "Circuit Design (Bus Mainframe)"
|
||||
desc = "Allows for the construction of Telecommunications Bus Mainframes."
|
||||
id = "s-bus"
|
||||
req_tech = list("programming" = 4, "engineering" = 4)
|
||||
build_type = IMPRINTER
|
||||
materials = list("$glass" = 2000, "acid" = 20)
|
||||
|
||||
telecomms_processor
|
||||
name = "Circuit Design (Processor Unit)"
|
||||
desc = "Allows for the construction of Telecommunications Processor equipment."
|
||||
id = "s-processor"
|
||||
req_tech = list("programming" = 4, "engineering" = 4)
|
||||
build_type = IMPRINTER
|
||||
materials = list("$glass" = 2000, "acid" = 20)
|
||||
|
||||
telecomms_server
|
||||
name = "Circuit Design (Subspace Receiver)"
|
||||
desc = "Allows for the construction of Telecommunications Servers."
|
||||
id = "s-server"
|
||||
req_tech = list("programming" = 4, "engineering" = 4)
|
||||
build_type = IMPRINTER
|
||||
materials = list("$glass" = 2000, "acid" = 20)
|
||||
|
||||
subspace_broadcaster
|
||||
name = "Circuit Design (Subspace Broadcaster)"
|
||||
desc = "Allows for the construction of Subspace Broadcasting equipment."
|
||||
id = "s-broadcaster"
|
||||
req_tech = list("programming" = 4, "engineering" = 4, "bluespace" = 2)
|
||||
build_type = IMPRINTER
|
||||
materials = list("$glass" = 2000, "acid" = 20)
|
||||
|
||||
|
||||
///////////////////////////////////
|
||||
/////Non-Board Computer Stuff//////
|
||||
///////////////////////////////////
|
||||
@@ -897,6 +942,71 @@ datum
|
||||
reliability_base = 75
|
||||
build_path = "/obj/item/weapon/stock_parts/matter_bin/super"
|
||||
|
||||
|
||||
|
||||
subspace_ansible
|
||||
name = "Subspace Ansible"
|
||||
desc = "A compact module capable of sensing extradimensional activity."
|
||||
id = "s-ansible"
|
||||
req_tech = list("programming" = 3, "magnets" = 4, "materials" = 4, "bluespace" = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 80, "$silver" = 20)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/ansible"
|
||||
|
||||
hyperwave_filter
|
||||
name = "Hyperwave Filter"
|
||||
desc = "A tiny device capable of filtering and converting super-intense radiowaves."
|
||||
id = "s-filter"
|
||||
req_tech = list("programming" = 3, "magnets" = 3)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 40, "$silver" = 10)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/filter"
|
||||
|
||||
subspace_amplifier
|
||||
name = "Subspace Amplifier"
|
||||
desc = "A compact micro-machine capable of amplifying weak subspace transmissions."
|
||||
id = "s-amplifier"
|
||||
req_tech = list("programming" = 3, "magnets" = 4, "materials" = 4, "bluespace" = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 10, "$gold" = 30, "$uranium" = 15)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/amplifier"
|
||||
|
||||
subspace_treatment
|
||||
name = "Subspace Treatment Disk"
|
||||
desc = "A compact micro-machine capable of stretching out hyper-compressed radio waves."
|
||||
id = "s-amplifier"
|
||||
req_tech = list("programming" = 3, "magnets" = 2, "materials" = 4, "bluespace" = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 10, "$silver" = 20)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/treatment"
|
||||
|
||||
subspace_analyzer
|
||||
name = "Subspace Treatment Disk"
|
||||
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
|
||||
id = "s-amplifier"
|
||||
req_tech = list("programming" = 3, "magnets" = 4, "materials" = 4, "bluespace" = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$metal" = 10, "$gold" = 15)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/analyzer"
|
||||
|
||||
subspace_crystal
|
||||
name = "Ansible Crystal"
|
||||
desc = "A sophisticated analyzer capable of analyzing cryptic subspace wavelengths."
|
||||
id = "s-amplifier"
|
||||
req_tech = list("magnets" = 4, "materials" = 4, "bluespace" = 2)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$glass" = 1000, "$silver" = 20, "$gold" = 20)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/crystal"
|
||||
|
||||
subspace_transmitter
|
||||
name = "Subspace Transmitter"
|
||||
desc = "A large piece of equipment used to open a window into the subspace dimension."
|
||||
id = "s-amplifier"
|
||||
req_tech = list("magnets" = 5, "materials" = 5, "bluespace" = 3)
|
||||
build_type = PROTOLATHE
|
||||
materials = list("$glass" = 100, "$silver" = 10, "$uranium" = 15)
|
||||
build_path = "/obj/item/weapon/stock_parts/subspace/transmitter"
|
||||
|
||||
////////////////////////////////////////
|
||||
//////////////////Power/////////////////
|
||||
////////////////////////////////////////
|
||||
|
||||
Reference in New Issue
Block a user