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 20:11:23 -04:00
parent ae96b83098
commit 6e21e1ad28
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()