Merge pull request #2935 from VOREStation/aro-radiotweaks

Headset/Radio Tweaks for Explorers Mostly
This commit is contained in:
Aronai Sieyes
2018-02-03 00:41:44 -05:00
committed by GitHub
9 changed files with 92 additions and 23 deletions
@@ -173,13 +173,8 @@ var/global/list/obj/item/device/communicator/all_communicators = list()
// Parameters: None
// Description: Simple check to see if the exonet node is active.
/obj/item/device/communicator/proc/get_connection_to_tcomms()
if(node && node.on && node.allow_external_communicators && !is_jammed(src))
// VOREStation Edit Start - Lose connection if too far from our exonet node.
var/turf/T = get_turf(src)
if(!T || !is_on_same_plane_or_station(T.z, node.z))
return 0
// VOREStation Edit End
return 1
if(node && node.on && node.allow_external_communicators)
return can_telecomm(src,node)
return 0
// Proc: process()
+12 -5
View File
@@ -39,6 +39,7 @@ var/global/list/default_medbay_channels = list(
var/listening = 1
var/list/channels = list() //see communications.dm for full list. First channel is a "default" for :h
var/subspace_transmission = 0
var/adhoc_fallback = FALSE //Falls back to 'radio' mode if subspace not available
var/syndie = 0//Holder to see if it's a syndicate encrypted radio
var/centComm = 0//Holder to see if it's a CentCom encrypted radio
flags = CONDUCT
@@ -414,9 +415,15 @@ var/global/list/default_medbay_channels = list(
for(var/obj/machinery/telecomms/allinone/R in telecomms_list)
R.receive_signal(signal)
// Receiving code can be located in Telecommunications.dm
return signal.data["done"] && position.z in signal.data["level"]
if(signal.data["done"] && position.z in signal.data["level"])
return TRUE //Huzzah, sent via subspace
else if(adhoc_fallback) //Less huzzah, we have to fallback
to_chat(loc,"<span class='warning'>\The [src] pings as it falls back to local radio transmission.</span>")
subspace_transmission = FALSE
return Broadcast_Message(connection, M, voicemask, pick(M.speak_emote),
src, message, displayname, jobname, real_name, M.voice_name,
signal.transmission_method, signal.data["compression"], list(position.z), connection.frequency,verb,speaking)
/* ###### Intercoms and station-bounced radios ###### */
@@ -463,10 +470,10 @@ var/global/list/default_medbay_channels = list(
for(var/obj/machinery/telecomms/receiver/R in telecomms_list)
R.receive_signal(signal)
sleep(rand(10,25)) // wait a little...
if(signal.data["done"] && position.z in signal.data["level"])
if(adhoc_fallback)
to_chat(loc,"<span class='notice'>\The [src] pings as it reestablishes subspace communications.</span>")
subspace_transmission = TRUE
// we're done here.
return 1