Merge pull request #9410 from Novacat/nova-basicfixes

Fixes some Telecomms stuff
This commit is contained in:
Novacat
2020-12-04 20:56:04 -05:00
committed by GitHub
5 changed files with 108 additions and 21 deletions
+1 -1
View File
@@ -142,7 +142,7 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept
machinetype = 6
produces_heat = 0
var/intercept = 0 // if nonzero, broadcasts all messages to syndicate channel
var/overmap_range = 0 //Same turf
var/overmap_range = 1 //Same turf
var/list/linked_radios_weakrefs = list()
@@ -0,0 +1,44 @@
//ERT version with unlimited range (doesn't even check) and uses no power, to enable ert comms to work anywhere.
/obj/machinery/telecomms/allinone/ert
use_power = USE_POWER_OFF
idle_power_usage = 0
/obj/machinery/telecomms/allinone/ert/receive_signal(datum/signal/signal)
if(!on) // has to be on to receive messages
return
if(is_freq_listening(signal)) // detect subspace signals
signal.data["done"] = 1 // mark the signal as being broadcasted
signal.data["compression"] = 0
// 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
// For some reason level is both used as a list and not a list, and now it needs to be a list.
// Because this is a 'all in one' machine, we're gonna just cheat.
signal.data["level"] = using_map.contact_levels.Copy()
if(signal.data["slow"] > 0)
sleep(signal.data["slow"]) // simulate the network lag if necessary
/* ###### Broadcast a message using signal.data ###### */
var/datum/radio_frequency/connection = signal.data["connection"]
var/list/forced_radios
for(var/weakref/wr in linked_radios_weakrefs)
var/obj/item/device/radio/R = wr.resolve()
if(istype(R))
LAZYDISTINCTADD(forced_radios, R)
if(connection.frequency in CENT_FREQS) // if ert broadcast, just
Broadcast_Message(signal.data["connection"], signal.data["mob"],
signal.data["vmask"], signal.data["vmessage"],
signal.data["radio"], signal.data["message"],
signal.data["name"], signal.data["job"],
signal.data["realname"], signal.data["vname"], DATA_NORMAL,
signal.data["compression"], list(0), connection.frequency,
signal.data["verb"], forced_radios)
+54 -14
View File
@@ -286,6 +286,10 @@
},
/turf/simulated/floor/reinforced/airless,
/area/ship/ert/hallways_aft)
"cL" = (
/obj/machinery/telecomms/allinone/ert,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/atmos)
"cO" = (
/obj/machinery/computer/operating,
/turf/simulated/floor/tiled/white,
@@ -400,6 +404,8 @@
/obj/structure/table/rack,
/obj/item/weapon/storage/backpack/ert/commander,
/obj/item/clothing/suit/space/void/responseteam/command,
/obj/item/clothing/head/helmet/ert/command,
/obj/item/clothing/suit/armor/vest/ert/command,
/turf/simulated/floor/wood,
/area/ship/ert/commander)
"dx" = (
@@ -1138,6 +1144,10 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on,
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/mech_bay)
"kd" = (
/obj/item/device/multitool/tether_buffered,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/atmos)
"kf" = (
/obj/structure/table/rack/steel,
/obj/item/weapon/gun/projectile/automatic/pdw,
@@ -1979,6 +1989,12 @@
/obj/item/clothing/suit/space/void/responseteam/engineer,
/obj/item/clothing/suit/space/void/responseteam/engineer,
/obj/item/clothing/suit/space/void/responseteam/engineer,
/obj/item/clothing/head/helmet/ert/engineer,
/obj/item/clothing/head/helmet/ert/engineer,
/obj/item/clothing/head/helmet/ert/engineer,
/obj/item/clothing/suit/armor/vest/ert/engineer,
/obj/item/clothing/suit/armor/vest/ert/engineer,
/obj/item/clothing/suit/armor/vest/ert/engineer,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"pa" = (
@@ -2020,6 +2036,12 @@
/obj/item/clothing/suit/space/void/responseteam/medical,
/obj/machinery/light/no_nightshift,
/obj/effect/floor_decal/industrial/outline/grey,
/obj/item/clothing/head/helmet/ert/medical,
/obj/item/clothing/head/helmet/ert/medical,
/obj/item/clothing/head/helmet/ert/medical,
/obj/item/clothing/suit/armor/vest/ert/medical,
/obj/item/clothing/suit/armor/vest/ert/medical,
/obj/item/clothing/suit/armor/vest/ert/medical,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"pf" = (
@@ -2047,6 +2069,12 @@
/obj/item/clothing/suit/space/void/responseteam/medical,
/obj/item/clothing/suit/space/void/responseteam/medical,
/obj/effect/floor_decal/industrial/outline/grey,
/obj/item/clothing/head/helmet/ert/medical,
/obj/item/clothing/head/helmet/ert/medical,
/obj/item/clothing/head/helmet/ert/medical,
/obj/item/clothing/suit/armor/vest/ert/medical,
/obj/item/clothing/suit/armor/vest/ert/medical,
/obj/item/clothing/suit/armor/vest/ert/medical,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"po" = (
@@ -2490,6 +2518,12 @@
/obj/item/clothing/suit/space/void/responseteam/security,
/obj/machinery/light/no_nightshift,
/obj/effect/floor_decal/industrial/outline/grey,
/obj/item/clothing/head/helmet/ert/security,
/obj/item/clothing/head/helmet/ert/security,
/obj/item/clothing/head/helmet/ert/security,
/obj/item/clothing/suit/armor/vest/ert/security,
/obj/item/clothing/suit/armor/vest/ert/security,
/obj/item/clothing/suit/armor/vest/ert/security,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"sp" = (
@@ -2639,10 +2673,6 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hangar)
"tb" = (
/obj/machinery/telecomms/allinone,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/teleporter)
"tg" = (
/obj/effect/floor_decal/corner/white{
dir = 6
@@ -4080,6 +4110,12 @@
pixel_y = -26
},
/obj/effect/floor_decal/industrial/outline/grey,
/obj/item/clothing/head/helmet/ert/security,
/obj/item/clothing/head/helmet/ert/security,
/obj/item/clothing/head/helmet/ert/security,
/obj/item/clothing/suit/armor/vest/ert/security,
/obj/item/clothing/suit/armor/vest/ert/security,
/obj/item/clothing/suit/armor/vest/ert/security,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/barracks)
"Ed" = (
@@ -5228,6 +5264,10 @@
/obj/effect/floor_decal/industrial/outline/grey,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/hallways)
"Lm" = (
/obj/machinery/ntnet_relay,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/atmos)
"Lq" = (
/obj/structure/table/rack/steel,
/obj/item/weapon/gun/energy/gun/martin{
@@ -6657,10 +6697,6 @@
},
/turf/simulated/floor/tiled/techmaint,
/area/ship/ert/hangar)
"VB" = (
/obj/machinery/ntnet_relay,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/teleporter)
"VC" = (
/obj/machinery/power/port_gen/pacman/super/potato,
/obj/structure/cable/green,
@@ -6720,6 +6756,10 @@
/obj/structure/curtain/open/bed,
/turf/simulated/floor/wood,
/area/ship/ert/commander)
"Wd" = (
/obj/machinery/telecomms/relay/preset/centcom/tether,
/turf/simulated/floor/tiled/techfloor,
/area/ship/ert/atmos)
"Wj" = (
/obj/machinery/light/no_nightshift{
dir = 8
@@ -13348,8 +13388,8 @@ pV
kP
kP
rS
gA
gA
Wd
kd
CT
qR
pV
@@ -13916,8 +13956,8 @@ pV
ls
ls
ls
gA
gA
Lm
cL
DQ
Ip
pV
@@ -14491,7 +14531,7 @@ ds
sp
Oi
Mm
tb
jA
Wj
UU
iA
@@ -15201,7 +15241,7 @@ IZ
sp
Oi
wn
VB
jA
Yq
Ys
Yr
+8 -6
View File
@@ -1933,7 +1933,9 @@
/turf/simulated/floor/holofloor/wmarble,
/area/holodeck/source_chess)
"nn" = (
/obj/machinery/telecomms/allinone/antag,
/obj/machinery/telecomms/allinone/antag{
intercept = 1
},
/turf/unsimulated/floor/steel,
/area/centcom/control)
"nV" = (
@@ -4460,7 +4462,7 @@
/area/beach)
"XP" = (
/obj/machinery/oxygen_pump/anesthetic,
/turf/simulated/floor/tiled/white,
/turf/unsimulated/wall,
/area/centcom/simulated/medical)
"XQ" = (
/obj/machinery/optable,
@@ -19657,7 +19659,7 @@ ae
ae
wy
wy
wy
Ga
wy
wl
Up
@@ -19798,9 +19800,9 @@ ae
ae
ae
ae
ae
ae
ae
wy
wy
wy
wl
Up
Vj
+1
View File
@@ -929,6 +929,7 @@
#include "code\game\machinery\pipe\pipelayer.dm"
#include "code\game\machinery\reagents\pump.dm"
#include "code\game\machinery\telecomms\broadcaster.dm"
#include "code\game\machinery\telecomms\broadcaster_vr.dm"
#include "code\game\machinery\telecomms\logbrowser.dm"
#include "code\game\machinery\telecomms\machine_interactions.dm"
#include "code\game\machinery\telecomms\presets.dm"