Subspace jammer item

Jams the three devices that I'm aware of that use subspace communications: Headsets, PDAs, and Communicators.

All three will be unable to communicate if in range of a jammer. The default range is 7 turfs, the battery that comes in the jammer is a weapon cell (just to make it a little harder to find replacements) and lasts 60 seconds. The range and power use are variables.

Speaking through a headset will produce 'soft' or 'loud' static depending on how far you are, allowing you to sort of dead-reckon your way to a placed jammer. You can just carry them, otherwise.

I've got no experience with adding tator items so I'll leave that sort of thing up to you guys.
This commit is contained in:
Arokha Sieyes
2017-05-09 16:58:04 -04:00
parent cae50c2818
commit 5c7ef1bbef
5 changed files with 109 additions and 5 deletions
@@ -169,9 +169,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)
if(node.on && node.allow_external_communicators)
return 1
if(node && node.on && node.allow_external_communicators && !is_jammed(src))
return 1
return 0
// Proc: process()
@@ -182,7 +181,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list()
if(update_ticks % 5)
if(!node)
node = get_exonet_node()
if(!node || !node.on || !node.allow_external_communicators)
if(!get_connection_to_tcomms())
close_connection(reason = "Connection timed out")
// Proc: attackby()