Skip to content

Commit

Permalink
listening devices
Browse files Browse the repository at this point in the history
  • Loading branch information
realforest2001 committed Nov 16, 2024
1 parent db6b072 commit ae7ed23
Show file tree
Hide file tree
Showing 7 changed files with 141 additions and 4 deletions.
5 changes: 5 additions & 0 deletions code/__DEFINES/radio.dm
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,11 @@
#define RADIO_CHANNEL_BUG_A "Listening Device A"
#define RADIO_CHANNEL_BUG_B "Listening Device B"

//Fax Responder Bugs
#define RADIO_CHANNEL_FAX_WY "WY Monitor"
#define RADIO_CHANNEL_FAX_USCM_HC "USCM-HC Monitor"
#define RADIO_CHANNEL_FAX_USCM_PVST "Provost Monitor"

//1-Channel ERTs
#define RADIO_CHANNEL_DUTCH_DOZEN "DD"
#define RADIO_CHANNEL_VAI "VAI"
Expand Down
15 changes: 15 additions & 0 deletions code/controllers/subsystem/communications.dm
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,11 @@ Radiochat range: 1441 to 1489 (most devices refuse to be tune to other frequency
#define BUG_A_FREQ 1290
#define BUG_B_FREQ 1291

//Listening Bugs (1296-1300)
#define FAX_WY_FREQ 1296
#define FAX_USCM_HC_FREQ 1297
#define FAX_USCM_PVST_FREQ 1298

//General Radio
#define MIN_FREQ 1460 // ------------------------------------------------------
#define PUB_FREQ 1461
Expand Down Expand Up @@ -210,6 +215,10 @@ GLOBAL_LIST_INIT(radiochannels, list(

RADIO_CHANNEL_BUG_A = BUG_A_FREQ,
RADIO_CHANNEL_BUG_B = BUG_B_FREQ,

RADIO_CHANNEL_FAX_WY = FAX_WY_FREQ,
RADIO_CHANNEL_FAX_USCM_HC = FAX_USCM_HC_FREQ,
RADIO_CHANNEL_FAX_USCM_PVST = FAX_USCM_PVST_FREQ,
))

// Response Teams
Expand All @@ -227,6 +236,9 @@ GLOBAL_LIST_INIT(radiochannels, list(
//Listening Device Frequencies
#define BUG_FREQS list(BUG_A_FREQ, BUG_B_FREQ)

//Fax Responder internal monitor frequencies
#define FAX_RESP_FREQS list(FAX_WY_FREQ, FAX_USCM_HC_FREQ, FAX_USCM_PVST_FREQ)

//Depts - used for colors in headset.dm, as well as deciding what the marine comms tower can listen into
#define DEPT_FREQS list(COMM_FREQ, MED_FREQ, ENG_FREQ, SEC_FREQ, SENTRY_FREQ, ALPHA_FREQ, BRAVO_FREQ, CHARLIE_FREQ, DELTA_FREQ, ECHO_FREQ, CRYO_FREQ, REQ_FREQ, JTAC_FREQ, INTEL_FREQ, WY_FREQ)

Expand Down Expand Up @@ -304,6 +316,9 @@ SUBSYSTEM_DEF(radio)
"[CLF_ENGI_FREQ]" = "opforeng",
"[CLF_MED_FREQ]" = "opformed",
"[CLF_CCT_FREQ]" = "opforcct",
"[FAX_WY_FREQ]" = "airadio",
"[FAX_USCM_HC_FREQ]" = "aiprivradio",
"[FAX_USCM_PVST_FREQ]" = "aiprivradio",
)

/datum/controller/subsystem/radio/proc/add_object(obj/device as obj, new_frequency as num, filter = null as text|null)
Expand Down
9 changes: 9 additions & 0 deletions code/game/objects/items/devices/radio/headset.dm
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,9 @@

/obj/item/device/radio/headset/Destroy()
wearer = null
if(spy_bug)

Check failure on line 68 in code/game/objects/items/devices/radio/headset.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var: "spy_bug"
qdel(spy_bug)

Check failure on line 69 in code/game/objects/items/devices/radio/headset.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var: "spy_bug"
spy_bug = null

Check failure on line 70 in code/game/objects/items/devices/radio/headset.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var: "spy_bug"
QDEL_NULL_LIST(keys)
return ..()

Expand Down Expand Up @@ -561,6 +564,12 @@
maximum_keys = 5
initial_keys = list(/obj/item/device/encryptionkey/mcom/cl)

spy_bug_type = /obj/item/device/radio/listening_bug/radio_linked/fax/wy

Check failure on line 567 in code/game/objects/items/devices/radio/headset.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var 'spy_bug_type' on type '/obj/item/device/radio/headset/almayer/mcl'

/obj/item/device/radio/headset/almayer/mcl/Initialize()
. = ..()
spy_bug.nametag = "CL Radio"

Check failure on line 571 in code/game/objects/items/devices/radio/headset.dm

View workflow job for this annotation

GitHub Actions / Run Linters

undefined var: "spy_bug"

Check warning on line 571 in code/game/objects/items/devices/radio/headset.dm

View workflow job for this annotation

GitHub Actions / Run Linters

field access requires static type: "nametag"

/obj/item/device/radio/headset/almayer/reporter
name = "reporter radio headset"
desc = "Used by the combat correspondent to get the scoop. Channels are as follows: :v - marine command, :a - alpha squad, :b - bravo squad, :c - charlie squad, :d - delta squad, :n - engineering, :m - medbay, :u - requisitions, :j - JTAC, :t - intel."
Expand Down
13 changes: 13 additions & 0 deletions code/game/objects/items/devices/radio/intercom.dm
Original file line number Diff line number Diff line change
Expand Up @@ -93,3 +93,16 @@
/obj/item/device/radio/intercom/devana
name = "dropship devana intercom"
frequency = UPP_DS2_FREQ

/obj/item/device/radio/intercom/fax
name = "Monitoring Frequency Speaker"
canhear_range = 4

/obj/item/device/radio/intercom/fax/wy
frequency = FAX_WY_FREQ

/obj/item/device/radio/intercom/fax/uscm_hc
frequency = FAX_USCM_HC_FREQ

/obj/item/device/radio/intercom/fax/uscm_pvst
frequency = FAX_USCM_PVST_FREQ
20 changes: 20 additions & 0 deletions code/game/objects/items/devices/radio/listening_bugs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -274,3 +274,23 @@
/obj/item/device/encryptionkey/listening_bug/freq_b
name = "Listening Bug Encryption Key (B)"
channels = list(RADIO_CHANNEL_BUG_B = TRUE)



///An automatically active bug used to listen to things by a Fax Responder.
/obj/item/device/radio/listening_bug/radio_linked/fax
name = "Comms Relay Device"
subspace_switchable = FALSE
broadcasting = TRUE

/obj/item/device/radio/listening_bug/radio_linked/fax/wy
frequency = FAX_WY_FREQ
req_one_access = list(ACCESS_WY_SENIOR_LEAD)

/obj/item/device/radio/listening_bug/radio_linked/fax/uscm_pvst
frequency = FAX_USCM_PVST_FREQ
req_one_access = list(ACCESS_MARINE_CO)

/obj/item/device/radio/listening_bug/radio_linked/fax/uscm_hc
frequency = FAX_USCM_HC_FREQ
req_one_access = list(ACCESS_MARINE_CO)
27 changes: 26 additions & 1 deletion maps/map_files/USS_Almayer/USS_Almayer.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -20335,6 +20335,11 @@
/turf/open/floor/almayer/aicore/glowing/no_build,
/area/almayer/command/airoom)
"euV" = (
/obj/item/device/radio/listening_bug/radio_linked/fax/uscm_hc{
nametag = "CIC";
alpha = 0;
mouse_opacity = 0
},
/turf/open/floor/almayer/uscm/directional/logo_c/west,
/area/almayer/command/cic)
"euW" = (
Expand Down Expand Up @@ -35688,6 +35693,12 @@
/obj/structure/pipes/standard/simple/hidden/supply{
dir = 4
},
/obj/item/device/radio/listening_bug/radio_linked/fax/uscm_pvst{
alpha = 0;
anchored = 1;
mouse_opacity = 0;
nametag = "Brig"
},
/turf/open/floor/almayer/no_build,
/area/almayer/shipboard/brig/processing)
"kRd" = (
Expand Down Expand Up @@ -35960,6 +35971,11 @@
pixel_x = 16;
pixel_y = 8
},
/obj/item/device/radio/listening_bug/radio_linked/fax/uscm_hc{
nametag = "CO Office";
alpha = 0;
mouse_opacity = 0
},
/turf/open/floor/carpet,
/area/almayer/living/commandbunks)
"kWT" = (
Expand Down Expand Up @@ -41086,6 +41102,15 @@
},
/turf/open/floor/almayer/orangefull,
/area/almayer/living/briefing)
"nfh" = (
/obj/item/device/radio/listening_bug/radio_linked/fax/uscm_pvst{
alpha = 0;
anchored = 1;
mouse_opacity = 0;
nametag = "Perma"
},
/turf/closed/wall/almayer/reinforced,
/area/almayer/shipboard/brig/perma)
"nfw" = (
/obj/effect/projector{
name = "Almayer_AresDown";
Expand Down Expand Up @@ -77460,7 +77485,7 @@ naB
naB
naB
naB
naB
nfh
dcy
qPD
qPD
Expand Down
56 changes: 53 additions & 3 deletions maps/templates/lazy_templates/fax_responder_base.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,9 @@
/obj/structure/machinery/faxmachine/cmb{
pixel_y = 8
},
/obj/item/device/radio/intercom/fax/uscm_pvst{
pixel_y = 28
},
/turf/open/floor/wood/ship,
/area/adminlevel/ert_station/fax_response_station)
"nB" = (
Expand Down Expand Up @@ -143,6 +146,12 @@
},
/turf/open/floor/almayer/test_floor4,
/area/adminlevel/ert_station/fax_response_station)
"pK" = (
/obj/item/device/radio/intercom/fax/wy{
pixel_y = 28
},
/turf/open/floor/wood/ship,
/area/adminlevel/ert_station/fax_response_station)
"qw" = (
/obj/structure/surface/table/woodentable/fancy,
/obj/structure/machinery/faxmachine/press/highcom{
Expand Down Expand Up @@ -419,6 +428,33 @@
},
/turf/open/floor/wood/ship,
/area/adminlevel/ert_station/fax_response_station)
"Fn" = (
/obj/structure/surface/table/woodentable/fancy,
/obj/item/tool/pen/clicky,
/obj/item/tool/pen/blue/clicky{
pixel_y = 8
},
/obj/item/tool/pen/green/clicky{
pixel_y = 8;
pixel_x = -8
},
/obj/item/tool/pen/red/clicky{
pixel_x = -8
},
/obj/structure/machinery/computer/crew/alt{
pixel_y = 24;
name = "USCM monitoring computer"
},
/obj/item/paper_bin/uscm{
pixel_x = 8;
pixel_y = 6
},
/obj/item/device/radio/intercom/fax/uscm_pvst{
pixel_y = 28;
pixel_x = 16
},
/turf/open/floor/wood/ship,
/area/adminlevel/ert_station/fax_response_station)
"FB" = (
/obj/structure/surface/table/woodentable/fancy,
/obj/item/folder/red{
Expand Down Expand Up @@ -510,6 +546,20 @@
},
/turf/open/floor/wood/ship,
/area/adminlevel/ert_station/fax_response_station)
"Oe" = (
/obj/structure/surface/table/woodentable/fancy,
/obj/item/folder/white{
pixel_x = -6
},
/obj/item/folder/white,
/obj/item/folder/white{
pixel_x = 6
},
/obj/item/device/radio/intercom/fax/uscm_hc{
pixel_x = 24
},
/turf/open/floor/wood/ship,
/area/adminlevel/ert_station/fax_response_station)
"OA" = (
/obj/structure/machinery/light{
dir = 8
Expand Down Expand Up @@ -1118,15 +1168,15 @@ Yy
xX
vc
Ei
Du
Fn
sZ
Bp
sx
Ei
Du
sZ
Bp
sx
Oe
Ei
vc
xX
Expand Down Expand Up @@ -1446,7 +1496,7 @@ Yy
Yy
xX
BC
gu
pK
gu
gu
gu
Expand Down

0 comments on commit ae7ed23

Please sign in to comment.