mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-18 03:21:13 +01:00
0d92359da7
Re-creation of https://github.com/Aurorastation/Aurora.3/pull/21046 to skip merge conflict hell. Brings us modern TGUI. **ALTERNATE TITLE: TGUI HELLSCAPE PR ABANDON ALL HOPE YE WHO ENTER HERE** - [x] Migrate build tools (javascript -> typescript, bun for package management). - [x] Upgrade all TGUI dependencies and associated root files to TG-congruent versions (axios, babel, dompurify, eslint, highlight, marked, prettier, sass, source-map, stacktrace-parser, typescript). - [x] InfernoJS -> React migrations - [x] React cleanup and polish (migrate all remaining .js files to appropriate .ts or .tsx filetype, all remaining hooks, linting, error corrections, etc.) - [ ] Test all remaining TGUI interfaces
49 lines
1.1 KiB
Plaintext
49 lines
1.1 KiB
Plaintext
/datum/wires/radio
|
|
proper_name = "Radio"
|
|
holder_type = /obj/item/radio
|
|
|
|
/datum/wires/radio/New()
|
|
wires = list(
|
|
WIRE_SIGNAL,
|
|
WIRE_RECEIVE,
|
|
WIRE_TRANSMIT
|
|
)
|
|
add_duds(1)
|
|
..()
|
|
|
|
/datum/wires/radio/interactable(mob/user)
|
|
if(!..())
|
|
return FALSE
|
|
var/obj/item/radio/R = holder
|
|
if(R.b_stat)
|
|
return TRUE
|
|
return FALSE
|
|
|
|
/datum/wires/radio/on_pulse(wire)
|
|
var/obj/item/radio/R = holder
|
|
switch(wire)
|
|
if(WIRE_SIGNAL)
|
|
R.set_listening(!R.get_listening() && !is_cut(WIRE_RECEIVE))
|
|
R.set_broadcasting(R.get_listening() && !is_cut(WIRE_TRANSMIT))
|
|
|
|
if(WIRE_RECEIVE)
|
|
R.set_listening(!R.get_listening() && !is_cut(WIRE_SIGNAL))
|
|
|
|
if(WIRE_TRANSMIT)
|
|
R.set_broadcasting(!R.get_broadcasting() && !is_cut(WIRE_SIGNAL))
|
|
SStgui.update_uis(holder)
|
|
|
|
/datum/wires/radio/on_cut(wire, mend, source)
|
|
var/obj/item/radio/R = holder
|
|
switch(wire)
|
|
if(WIRE_SIGNAL)
|
|
R.set_listening(mend && !is_cut(WIRE_RECEIVE))
|
|
R.set_broadcasting(mend && !is_cut(WIRE_TRANSMIT))
|
|
|
|
if(WIRE_RECEIVE)
|
|
R.set_listening(mend && !is_cut(WIRE_SIGNAL))
|
|
|
|
if(WIRE_TRANSMIT)
|
|
R.set_broadcasting(mend && !is_cut(WIRE_SIGNAL))
|
|
SStgui.update_uis(holder)
|