controllers sync

This commit is contained in:
deathride58
2018-01-03 23:23:11 -05:00
parent af96f58ffd
commit 1acdd3ce5c
23 changed files with 372 additions and 192 deletions
+19 -26
View File
@@ -8,11 +8,10 @@ SUBSYSTEM_DEF(blackbox)
var/list/feedback = list() //list of datum/feedback_variable
var/triggertime = 0
var/sealed = FALSE //time to stop tracking stats?
var/list/research_levels = list() //list of highest tech levels attained that isn't lost lost by destruction of RD computers
var/list/versions = list("time_dilation_current" = 2,
"science_techweb_unlock" = 2,
"antagonists" = 3) //associative list of any feedback variables that have had their format changed since creation and their current version, remember to update this
var/list/versions = list("antagonists" = 3,
"admin_secrets_fun_used" = 2,
"time_dilation_current" = 3,
"science_techweb_unlock" = 2) //associative list of any feedback variables that have had their format changed since creation and their current version, remember to update this
/datum/controller/subsystem/blackbox/Initialize()
triggertime = world.time
@@ -59,13 +58,11 @@ SUBSYSTEM_DEF(blackbox)
/datum/controller/subsystem/blackbox/Shutdown()
sealed = FALSE
record_feedback("tally", "ahelp_stats", GLOB.ahelp_tickets.active_tickets.len, "unresolved")
for (var/obj/machinery/message_server/MS in GLOB.message_servers)
for (var/obj/machinery/telecomms/message_server/MS in GLOB.telecomms_list)
if (MS.pda_msgs.len)
record_feedback("tally", "radio_usage", MS.pda_msgs.len, "PDA")
if (MS.rc_msgs.len)
record_feedback("tally", "radio_usage", MS.rc_msgs.len, "request console")
if(research_levels.len)
SSblackbox.record_feedback("associative", "high_research_level", 1, research_levels)
if (!SSdbcore.Connect())
return
@@ -92,39 +89,35 @@ SUBSYSTEM_DEF(blackbox)
sealed = TRUE
return TRUE
/datum/controller/subsystem/blackbox/proc/log_research(tech, level)
if(!(tech in research_levels) || research_levels[tech] < level)
research_levels[tech] = level
/datum/controller/subsystem/blackbox/proc/LogBroadcast(freq)
if(sealed)
return
switch(freq)
if(1459)
if(FREQ_COMMON)
record_feedback("tally", "radio_usage", 1, "common")
if(GLOB.SCI_FREQ)
if(FREQ_SCIENCE)
record_feedback("tally", "radio_usage", 1, "science")
if(GLOB.COMM_FREQ)
if(FREQ_COMMAND)
record_feedback("tally", "radio_usage", 1, "command")
if(GLOB.MED_FREQ)
if(FREQ_MEDICAL)
record_feedback("tally", "radio_usage", 1, "medical")
if(GLOB.ENG_FREQ)
if(FREQ_ENGINEERING)
record_feedback("tally", "radio_usage", 1, "engineering")
if(GLOB.SEC_FREQ)
if(FREQ_SECURITY)
record_feedback("tally", "radio_usage", 1, "security")
if(GLOB.SYND_FREQ)
if(FREQ_SYNDICATE)
record_feedback("tally", "radio_usage", 1, "syndicate")
if(GLOB.SERV_FREQ)
if(FREQ_SERVICE)
record_feedback("tally", "radio_usage", 1, "service")
if(GLOB.SUPP_FREQ)
if(FREQ_SUPPLY)
record_feedback("tally", "radio_usage", 1, "supply")
if(GLOB.CENTCOM_FREQ)
if(FREQ_CENTCOM)
record_feedback("tally", "radio_usage", 1, "centcom")
if(GLOB.AIPRIV_FREQ)
if(FREQ_AI_PRIVATE)
record_feedback("tally", "radio_usage", 1, "ai private")
if(GLOB.REDTEAM_FREQ)
if(FREQ_CTF_RED)
record_feedback("tally", "radio_usage", 1, "CTF red team")
if(GLOB.BLUETEAM_FREQ)
if(FREQ_CTF_BLUE)
record_feedback("tally", "radio_usage", 1, "CTF blue team")
else
record_feedback("tally", "radio_usage", 1, "other")
@@ -194,7 +187,7 @@ Versioning
"gun_fired" = 2)
*/
/datum/controller/subsystem/blackbox/proc/record_feedback(key_type, key, increment, data, overwrite)
if(sealed || !key_type || !istext(key) || !isnum(increment || !data))
if(sealed || !key_type || !istext(key) || !isnum(increment) || !data)
return
var/datum/feedback_variable/FV = find_feedback_datum(key, key_type)
switch(key_type)