diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm
index 0ee1eafa7cb..130f5957266 100644
--- a/code/game/machinery/computer/buildandrepair.dm
+++ b/code/game/machinery/computer/buildandrepair.dm
@@ -71,8 +71,6 @@
build_path = /obj/machinery/computer/communications
origin_tech = "programming=2;magnets=2"
var/lastTimeUsed = 0
-/obj/item/weapon/circuitboard/communications/proc/cooldownLeft(deciseconds=600)
- return max(deciseconds - (world.time - lastTimeUsed), 0)
/obj/item/weapon/circuitboard/card
name = "circuit board (ID Console)"
diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm
index f13ce7edf07..cc328392059 100644
--- a/code/game/machinery/computer/communications.dm
+++ b/code/game/machinery/computer/communications.dm
@@ -202,7 +202,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
// OMG CENTCOM LETTERHEAD
if("MessageCentcomm")
if(src.authenticated==2)
- if(CM.cooldownLeft())
+ if(CM.lastTimeUsed + 600 < world.time)
usr << "Arrays recycling. Please stand by."
return
var/input = stripped_input(usr, "Please choose a message to transmit to Centcom via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to Centcomm.", "")
@@ -217,7 +217,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
// OMG SYNDICATE ...LETTERHEAD
if("MessageSyndicate")
if((src.authenticated==2) && (src.emagged))
- if(CM.cooldownLeft())
+ if(CM.lastTimeUsed + 600 < world.time)
usr << "Arrays recycling. Please stand by."
return
var/input = stripped_input(usr, "Please choose a message to transmit to \[ABNORMAL ROUTING COORDINATES\] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to /??????/.", "")
@@ -235,7 +235,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
if("nukerequest") //When there's no other way
if(src.authenticated==2)
- if(CM.cooldownLeft())
+ if(CM.lastTimeUsed + 600 < world.time)
usr << "Arrays recycling. Please stand by."
return
var/input = stripped_input(usr, "Please enter the reason for requesting the nuclear self-destruct codes. Misuse of the nuclear request system will not be tolerated under any circumstances. Transmission does not guarantee a response.", "Self Destruct Code Request.","")
@@ -245,7 +245,6 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
usr << "Request sent."
log_say("[key_name(usr)] has requested the nuclear codes from Centcomm")
priority_announce("The codes for the on-station nuclear self-destruct have been requested by [usr]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self Destruct Codes Requested",'sound/AI/commandreport.ogg')
-
CM.lastTimeUsed = world.time
@@ -612,3 +611,6 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12
SSshuttle.autoEvac()
return ..()
+/obj/machinery/computer/communications/proc/overrideCooldown()
+ var/obj/item/weapon/circuitboard/communications/CM = circuit
+ CM.lastTimeUsed = 0
\ No newline at end of file
diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm
index 5f4a809778c..77eda46d3e8 100644
--- a/code/modules/admin/verbs/pray.dm
+++ b/code/modules/admin/verbs/pray.dm
@@ -42,14 +42,20 @@
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
msg = "CENTCOM:[key_name_admin(Sender)] (?) (PP) (VV) (SM) (FLW) (TP) (BSA) (RPLY): [msg]"
admins << msg
+ for(var/obj/machinery/computer/communications/C in machines)
+ C.overrideCooldown()
/proc/Syndicate_announce(text , mob/Sender)
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
msg = "SYNDICATE:[key_name_admin(Sender)] (?) (PP) (VV) (SM) (FLW) (TP) (BSA) (RPLY): [msg]"
admins << msg
+ for(var/obj/machinery/computer/communications/C in machines)
+ C.overrideCooldown()
/proc/Nuke_request(text , mob/Sender)
var/msg = copytext(sanitize(text), 1, MAX_MESSAGE_LEN)
msg = "NUKE CODE REQUEST:[key_name_admin(Sender)] (?) (PP) (VV) (SM) (FLW) (TP) (BSA) (RPLY): [msg]"
admins << msg
- admins << "At this current time, the nuke must have the code manually set via varedit."
\ No newline at end of file
+ admins << "At this current time, the nuke must have the code manually set via varedit."
+ for(var/obj/machinery/computer/communications/C in machines)
+ C.overrideCooldown()