From 729010bbb2b1b26d4eaafd46580f88fc11111f03 Mon Sep 17 00:00:00 2001 From: Cyberboss Date: Wed, 26 Apr 2017 18:04:57 -0400 Subject: [PATCH] Unorphans the blackbox (#26129) Moved sql_poll_population from server_maint to this new SS. Moved few remaining server_maint tasks to SSping and deleted it. --- code/controllers/admin.dm | 4 +- .../subsystem/blackbox.dm} | 510 +++++++++--------- code/controllers/subsystem/job.dm | 2 +- code/controllers/subsystem/mapping.dm | 2 +- code/controllers/subsystem/ping.dm | 28 - code/controllers/subsystem/server_maint.dm | 32 +- code/datums/helper_datums/getrev.dm | 2 +- code/game/gamemodes/blob/blob_finish.dm | 6 +- code/game/gamemodes/changeling/changeling.dm | 8 +- .../gamemodes/changeling/changeling_power.dm | 4 +- .../gamemodes/changeling/evolution_menu.dm | 2 +- .../gamemodes/changeling/powers/absorb.dm | 4 +- .../gamemodes/changeling/powers/linglink.dm | 2 +- code/game/gamemodes/clock_cult/clock_cult.dm | 6 +- .../gamemodes/clock_cult/clock_scripture.dm | 2 +- code/game/gamemodes/cult/cult.dm | 22 +- code/game/gamemodes/cult/ritual.dm | 2 +- code/game/gamemodes/game_mode.dm | 20 +- code/game/gamemodes/gang/gang.dm | 4 +- code/game/gamemodes/meteor/meteor.dm | 4 +- .../gamemodes/miniantags/monkey/monkey.dm | 8 +- code/game/gamemodes/nuclear/nuclear.dm | 20 +- .../gamemodes/nuclear/nuclear_challenge.dm | 2 +- code/game/gamemodes/revolution/revolution.dm | 4 +- code/game/gamemodes/traitor/traitor.dm | 8 +- code/game/gamemodes/wizard/raginmages.dm | 2 +- code/game/gamemodes/wizard/spellbook.dm | 14 +- code/game/gamemodes/wizard/wizard.dm | 10 +- code/game/machinery/computer/arcade.dm | 12 +- .../game/machinery/computer/communications.dm | 10 +- code/game/machinery/newscaster.dm | 6 +- code/game/machinery/telecomms/broadcasting.dm | 25 +- code/game/machinery/vending.dm | 2 +- code/game/mecha/mecha_construction_paths.dm | 14 +- code/game/objects/items/charter.dm | 2 +- code/game/objects/items/robot/robot_parts.dm | 4 +- code/game/objects/items/weapons/handcuffs.dm | 6 +- .../objects/items/weapons/holy_weapons.dm | 2 +- .../objects/items/weapons/storage/book.dm | 2 +- code/game/objects/structures/ai_core.dm | 2 +- .../turfs/simulated/floor/plating/asteroid.dm | 2 +- code/game/turfs/simulated/minerals.dm | 4 +- code/modules/admin/NewBan.dm | 2 +- code/modules/admin/admin.dm | 36 +- code/modules/admin/admin_verbs.dm | 40 +- code/modules/admin/secrets.dm | 54 +- code/modules/admin/topic.dm | 30 +- code/modules/admin/verbs/adminhelp.dm | 16 +- code/modules/admin/verbs/adminjump.dm | 16 +- code/modules/admin/verbs/adminpm.dm | 4 +- code/modules/admin/verbs/adminsay.dm | 2 +- code/modules/admin/verbs/atmosdebug.dm | 4 +- code/modules/admin/verbs/deadsay.dm | 2 +- code/modules/admin/verbs/debug.dm | 30 +- code/modules/admin/verbs/diagnostics.dm | 8 +- code/modules/admin/verbs/fps.dm | 2 +- code/modules/admin/verbs/getlogs.dm | 4 +- code/modules/admin/verbs/machine_upgrade.dm | 2 +- code/modules/admin/verbs/mapping.dm | 16 +- code/modules/admin/verbs/massmodvar.dm | 2 +- code/modules/admin/verbs/panicbunker.dm | 2 +- code/modules/admin/verbs/playsound.dm | 8 +- code/modules/admin/verbs/possess.dm | 6 +- code/modules/admin/verbs/pray.dm | 2 +- code/modules/admin/verbs/randomverbs.dm | 64 +-- .../admin/verbs/reestablish_db_connection.dm | 4 +- code/modules/assembly/holder.dm | 2 +- code/modules/cargo/exports.dm | 4 +- code/modules/client/preferences_toggles.dm | 50 +- code/modules/client/verbs/ooc.dm | 2 +- code/modules/crafting/craft.dm | 2 +- code/modules/events/_event.dm | 4 +- code/modules/food_and_drinks/food/snacks.dm | 4 +- .../kitchen_machinery/processor.dm | 2 +- code/modules/hydroponics/seeds.dm | 2 +- .../jobs/job_types/civilian_chaplain.dm | 4 +- code/modules/mining/aux_base.dm | 2 +- code/modules/mining/equipment.dm | 8 +- .../mining/lavaland/necropolis_chests.dm | 8 +- code/modules/mining/machine_vending.dm | 4 +- code/modules/mob/living/brain/MMI.dm | 2 +- code/modules/mob/living/carbon/human/death.dm | 2 +- .../mob/living/carbon/human/human_defense.dm | 4 +- .../modules/mob/living/silicon/robot/death.dm | 2 +- .../mob/living/silicon/robot/robot_modules.dm | 2 +- .../hostile/megafauna/megafauna.dm | 2 +- .../simple_animal/hostile/mining_mobs.dm | 12 +- .../mob/living/simple_animal/slime/powers.dm | 2 +- code/modules/power/cell.dm | 2 +- code/modules/power/singularity/generator.dm | 2 +- code/modules/projectiles/gun.dm | 2 +- code/modules/projectiles/guns/medbeam.dm | 2 +- code/modules/reagents/chemistry/holder.dm | 2 +- .../chemistry/recipes/slime_extracts.dm | 2 +- code/modules/recycling/disposal-unit.dm | 2 +- code/modules/research/rdconsole.dm | 8 +- .../security_levels/keycard_authentication.dm | 4 +- code/modules/shuttle/arrivals.dm | 2 +- code/modules/shuttle/emergency.dm | 2 +- code/modules/shuttle/manipulator.dm | 4 +- code/modules/shuttle/shuttle.dm | 4 +- code/modules/shuttle/supply.dm | 2 +- code/modules/surgery/surgery.dm | 2 +- code/modules/uplink/uplink_item.dm | 10 +- code/world.dm | 6 +- tgstation.dme | 3 +- 106 files changed, 668 insertions(+), 702 deletions(-) rename code/{orphaned_procs/statistics.dm => controllers/subsystem/blackbox.dm} (57%) delete mode 100644 code/controllers/subsystem/ping.dm diff --git a/code/controllers/admin.dm b/code/controllers/admin.dm index 2be7139a27b..3565620c88a 100644 --- a/code/controllers/admin.dm +++ b/code/controllers/admin.dm @@ -45,9 +45,9 @@ INITIALIZE_IMMEDIATE(/obj/effect/statclick) switch(controller) if("Master") Recreate_MC() - feedback_add_details("admin_verb","Restart Master Controller") + SSblackbox.add_details("admin_verb","Restart Master Controller") if("Failsafe") new /datum/controller/failsafe() - feedback_add_details("admin_verb","Restart Failsafe Controller") + SSblackbox.add_details("admin_verb","Restart Failsafe Controller") message_admins("Admin [key_name_admin(usr)] has restarted the [controller] controller.") diff --git a/code/orphaned_procs/statistics.dm b/code/controllers/subsystem/blackbox.dm similarity index 57% rename from code/orphaned_procs/statistics.dm rename to code/controllers/subsystem/blackbox.dm index d6cdcda6c1c..bac949b0465 100644 --- a/code/orphaned_procs/statistics.dm +++ b/code/controllers/subsystem/blackbox.dm @@ -1,253 +1,257 @@ -GLOBAL_DATUM_INIT(blackbox, /datum/feedback, new) - -//the feedback datum; stores all feedback -/datum/feedback - var/list/messages = list() - var/list/messages_admin = list() - - var/list/msg_common = list() - var/list/msg_science = list() - var/list/msg_command = list() - var/list/msg_medical = list() - var/list/msg_engineering = list() - var/list/msg_security = list() - var/list/msg_deathsquad = list() - var/list/msg_syndicate = list() - var/list/msg_service = list() - var/list/msg_cargo = list() - - var/list/datum/feedback_variable/feedback = new() - -/datum/feedback/proc/find_feedback_datum(variable) - for (var/datum/feedback_variable/FV in feedback) - if (FV.get_variable() == variable) - return FV - var/datum/feedback_variable/FV = new(variable) - feedback += FV - return FV - -/datum/feedback/proc/get_round_feedback() - return feedback - -/datum/feedback/proc/round_end_data_gathering() - var/pda_msg_amt = 0 - var/rc_msg_amt = 0 - - for (var/obj/machinery/message_server/MS in GLOB.message_servers) - if (MS.pda_msgs.len > pda_msg_amt) - pda_msg_amt = MS.pda_msgs.len - if (MS.rc_msgs.len > rc_msg_amt) - rc_msg_amt = MS.rc_msgs.len - - feedback_set_details("radio_usage","") - - feedback_add_details("radio_usage","COM-[msg_common.len]") - feedback_add_details("radio_usage","SCI-[msg_science.len]") - feedback_add_details("radio_usage","HEA-[msg_command.len]") - feedback_add_details("radio_usage","MED-[msg_medical.len]") - feedback_add_details("radio_usage","ENG-[msg_engineering.len]") - feedback_add_details("radio_usage","SEC-[msg_security.len]") - feedback_add_details("radio_usage","DTH-[msg_deathsquad.len]") - feedback_add_details("radio_usage","SYN-[msg_syndicate.len]") - feedback_add_details("radio_usage","SRV-[msg_service.len]") - feedback_add_details("radio_usage","CAR-[msg_cargo.len]") - feedback_add_details("radio_usage","OTH-[messages.len]") - feedback_add_details("radio_usage","PDA-[pda_msg_amt]") - feedback_add_details("radio_usage","RC-[rc_msg_amt]") - - feedback_set_details("round_end","[time2text(world.realtime)]") //This one MUST be the last one that gets set. - -//This proc is only to be called at round end. -/datum/feedback/proc/save_all_data_to_sql() - if (!feedback) return - - round_end_data_gathering() //round_end time logging and some other data processing - if (!SSdbcore.Connect()) return - var/round_id - - var/datum/DBQuery/query_feedback_max_id = SSdbcore.NewQuery("SELECT MAX(round_id) AS round_id FROM [format_table_name("feedback")]") - if(!query_feedback_max_id.Execute()) - return - while (query_feedback_max_id.NextRow()) - round_id = query_feedback_max_id.item[1] - - if (!isnum(round_id)) - round_id = text2num(round_id) - round_id++ - - var/sqlrowlist = "" - - for (var/datum/feedback_variable/FV in feedback) - if (sqlrowlist != "") - sqlrowlist += ", " //a comma (,) at the start of the first row to insert will trigger a SQL error - - sqlrowlist += "(null, Now(), [round_id], \"[sanitizeSQL(FV.get_variable())]\", [FV.get_value()], \"[sanitizeSQL(FV.get_details())]\")" - - if (sqlrowlist == "") - return - - var/datum/DBQuery/query_feedback_save = SSdbcore.NewQuery("INSERT DELAYED IGNORE INTO [format_table_name("feedback")] VALUES " + sqlrowlist) - query_feedback_save.Execute() - - -/proc/feedback_set(variable,value) - if(!GLOB.blackbox) - return - - var/datum/feedback_variable/FV = GLOB.blackbox.find_feedback_datum(variable) - - if(!FV) - return - - FV.set_value(value) - -/proc/feedback_inc(variable,value) - if(!GLOB.blackbox) - return - - var/datum/feedback_variable/FV = GLOB.blackbox.find_feedback_datum(variable) - - if(!FV) - return - - FV.inc(value) - -/proc/feedback_dec(variable,value) - if(!GLOB.blackbox) - return - - var/datum/feedback_variable/FV = GLOB.blackbox.find_feedback_datum(variable) - - if(!FV) - return - - FV.dec(value) - -/proc/feedback_set_details(variable,details) - if(!GLOB.blackbox) - return - - var/datum/feedback_variable/FV = GLOB.blackbox.find_feedback_datum(variable) - - if(!FV) - return - - FV.set_details(details) - -/proc/feedback_add_details(variable,details) - if(!GLOB.blackbox) - return - - var/datum/feedback_variable/FV = GLOB.blackbox.find_feedback_datum(variable) - - if(!FV) - return - - FV.add_details(details) - -//feedback variable datum, for storing all kinds of data -/datum/feedback_variable - var/variable - var/value - var/details - -/datum/feedback_variable/New(var/param_variable,var/param_value = 0) - variable = param_variable - value = param_value - -/datum/feedback_variable/proc/inc(num = 1) - if (isnum(value)) - value += num - else - value = text2num(value) - if (isnum(value)) - value += num - else - value = num - -/datum/feedback_variable/proc/dec(num = 1) - if (isnum(value)) - value -= num - else - value = text2num(value) - if (isnum(value)) - value -= num - else - value = -num - -/datum/feedback_variable/proc/set_value(num) - if (isnum(num)) - value = num - -/datum/feedback_variable/proc/get_value() - if (!isnum(value)) - return 0 - return value - -/datum/feedback_variable/proc/get_variable() - return variable - -/datum/feedback_variable/proc/set_details(text) - if (istext(text)) - details = text - -/datum/feedback_variable/proc/add_details(text) - if (istext(text)) - text = replacetext(text, " ", "_") - if (!details) - details = text - else - details += " [text]" - -/datum/feedback_variable/proc/get_details() - return details - -/datum/feedback_variable/proc/get_parsed() - return list(variable,value,details) - -//sql reporting procs -/proc/sql_poll_population() - if(!config.sql_enabled) - return - if(!SSdbcore.Connect()) - return - var/playercount = 0 - for(var/mob/M in GLOB.player_list) - if(M.client) - playercount += 1 - var/admincount = GLOB.admins.len - var/datum/DBQuery/query_record_playercount = SSdbcore.NewQuery("INSERT INTO [format_table_name("legacy_population")] (playercount, admincount, time, server_ip, server_port) VALUES ([playercount], [admincount], '[SQLtime()]', INET_ATON('[world.internet_address]'), '[world.port]')") - query_record_playercount.Execute() - -/proc/sql_report_death(mob/living/L) - if(!config.sql_enabled) - return - if(!SSdbcore.Connect()) - return - if(!L || !L.key || !L.mind) - return - var/turf/T = get_turf(L) - var/area/placeofdeath = get_area(T.loc) - var/sqlname = sanitizeSQL(L.real_name) - var/sqlkey = sanitizeSQL(L.ckey) - var/sqljob = sanitizeSQL(L.mind.assigned_role) - var/sqlspecial = sanitizeSQL(L.mind.special_role) - var/sqlpod = sanitizeSQL(placeofdeath.name) - var/laname - var/lakey - if(L.lastattacker && ismob(L.lastattacker)) - var/mob/LA = L.lastattacker - laname = sanitizeSQL(LA.real_name) - lakey = sanitizeSQL(LA.key) - var/sqlgender = sanitizeSQL(L.gender) - var/sqlbrute = sanitizeSQL(L.getBruteLoss()) - var/sqlfire = sanitizeSQL(L.getFireLoss()) - var/sqlbrain = sanitizeSQL(L.getBrainLoss()) - var/sqloxy = sanitizeSQL(L.getOxyLoss()) - var/sqltox = sanitizeSQL(L.getStaminaLoss()) - var/sqlclone = sanitizeSQL(L.getStaminaLoss()) - var/sqlstamina = sanitizeSQL(L.getStaminaLoss()) - var/coord = sanitizeSQL("[L.x], [L.y], [L.z]") - var/map = sanitizeSQL(SSmapping.config.map_name) - var/datum/DBQuery/query_report_death = SSdbcore.NewQuery("INSERT INTO [format_table_name("death")] (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, toxloss, cloneloss, staminaloss, coord, mapname, server_ip, server_port) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[SQLtime()]', '[laname]', '[lakey]', '[sqlgender]', [sqlbrute], [sqlfire], [sqlbrain], [sqloxy], [sqltox], [sqlclone], [sqlstamina], '[coord]', '[map]', INET_ATON('[world.internet_address]'), '[world.port]')") - query_report_death.Execute() +SUBSYSTEM_DEF(blackbox) + name = "Blackbox" + wait = 6000 + flags = SS_NO_TICK_CHECK + + var/list/msg_common = list() + var/list/msg_science = list() + var/list/msg_command = list() + var/list/msg_medical = list() + var/list/msg_engineering = list() + var/list/msg_security = list() + var/list/msg_deathsquad = list() + var/list/msg_syndicate = list() + var/list/msg_service = list() + var/list/msg_cargo = list() + var/list/msg_other = list() + + var/list/feedback = list() //list of datum/feedback_variable + +//poll population +/datum/controller/subsystem/blackbox/fire() + if(!SSdbcore.Connect()) + return + var/playercount = 0 + for(var/mob/M in GLOB.player_list) + if(M.client) + playercount += 1 + var/admincount = GLOB.admins.len + var/datum/DBQuery/query_record_playercount = SSdbcore.NewQuery("INSERT INTO [format_table_name("legacy_population")] (playercount, admincount, time, server_ip, server_port) VALUES ([playercount], [admincount], '[SQLtime()]', INET_ATON('[world.internet_address]'), '[world.port]')") + query_record_playercount.Execute() + +/datum/controller/subsystem/blackbox/Recover() + msg_common = SSblackbox.msg_common + msg_science = SSblackbox.msg_science + msg_command = SSblackbox.msg_command + msg_medical = SSblackbox.msg_medical + msg_engineering = SSblackbox.msg_engineering + msg_security = SSblackbox.msg_security + msg_deathsquad = SSblackbox.msg_deathsquad + msg_syndicate = SSblackbox.msg_syndicate + msg_service = SSblackbox.msg_service + msg_cargo = SSblackbox.msg_cargo + msg_other = SSblackbox.msg_other + + feedback = SSblackbox.feedback + +//no touchie +/datum/controller/subsystem/blackbox/can_vv_get(var_name) + if(var_name == "feedback") + return FALSE + return ..() + +/datum/controller/subsystem/blackbox/vv_edit_var(var_name, var_value) + return FALSE + +/datum/controller/subsystem/blackbox/Shutdown() + var/pda_msg_amt = 0 + var/rc_msg_amt = 0 + + for (var/obj/machinery/message_server/MS in GLOB.message_servers) + if (MS.pda_msgs.len > pda_msg_amt) + pda_msg_amt = MS.pda_msgs.len + if (MS.rc_msgs.len > rc_msg_amt) + rc_msg_amt = MS.rc_msgs.len + + set_details("radio_usage","") + + add_details("radio_usage","COM-[msg_common.len]") + add_details("radio_usage","SCI-[msg_science.len]") + add_details("radio_usage","HEA-[msg_command.len]") + add_details("radio_usage","MED-[msg_medical.len]") + add_details("radio_usage","ENG-[msg_engineering.len]") + add_details("radio_usage","SEC-[msg_security.len]") + add_details("radio_usage","DTH-[msg_deathsquad.len]") + add_details("radio_usage","SYN-[msg_syndicate.len]") + add_details("radio_usage","SRV-[msg_service.len]") + add_details("radio_usage","CAR-[msg_cargo.len]") + add_details("radio_usage","OTH-[msg_other.len]") + add_details("radio_usage","PDA-[pda_msg_amt]") + add_details("radio_usage","RC-[rc_msg_amt]") + + set_details("round_end","[time2text(world.realtime)]") //This one MUST be the last one that gets set. + + if (!SSdbcore.Connect()) + return + + var/round_id + + var/datum/DBQuery/query_feedback_max_id = SSdbcore.NewQuery("SELECT MAX(round_id) AS round_id FROM [format_table_name("feedback")]") + if(!query_feedback_max_id.Execute()) + return + while (query_feedback_max_id.NextRow()) + round_id = query_feedback_max_id.item[1] + + if (!isnum(round_id)) + round_id = text2num(round_id) + round_id++ + + var/sqlrowlist = "" + + for (var/datum/feedback_variable/FV in feedback) + if (sqlrowlist != "") + sqlrowlist += ", " //a comma (,) at the start of the first row to insert will trigger a SQL error + + sqlrowlist += "(null, Now(), [round_id], \"[sanitizeSQL(FV.get_variable())]\", [FV.get_value()], \"[sanitizeSQL(FV.get_details())]\")" + + if (sqlrowlist == "") + return + + var/datum/DBQuery/query_feedback_save = SSdbcore.NewQuery("INSERT DELAYED IGNORE INTO [format_table_name("feedback")] VALUES " + sqlrowlist) + query_feedback_save.Execute() + +/datum/controller/subsystem/blackbox/proc/LogBroadcast(blackbox_msg, freq) + switch(freq) + if(1459) + msg_common += blackbox_msg + if(1351) + msg_science += blackbox_msg + if(1353) + msg_command += blackbox_msg + if(1355) + msg_medical += blackbox_msg + if(1357) + msg_engineering += blackbox_msg + if(1359) + msg_security += blackbox_msg + if(1441) + msg_deathsquad += blackbox_msg + if(1213) + msg_syndicate += blackbox_msg + if(1349) + msg_service += blackbox_msg + if(1347) + msg_cargo += blackbox_msg + else + msg_other += blackbox_msg + +/datum/controller/subsystem/blackbox/proc/find_feedback_datum(variable) + for(var/datum/feedback_variable/FV in feedback) + if(FV.get_variable() == variable) + return FV + + var/datum/feedback_variable/FV = new(variable) + feedback += FV + return FV + +/datum/controller/subsystem/blackbox/proc/set_val(variable, value) + var/datum/feedback_variable/FV = find_feedback_datum(variable) + FV.set_value(value) + +/datum/controller/subsystem/blackbox/proc/inc(variable, value) + var/datum/feedback_variable/FV = find_feedback_datum(variable) + FV.inc(value) + +/datum/controller/subsystem/blackbox/proc/dec(variable,value) + var/datum/feedback_variable/FV = find_feedback_datum(variable) + FV.dec(value) + +/datum/controller/subsystem/blackbox/proc/set_details(variable,details) + var/datum/feedback_variable/FV = find_feedback_datum(variable) + FV.set_details(details) + +/datum/controller/subsystem/blackbox/proc/add_details(variable,details) + var/datum/feedback_variable/FV = find_feedback_datum(variable) + FV.add_details(details) + +/datum/controller/subsystem/blackbox/proc/ReportDeath(mob/living/L) + if(!SSdbcore.Connect()) + return + if(!L || !L.key || !L.mind) + return + var/turf/T = get_turf(L) + var/area/placeofdeath = get_area(T.loc) + var/sqlname = sanitizeSQL(L.real_name) + var/sqlkey = sanitizeSQL(L.ckey) + var/sqljob = sanitizeSQL(L.mind.assigned_role) + var/sqlspecial = sanitizeSQL(L.mind.special_role) + var/sqlpod = sanitizeSQL(placeofdeath.name) + var/laname + var/lakey + if(L.lastattacker && ismob(L.lastattacker)) + var/mob/LA = L.lastattacker + laname = sanitizeSQL(LA.real_name) + lakey = sanitizeSQL(LA.key) + var/sqlgender = sanitizeSQL(L.gender) + var/sqlbrute = sanitizeSQL(L.getBruteLoss()) + var/sqlfire = sanitizeSQL(L.getFireLoss()) + var/sqlbrain = sanitizeSQL(L.getBrainLoss()) + var/sqloxy = sanitizeSQL(L.getOxyLoss()) + var/sqltox = sanitizeSQL(L.getStaminaLoss()) + var/sqlclone = sanitizeSQL(L.getStaminaLoss()) + var/sqlstamina = sanitizeSQL(L.getStaminaLoss()) + var/coord = sanitizeSQL("[L.x], [L.y], [L.z]") + var/map = sanitizeSQL(SSmapping.config.map_name) + var/datum/DBQuery/query_report_death = SSdbcore.NewQuery("INSERT INTO [format_table_name("death")] (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, toxloss, cloneloss, staminaloss, coord, mapname, server_ip, server_port) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[SQLtime()]', '[laname]', '[lakey]', '[sqlgender]', [sqlbrute], [sqlfire], [sqlbrain], [sqloxy], [sqltox], [sqlclone], [sqlstamina], '[coord]', '[map]', INET_ATON('[world.internet_address]'), '[world.port]')") + query_report_death.Execute() + + +//feedback variable datum, for storing all kinds of data +/datum/feedback_variable + var/variable + var/value + var/details + +/datum/feedback_variable/New(param_variable, param_value = 0) + variable = param_variable + value = param_value + +/datum/feedback_variable/proc/inc(num = 1) + if (isnum(value)) + value += num + else + value = text2num(value) + if (isnum(value)) + value += num + else + value = num + +/datum/feedback_variable/proc/dec(num = 1) + if (isnum(value)) + value -= num + else + value = text2num(value) + if (isnum(value)) + value -= num + else + value = -num + +/datum/feedback_variable/proc/set_value(num) + if (isnum(num)) + value = num + +/datum/feedback_variable/proc/get_value() + if (!isnum(value)) + return 0 + return value + +/datum/feedback_variable/proc/get_variable() + return variable + +/datum/feedback_variable/proc/set_details(text) + if (istext(text)) + details = text + +/datum/feedback_variable/proc/add_details(text) + if (istext(text)) + text = replacetext(text, " ", "_") + if (!details) + details = text + else + details += " [text]" + +/datum/feedback_variable/proc/get_details() + return details + +/datum/feedback_variable/proc/get_parsed() + return list(variable,value,details) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 137bd2a2c10..a3255b73e40 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -483,7 +483,7 @@ SUBSYSTEM_DEF(job) else level4++ //not selected tmp_str += "HIGH=[level1]|MEDIUM=[level2]|LOW=[level3]|NEVER=[level4]|BANNED=[level5]|YOUNG=[level6]|-" - feedback_add_details("job_preferences",tmp_str) + SSblackbox.add_details("job_preferences",tmp_str) /datum/controller/subsystem/job/proc/PopcapReached() if(config.hard_popcap || config.extreme_popcap) diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index 1499bc5029f..d73d417f5f2 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -116,7 +116,7 @@ SUBSYSTEM_DEF(mapping) INIT_ANNOUNCE("Loading [config.map_name]...") TryLoadZ(config.GetFullMapPath(), FailedZs, ZLEVEL_STATION) INIT_ANNOUNCE("Loaded station in [(REALTIMEOFDAY - start_time)/10]s!") - feedback_add_details("map_name", config.map_name) + SSblackbox.add_details("map_name", config.map_name) if(config.minetype != "lavaland") INIT_ANNOUNCE("WARNING: A map without lavaland set as it's minetype was loaded! This is being ignored! Update the maploader code!") diff --git a/code/controllers/subsystem/ping.dm b/code/controllers/subsystem/ping.dm deleted file mode 100644 index 0829766174d..00000000000 --- a/code/controllers/subsystem/ping.dm +++ /dev/null @@ -1,28 +0,0 @@ -#define PING_BUFFER_TIME 25 - -SUBSYSTEM_DEF(ping) - name = "Ping" - wait = 6 - flags = SS_NO_INIT|SS_POST_FIRE_TIMING|SS_FIRE_IN_LOBBY - priority = 10 - var/list/currentrun - -/datum/controller/subsystem/ping/fire(resumed = FALSE) - if (!resumed) - src.currentrun = GLOB.clients.Copy() - - var/list/currentrun = src.currentrun - while (length(currentrun)) - var/client/C = currentrun[currentrun.len] - currentrun.len-- - if (!C || world.time - C.connection_time < PING_BUFFER_TIME || C.inactivity >= (wait-1)) - if (MC_TICK_CHECK) - return - continue - winset(C, null, "command=.update_ping+[world.time+world.tick_lag*world.tick_usage/100]") - if (MC_TICK_CHECK) //one day, when ss13 has 1000 people per server, you guys are gonna be glad I added this tick check - return - - currentrun = null - -#undef PING_BUFFER_TIME diff --git a/code/controllers/subsystem/server_maint.dm b/code/controllers/subsystem/server_maint.dm index 3ef088b328d..be80324fa1f 100644 --- a/code/controllers/subsystem/server_maint.dm +++ b/code/controllers/subsystem/server_maint.dm @@ -1,17 +1,28 @@ +#define PING_BUFFER_TIME 25 + SUBSYSTEM_DEF(server_maint) name = "Server Tasks" - wait = 6000 - flags = SS_NO_TICK_CHECK + wait = 6 + flags = SS_POST_FIRE_TIMING|SS_FIRE_IN_LOBBY + priority = 10 + var/list/currentrun /datum/controller/subsystem/server_maint/Initialize(timeofday) if (config.hub) world.visibility = 1 ..() -/datum/controller/subsystem/server_maint/fire() - //handle kicking inactive players - if(config.kick_inactive) - for(var/client/C in GLOB.clients) +/datum/controller/subsystem/server_maint/fire(resumed = FALSE) + if(!resumed) + src.currentrun = GLOB.clients.Copy() + + var/list/currentrun = src.currentrun + var/round_started = Master.round_started + + for(var/I in currentrun) + var/client/C = I + //handle kicking inactive players + if(round_started && config.kick_inactive) if(C.is_afk(config.afk_period)) var/cmob = C.mob if(!(istype(cmob, /mob/dead/observer) || (istype(cmob, /mob/dead) && C.holder))) @@ -19,5 +30,10 @@ SUBSYSTEM_DEF(server_maint) to_chat(C, "You have been inactive for more than [config.afk_period / 600] minutes and have been disconnected.") qdel(C) - if(config.sql_enabled) - sql_poll_population() + if (!(!C || world.time - C.connection_time < PING_BUFFER_TIME || C.inactivity >= (wait-1))) + winset(C, null, "command=.update_ping+[world.time+world.tick_lag*world.tick_usage/100]") + + if (MC_TICK_CHECK) //one day, when ss13 has 1000 people per server, you guys are gonna be glad I added this tick check + return + +#undef PING_BUFFER_TIME diff --git a/code/datums/helper_datums/getrev.dm b/code/datums/helper_datums/getrev.dm index f24cb7ab6d5..89fafe5dcca 100644 --- a/code/datums/helper_datums/getrev.dm +++ b/code/datums/helper_datums/getrev.dm @@ -25,7 +25,7 @@ for(var/line in testmerge) if(line) log_world("Test merge active of PR #[line]") - feedback_add_details("testmerged_prs","[line]") + SSblackbox.add_details("testmerged_prs","[line]") log_world("Based off master commit [parentcommit]") else log_world(parentcommit) diff --git a/code/game/gamemodes/blob/blob_finish.dm b/code/game/gamemodes/blob/blob_finish.dm index 4d1e06d997d..ab94f94afd2 100644 --- a/code/game/gamemodes/blob/blob_finish.dm +++ b/code/game/gamemodes/blob/blob_finish.dm @@ -20,7 +20,7 @@ if(round_converted) //So badmin blobs later don't step on the dead natural blobs metaphorical toes ..() if(blobwincount <= GLOB.blobs_legit.len) - feedback_set_details("round_end_result","win - blob took over") + SSblackbox.set_details("round_end_result","win - blob took over") to_chat(world, "The blob has taken over the station!") to_chat(world, "The entire station was eaten by the Blob!") log_game("Blob mode completed with a blob victory.") @@ -28,7 +28,7 @@ SSticker.news_report = BLOB_WIN else if(station_was_nuked) - feedback_set_details("round_end_result","halfwin - nuke") + SSblackbox.set_details("round_end_result","halfwin - nuke") to_chat(world, "Partial Win: The station has been destroyed!") to_chat(world, "Directive 7-12 has been successfully carried out, preventing the Blob from spreading.") log_game("Blob mode completed with a tie (station destroyed).") @@ -36,7 +36,7 @@ SSticker.news_report = BLOB_NUKE else if(!GLOB.blob_cores.len) - feedback_set_details("round_end_result","loss - blob eliminated") + SSblackbox.set_details("round_end_result","loss - blob eliminated") to_chat(world, "The staff has won!") to_chat(world, "The alien organism has been eradicated from the station!") log_game("Blob mode completed with a crew victory.") diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 7228f61eb2f..5e41372f6a6 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -254,19 +254,19 @@ GLOBAL_LIST_INIT(slot2type, list("head" = /obj/item/clothing/head/changeling, "w for(var/datum/objective/objective in changeling.objectives) if(objective.check_completion()) text += "
Objective #[count]: [objective.explanation_text] Success!" - feedback_add_details("changeling_objective","[objective.type]|SUCCESS") + SSblackbox.add_details("changeling_objective","[objective.type]|SUCCESS") else text += "
Objective #[count]: [objective.explanation_text] Fail." - feedback_add_details("changeling_objective","[objective.type]|FAIL") + SSblackbox.add_details("changeling_objective","[objective.type]|FAIL") changelingwin = 0 count++ if(changelingwin) text += "
The changeling was successful!" - feedback_add_details("changeling_success","SUCCESS") + SSblackbox.add_details("changeling_success","SUCCESS") else text += "
The changeling has failed." - feedback_add_details("changeling_success","FAIL") + SSblackbox.add_details("changeling_success","FAIL") text += "
" to_chat(world, text) diff --git a/code/game/gamemodes/changeling/changeling_power.dm b/code/game/gamemodes/changeling/changeling_power.dm index d58e603b420..cdb69516bf4 100644 --- a/code/game/gamemodes/changeling/changeling_power.dm +++ b/code/game/gamemodes/changeling/changeling_power.dm @@ -21,7 +21,7 @@ /obj/effect/proc_holder/changeling/proc/on_purchase(mob/user, is_respec) if(!is_respec) - feedback_add_details("changeling_power_purchase",name) + SSblackbox.add_details("changeling_power_purchase",name) /obj/effect/proc_holder/changeling/proc/on_refund(mob/user) return @@ -37,7 +37,7 @@ return var/datum/changeling/c = user.mind.changeling if(sting_action(user, target)) - feedback_add_details("changeling_powers",name) + SSblackbox.add_details("changeling_powers",name) sting_feedback(user, target) take_chemical_cost(c) diff --git a/code/game/gamemodes/changeling/evolution_menu.dm b/code/game/gamemodes/changeling/evolution_menu.dm index 838210eb586..59ed4ab2e86 100644 --- a/code/game/gamemodes/changeling/evolution_menu.dm +++ b/code/game/gamemodes/changeling/evolution_menu.dm @@ -68,7 +68,7 @@ mind.changeling.purchasedpowers+=S S.on_purchase(src, is_respec) if(is_respec) - feedback_add_details("changeling_power_purchase","Readapt") + SSblackbox.add_details("changeling_power_purchase","Readapt") var/mob/living/carbon/C = src //only carbons have dna now, so we have to typecaste if(ishuman(C)) diff --git a/code/game/gamemodes/changeling/powers/absorb.dm b/code/game/gamemodes/changeling/powers/absorb.dm index 8668b53713a..de31e575897 100644 --- a/code/game/gamemodes/changeling/powers/absorb.dm +++ b/code/game/gamemodes/changeling/powers/absorb.dm @@ -42,13 +42,13 @@ to_chat(target, "You feel a sharp stabbing pain!") target.take_overall_damage(40) - feedback_add_details("changeling_powers","Absorb DNA|[i]") + SSblackbox.add_details("changeling_powers","Absorb DNA|[i]") if(!do_mob(user, target, 150)) to_chat(user, "Our absorption of [target] has been interrupted!") changeling.isabsorbing = 0 return - feedback_add_details("changeling_powers","Absorb DNA|4") + SSblackbox.add_details("changeling_powers","Absorb DNA|4") user.visible_message("[user] sucks the fluids from [target]!", "We have absorbed [target].") to_chat(target, "You are absorbed by the changeling!") diff --git a/code/game/gamemodes/changeling/powers/linglink.dm b/code/game/gamemodes/changeling/powers/linglink.dm index 5a64d551b55..fc4b91b6503 100644 --- a/code/game/gamemodes/changeling/powers/linglink.dm +++ b/code/game/gamemodes/changeling/powers/linglink.dm @@ -56,7 +56,7 @@ to_chat(target, "You can now communicate in the changeling hivemind, say \":g message\" to communicate!") target.reagents.add_reagent("salbutamol", 40) // So they don't choke to death while you interrogate them sleep(1800) - feedback_add_details("changeling_powers","Hivemind Link|[i]") + SSblackbox.add_details("changeling_powers","Hivemind Link|[i]") if(!do_mob(user, target, 20)) to_chat(user, "Our link with [target] has ended!") changeling.islinking = 0 diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 670e08e7a23..deb5ad7e1a1 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -194,7 +194,7 @@ Credit where due: var/datum/game_mode/clockwork_cult/C = SSticker.mode if(C.check_clockwork_victory()) text += "Ratvar's servants have succeeded in fulfilling His goals!" - feedback_set_details("round_end_result", "win - servants completed their objective (summon ratvar)") + SSblackbox.set_details("round_end_result", "win - servants completed their objective (summon ratvar)") else var/half_victory = FALSE var/obj/structure/destructible/clockwork/massive/celestial_gateway/G = locate() in GLOB.all_clockwork_objects @@ -203,10 +203,10 @@ Credit where due: if(half_victory) text += "The crew escaped before Ratvar could rise, but the gateway \ was successfully constructed!" - feedback_set_details("round_end_result", "halfwin - servants constructed the gateway but their objective was not completed (summon ratvar)") + SSblackbox.set_details("round_end_result", "halfwin - servants constructed the gateway but their objective was not completed (summon ratvar)") else text += "Ratvar's servants have failed!" - feedback_set_details("round_end_result", "loss - servants failed their objective (summon ratvar)") + SSblackbox.set_details("round_end_result", "loss - servants failed their objective (summon ratvar)") text += "
The servants' objective was:
[CLOCKCULT_OBJECTIVE]" text += "
Ratvar's servants had [GLOB.clockwork_caches] Tinkerer's Caches." text += "
Construction Value(CV) was: [GLOB.clockwork_construction_value]" diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/game/gamemodes/clock_cult/clock_scripture.dm index 8e688f30aa6..e8f1e8dbbc2 100644 --- a/code/game/gamemodes/clock_cult/clock_scripture.dm +++ b/code/game/gamemodes/clock_cult/clock_scripture.dm @@ -86,7 +86,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or else successful = TRUE if(slab && !slab.no_cost && !GLOB.ratvar_awakens) //if the slab exists and isn't debug and ratvar isn't up, log the scripture as being used - feedback_add_details("clockcult_scripture_recited", name) + SSblackbox.add_details("clockcult_scripture_recited", name) if(slab) slab.busy = null qdel(src) diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 65dcb863eb5..f3832a830bc 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -218,12 +218,12 @@ /datum/game_mode/cult/declare_completion() if(!check_cult_victory()) - feedback_set_details("round_end_result","win - cult win") - feedback_set("round_end_result",acolytes_survived) + SSblackbox.set_details("round_end_result","win - cult win") + SSblackbox.set_val("round_end_result",acolytes_survived) to_chat(world, "The cult has succeeded! Nar-sie has snuffed out another torch in the void!") else - feedback_set_details("round_end_result","loss - staff stopped the cult") - feedback_set("round_end_result",acolytes_survived) + SSblackbox.set_details("round_end_result","loss - staff stopped the cult") + SSblackbox.set_val("round_end_result",acolytes_survived) to_chat(world, "The staff managed to stop the cult! Dark words and heresy are no match for Nanotrasen's finest!") var/text = "" @@ -236,31 +236,31 @@ if("survive") if(!check_survive()) explanation = "Make sure at least [acolytes_needed] acolytes escape on the shuttle. ([acolytes_survived] escaped) Success!" - feedback_add_details("cult_objective","cult_survive|SUCCESS|[acolytes_needed]") + SSblackbox.add_details("cult_objective","cult_survive|SUCCESS|[acolytes_needed]") SSticker.news_report = CULT_ESCAPE else explanation = "Make sure at least [acolytes_needed] acolytes escape on the shuttle. ([acolytes_survived] escaped) Fail." - feedback_add_details("cult_objective","cult_survive|FAIL|[acolytes_needed]") + SSblackbox.add_details("cult_objective","cult_survive|FAIL|[acolytes_needed]") SSticker.news_report = CULT_FAILURE if("sacrifice") if(sacrifice_target) if(sacrifice_target in GLOB.sacrificed) explanation = "Sacrifice [sacrifice_target.name], the [sacrifice_target.assigned_role]. Success!" - feedback_add_details("cult_objective","cult_sacrifice|SUCCESS") + SSblackbox.add_details("cult_objective","cult_sacrifice|SUCCESS") else if(sacrifice_target && sacrifice_target.current) explanation = "Sacrifice [sacrifice_target.name], the [sacrifice_target.assigned_role]. Fail." - feedback_add_details("cult_objective","cult_sacrifice|FAIL") + SSblackbox.add_details("cult_objective","cult_sacrifice|FAIL") else explanation = "Sacrifice [sacrifice_target.name], the [sacrifice_target.assigned_role]. Fail (Gibbed)." - feedback_add_details("cult_objective","cult_sacrifice|FAIL|GIBBED") + SSblackbox.add_details("cult_objective","cult_sacrifice|FAIL|GIBBED") if("eldergod") if(!eldergod) explanation = "Summon Nar-Sie. Success!" - feedback_add_details("cult_objective","cult_narsie|SUCCESS") + SSblackbox.add_details("cult_objective","cult_narsie|SUCCESS") SSticker.news_report = CULT_SUMMON else explanation = "Summon Nar-Sie. Fail." - feedback_add_details("cult_objective","cult_narsie|FAIL") + SSblackbox.add_details("cult_objective","cult_narsie|FAIL") SSticker.news_report = CULT_FAILURE text += "
Objective #[obj_count]: [explanation]" diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index 2ed6840c917..843d16592a9 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -247,7 +247,7 @@ This file contains the arcane tome files. var/obj/effect/rune/R = new rune_to_scribe(Turf, chosen_keyword) R.add_mob_blood(user) to_chat(user, "The [lowertext(R.cultist_name)] rune [R.cultist_desc]") - feedback_add_details("cult_runes_scribed", R.cultist_name) + SSblackbox.add_details("cult_runes_scribed", R.cultist_name) /obj/item/weapon/tome/proc/check_rune_turf(turf/T, mob/user) var/area/A = get_area(T) diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 53bd92f6c2d..f1144afc13d 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -80,12 +80,12 @@ report = config.intercept addtimer(CALLBACK(GLOBAL_PROC, .proc/display_roundstart_logout_report), ROUNDSTART_LOGOUT_REPORT_TIME) - feedback_set_details("round_start","[time2text(world.realtime)]") + SSblackbox.set_details("round_start","[time2text(world.realtime)]") if(SSticker && SSticker.mode) - feedback_set_details("game_mode","[SSticker.mode]") + SSblackbox.set_details("game_mode","[SSticker.mode]") if(GLOB.revdata.commit) - feedback_set_details("revision","[GLOB.revdata.commit]") - feedback_set_details("server_ip","[world.internet_address]:[world.port]") + SSblackbox.set_details("revision","[GLOB.revdata.commit]") + SSblackbox.set_details("server_ip","[world.internet_address]:[world.port]") if(report) addtimer(CALLBACK(src, .proc/send_intercept, 0), rand(waittime_l, waittime_h)) generate_station_goals() @@ -246,17 +246,17 @@ ghosts++ if(clients > 0) - feedback_set("round_end_clients",clients) + SSblackbox.set_val("round_end_clients",clients) if(ghosts > 0) - feedback_set("round_end_ghosts",ghosts) + SSblackbox.set_val("round_end_ghosts",ghosts) if(surviving_humans > 0) - feedback_set("survived_human",surviving_humans) + SSblackbox.set_val("survived_human",surviving_humans) if(surviving_total > 0) - feedback_set("survived_total",surviving_total) + SSblackbox.set_val("survived_total",surviving_total) if(escaped_humans > 0) - feedback_set("escaped_human",escaped_humans) + SSblackbox.set_val("escaped_human",escaped_humans) if(escaped_total > 0) - feedback_set("escaped_total",escaped_total) + SSblackbox.set_val("escaped_total",escaped_total) send2irc("Server", "Round just ended.") return 0 diff --git a/code/game/gamemodes/gang/gang.dm b/code/game/gamemodes/gang/gang.dm index 22ca4b22987..9c31edf55fb 100644 --- a/code/game/gamemodes/gang/gang.dm +++ b/code/game/gamemodes/gang/gang.dm @@ -260,12 +260,12 @@ GLOBAL_LIST_INIT(gang_colors_pool, list("red","orange","yellow","green","blue"," return if(!winner) to_chat(world, "The station was [station_was_nuked ? "destroyed!" : "evacuated before a gang could claim it! The station wins!"]
") - feedback_set_details("round_end_result","loss - gangs failed takeover") + SSblackbox.set_details("round_end_result","loss - gangs failed takeover") SSticker.news_report = GANG_LOSS else to_chat(world, "The [winner.name] Gang successfully performed a hostile takeover of the station!
") - feedback_set_details("round_end_result","win - gang domination complete") + SSblackbox.set_details("round_end_result","win - gang domination complete") SSticker.news_report = GANG_TAKEOVER diff --git a/code/game/gamemodes/meteor/meteor.dm b/code/game/gamemodes/meteor/meteor.dm index 7897e86a026..d0cd7c05203 100644 --- a/code/game/gamemodes/meteor/meteor.dm +++ b/code/game/gamemodes/meteor/meteor.dm @@ -50,8 +50,8 @@ else to_chat(world, "Nobody survived the meteor storm!") - feedback_set_details("round_end_result","end - evacuation") - feedback_set("round_end_result",survivors) + SSblackbox.set_details("round_end_result","end - evacuation") + SSblackbox.set_val("round_end_result",survivors) ..() return 1 diff --git a/code/game/gamemodes/miniantags/monkey/monkey.dm b/code/game/gamemodes/miniantags/monkey/monkey.dm index ecb15bc2210..f9ea8dcc2cb 100644 --- a/code/game/gamemodes/miniantags/monkey/monkey.dm +++ b/code/game/gamemodes/miniantags/monkey/monkey.dm @@ -107,10 +107,10 @@ /datum/game_mode/monkey/declare_completion() if(check_monkey_victory()) - feedback_set_details("round_end_result","win - monkey win") - feedback_set("round_end_result",escaped_monkeys) + SSblackbox.set_details("round_end_result","win - monkey win") + SSblackbox.set_val("round_end_result",escaped_monkeys) to_chat(world, "The monkeys have overthrown their captors! Eeek eeeek!!") else - feedback_set_details("round_end_result","loss - staff stopped the monkeys") - feedback_set("round_end_result",escaped_monkeys) + SSblackbox.set_details("round_end_result","loss - staff stopped the monkeys") + SSblackbox.set_val("round_end_result",escaped_monkeys) to_chat(world, "The staff managed to contain the monkey infestation!") diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index d4d788e0490..b12dcc3bcc5 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -199,70 +199,70 @@ if(nuke_off_station == NUKE_SYNDICATE_BASE) - feedback_set_details("round_end_result","loss - syndicate nuked - disk secured") + SSblackbox.set_details("round_end_result","loss - syndicate nuked - disk secured") to_chat(world, "Humiliating Syndicate Defeat") to_chat(world, "The crew of [station_name()] gave [syndicate_name()] operatives back their bomb! The syndicate base was destroyed! Next time, don't lose the nuke!") SSticker.news_report = NUKE_SYNDICATE_BASE else if(!disk_rescued && station_was_nuked && !syndies_didnt_escape) - feedback_set_details("round_end_result","win - syndicate nuke") + SSblackbox.set_details("round_end_result","win - syndicate nuke") to_chat(world, "Syndicate Major Victory!") to_chat(world, "[syndicate_name()] operatives have destroyed [station_name()]!") SSticker.news_report = STATION_NUKED else if (!disk_rescued && station_was_nuked && syndies_didnt_escape) - feedback_set_details("round_end_result","halfwin - syndicate nuke - did not evacuate in time") + SSblackbox.set_details("round_end_result","halfwin - syndicate nuke - did not evacuate in time") to_chat(world, "Total Annihilation") to_chat(world, "[syndicate_name()] operatives destroyed [station_name()] but did not leave the area in time and got caught in the explosion. Next time, don't lose the disk!") SSticker.news_report = STATION_NUKED else if (!disk_rescued && !station_was_nuked && nuke_off_station && !syndies_didnt_escape) - feedback_set_details("round_end_result","halfwin - blew wrong station") + SSblackbox.set_details("round_end_result","halfwin - blew wrong station") to_chat(world, "Crew Minor Victory") to_chat(world, "[syndicate_name()] operatives secured the authentication disk but blew up something that wasn't [station_name()]. Next time, don't do that!") SSticker.news_report = NUKE_MISS else if (!disk_rescued && !station_was_nuked && nuke_off_station && syndies_didnt_escape) - feedback_set_details("round_end_result","halfwin - blew wrong station - did not evacuate in time") + SSblackbox.set_details("round_end_result","halfwin - blew wrong station - did not evacuate in time") to_chat(world, "[syndicate_name()] operatives have earned Darwin Award!") to_chat(world, "[syndicate_name()] operatives blew up something that wasn't [station_name()] and got caught in the explosion. Next time, don't do that!") SSticker.news_report = NUKE_MISS else if ((disk_rescued || SSshuttle.emergency.mode != SHUTTLE_ENDGAME) && are_operatives_dead()) - feedback_set_details("round_end_result","loss - evacuation - disk secured - syndi team dead") + SSblackbox.set_details("round_end_result","loss - evacuation - disk secured - syndi team dead") to_chat(world, "Crew Major Victory!") to_chat(world, "The Research Staff has saved the disk and killed the [syndicate_name()] Operatives") SSticker.news_report = OPERATIVES_KILLED else if (disk_rescued) - feedback_set_details("round_end_result","loss - evacuation - disk secured") + SSblackbox.set_details("round_end_result","loss - evacuation - disk secured") to_chat(world, "Crew Major Victory") to_chat(world, "The Research Staff has saved the disk and stopped the [syndicate_name()] Operatives!") SSticker.news_report = OPERATIVES_KILLED else if (!disk_rescued && are_operatives_dead()) - feedback_set_details("round_end_result","halfwin - evacuation - disk not secured") + SSblackbox.set_details("round_end_result","halfwin - evacuation - disk not secured") to_chat(world, "Neutral Victory!") to_chat(world, "The Research Staff failed to secure the authentication disk but did manage to kill most of the [syndicate_name()] Operatives!") SSticker.news_report = OPERATIVE_SKIRMISH else if (!disk_rescued && crew_evacuated) - feedback_set_details("round_end_result","halfwin - detonation averted") + SSblackbox.set_details("round_end_result","halfwin - detonation averted") to_chat(world, "Syndicate Minor Victory!") to_chat(world, "[syndicate_name()] operatives survived the assault but did not achieve the destruction of [station_name()]. Next time, don't lose the disk!") SSticker.news_report = OPERATIVE_SKIRMISH else if (!disk_rescued && !crew_evacuated) - feedback_set_details("round_end_result","halfwin - interrupted") + SSblackbox.set_details("round_end_result","halfwin - interrupted") to_chat(world, "Neutral Victory") to_chat(world, "Round was mysteriously interrupted!") diff --git a/code/game/gamemodes/nuclear/nuclear_challenge.dm b/code/game/gamemodes/nuclear/nuclear_challenge.dm index 3e47aa517de..cad958ee64e 100644 --- a/code/game/gamemodes/nuclear/nuclear_challenge.dm +++ b/code/game/gamemodes/nuclear/nuclear_challenge.dm @@ -57,7 +57,7 @@ U.hidden_uplink.telecrystals = CHALLENGE_TELECRYSTALS U.hidden_uplink.set_gamemode(/datum/game_mode/nuclear) config.shuttle_refuel_delay = max(config.shuttle_refuel_delay, CHALLENGE_SHUTTLE_DELAY) - feedback_set("nuclear_challenge_mode",1) + SSblackbox.set_val("nuclear_challenge_mode",1) qdel(src) /obj/item/device/nuclear_challenge/proc/check_allowed(mob/living/user) diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index 634c68e89ad..7a31d1f3cdf 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -345,13 +345,13 @@ ////////////////////////////////////////////////////////////////////// /datum/game_mode/revolution/declare_completion() if(finished == 1) - feedback_set_details("round_end_result","win - heads killed") + SSblackbox.set_details("round_end_result","win - heads killed") to_chat(world, "The heads of staff were killed or exiled! The revolutionaries win!") SSticker.news_report = REVS_WIN else if(finished == 2) - feedback_set_details("round_end_result","loss - rev heads killed") + SSblackbox.set_details("round_end_result","loss - rev heads killed") to_chat(world, "The heads of staff managed to stop the revolution!") SSticker.news_report = REVS_LOSE diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 579ca3a7138..196a08ba9f0 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -260,10 +260,10 @@ for(var/datum/objective/objective in traitor.objectives) if(objective.check_completion()) objectives += "
Objective #[count]: [objective.explanation_text] Success!" - feedback_add_details("traitor_objective","[objective.type]|SUCCESS") + SSblackbox.add_details("traitor_objective","[objective.type]|SUCCESS") else objectives += "
Objective #[count]: [objective.explanation_text] Fail." - feedback_add_details("traitor_objective","[objective.type]|FAIL") + SSblackbox.add_details("traitor_objective","[objective.type]|FAIL") traitorwin = 0 count++ @@ -283,10 +283,10 @@ if(traitorwin) text += "
The [special_role_text] was successful!" - feedback_add_details("traitor_success","SUCCESS") + SSblackbox.add_details("traitor_success","SUCCESS") else text += "
The [special_role_text] has failed!" - feedback_add_details("traitor_success","FAIL") + SSblackbox.add_details("traitor_success","FAIL") text += "
" diff --git a/code/game/gamemodes/wizard/raginmages.dm b/code/game/gamemodes/wizard/raginmages.dm index 01eb8a52c49..1eb51a95b46 100644 --- a/code/game/gamemodes/wizard/raginmages.dm +++ b/code/game/gamemodes/wizard/raginmages.dm @@ -132,7 +132,7 @@ /datum/game_mode/wizard/raginmages/declare_completion() if(finished) - feedback_set_details("round_end_result","loss - wizard killed") + SSblackbox.set_details("round_end_result","loss - wizard killed") to_chat(world, "The crew has managed to hold off the wizard attack! The Space Wizards Federation has been taught a lesson they will not soon forget!") ..(1) diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index 8c40d178bc1..d13671885c7 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -57,10 +57,10 @@ aspell.name = "Instant [aspell.name]" if(aspell.spell_level >= aspell.level_max) to_chat(user, "This spell cannot be strengthened any further.") - feedback_add_details("wizard_spell_improved", "[name]|[aspell.level]") + SSblackbox.add_details("wizard_spell_improved", "[name]|[aspell.level]") return 1 //No same spell found - just learn it - feedback_add_details("wizard_spell_learned", name) + SSblackbox.add_details("wizard_spell_learned", name) user.mind.AddSpell(S) to_chat(user, "You have learned [S.name].") return 1 @@ -266,7 +266,7 @@ /datum/spellbook_entry/item/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) new item_path(get_turf(user)) - feedback_add_details("wizard_spell_learned", name) + SSblackbox.add_details("wizard_spell_learned", name) return 1 /datum/spellbook_entry/item/GetInfo() @@ -465,7 +465,7 @@ return TRUE /datum/spellbook_entry/summon/ghosts/Buy(mob/living/carbon/human/user, obj/item/weapon/spellbook/book) - feedback_add_details("wizard_spell_learned", name) + SSblackbox.add_details("wizard_spell_learned", name) new /datum/round_event/wizard/ghost() active = TRUE to_chat(user, "You have cast summon ghosts!") @@ -482,7 +482,7 @@ return (SSticker.mode.name != "ragin' mages" && !config.no_summon_guns) /datum/spellbook_entry/summon/guns/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) - feedback_add_details("wizard_spell_learned", name) + SSblackbox.add_details("wizard_spell_learned", name) rightandwrong(0, user, 25) active = 1 playsound(get_turf(user), 'sound/magic/CastSummon.ogg', 50, 1) @@ -499,7 +499,7 @@ return (SSticker.mode.name != "ragin' mages" && !config.no_summon_magic) /datum/spellbook_entry/summon/magic/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) - feedback_add_details("wizard_spell_learned", name) + SSblackbox.add_details("wizard_spell_learned", name) rightandwrong(1, user, 25) active = 1 playsound(get_turf(user), 'sound/magic/CastSummon.ogg', 50, 1) @@ -517,7 +517,7 @@ return (SSticker.mode.name != "ragin' mages" && !config.no_summon_events) /datum/spellbook_entry/summon/events/Buy(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) - feedback_add_details("wizard_spell_learned", name) + SSblackbox.add_details("wizard_spell_learned", name) summonevents() times++ playsound(get_turf(user), 'sound/magic/CastSummon.ogg', 50, 1) diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index 28921be6727..4ff888fa900 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -176,7 +176,7 @@ /datum/game_mode/wizard/declare_completion() if(finished) - feedback_set_details("round_end_result","loss - wizard killed") + SSblackbox.set_details("round_end_result","loss - wizard killed") to_chat(world, "The wizard[(wizards.len>1)?"s":""] has been killed by the crew! The Space Wizards Federation has been taught a lesson they will not soon forget!") SSticker.news_report = WIZARD_KILLED @@ -208,19 +208,19 @@ for(var/datum/objective/objective in wizard.objectives) if(objective.check_completion()) text += "
Objective #[count]: [objective.explanation_text] Success!" - feedback_add_details("wizard_objective","[objective.type]|SUCCESS") + SSblackbox.add_details("wizard_objective","[objective.type]|SUCCESS") else text += "
Objective #[count]: [objective.explanation_text] Fail." - feedback_add_details("wizard_objective","[objective.type]|FAIL") + SSblackbox.add_details("wizard_objective","[objective.type]|FAIL") wizardwin = 0 count++ if(wizard.current && wizard.current.stat!=2 && wizardwin) text += "
The wizard was successful!" - feedback_add_details("wizard_success","SUCCESS") + SSblackbox.add_details("wizard_success","SUCCESS") else text += "
The wizard has failed!" - feedback_add_details("wizard_success","FAIL") + SSblackbox.add_details("wizard_success","FAIL") if(wizard.spell_list.len>0) text += "
[wizard.name] used the following spells: " var/i = 1 diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 514cf590aff..643282ab4a6 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -234,7 +234,7 @@ playsound(loc, 'sound/arcade/Win.ogg', 50, 1, extrarange = -3, falloff = 10) if(emagged) - feedback_inc("arcade_win_emagged") + SSblackbox.inc("arcade_win_emagged") new /obj/effect/spawner/newbomb/timer/syndicate(loc) new /obj/item/clothing/head/collectable/petehat(loc) message_admins("[key_name_admin(usr)] has outbombed Cuban Pete and been awarded a bomb.") @@ -242,7 +242,7 @@ Reset() emagged = 0 else - feedback_inc("arcade_win_normal") + SSblackbox.inc("arcade_win_normal") prizevend() else if (emagged && (turtle >= 4)) @@ -264,10 +264,10 @@ temp = "You have been drained! GAME OVER" playsound(loc, 'sound/arcade/Lose.ogg', 50, 1, extrarange = -3, falloff = 10) if(emagged) - feedback_inc("arcade_loss_mana_emagged") + SSblackbox.inc("arcade_loss_mana_emagged") usr.gib() else - feedback_inc("arcade_loss_mana_normal") + SSblackbox.inc("arcade_loss_mana_normal") else if ((enemy_hp <= 10) && (enemy_mp > 4)) temp = "[enemy_name] heals for 4 health!" @@ -286,10 +286,10 @@ temp = "You have been crushed! GAME OVER" playsound(loc, 'sound/arcade/Lose.ogg', 50, 1, extrarange = -3, falloff = 10) if(emagged) - feedback_inc("arcade_loss_hp_emagged") + SSblackbox.inc("arcade_loss_hp_emagged") usr.gib() else - feedback_inc("arcade_loss_hp_normal") + SSblackbox.inc("arcade_loss_hp_normal") blocked = FALSE return diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index f4d13c029b8..193d7f8b276 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -115,9 +115,9 @@ message_admins("[key_name_admin(usr)] has changed the security level to [get_security_level()].") switch(GLOB.security_level) if(SEC_LEVEL_GREEN) - feedback_inc("alert_comms_green",1) + SSblackbox.inc("alert_comms_green",1) if(SEC_LEVEL_BLUE) - feedback_inc("alert_comms_blue",1) + SSblackbox.inc("alert_comms_blue",1) tmp_alertlevel = 0 else to_chat(usr, "You are not authorized to do this!") @@ -176,7 +176,7 @@ SSshuttle.points -= S.credit_cost minor_announce("[usr.name] has purchased [S.name] for [S.credit_cost] credits." , "Shuttle Purchase") message_admins("[key_name_admin(usr)] purchased [S.name].") - feedback_add_details("shuttle_purchase", S.name) + SSblackbox.add_details("shuttle_purchase", S.name) else to_chat(usr, "Something went wrong! The shuttle exchange system seems to be down.") else @@ -368,9 +368,9 @@ message_admins("[key_name_admin(usr)] has changed the security level to [get_security_level()].") switch(GLOB.security_level) if(SEC_LEVEL_GREEN) - feedback_inc("alert_comms_green",1) + SSblackbox.inc("alert_comms_green",1) if(SEC_LEVEL_BLUE) - feedback_inc("alert_comms_blue",1) + SSblackbox.inc("alert_comms_blue",1) tmp_alertlevel = 0 src.aistate = STATE_DEFAULT if("ai-changeseclevel") diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index a50a2973fca..7c3251a1bec 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -535,7 +535,7 @@ GLOBAL_LIST_EMPTY(allCasters) if(choice=="Confirm") scan_user(usr) GLOB.news_network.CreateFeedChannel(channel_name, scanned_user, c_locked) - feedback_inc("newscaster_channels",1) + SSblackbox.inc("newscaster_channels",1) screen=5 updateUsrDialog() else if(href_list["set_channel_receiving"]) @@ -558,7 +558,7 @@ GLOBAL_LIST_EMPTY(allCasters) screen=6 else GLOB.news_network.SubmitArticle("[parsepencode(msg, usr, SIGNFONT)]", scanned_user, channel_name, photo, 0, allow_comments) - feedback_inc("newscaster_stories",1) + SSblackbox.inc("newscaster_stories",1) screen=4 msg = "" updateUsrDialog() @@ -850,7 +850,7 @@ GLOBAL_LIST_EMPTY(allCasters) return /obj/machinery/newscaster/proc/print_paper() - feedback_inc("newscaster_newspapers_printed",1) + SSblackbox.inc("newscaster_newspapers_printed",1) var/obj/item/weapon/newspaper/NEWSPAPER = new /obj/item/weapon/newspaper for(var/datum/newscaster/feed_channel/FC in GLOB.news_network.network_channels) NEWSPAPER.news_content += FC diff --git a/code/game/machinery/telecomms/broadcasting.dm b/code/game/machinery/telecomms/broadcasting.dm index d6c6cdc151d..6c1fd431e50 100644 --- a/code/game/machinery/telecomms/broadcasting.dm +++ b/code/game/machinery/telecomms/broadcasting.dm @@ -144,30 +144,7 @@ // --- This following recording is intended for research and feedback in the use of department radio channels --- var/blackbox_msg = "[AM] [AM.say_quote(message, spans)]" - if(istype(GLOB.blackbox)) - switch(freq) - if(1459) - GLOB.blackbox.msg_common += blackbox_msg - if(1351) - GLOB.blackbox.msg_science += blackbox_msg - if(1353) - GLOB.blackbox.msg_command += blackbox_msg - if(1355) - GLOB.blackbox.msg_medical += blackbox_msg - if(1357) - GLOB.blackbox.msg_engineering += blackbox_msg - if(1359) - GLOB.blackbox.msg_security += blackbox_msg - if(1441) - GLOB.blackbox.msg_deathsquad += blackbox_msg - if(1213) - GLOB.blackbox.msg_syndicate += blackbox_msg - if(1349) - GLOB.blackbox.msg_service += blackbox_msg - if(1347) - GLOB.blackbox.msg_cargo += blackbox_msg - else - GLOB.blackbox.messages += blackbox_msg + SSblackbox.LogBroadcast(blackbox_msg, freq) sleep(50) if(!QDELETED(virt)) //It could happen to YOU diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 774e6d9082b..fea3b90390b 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -528,7 +528,7 @@ if(icon_vend) //Show the vending animation if needed flick(icon_vend,src) new R.product_path(get_turf(src)) - feedback_add_details("vending_machine_usage","[src.type]|[R.product_path]") + SSblackbox.add_details("vending_machine_usage","[src.type]|[R.product_path]") vend_ready = 1 return diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm index def75d510e4..5b67cbf0182 100644 --- a/code/game/mecha/mecha_construction_paths.dm +++ b/code/game/mecha/mecha_construction_paths.dm @@ -277,7 +277,7 @@ /datum/construction/reversible/mecha/ripley/spawn_result() ..() - feedback_inc("mecha_ripley_created",1) + SSblackbox.inc("mecha_ripley_created",1) return @@ -564,7 +564,7 @@ var/obj/mecha/combat/gygax/M = new result(get_turf(holder)) M.CheckParts(holder.contents) qdel(holder) - feedback_inc("mecha_gygax_created",1) + SSblackbox.inc("mecha_gygax_created",1) return /datum/construction/mecha/firefighter_chassis @@ -786,7 +786,7 @@ /datum/construction/reversible/mecha/firefighter/spawn_result() ..() - feedback_inc("mecha_firefighter_created",1) + SSblackbox.inc("mecha_firefighter_created",1) return @@ -864,7 +864,7 @@ /datum/construction/mecha/honker/spawn_result() ..() - feedback_inc("mecha_honker_created",1) + SSblackbox.inc("mecha_honker_created",1) return /datum/construction/mecha/durand_chassis @@ -1149,7 +1149,7 @@ var/obj/mecha/combat/gygax/M = new result(get_turf(holder)) M.CheckParts(holder.contents) qdel(holder) - feedback_inc("mecha_durand_created",1) + SSblackbox.inc("mecha_durand_created",1) return //PHAZON @@ -1481,7 +1481,7 @@ var/obj/mecha/combat/gygax/M = new result(get_turf(holder)) M.CheckParts(holder.contents) qdel(holder) - feedback_inc("mecha_phazon_created",1) + SSblackbox.inc("mecha_phazon_created",1) return //ODYSSEUS @@ -1692,5 +1692,5 @@ /datum/construction/reversible/mecha/odysseus/spawn_result() ..() - feedback_inc("mecha_odysseus_created",1) + SSblackbox.inc("mecha_odysseus_created",1) return diff --git a/code/game/objects/items/charter.dm b/code/game/objects/items/charter.dm index 41a793df301..0cf73fd9ff6 100644 --- a/code/game/objects/items/charter.dm +++ b/code/game/objects/items/charter.dm @@ -86,7 +86,7 @@ name = "station charter for [station_name()]" desc = "An official document entrusting the governance of \ [station_name()] and surrounding space to Captain [uname]." - feedback_set_details("station_renames","[station_name()]") + SSblackbox.set_details("station_renames","[station_name()]") if(!unlimited_uses) used = TRUE diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 030370dbc84..0b2e81a9da9 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -58,7 +58,7 @@ if(src.l_arm && src.r_arm) if(src.l_leg && src.r_leg) if(src.chest && src.head) - feedback_inc("cyborg_frames_built",1) + SSblackbox.inc("cyborg_frames_built",1) return 1 return 0 @@ -235,7 +235,7 @@ O.mmi = W //and give the real mmi to the borg. O.updatename() - feedback_inc("cyborg_birth",1) + SSblackbox.inc("cyborg_birth",1) forceMove(O) O.robot_suit = src diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index d35ef4c163b..b94658545ed 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -45,7 +45,7 @@ if(do_mob(user, C, 30) && (C.get_num_arms() >= 2 || C.get_arm_ignore())) apply_cuffs(C,user) to_chat(user, "You handcuff [C].") - feedback_add_details("handcuffs","[type]") + SSblackbox.add_details("handcuffs","[type]") add_logs(user, C, "handcuffed") else @@ -275,7 +275,7 @@ C.legcuffed = src src.loc = C C.update_inv_legcuffed() - feedback_add_details("handcuffs","[type]") + SSblackbox.add_details("handcuffs","[type]") else if(isanimal(L)) var/mob/living/simple_animal/SA = L if(SA.mob_size > MOB_SIZE_TINY) @@ -336,7 +336,7 @@ C.legcuffed = src src.loc = C C.update_inv_legcuffed() - feedback_add_details("handcuffs","[type]") + SSblackbox.add_details("handcuffs","[type]") to_chat(C, "\The [src] ensnares you!") C.Weaken(weaken) diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm index 571aece4c3d..aa720f19795 100644 --- a/code/game/objects/items/weapons/holy_weapons.dm +++ b/code/game/objects/items/weapons/holy_weapons.dm @@ -39,7 +39,7 @@ SSreligion.holy_weapon_type = holy_weapon.type - feedback_set_details("chaplain_weapon","[choice]") + SSblackbox.set_details("chaplain_weapon","[choice]") if(holy_weapon) holy_weapon.reskinned = TRUE diff --git a/code/game/objects/items/weapons/storage/book.dm b/code/game/objects/items/weapons/storage/book.dm index 83805d969a1..7775b3692a4 100644 --- a/code/game/objects/items/weapons/storage/book.dm +++ b/code/game/objects/items/weapons/storage/book.dm @@ -62,7 +62,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible", SSreligion.bible_icon_state = B.icon_state SSreligion.bible_item_state = B.item_state - feedback_set_details("religion_book","[biblename]") + SSblackbox.set_details("religion_book","[biblename]") usr << browse(null, "window=editicon") /obj/item/weapon/storage/book/bible/proc/bless(mob/living/carbon/human/H, mob/living/user) diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index 31676a4f0ab..f3680bc8bd6 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -180,7 +180,7 @@ var/mob/living/silicon/ai/A = new /mob/living/silicon/ai(loc, laws, brain.brainmob) if(brain.force_replace_ai_name) A.fully_replace_character_name(A.name, brain.replacement_ai_name()) - feedback_inc("cyborg_ais_created",1) + SSblackbox.inc("cyborg_ais_created",1) qdel(src) else state = AI_READY_CORE diff --git a/code/game/turfs/simulated/floor/plating/asteroid.dm b/code/game/turfs/simulated/floor/plating/asteroid.dm index a17fcf2ca8b..f4a3403ee5b 100644 --- a/code/game/turfs/simulated/floor/plating/asteroid.dm +++ b/code/game/turfs/simulated/floor/plating/asteroid.dm @@ -63,7 +63,7 @@ if(istype(src, /turf/open/floor/plating/asteroid)) to_chat(user, "You dig a hole.") gets_dug() - feedback_add_details("pick_used_mining","[W.type]") + SSblackbox.add_details("pick_used_mining","[W.type]") if(istype(W,/obj/item/weapon/storage/bag/ore)) var/obj/item/weapon/storage/bag/ore/S = W diff --git a/code/game/turfs/simulated/minerals.dm b/code/game/turfs/simulated/minerals.dm index 5805d75e565..398ff190f2f 100644 --- a/code/game/turfs/simulated/minerals.dm +++ b/code/game/turfs/simulated/minerals.dm @@ -63,7 +63,7 @@ if(ismineralturf(src)) to_chat(user, "You finish cutting into the rock.") gets_drilled(user) - feedback_add_details("pick_used_mining","[P.type]") + SSblackbox.add_details("pick_used_mining","[P.type]") else return attack_hand(user) @@ -72,7 +72,7 @@ var/i for(i in 1 to mineralAmt) new mineralType(src) - feedback_add_details("ore_mined",mineralType) + SSblackbox.add_details("ore_mined",mineralType) ChangeTurf(turf_type, defer_change) addtimer(CALLBACK(src, .proc/AfterChange), 1, TIMER_UNIQUE) playsound(src, 'sound/effects/break_stone.ogg', 50, 1) //beautiful destruction diff --git a/code/modules/admin/NewBan.dm b/code/modules/admin/NewBan.dm index 1e5a1826dad..1ff23609233 100644 --- a/code/modules/admin/NewBan.dm +++ b/code/modules/admin/NewBan.dm @@ -141,7 +141,7 @@ GLOBAL_PROTECT(Banlist) ban_unban_log_save("[key_name(usr)] unbanned [key]") log_admin_private("[key_name(usr)] unbanned [key]") message_admins("[key_name_admin(usr)] unbanned: [key]") - feedback_inc("ban_unban",1) + SSblackbox.inc("ban_unban",1) usr.client.holder.DB_ban_unban( ckey(key), BANTYPE_ANY_FULLBAN) for (var/A in GLOB.Banlist.dir) GLOB.Banlist.cd = "/base/[A]" diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index dc6c7332f0f..e189e081e3e 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -166,7 +166,7 @@ body += "" usr << browse(body, "window=adminplayeropts-\ref[M];size=550x515") - feedback_add_details("admin_verb","Player Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Player Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/access_news_network() //MARKER @@ -419,7 +419,7 @@ return if(confirm == "Yes") SSticker.delay_end = 0 - feedback_add_details("admin_verb","Reboot World") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Reboot World") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! world.Reboot("Initiated by [usr.client.holder.fakekey ? "Admin" : usr.key].", "end_error", "admin reboot - by [usr.key] [usr.client.holder.fakekey ? "(stealth)" : ""]", 10) /datum/admins/proc/end_round() @@ -434,7 +434,7 @@ return if(confirm == "Yes") SSticker.force_ending = 1 - feedback_add_details("admin_verb","End Round") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","End Round") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/announce() @@ -450,7 +450,7 @@ message = adminscrub(message,500) to_chat(world, "[usr.client.holder.fakekey ? "Administrator" : usr.key] Announces:\n \t [message]") log_admin("Announce: [key_name(usr)] : [message]") - feedback_add_details("admin_verb","Announce") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Announce") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/set_admin_notice() set category = "Special Verbs" @@ -471,7 +471,7 @@ message_admins("[key_name(usr)] set the admin notice.") log_admin("[key_name(usr)] set the admin notice:\n[new_admin_notice]") to_chat(world, "Admin Notice:\n \t [new_admin_notice]") - feedback_add_details("admin_verb","Set Admin Notice") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Set Admin Notice") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! GLOB.admin_notice = new_admin_notice return @@ -482,7 +482,7 @@ toggle_ooc() log_admin("[key_name(usr)] toggled OOC.") message_admins("[key_name_admin(usr)] toggled OOC.") - feedback_add_details("admin_toggle","Toggle OOC|[GLOB.ooc_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle OOC|[GLOB.ooc_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/toggleoocdead() set category = "Server" @@ -492,7 +492,7 @@ log_admin("[key_name(usr)] toggled OOC.") message_admins("[key_name_admin(usr)] toggled Dead OOC.") - feedback_add_details("admin_toggle","Toggle Dead OOC|[GLOB.dooc_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Dead OOC|[GLOB.dooc_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/startnow() set category = "Server" @@ -507,7 +507,7 @@ started as soon as possible.)" message_admins("\ [usr.key] has started the game.[msg]") - feedback_add_details("admin_verb","Start Now") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Start Now") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return 1 else to_chat(usr, "Error: Start Now: Game has already started.") @@ -526,7 +526,7 @@ log_admin("[key_name(usr)] toggled new player game entering.") message_admins("[key_name_admin(usr)] toggled new player game entering.") world.update_status() - feedback_add_details("admin_toggle","Toggle Entering|[GLOB.enter_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Entering|[GLOB.enter_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/toggleAI() set category = "Server" @@ -539,7 +539,7 @@ to_chat(world, "The AI job is chooseable now.") log_admin("[key_name(usr)] toggled AI allowed.") world.update_status() - feedback_add_details("admin_toggle","Toggle AI|[config.allow_ai]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle AI|[config.allow_ai]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/toggleaban() set category = "Server" @@ -553,7 +553,7 @@ message_admins("[key_name_admin(usr)] toggled respawn to [GLOB.abandon_allowed ? "On" : "Off"].") log_admin("[key_name(usr)] toggled respawn to [GLOB.abandon_allowed ? "On" : "Off"].") world.update_status() - feedback_add_details("admin_toggle","Toggle Respawn|[GLOB.abandon_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Respawn|[GLOB.abandon_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/delay() set category = "Server" @@ -572,7 +572,7 @@ to_chat(world, "The game will start in [newtime] seconds.") world << 'sound/ai/attention.ogg' log_admin("[key_name(usr)] set the pre-game delay to [newtime] seconds.") - feedback_add_details("admin_verb","Delay Game Start") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Delay Game Start") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/unprison(mob/M in GLOB.mob_list) set category = "Admin" @@ -583,7 +583,7 @@ log_admin("[key_name(usr)] has unprisoned [key_name(M)]") else alert("[M.name] is not prisoned.") - feedback_add_details("admin_verb","Unprison") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Unprison") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! ////////////////////////////////////////////////////////////////////////////////////////////////ADMIN HELPER PROCS @@ -624,7 +624,7 @@ A.admin_spawned = TRUE log_admin("[key_name(usr)] spawned [chosen] at ([usr.x],[usr.y],[usr.z])") - feedback_add_details("admin_verb","Spawn Atom") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Spawn Atom") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/show_traitor_panel(mob/M in GLOB.mob_list) @@ -640,7 +640,7 @@ return M.mind.edit_memory() - feedback_add_details("admin_verb","Traitor Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Traitor Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/toggletintedweldhelmets() @@ -654,7 +654,7 @@ to_chat(world, "The tinted_weldhelh has been disabled!") log_admin("[key_name(usr)] toggled tinted_weldhelh.") message_admins("[key_name_admin(usr)] toggled tinted_weldhelh.") - feedback_add_details("admin_toggle","Toggle Tinted Welding Helmets|[GLOB.tinted_weldhelh]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Tinted Welding Helmets|[GLOB.tinted_weldhelh]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/toggleguests() set category = "Server" @@ -667,7 +667,7 @@ to_chat(world, "Guests may now enter the game.") log_admin("[key_name(usr)] toggled guests game entering [GLOB.guests_allowed?"":"dis"]allowed.") message_admins("[key_name_admin(usr)] toggled guests game entering [GLOB.guests_allowed?"":"dis"]allowed.") - feedback_add_details("admin_toggle","Toggle Guests|[GLOB.guests_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Guests|[GLOB.guests_allowed]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/admins/proc/output_ai_laws() var/ai_number = 0 @@ -796,7 +796,7 @@ message_admins("[key_name_admin(usr)] has put [frommob.ckey] in control of [tomob.name].") log_admin("[key_name(usr)] stuffed [frommob.ckey] into [tomob.name].") - feedback_add_details("admin_verb","Ghost Drag Control") + SSblackbox.add_details("admin_verb","Ghost Drag Control") tomob.ckey = frommob.ckey qdel(frommob) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 7d6a49afacf..a32a37b046d 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -326,7 +326,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) verbs += /client/proc/show_verbs to_chat(src, "Most of your adminverbs have been hidden.") - feedback_add_details("admin_verb","Hide Most Adminverbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Hide Most Adminverbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return /client/proc/hide_verbs() @@ -337,7 +337,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) verbs += /client/proc/show_verbs to_chat(src, "Almost all of your adminverbs have been hidden.") - feedback_add_details("admin_verb","Hide All Adminverbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Hide All Adminverbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return /client/proc/show_verbs() @@ -348,7 +348,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) add_admin_verbs() to_chat(src, "All of your adminverbs are now visible.") - feedback_add_details("admin_verb","Show Adminverbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Adminverbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -368,7 +368,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) message_admins("[key_name_admin(usr)] re-entered corpse") ghost.can_reenter_corpse = 1 //force re-entering even when otherwise not possible ghost.reenter_corpse() - feedback_add_details("admin_verb","Admin Reenter") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Admin Reenter") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! else if(isnewplayer(mob)) to_chat(src, "Error: Aghost: Can't admin-ghost whilst in the lobby. Join or Observe first.") else @@ -379,7 +379,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) body.ghostize(1) if(body && !body.key) body.key = "@[key]" //Haaaaaaaack. But the people have spoken. If it breaks; blame adminbus - feedback_add_details("admin_verb","Admin Ghost") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Admin Ghost") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/invisimin() @@ -399,7 +399,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) set category = "Admin" if(holder) holder.player_panel_new() - feedback_add_details("admin_verb","Player Panel New") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Player Panel New") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/check_antagonists() set name = "Check Antagonists" @@ -409,7 +409,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) log_admin("[key_name(usr)] checked antagonists.") //for tsar~ if(!isobserver(usr)) message_admins("[key_name_admin(usr)] checked antagonists.") - feedback_add_details("admin_verb","Check Antagonists") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Check Antagonists") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/unban_panel() set name = "Unban Panel" @@ -419,21 +419,21 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) holder.unbanpanel() else holder.DB_ban_panel() - feedback_add_details("admin_verb","Unban Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Unban Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/game_panel() set name = "Game Panel" set category = "Admin" if(holder) holder.Game() - feedback_add_details("admin_verb","Game Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Game Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/secrets() set name = "Secrets" set category = "Admin" if (holder) holder.Secrets() - feedback_add_details("admin_verb","Secrets Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Secrets Panel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/findStealthKey(txt) @@ -481,7 +481,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) mob.mouse_opacity = 0 log_admin("[key_name(usr)] has turned stealth mode [holder.fakekey ? "ON" : "OFF"]") message_admins("[key_name_admin(usr)] has turned stealth mode [holder.fakekey ? "ON" : "OFF"]") - feedback_add_details("admin_verb","Stealth Mode") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Stealth Mode") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/drop_bomb() set category = "Special Verbs" @@ -523,7 +523,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) explosion(epicenter, devastation_range, heavy_impact_range, light_impact_range, flash_range, TRUE, TRUE) message_admins("[ADMIN_LOOKUPFLW(usr)] creating an admin explosion at [epicenter.loc].") log_admin("[key_name(usr)] created an admin explosion at [epicenter.loc].") - feedback_add_details("admin_verb","Drop Bomb") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Drop Bomb") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/drop_dynex_bomb() set category = "Special Verbs" @@ -536,7 +536,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) dyn_explosion(epicenter, ex_power) message_admins("[ADMIN_LOOKUPFLW(usr)] creating an admin explosion at [epicenter.loc].") log_admin("[key_name(usr)] created an admin explosion at [epicenter.loc].") - feedback_add_details("admin_verb","Drop Dynamic Bomb") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Drop Dynamic Bomb") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/get_dynex_range() set category = "Debug" @@ -581,7 +581,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) if(!S) return - feedback_add_details("admin_verb","Give Spell") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Give Spell") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] gave [key_name(T)] the spell [S].") message_admins("[key_name_admin(usr)] gave [key_name(T)] the spell [S].") @@ -603,7 +603,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) T.mind.RemoveSpell(S) log_admin("[key_name(usr)] removed the spell [S] from [key_name(T)].") message_admins("[key_name_admin(usr)] removed the spell [S] from [key_name(T)].") - feedback_add_details("admin_verb","Remove Spell") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Remove Spell") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/give_disease(mob/T in GLOB.mob_list) set category = "Fun" @@ -612,7 +612,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) var/datum/disease/D = input("Choose the disease to give to that guy", "ACHOO") as null|anything in SSdisease.diseases if(!D) return T.ForceContractDisease(new D) - feedback_add_details("admin_verb","Give Disease") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Give Disease") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] gave [key_name(T)] the disease [D].") message_admins("[key_name_admin(usr)] gave [key_name(T)] the disease [D].") @@ -626,13 +626,13 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) O.say(message) log_admin("[key_name(usr)] made [O] at [O.x], [O.y], [O.z] say \"[message]\"") message_admins("[key_name_admin(usr)] made [O] at [O.x], [O.y], [O.z]. say \"[message]\"") - feedback_add_details("admin_verb","Object Say") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Object Say") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/togglebuildmodeself() set name = "Toggle Build Mode Self" set category = "Special Verbs" if(src.mob) togglebuildmode(src.mob) - feedback_add_details("admin_verb","Toggle Build Mode") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Toggle Build Mode") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggle_log_hrefs() set name = "Toggle href logging" @@ -674,7 +674,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) to_chat(src, "You are now a normal player.") log_admin("[src] deadmined themself.") message_admins("[src] deadmined themself.") - feedback_add_details("admin_verb","Deadmin") + SSblackbox.add_details("admin_verb","Deadmin") /client/proc/readmin() set name = "Readmin" @@ -692,7 +692,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, AVerbsHideable()) to_chat(src, "You are now an admin.") message_admins("[src] re-adminned themselves.") log_admin("[src] re-adminned themselves.") - feedback_add_details("admin_verb","Readmin") + SSblackbox.add_details("admin_verb","Readmin") /client/proc/populate_world(amount = 50 as num) set name = "Populate World" diff --git a/code/modules/admin/secrets.dm b/code/modules/admin/secrets.dm index 7f0479eac91..aea7d3521a0 100644 --- a/code/modules/admin/secrets.dm +++ b/code/modules/admin/secrets.dm @@ -198,7 +198,7 @@ if("moveminingshuttle") if(!check_rights(R_ADMIN)) return - feedback_add_details("admin_secrets_fun_used","Send Mining Shuttle") + SSblackbox.add_details("admin_secrets_fun_used","Send Mining Shuttle") if(!SSshuttle.toggleShuttle("mining","mining_home","mining_away")) message_admins("[key_name_admin(usr)] moved mining shuttle") log_admin("[key_name(usr)] moved the mining shuttle") @@ -206,7 +206,7 @@ if("movelaborshuttle") if(!check_rights(R_ADMIN)) return - feedback_add_details("admin_secrets_fun_used","Send Labor Shuttle") + SSblackbox.add_details("admin_secrets_fun_used","Send Labor Shuttle") if(!SSshuttle.toggleShuttle("laborcamp","laborcamp_home","laborcamp_away")) message_admins("[key_name_admin(usr)] moved labor shuttle") log_admin("[key_name(usr)] moved the labor shuttle") @@ -214,7 +214,7 @@ if("moveferry") if(!check_rights(R_ADMIN)) return - feedback_add_details("admin_secrets_fun_used","Send Centcom Ferry") + SSblackbox.add_details("admin_secrets_fun_used","Send Centcom Ferry") if(!SSshuttle.toggleShuttle("ferry","ferry_home","ferry_away")) message_admins("[key_name_admin(usr)] moved the centcom ferry") log_admin("[key_name(usr)] moved the centcom ferry") @@ -226,7 +226,7 @@ if(A) var/new_perma = !A.perma_docked A.perma_docked = new_perma - feedback_add_details("admin_toggle","Permadock Arrivals Shuttle|[new_perma]") + SSblackbox.add_details("admin_toggle","Permadock Arrivals Shuttle|[new_perma]") message_admins("[key_name_admin(usr)] [new_perma ? "stopped" : "started"] the arrivals shuttle") log_admin("[key_name(usr)] [new_perma ? "stopped" : "started"] the arrivals shuttle") else @@ -276,7 +276,7 @@ if("monkey") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Monkeyize All Humans") + SSblackbox.add_details("admin_secrets_fun_used","Monkeyize All Humans") for(var/mob/living/carbon/human/H in GLOB.mob_list) spawn(0) H.monkeyize() @@ -287,7 +287,7 @@ return var/result = input(usr, "Please choose a new species","Species") as null|anything in GLOB.species_list if(result) - feedback_add_details("admin_secrets_fun_used","Mass Species Change([result])") + SSblackbox.add_details("admin_secrets_fun_used","Mass Species Change([result])") log_admin("[key_name(usr)] turned all humans into [result]", 1) message_admins("\blue [key_name_admin(usr)] turned all humans into [result]") var/newtype = GLOB.species_list[result] @@ -298,12 +298,12 @@ if(!check_rights(R_FUN)) return usr.client.triple_ai() - feedback_add_details("admin_secrets_fun_used","Triple AI") + SSblackbox.add_details("admin_secrets_fun_used","Triple AI") if("power") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Power All APCs") + SSblackbox.add_details("admin_secrets_fun_used","Power All APCs") log_admin("[key_name(usr)] made all areas powered", 1) message_admins("[key_name_admin(usr)] made all areas powered") power_restore() @@ -311,7 +311,7 @@ if("unpower") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Depower All APCs") + SSblackbox.add_details("admin_secrets_fun_used","Depower All APCs") log_admin("[key_name(usr)] made all areas unpowered", 1) message_admins("[key_name_admin(usr)] made all areas unpowered") power_failure() @@ -319,7 +319,7 @@ if("quickpower") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Power All SMESs") + SSblackbox.add_details("admin_secrets_fun_used","Power All SMESs") log_admin("[key_name(usr)] made all SMESs powered", 1) message_admins("[key_name_admin(usr)] made all SMESs powered") power_restore_quick() @@ -333,7 +333,7 @@ var/objective = copytext(sanitize(input("Enter an objective")),1,MAX_MESSAGE_LEN) if(!objective) return - feedback_add_details("admin_secrets_fun_used","Traitor All ([objective])") + SSblackbox.add_details("admin_secrets_fun_used","Traitor All ([objective])") for(var/mob/living/carbon/human/H in GLOB.player_list) if(H.stat == 2 || !H.client || !H.mind) continue if(is_special_character(H)) continue @@ -365,7 +365,7 @@ if("changebombcap") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Bomb Cap") + SSblackbox.add_details("admin_secrets_fun_used","Bomb Cap") var/newBombCap = input(usr,"What would you like the new bomb cap to be. (entered as the light damage range (the 3rd number in common (1,2,3) notation)) Must be above 4)", "New Bomb Cap", GLOB.MAX_EX_LIGHT_RANGE) as num|null if (newBombCap < 4) @@ -384,7 +384,7 @@ if("blackout") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Break All Lights") + SSblackbox.add_details("admin_secrets_fun_used","Break All Lights") message_admins("[key_name_admin(usr)] broke all lights") for(var/obj/machinery/light/L in GLOB.machines) L.break_light_tube() @@ -400,7 +400,7 @@ if(animetype == "Cancel" || droptype == "Cancel") return - feedback_add_details("admin_secrets_fun_used","Chinese Cartoons") + SSblackbox.add_details("admin_secrets_fun_used","Chinese Cartoons") message_admins("[key_name_admin(usr)] made everything kawaii.") for(var/mob/living/carbon/human/H in GLOB.mob_list) H << sound('sound/AI/animes.ogg') @@ -430,7 +430,7 @@ if("whiteout") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Fix All Lights") + SSblackbox.add_details("admin_secrets_fun_used","Fix All Lights") message_admins("[key_name_admin(usr)] fixed all lights") for(var/obj/machinery/light/L in GLOB.machines) L.fix() @@ -441,7 +441,7 @@ if("virus") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Virus Outbreak") + SSblackbox.add_details("admin_secrets_fun_used","Virus Outbreak") switch(alert("Do you want this to be a random disease or do you have something in mind?",,"Make Your Own","Random","Choose")) if("Make Your Own") AdminCreateVirus(usr.client) @@ -456,7 +456,7 @@ if("retardify") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Mass Braindamage") + SSblackbox.add_details("admin_secrets_fun_used","Mass Braindamage") for(var/mob/living/carbon/human/H in GLOB.player_list) to_chat(H, "You suddenly feel stupid.") H.setBrainLoss(60) @@ -465,7 +465,7 @@ if("eagles")//SCRAW if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Egalitarian Station") + SSblackbox.add_details("admin_secrets_fun_used","Egalitarian Station") for(var/obj/machinery/door/airlock/W in GLOB.machines) if(W.z == ZLEVEL_STATION && !istype(get_area(W), /area/bridge) && !istype(get_area(W), /area/crew_quarters) && !istype(get_area(W), /area/security/prison)) W.req_access = list() @@ -475,7 +475,7 @@ if("guns") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Summon Guns") + SSblackbox.add_details("admin_secrets_fun_used","Summon Guns") var/survivor_probability = 0 switch(alert("Do you want this to create survivors antagonists?",,"No Antags","Some Antags","All Antags!")) if("Some Antags") @@ -488,7 +488,7 @@ if("magic") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Summon Magic") + SSblackbox.add_details("admin_secrets_fun_used","Summon Magic") var/survivor_probability = 0 switch(alert("Do you want this to create survivors antagonists?",,"No Antags","Some Antags","All Antags!")) if("Some Antags") @@ -504,22 +504,22 @@ if(!SSevents.wizardmode) if(alert("Do you want to toggle summon events on?",,"Yes","No") == "Yes") summonevents() - feedback_add_details("admin_secrets_fun_used","Activate Summon Events") + SSblackbox.add_details("admin_secrets_fun_used","Activate Summon Events") else switch(alert("What would you like to do?",,"Intensify Summon Events","Turn Off Summon Events","Nothing")) if("Intensify Summon Events") summonevents() - feedback_add_details("admin_secrets_fun_used","Intensify Summon Events") + SSblackbox.add_details("admin_secrets_fun_used","Intensify Summon Events") if("Turn Off Summon Events") SSevents.toggleWizardmode() SSevents.resetFrequency() - feedback_add_details("admin_secrets_fun_used","Disable Summon Events") + SSblackbox.add_details("admin_secrets_fun_used","Disable Summon Events") if("dorf") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","Dwarf Beards") + SSblackbox.add_details("admin_secrets_fun_used","Dwarf Beards") for(var/mob/living/carbon/human/B in GLOB.mob_list) B.facial_hair_style = "Dward Beard" B.update_hair() @@ -528,21 +528,21 @@ if("onlyone") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","There Can Be Only One") + SSblackbox.add_details("admin_secrets_fun_used","There Can Be Only One") usr.client.only_one() send_to_playing_players('sound/misc/highlander.ogg') if("delayed_onlyone") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","There Can Be Only One") + SSblackbox.add_details("admin_secrets_fun_used","There Can Be Only One") usr.client.only_one_delayed() send_to_playing_players('sound/misc/highlander_delayed.ogg') if("onlyme") if(!check_rights(R_FUN)) return - feedback_add_details("admin_secrets_fun_used","There Can Be Only Me") + SSblackbox.add_details("admin_secrets_fun_used","There Can Be Only Me") only_me() if("maint_access_brig") diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index c59f947c341..e25bc46c32a 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -498,7 +498,7 @@ GLOB.Banlist["minutes"] << minutes GLOB.Banlist["bannedby"] << usr.ckey GLOB.Banlist.cd = "/base" - feedback_inc("ban_edit",1) + SSblackbox.inc("ban_edit",1) unbanpanel() /////////////////////////////////////new ban stuff @@ -520,7 +520,7 @@ if("Yes") ban_unban_log_save("[key_name(usr)] removed [key_name(M)]'s appearance ban.") log_admin_private("[key_name(usr)] removed [key_name(M)]'s appearance ban.") - feedback_inc("ban_appearance_unban", 1) + SSblackbox.inc("ban_appearance_unban", 1) DB_ban_unban(M.ckey, BANTYPE_ANY_JOB, "appearance") if(M.client) jobban_buildcache(M.client) @@ -539,7 +539,7 @@ jobban_buildcache(M.client) ban_unban_log_save("[key_name(usr)] appearance banned [key_name(M)]. reason: [reason]") log_admin_private("[key_name(usr)] appearance banned [key_name(M)]. \nReason: [reason]") - feedback_inc("ban_appearance",1) + SSblackbox.inc("ban_appearance",1) create_message("note", M.ckey, null, "Appearance banned - [reason]", null, null, 0, 0) message_admins("[key_name_admin(usr)] appearance banned [key_name_admin(M)].") to_chat(M, "You have been appearance banned by [usr.client.ckey].") @@ -924,8 +924,8 @@ jobban_buildcache(M.client) ban_unban_log_save("[key_name(usr)] temp-jobbanned [key_name(M)] from [job] for [mins] minutes. reason: [reason]") log_admin_private("[key_name(usr)] temp-jobbanned [key_name(M)] from [job] for [mins] minutes.") - feedback_inc("ban_job_tmp",1) - feedback_add_details("ban_job_tmp","- [job]") + SSblackbox.inc("ban_job_tmp",1) + SSblackbox.add_details("ban_job_tmp","- [job]") if(!msg) msg = job else @@ -949,8 +949,8 @@ jobban_buildcache(M.client) ban_unban_log_save("[key_name(usr)] perma-jobbanned [key_name(M)] from [job]. reason: [reason]") log_admin_private("[key_name(usr)] perma-banned [key_name(M)] from [job]") - feedback_inc("ban_job",1) - feedback_add_details("ban_job","- [job]") + SSblackbox.inc("ban_job",1) + SSblackbox.add_details("ban_job","- [job]") if(!msg) msg = job else @@ -980,8 +980,8 @@ DB_ban_unban(M.ckey, BANTYPE_ANY_JOB, job) if(M.client) jobban_buildcache(M.client) - feedback_inc("ban_job_unban",1) - feedback_add_details("ban_job_unban","- [job]") + SSblackbox.inc("ban_job_unban",1) + SSblackbox.add_details("ban_job_unban","- [job]") if(!msg) msg = job else @@ -1116,8 +1116,8 @@ ban_unban_log_save("[key_name(usr)] has banned [key_name(M)]. - Reason: [reason] - This will be removed in [mins] minutes.") to_chat(M, "You have been banned by [usr.client.ckey].\nReason: [reason]") to_chat(M, "This is a temporary ban, it will be removed in [mins] minutes.") - feedback_inc("ban_tmp",1) - feedback_inc("ban_tmp_mins",mins) + SSblackbox.inc("ban_tmp",1) + SSblackbox.inc("ban_tmp_mins",mins) if(config.banappeals) to_chat(M, "To try to resolve this matter head to [config.banappeals]") else @@ -1156,7 +1156,7 @@ var/datum/admin_help/AH = M.client ? M.client.current_ticket : null if(AH) AH.Resolve() - feedback_inc("ban_perma",1) + SSblackbox.inc("ban_perma",1) qdel(M.client) if("Cancel") return @@ -1687,7 +1687,7 @@ log_admin("[key_name(H)] got their cookie, spawned by [key_name(src.owner)].") message_admins("[key_name(H)] got their cookie, spawned by [key_name(src.owner)].") - feedback_inc("admin_cookies_spawned",1) + SSblackbox.inc("admin_cookies_spawned",1) to_chat(H, "Your prayers have been answered!! You received the best cookie!") H << 'sound/effects/pray_chaplain.ogg' @@ -1987,7 +1987,7 @@ var/choice = alert("Please confirm Feed channel creation.","Network Channel Handler","Confirm","Cancel") if(choice=="Confirm") GLOB.news_network.CreateFeedChannel(src.admincaster_feed_channel.channel_name, src.admin_signature, src.admincaster_feed_channel.locked, 1) - feedback_inc("newscaster_channels",1) + SSblackbox.inc("newscaster_channels",1) log_admin("[key_name(usr)] created command feed channel: [src.admincaster_feed_channel.channel_name]!") src.admincaster_screen=5 src.access_news_network() @@ -2010,7 +2010,7 @@ src.admincaster_screen = 6 else GLOB.news_network.SubmitArticle(src.admincaster_feed_message.returnBody(-1), src.admin_signature, src.admincaster_feed_channel.channel_name, null, 1) - feedback_inc("newscaster_stories",1) + SSblackbox.inc("newscaster_stories",1) src.admincaster_screen=4 for(var/obj/machinery/newscaster/NEWSCASTER in GLOB.allCasters) diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 976912ca77d..54abb2844fe 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -264,9 +264,9 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) GLOB.ahelp_tickets.resolved_tickets -= src switch(state) if(AHELP_CLOSED) - feedback_dec("ahelp_close") + SSblackbox.dec("ahelp_close") if(AHELP_RESOLVED) - feedback_dec("ahelp_resolve") + SSblackbox.dec("ahelp_resolve") state = AHELP_ACTIVE closed_at = null if(initiator) @@ -276,7 +276,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) var/msg = "Ticket [TicketHref("#[id]")] reopened by [key_name_admin(usr)]." message_admins(msg) log_admin_private(msg) - feedback_inc("ahelp_reopen") + SSblackbox.inc("ahelp_reopen") TicketPanel() //can only be done from here, so refresh it //private @@ -298,7 +298,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) GLOB.ahelp_tickets.ListInsert(src) AddInteraction("Closed by [key_name].") if(!silent) - feedback_inc("ahelp_close") + SSblackbox.inc("ahelp_close") var/msg = "Ticket [TicketHref("#[id]")] closed by [key_name]." message_admins(msg) log_admin_private(msg) @@ -316,7 +316,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) AddInteraction("Resolved by [key_name].") if(!silent) - feedback_inc("ahelp_resolve") + SSblackbox.inc("ahelp_resolve") var/msg = "Ticket [TicketHref("#[id]")] resolved by [key_name]" message_admins(msg) log_admin_private(msg) @@ -335,7 +335,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) to_chat(initiator, "Your admin help was rejected. The adminhelp verb has been returned to you so that you may try again.") to_chat(initiator, "Please try to be calm, clear, and descriptive in admin helps, do not assume the admin has seen any related events, and clearly state the names of anybody you are reporting.") - feedback_inc("ahelp_reject") + SSblackbox.inc("ahelp_reject") var/msg = "Ticket [TicketHref("#[id]")] rejected by [key_name]" message_admins(msg) log_admin_private(msg) @@ -354,7 +354,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) if(initiator) to_chat(initiator, msg) - feedback_inc("ahelp_icissue") + SSblackbox.inc("ahelp_icissue") msg = "Ticket [TicketHref("#[id]")] marked as IC by [key_name]" message_admins(msg) log_admin_private(msg) @@ -472,7 +472,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) if(!msg) return - feedback_add_details("admin_verb","Adminhelp") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Adminhelp") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! if(current_ticket) if(alert(usr, "You already have a ticket open. Is this for the same issue?",,"Yes","No") != "No") if(current_ticket) diff --git a/code/modules/admin/verbs/adminjump.dm b/code/modules/admin/verbs/adminjump.dm index ccc0b15509e..f8f16684541 100644 --- a/code/modules/admin/verbs/adminjump.dm +++ b/code/modules/admin/verbs/adminjump.dm @@ -23,7 +23,7 @@ usr.forceMove(T) log_admin("[key_name(usr)] jumped to [A]") message_admins("[key_name_admin(usr)] jumped to [A]") - feedback_add_details("admin_verb","Jump To Area") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Jump To Area") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/jumptoturf(turf/T in world) set name = "Jump to Turf" @@ -35,7 +35,7 @@ log_admin("[key_name(usr)] jumped to [T.x],[T.y],[T.z] in [T.loc]") message_admins("[key_name_admin(usr)] jumped to [T.x],[T.y],[T.z] in [T.loc]") usr.loc = T - feedback_add_details("admin_verb","Jump To Turf") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Jump To Turf") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return /client/proc/jumptomob(mob/M in GLOB.mob_list) @@ -52,7 +52,7 @@ var/mob/A = src.mob var/turf/T = get_turf(M) if(T && isturf(T)) - feedback_add_details("admin_verb","Jump To Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Jump To Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! A.forceMove(M.loc) else to_chat(A, "This mob is not located in the game world.") @@ -70,7 +70,7 @@ A.x = tx A.y = ty A.z = tz - feedback_add_details("admin_verb","Jump To Coordiate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Jump To Coordiate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! message_admins("[key_name_admin(usr)] jumped to coordinates [tx], [ty], [tz]") /client/proc/jumptokey() @@ -94,7 +94,7 @@ usr.forceMove(M.loc) - feedback_add_details("admin_verb","Jump To Key") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Jump To Key") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/Getmob(mob/M in GLOB.mob_list) set category = "Admin" @@ -110,7 +110,7 @@ message_admins(msg) admin_ticket_log(M, msg) M.forceMove(loc) - feedback_add_details("admin_verb","Get Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Get Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/Getkey() set category = "Admin" @@ -138,7 +138,7 @@ if(M) M.forceMove(get_turf(usr)) usr.loc = M.loc - feedback_add_details("admin_verb","Get Key") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Get Key") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/sendmob(mob/M in sortmobs()) set category = "Admin" @@ -156,4 +156,4 @@ admin_ticket_log(M, msg) else to_chat(src, "Failed to move mob to a valid location.") - feedback_add_details("admin_verb","Send Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Send Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 3e16b5785fb..489441ee97a 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -11,7 +11,7 @@ if( !ismob(M) || !M.client ) return cmd_admin_pm(M.client,null) - feedback_add_details("admin_verb","Admin PM Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Admin PM Mob") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //shows a list of clients we could send PMs to, then forwards our choice to cmd_admin_pm /client/proc/cmd_admin_pm_panel() @@ -33,7 +33,7 @@ targets["(No Mob) - [T]"] = T var/target = input(src,"To whom shall we send a message?","Admin PM",null) as null|anything in sortList(targets) cmd_admin_pm(targets[target],null) - feedback_add_details("admin_verb","Admin PM") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Admin PM") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_ahelp_reply(whom) if(prefs.muted & MUTE_ADMINHELP) diff --git a/code/modules/admin/verbs/adminsay.dm b/code/modules/admin/verbs/adminsay.dm index 3e23bbba1ac..53fb5b206e9 100644 --- a/code/modules/admin/verbs/adminsay.dm +++ b/code/modules/admin/verbs/adminsay.dm @@ -18,5 +18,5 @@ msg = "ADMIN: [key_name(usr, 1)]: [msg]" to_chat(GLOB.admins, msg) - feedback_add_details("admin_verb","Asay") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Asay") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/atmosdebug.dm b/code/modules/admin/verbs/atmosdebug.dm index bccdb0fb9f9..730cd689870 100644 --- a/code/modules/admin/verbs/atmosdebug.dm +++ b/code/modules/admin/verbs/atmosdebug.dm @@ -4,7 +4,7 @@ if(!src.holder) to_chat(src, "Only administrators may use this command.") return - feedback_add_details("admin_verb","Check Plumbing") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Check Plumbing") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //all plumbing - yes, some things might get stated twice, doesn't matter. for (var/obj/machinery/atmospherics/plumbing in GLOB.machines) @@ -27,7 +27,7 @@ if(!src.holder) to_chat(src, "Only administrators may use this command.") return - feedback_add_details("admin_verb","Check Power") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Check Power") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! for (var/datum/powernet/PN in GLOB.powernets) if (!PN.nodes || !PN.nodes.len) diff --git a/code/modules/admin/verbs/deadsay.dm b/code/modules/admin/verbs/deadsay.dm index f29a04e376e..c8edb35ec91 100644 --- a/code/modules/admin/verbs/deadsay.dm +++ b/code/modules/admin/verbs/deadsay.dm @@ -29,4 +29,4 @@ if (M.stat == DEAD || (M.client && M.client.holder && (M.client.prefs.chat_toggles & CHAT_DEAD))) //admins can toggle deadchat on and off. This is a proc in admin.dm and is only give to Administrators and above M.show_message(rendered, 2) - feedback_add_details("admin_verb","Dsay") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! \ No newline at end of file + SSblackbox.add_details("admin_verb","Dsay") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! \ No newline at end of file diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 5b986e971fa..a1634516522 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -13,7 +13,7 @@ message_admins("[key_name(src)] toggled debugging on.") log_admin("[key_name(src)] toggled debugging on.") - feedback_add_details("admin_verb","Toggle Debug Two") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Toggle Debug Two") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -81,7 +81,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that . = get_callproc_returnval(returnval, procname) if(.) to_chat(usr, .) - feedback_add_details("admin_verb","Advanced ProcCall") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Advanced ProcCall") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! GLOBAL_VAR_INIT(AdminProcCall, null) GLOBAL_PROTECT(AdminProcCall) @@ -130,7 +130,7 @@ GLOBAL_PROTECT(AdminProcCall) var/msg = "[key_name(src)] called [A]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"]." message_admins(msg) admin_ticket_log(A, msg) - feedback_add_details("admin_verb","Atom ProcCall") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Atom ProcCall") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! var/returnval = WrapAdminProcCall(A, procname, lst) // Pass the lst as an argument list to the proc . = get_callproc_returnval(returnval,procname) @@ -201,7 +201,7 @@ GLOBAL_PROTECT(AdminProcCall) t+= "[env_gases[id][GAS_META][META_GAS_NAME]] : [env_gases[id][MOLES]]\n" to_chat(usr, t) - feedback_add_details("admin_verb","Air Status In Location") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Air Status In Location") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_robotize(mob/M in GLOB.mob_list) set category = "Fun" @@ -283,7 +283,7 @@ GLOBAL_PROTECT(AdminProcCall) for(var/datum/paiCandidate/candidate in SSpai.candidates) if(candidate.key == choice.key) SSpai.candidates.Remove(candidate) - feedback_add_details("admin_verb","Make pAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Make pAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_alienize(mob/M in GLOB.mob_list) set category = "Fun" @@ -296,7 +296,7 @@ GLOBAL_PROTECT(AdminProcCall) log_admin("[key_name(src)] has alienized [M.key].") spawn(0) M:Alienize() - feedback_add_details("admin_verb","Make Alien") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Make Alien") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] made [key_name(M)] into an alien.") message_admins("[key_name_admin(usr)] made [key_name(M)] into an alien.") else @@ -313,7 +313,7 @@ GLOBAL_PROTECT(AdminProcCall) log_admin("[key_name(src)] has slimeized [M.key].") spawn(0) M:slimeize() - feedback_add_details("admin_verb","Make Slime") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Make Slime") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] made [key_name(M)] into a slime.") message_admins("[key_name_admin(usr)] made [key_name(M)] into a slime.") else @@ -402,7 +402,7 @@ GLOBAL_PROTECT(AdminProcCall) CHECK_TICK log_admin("[key_name(src)] has deleted all ([counter]) instances of [hsbitem].") message_admins("[key_name_admin(src)] has deleted all ([counter]) instances of [hsbitem].", 0) - feedback_add_details("admin_verb","Delete All") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Delete All") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_debug_make_powernets() @@ -411,7 +411,7 @@ GLOBAL_PROTECT(AdminProcCall) SSmachines.makepowernets() log_admin("[key_name(src)] has remade the powernet. makepowernets() called.") message_admins("[key_name_admin(src)] has remade the powernets. makepowernets() called.", 0) - feedback_add_details("admin_verb","Make Powernets") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Make Powernets") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_grantfullaccess(mob/M in GLOB.mob_list) set category = "Admin" @@ -449,7 +449,7 @@ GLOBAL_PROTECT(AdminProcCall) else alert("Invalid mob") - feedback_add_details("admin_verb","Grant Full Access") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Grant Full Access") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(src)] has granted [M.key] full access.") message_admins("[key_name_admin(usr)] has granted [M.key] full access.") @@ -470,7 +470,7 @@ GLOBAL_PROTECT(AdminProcCall) M.ckey = src.ckey if( isobserver(adminmob) ) qdel(adminmob) - feedback_add_details("admin_verb","Assume Direct Control") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Assume Direct Control") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_areatest() set category = "Mapping" @@ -605,7 +605,7 @@ GLOBAL_PROTECT(AdminProcCall) if(isnull(custom)) return - feedback_add_details("admin_verb","Select Equipment") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Select Equipment") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! for (var/obj/item/I in M.get_equipped_items()) qdel(I) switch(dresscode) @@ -777,7 +777,7 @@ GLOBAL_PROTECT(AdminProcCall) return SSshuttle.clear_transit = TRUE message_admins("[key_name_admin(src)] cleared dynamic transit space.") - feedback_add_details("admin_verb","Clear Dynamic Transit") // If... + SSblackbox.add_details("admin_verb","Clear Dynamic Transit") // If... log_admin("[key_name(src)] cleared dynamic transit space.") @@ -791,7 +791,7 @@ GLOBAL_PROTECT(AdminProcCall) global.medals_enabled = !global.medals_enabled message_admins("[key_name_admin(src)] [global.medals_enabled ? "disabled" : "enabled"] the medal hub lockout.") - feedback_add_details("admin_verb","Toggle Medal Disable") // If... + SSblackbox.add_details("admin_verb","Toggle Medal Disable") // If... log_admin("[key_name(src)] [global.medals_enabled ? "disabled" : "enabled"] the medal hub lockout.") /client/proc/view_runtimes() @@ -814,5 +814,5 @@ GLOBAL_PROTECT(AdminProcCall) SSevents.scheduled = world.time message_admins("[key_name_admin(src)] pumped a random event.") - feedback_add_details("admin_verb","Pump Random Event") + SSblackbox.add_details("admin_verb","Pump Random Event") log_admin("[key_name(src)] pumped a random event.") diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm index 26bfe6883b4..15b619f6536 100644 --- a/code/modules/admin/verbs/diagnostics.dm +++ b/code/modules/admin/verbs/diagnostics.dm @@ -16,7 +16,7 @@ to_chat(usr, "@[target.x],[target.y]: [GM.temperature] Kelvin, [GM.return_pressure()] kPa [(burning)?("\red BURNING"):(null)]") for(var/id in GM_gases) to_chat(usr, "[GM_gases[id][GAS_META][META_GAS_NAME]]: [GM_gases[id][MOLES]]") - feedback_add_details("admin_verb","Show Air Status") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Air Status") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/fix_next_move() set category = "Debug" @@ -46,7 +46,7 @@ message_admins("[key_name_admin(largest_move_mob)] had the largest move delay with [largest_move_time] frames / [largest_move_time/10] seconds!") message_admins("[key_name_admin(largest_click_mob)] had the largest click delay with [largest_click_time] frames / [largest_click_time/10] seconds!") message_admins("world.time = [world.time]") - feedback_add_details("admin_verb","Unfreeze Everyone") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Unfreeze Everyone") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return /client/proc/radio_report() @@ -84,7 +84,7 @@ output += "    [device]
" usr << browse(output,"window=radioreport") - feedback_add_details("admin_verb","Show Radio Report") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Radio Report") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/reload_admins() set name = "Reload Admins" @@ -98,5 +98,5 @@ return load_admins() - feedback_add_details("admin_verb","Reload All Admins") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Reload All Admins") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! message_admins("[key_name_admin(usr)] manually reloaded admins") diff --git a/code/modules/admin/verbs/fps.dm b/code/modules/admin/verbs/fps.dm index 5aac2cad39b..bedcd0a6e51 100644 --- a/code/modules/admin/verbs/fps.dm +++ b/code/modules/admin/verbs/fps.dm @@ -19,6 +19,6 @@ var/msg = "[key_name(src)] has modified world.fps to [new_fps]" log_admin(msg, 0) message_admins(msg, 0) - feedback_add_details("admin_toggle","Set Server FPS|[new_fps]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Set Server FPS|[new_fps]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! world.fps = new_fps diff --git a/code/modules/admin/verbs/getlogs.dm b/code/modules/admin/verbs/getlogs.dm index fda73e17530..c3438f15564 100644 --- a/code/modules/admin/verbs/getlogs.dm +++ b/code/modules/admin/verbs/getlogs.dm @@ -90,7 +90,7 @@ else to_chat(src, "Server log not found, try using .getserverlog.") return - feedback_add_details("admin_verb","Show Server Log") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Server Log") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return //Shows today's attack log @@ -104,5 +104,5 @@ else to_chat(src, "Server attack log not found, try using .getserverlog.") return - feedback_add_details("admin_verb","Show Server Attack log") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Server Attack log") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return diff --git a/code/modules/admin/verbs/machine_upgrade.dm b/code/modules/admin/verbs/machine_upgrade.dm index 340130bb75c..9a22623bfe0 100644 --- a/code/modules/admin/verbs/machine_upgrade.dm +++ b/code/modules/admin/verbs/machine_upgrade.dm @@ -7,4 +7,4 @@ P.rating = new_rating M.RefreshParts() - feedback_add_details("admin_toggle","Machine Upgrade|[new_rating]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Machine Upgrade|[new_rating]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index 591ebfa01f3..8a8d18d5fd4 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -81,7 +81,7 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( seen[T]++ for(var/turf/T in seen) T.maptext = "[seen[T]]" - feedback_add_details("admin_verb","Show Camera Range") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Camera Range") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -123,7 +123,7 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( output += "" usr << browse(output,"window=airreport;size=1000x500") - feedback_add_details("admin_verb","Show Camera Report") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Camera Report") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/intercom_view() set category = "Mapping" @@ -144,7 +144,7 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( var/obj/effect/debugging/marker/F = new/obj/effect/debugging/marker(T) if (!(F in view(7,I.loc))) qdel(F) - feedback_add_details("admin_verb","Show Intercom Range") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Intercom Range") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_show_at_list() set category = "Mapping" @@ -160,7 +160,7 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( usr << browse(dat, "window=at_list") - feedback_add_details("admin_verb","Show Roundstart Active Turfs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Show Roundstart Active Turfs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/enable_debug_verbs() set category = "Debug" @@ -169,14 +169,14 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( return verbs -= /client/proc/enable_debug_verbs verbs.Add(/client/proc/disable_debug_verbs, GLOB.admin_verbs_debug_mapping) - feedback_add_details("admin_verb","Enable Debug Verbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Enable Debug Verbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/disable_debug_verbs() set category = "Debug" set name = "Debug verbs - Disable" verbs.Remove(/client/proc/disable_debug_verbs, GLOB.admin_verbs_debug_mapping) verbs += /client/proc/enable_debug_verbs - feedback_add_details("admin_verb", "Disable Debug Verbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb", "Disable Debug Verbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/count_objects_on_z_level() set category = "Mapping" @@ -219,7 +219,7 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( to_chat(world, line)*/ to_chat(world, "There are [count] objects of type [type_path] on z-level [num_level]") - feedback_add_details("admin_verb","Count Objects Zlevel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Count Objects Zlevel") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/count_objects_all() set category = "Mapping" @@ -246,7 +246,7 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list( to_chat(world, line)*/ to_chat(world, "There are [count] objects of type [type_path] in the game world") - feedback_add_details("admin_verb","Count Objects All") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Count Objects All") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //This proc is intended to detect lag problems relating to communication procs diff --git a/code/modules/admin/verbs/massmodvar.dm b/code/modules/admin/verbs/massmodvar.dm index 05f662fb163..e17cbbbf86d 100644 --- a/code/modules/admin/verbs/massmodvar.dm +++ b/code/modules/admin/verbs/massmodvar.dm @@ -12,7 +12,7 @@ method = vv_subtype_prompt(A.type) src.massmodify_variables(A, var_name, method) - feedback_add_details("admin_verb","Mass Edit Variables") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Mass Edit Variables") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/massmodify_variables(datum/O, var_name = "", method = 0) if(!check_rights(R_VAREDIT)) diff --git a/code/modules/admin/verbs/panicbunker.dm b/code/modules/admin/verbs/panicbunker.dm index b0c1aac982c..3da486be78d 100644 --- a/code/modules/admin/verbs/panicbunker.dm +++ b/code/modules/admin/verbs/panicbunker.dm @@ -11,5 +11,5 @@ message_admins("[key_name_admin(usr)] has toggled the Panic Bunker, it is now [(config.panic_bunker?"enabled":"disabled")].") if (config.panic_bunker && (!SSdbcore || !SSdbcore.IsConnected())) message_admins("The Database is not connected! Panic bunker will not work until the connection is reestablished.") - feedback_add_details("admin_toggle","Toggle Panic Bunker|[config.panic_bunker]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Panic Bunker|[config.panic_bunker]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/playsound.dm b/code/modules/admin/verbs/playsound.dm index 56d95289c5c..c49009daabd 100644 --- a/code/modules/admin/verbs/playsound.dm +++ b/code/modules/admin/verbs/playsound.dm @@ -25,7 +25,7 @@ if(M.client.prefs.toggles & SOUND_MIDI) M << admin_sound - feedback_add_details("admin_verb","Play Global Sound") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Play Global Sound") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/play_local_sound(S as sound) @@ -37,7 +37,7 @@ log_admin("[key_name(src)] played a local sound [S]") message_admins("[key_name_admin(src)] played a local sound [S]") playsound(get_turf(src.mob), S, 50, 0, 0) - feedback_add_details("admin_verb","Play Local Sound") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Play Local Sound") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/set_round_end_sound(S as sound) set category = "Fun" @@ -52,7 +52,7 @@ log_admin("[key_name(src)] set the round end sound to [S]") message_admins("[key_name_admin(src)] set the round end sound to [S]") - feedback_add_details("admin_verb","Set Round End Sound") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Set Round End Sound") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/stop_sounds() set category = "Debug" @@ -65,4 +65,4 @@ for(var/mob/M in GLOB.player_list) if(M.client) M << sound(null) - feedback_add_details("admin_verb","Stop All Playing Sounds") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Stop All Playing Sounds") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/possess.dm b/code/modules/admin/verbs/possess.dm index 0b077427518..e271cdb3a79 100644 --- a/code/modules/admin/verbs/possess.dm +++ b/code/modules/admin/verbs/possess.dm @@ -23,7 +23,7 @@ usr.name = O.name usr.client.eye = O usr.control_object = O - feedback_add_details("admin_verb","Possess Object") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Possess Object") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /proc/release(obj/O in world) set name = "Release Obj" @@ -41,7 +41,7 @@ usr.loc = O.loc usr.client.eye = usr usr.control_object = null - feedback_add_details("admin_verb","Release Object") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Release Object") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /proc/givetestverbs(mob/M in GLOB.mob_list) set desc = "Give this guy possess/release verbs" @@ -49,4 +49,4 @@ set name = "Give Possessing Verbs" M.verbs += /proc/possess M.verbs += /proc/release - feedback_add_details("admin_verb","Give Possessing Verbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Give Possessing Verbs") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index 2285466b3d3..1a41d9e412f 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -43,7 +43,7 @@ C << 'sound/effects/pray.ogg' to_chat(usr, "Your prayers have been received by the gods.") - feedback_add_details("admin_verb","Prayer") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Prayer") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //log_admin("HELP: [key_name(src)]: [msg]") /proc/Centcomm_announce(text , mob/Sender) diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index afd69e02382..255dcc05f47 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -18,7 +18,7 @@ var/msg = "[key_name_admin(usr)] made [key_name_admin(M)] drop everything!" message_admins(msg) admin_ticket_log(M, msg) - feedback_add_details("admin_verb","Drop Everything") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Drop Everything") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_subtle_message(mob/M in GLOB.mob_list) set category = "Special Verbs" @@ -45,7 +45,7 @@ msg = " SubtleMessage: [key_name_admin(usr)] -> [key_name_admin(M)] : [msg]" message_admins(msg) admin_ticket_log(M, msg) - feedback_add_details("admin_verb","Subtle Message") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Subtle Message") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_world_narrate() set category = "Special Verbs" @@ -62,7 +62,7 @@ to_chat(world, "[msg]") log_admin("GlobalNarrate: [key_name(usr)] : [msg]") message_admins("[key_name_admin(usr)] Sent a global narrate") - feedback_add_details("admin_verb","Global Narrate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Global Narrate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_direct_narrate(mob/M) set category = "Special Verbs" @@ -88,7 +88,7 @@ msg = " DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]): [msg]
" message_admins(msg) admin_ticket_log(M, msg) - feedback_add_details("admin_verb","Direct Narrate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Direct Narrate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_local_narrate(atom/A) set category = "Special Verbs" @@ -110,7 +110,7 @@ log_admin("LocalNarrate: [key_name(usr)] at ([get_area(A)]): [msg]") message_admins(" LocalNarrate: [key_name_admin(usr)] at ([get_area(A)]): [msg]
") - feedback_add_details("admin_verb","Local Narrate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Local Narrate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_godmode(mob/M in GLOB.mob_list) set category = "Special Verbs" @@ -125,7 +125,7 @@ var/msg = "[key_name_admin(usr)] has toggled [key_name_admin(M)]'s nodamage to [(M.status_flags & GODMODE) ? "On" : "Off"]" message_admins(msg) admin_ticket_log(M, msg) - feedback_add_details("admin_toggle","Godmode|[M.status_flags & GODMODE]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Godmode|[M.status_flags & GODMODE]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /proc/cmd_admin_mute(whom, mute_type, automute = 0) @@ -187,7 +187,7 @@ message_admins("SPAM AUTOMUTE: [muteunmute] [key_name_admin(whom)] from [mute_string].") if(C) to_chat(C, "You have been [muteunmute] from [mute_string] by the SPAM AUTOMUTE system. Contact an admin.") - feedback_add_details("admin_toggle","Auto Mute [feedback_string]|1") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Auto Mute [feedback_string]|1") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return if(P.muted & mute_type) @@ -201,7 +201,7 @@ message_admins("[key_name_admin(usr)] has [muteunmute] [key_name_admin(whom)] from [mute_string].") if(C) to_chat(C, "You have been [muteunmute] from [mute_string] by [key_name(usr, include_name = FALSE)].") - feedback_add_details("admin_toggle","Mute [feedback_string]|[P.muted & mute_type]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Mute [feedback_string]|[P.muted & mute_type]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //I use this proc for respawn character too. /N @@ -423,7 +423,7 @@ Traitors and the like can also be revived with the previous role mostly intact. to_chat(new_character, "You have been fully respawned. Enjoy the game.") - feedback_add_details("admin_verb","Respawn Character") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Respawn Character") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return new_character /client/proc/cmd_admin_add_freeform_ai_law() @@ -446,7 +446,7 @@ Traitors and the like can also be revived with the previous role mostly intact. ion.announceEvent = announce_ion_laws ion.ionMessage = input - feedback_add_details("admin_verb","Add Custom AI Law") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Add Custom AI Law") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_rejuvenate(mob/living/M in GLOB.mob_list) set category = "Special Verbs" @@ -465,7 +465,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/msg = "Admin [key_name_admin(usr)] healed / revived [key_name_admin(M)]!" message_admins(msg) admin_ticket_log(M, msg) - feedback_add_details("admin_verb","Rejuvinate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Rejuvinate") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_create_centcom_report() set category = "Special Verbs" @@ -490,7 +490,7 @@ Traitors and the like can also be revived with the previous role mostly intact. log_admin("[key_name(src)] has created a command report: [input]") message_admins("[key_name_admin(src)] has created a command report") - feedback_add_details("admin_verb","Create Command Report") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Create Command Report") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_change_command_name() set category = "Special Verbs" @@ -516,7 +516,7 @@ Traitors and the like can also be revived with the previous role mostly intact. if (alert(src, "Are you sure you want to delete:\n[O]\nat ([O.x], [O.y], [O.z])?", "Confirmation", "Yes", "No") == "Yes") log_admin("[key_name(usr)] deleted [O] at ([O.x],[O.y],[O.z])") message_admins("[key_name_admin(usr)] deleted [O] at ([O.x],[O.y],[O.z])") - feedback_add_details("admin_verb","Delete") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Delete") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! if(isturf(O)) var/turf/T = O T.ChangeTurf(T.baseturf) @@ -531,7 +531,7 @@ Traitors and the like can also be revived with the previous role mostly intact. to_chat(src, "Only administrators may use this command.") return holder.manage_free_slots() - feedback_add_details("admin_verb","Manage Job Slots") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Manage Job Slots") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_explosion(atom/O as obj|mob|turf in world) set category = "Special Verbs" @@ -560,7 +560,7 @@ Traitors and the like can also be revived with the previous role mostly intact. explosion(O, devastation, heavy, light, flash, null, null,flames) log_admin("[key_name(usr)] created an explosion ([devastation],[heavy],[light],[flames]) at ([O.x],[O.y],[O.z])") message_admins("[key_name_admin(usr)] created an explosion ([devastation],[heavy],[light],[flames]) at ([O.x],[O.y],[O.z])") - feedback_add_details("admin_verb","Explosion") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Explosion") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return else return @@ -583,7 +583,7 @@ Traitors and the like can also be revived with the previous role mostly intact. empulse(O, heavy, light) log_admin("[key_name(usr)] created an EM Pulse ([heavy],[light]) at ([O.x],[O.y],[O.z])") message_admins("[key_name_admin(usr)] created an EM PUlse ([heavy],[light]) at ([O.x],[O.y],[O.z])") - feedback_add_details("admin_verb","EM Pulse") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","EM Pulse") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return else @@ -614,7 +614,7 @@ Traitors and the like can also be revived with the previous role mostly intact. M.gib() else M.gib(1) - feedback_add_details("admin_verb","Gib") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Gib") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_gib_self() set name = "Gibself" @@ -624,7 +624,7 @@ Traitors and the like can also be revived with the previous role mostly intact. if(confirm == "Yes") log_admin("[key_name(usr)] used gibself.") message_admins("[key_name_admin(usr)] used gibself.") - feedback_add_details("admin_verb","Gib Self") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Gib Self") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! mob.gib(1, 1, 1) /client/proc/cmd_admin_check_contents(mob/living/M in GLOB.mob_list) @@ -634,7 +634,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/list/L = M.get_contents() for(var/t in L) to_chat(usr, "[t]") - feedback_add_details("admin_verb","Check Contents") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Check Contents") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggle_view_range() set category = "Special Verbs" @@ -649,7 +649,7 @@ Traitors and the like can also be revived with the previous role mostly intact. log_admin("[key_name(usr)] changed their view range to [view].") //message_admins("\blue [key_name_admin(usr)] changed their view range to [view].") //why? removed by order of XSI - feedback_add_details("admin_toggle","Change View Range|[view]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Change View Range|[view]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/admin_call_shuttle() @@ -668,7 +668,7 @@ Traitors and the like can also be revived with the previous role mostly intact. return SSshuttle.emergency.request() - feedback_add_details("admin_verb","Call Shuttle") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Call Shuttle") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] admin-called the emergency shuttle.") message_admins("[key_name_admin(usr)] admin-called the emergency shuttle.") return @@ -685,7 +685,7 @@ Traitors and the like can also be revived with the previous role mostly intact. return SSshuttle.emergency.cancel() - feedback_add_details("admin_verb","Cancel Shuttle") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Cancel Shuttle") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] admin-recalled the emergency shuttle.") message_admins("[key_name_admin(usr)] admin-recalled the emergency shuttle.") @@ -720,7 +720,7 @@ Traitors and the like can also be revived with the previous role mostly intact. to_chat(usr, "Remember: you can always disable the randomness by using the verb again, assuming the round hasn't started yet.") config.force_random_names = 1 - feedback_add_details("admin_verb","Make Everyone Random") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Make Everyone Random") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggle_random_events() @@ -735,7 +735,7 @@ Traitors and the like can also be revived with the previous role mostly intact. config.allow_random_events = 0 to_chat(usr, "Random events disabled") message_admins("Admin [key_name_admin(usr)] has disabled random events.") - feedback_add_details("admin_toggle","Toggle Random Events|[config.allow_random_events]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Random Events|[config.allow_random_events]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/admin_change_sec_level() @@ -753,7 +753,7 @@ Traitors and the like can also be revived with the previous role mostly intact. log_admin("[key_name(usr)] changed the security level to [level]") message_admins("[key_name_admin(usr)] changed the security level to [level]") - feedback_add_details("admin_verb","Set Security Level [capitalize(level)]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Set Security Level [capitalize(level)]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggle_nuke(obj/machinery/nuclearbomb/N in GLOB.nuke_list) set name = "Toggle Nuke" @@ -772,7 +772,7 @@ Traitors and the like can also be revived with the previous role mostly intact. log_admin("[key_name(usr)] [N.timing ? "activated" : "deactivated"] a nuke at ([N.x],[N.y],[N.z]).") message_admins("[ADMIN_LOOKUPFLW(usr)] [N.timing ? "activated" : "deactivated"] a nuke at [ADMIN_COORDJMP(N)].") - feedback_add_details("admin_toggle","Toggle Nuke|[N.timing]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Nuke|[N.timing]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits @@ -970,7 +970,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits to_chat(usr, "You toggled your admin antag HUD [adding_hud ? "ON" : "OFF"].") message_admins("[key_name_admin(usr)] toggled their admin antag HUD [adding_hud ? "ON" : "OFF"].") log_admin("[key_name(usr)] toggled their admin antag HUD [adding_hud ? "ON" : "OFF"].") - feedback_add_details("admin_toggle","Toggle Antag HUD|[adding_hud]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Antag HUD|[adding_hud]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/has_antag_hud() var/datum/atom_hud/A = GLOB.huds[ANTAG_HUD_TRAITOR] @@ -1002,7 +1002,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits message_admins("[key_name_admin(usr)] added a latent zombie infection to all humans.") log_admin("[key_name(usr)] added a latent zombie infection to all humans.") - feedback_add_details("admin_verb","Mass Zombie Infection") + SSblackbox.add_details("admin_verb","Mass Zombie Infection") /client/proc/mass_zombie_cure() set category = "Fun" @@ -1020,7 +1020,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits message_admins("[key_name_admin(usr)] cured all zombies.") log_admin("[key_name(usr)] cured all zombies.") - feedback_add_details("admin_verb","Mass Zombie Cure") + SSblackbox.add_details("admin_verb","Mass Zombie Cure") /client/proc/polymorph_all() set category = "Fun" @@ -1039,7 +1039,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits message_admins("[key_name_admin(usr)] started polymorphed all living mobs.") log_admin("[key_name(usr)] polymorphed all living mobs.") - feedback_add_details("admin_verb","Polymorph All") + SSblackbox.add_details("admin_verb","Polymorph All") for(var/mob/living/M in mobs) CHECK_TICK @@ -1080,7 +1080,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits message_admins("[key_name_admin(usr)] sent a tip of the round.") log_admin("[key_name(usr)] sent \"[input]\" as the Tip of the Round.") - feedback_add_details("admin_verb","Show Tip") + SSblackbox.add_details("admin_verb","Show Tip") #define ON_PURRBATION(H) (!(H.dna.features["tail_human"] == "None" && H.dna.features["ears"] == "None")) @@ -1157,7 +1157,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits if (world.visibility && !world.reachable) message_admins("WARNING: The server will not show up on the hub because byond is detecting that a filewall is blocking incoming connections.") - feedback_add_details("admin_toggle","Toggled Hub Visibility|[world.visibility]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggled Hub Visibility|[world.visibility]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/smite(mob/living/carbon/human/target as mob) set name = "Smite" diff --git a/code/modules/admin/verbs/reestablish_db_connection.dm b/code/modules/admin/verbs/reestablish_db_connection.dm index 3b134eaff03..133a39185e6 100644 --- a/code/modules/admin/verbs/reestablish_db_connection.dm +++ b/code/modules/admin/verbs/reestablish_db_connection.dm @@ -17,11 +17,11 @@ SSdbcore.Disconnect() log_admin("[key_name(usr)] has forced the database to disconnect") message_admins("[key_name_admin(usr)] has forced the database to disconnect!") - feedback_add_details("admin_verb","Force Reestablished Database Connection") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Force Reestablished Database Connection") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! log_admin("[key_name(usr)] is attempting to re-established the DB Connection") message_admins("[key_name_admin(usr)] is attempting to re-established the DB Connection") - feedback_add_details("admin_verb","Reestablished Database Connection") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Reestablished Database Connection") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! SSdbcore.failed_connections = 0 if(!SSdbcore.Connect()) diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index 4615629f1a9..8a434a6f81c 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -21,7 +21,7 @@ attach(A2,user) name = "[A.name]-[A2.name] assembly" update_icon() - feedback_add_details("assembly_made","[initial(A.name)]-[initial(A2.name)]") + SSblackbox.add_details("assembly_made","[initial(A.name)]-[initial(A2.name)]") /obj/item/device/assembly_holder/proc/attach(obj/item/device/assembly/A, mob/user) if(!A.remove_item_from_storage(src)) diff --git a/code/modules/cargo/exports.dm b/code/modules/cargo/exports.dm index dda86e52573..6f81d884e05 100644 --- a/code/modules/cargo/exports.dm +++ b/code/modules/cargo/exports.dm @@ -103,8 +103,8 @@ Credit dupes that require a lot of manual work shouldn't be removed, unless they var/amount = get_amount(O) total_cost += cost total_amount += amount - feedback_add_details("export_sold_amount","[O.type]|[amount]") - feedback_add_details("export_sold_cost","[O.type]|[cost]") + SSblackbox.add_details("export_sold_amount","[O.type]|[amount]") + SSblackbox.add_details("export_sold_cost","[O.type]|[cost]") // Total printout for the cargo console. // Called before the end of current export cycle. diff --git a/code/modules/client/preferences_toggles.dm b/code/modules/client/preferences_toggles.dm index a3231b8d902..22155a02039 100644 --- a/code/modules/client/preferences_toggles.dm +++ b/code/modules/client/preferences_toggles.dm @@ -6,7 +6,7 @@ prefs.chat_toggles ^= CHAT_GHOSTEARS to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTEARS) ? "see all speech in the world" : "only see speech from nearby mobs"].") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Ghost Ears|[prefs.chat_toggles & CHAT_GHOSTEARS]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Ghost Ears|[prefs.chat_toggles & CHAT_GHOSTEARS]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ghost_sight() set name = "Show/Hide GhostSight" @@ -15,7 +15,7 @@ prefs.chat_toggles ^= CHAT_GHOSTSIGHT to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTSIGHT) ? "see all emotes in the world" : "only see emotes from nearby mobs"].") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Ghost Sight|[prefs.chat_toggles & CHAT_GHOSTSIGHT]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Ghost Sight|[prefs.chat_toggles & CHAT_GHOSTSIGHT]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ghost_whispers() set name = "Show/Hide GhostWhispers" @@ -24,7 +24,7 @@ prefs.chat_toggles ^= CHAT_GHOSTWHISPER to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTWHISPER) ? "see all whispers in the world" : "only see whispers from nearby mobs"].") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Ghost Whispers|[prefs.chat_toggles & CHAT_GHOSTWHISPER]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Ghost Whispers|[prefs.chat_toggles & CHAT_GHOSTWHISPER]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ghost_radio() set name = "Show/Hide GhostRadio" @@ -33,7 +33,7 @@ prefs.chat_toggles ^= CHAT_GHOSTRADIO to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTRADIO) ? "see radio chatter" : "not see radio chatter"].") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Ghost Radio|[prefs.chat_toggles & CHAT_GHOSTRADIO]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //social experiment, increase the generation whenever you copypaste this shamelessly GENERATION 1 + SSblackbox.add_details("preferences_verb","Toggle Ghost Radio|[prefs.chat_toggles & CHAT_GHOSTRADIO]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //social experiment, increase the generation whenever you copypaste this shamelessly GENERATION 1 /client/verb/toggle_ghost_pda() set name = "Show/Hide GhostPDA" @@ -42,7 +42,7 @@ prefs.chat_toggles ^= CHAT_GHOSTPDA to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTPDA) ? "see all pda messages in the world" : "only see pda messages from nearby mobs"].") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Ghost PDA|[prefs.chat_toggles & CHAT_GHOSTPDA]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Ghost PDA|[prefs.chat_toggles & CHAT_GHOSTPDA]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //please be aware that the following two verbs have inverted stat output, so that "Toggle Deathrattle|1" still means you activated it /client/verb/toggle_deathrattle() @@ -52,7 +52,7 @@ prefs.toggles ^= DISABLE_DEATHRATTLE prefs.save_preferences() to_chat(usr, "You will [(prefs.toggles & DISABLE_DEATHRATTLE) ? "no longer" : "now"] get messages when a sentient mob dies.") - feedback_add_details("preferences_verb", "Toggle Deathrattle|[!(prefs.toggles & DISABLE_DEATHRATTLE)]") //If you are copy-pasting this, maybe you should spend some time reading the comments. + SSblackbox.add_details("preferences_verb", "Toggle Deathrattle|[!(prefs.toggles & DISABLE_DEATHRATTLE)]") //If you are copy-pasting this, maybe you should spend some time reading the comments. /client/verb/toggle_arrivalrattle() set name = "Toggle Arrivalrattle" @@ -61,7 +61,7 @@ prefs.toggles ^= DISABLE_ARRIVALRATTLE to_chat(usr, "You will [(prefs.toggles & DISABLE_ARRIVALRATTLE) ? "no longer" : "now"] get messages when someone joins the station.") prefs.save_preferences() - feedback_add_details("preferences_verb", "Toggle Arrivalrattle|[!(prefs.toggles & DISABLE_ARRIVALRATTLE)]") //If you are copy-pasting this, maybe you should rethink where your life went so wrong. + SSblackbox.add_details("preferences_verb", "Toggle Arrivalrattle|[!(prefs.toggles & DISABLE_ARRIVALRATTLE)]") //If you are copy-pasting this, maybe you should rethink where your life went so wrong. /client/verb/togglemidroundantag() set name = "Toggle Midround Antagonist" @@ -70,7 +70,7 @@ prefs.toggles ^= MIDROUND_ANTAG prefs.save_preferences() to_chat(src, "You will [(prefs.toggles & MIDROUND_ANTAG) ? "now" : "no longer"] be considered for midround antagonist positions.") - feedback_add_details("preferences_verb","Toggle Midround Antag|[prefs.toggles & MIDROUND_ANTAG]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Midround Antag|[prefs.toggles & MIDROUND_ANTAG]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggletitlemusic() set name = "Hear/Silence LobbyMusic" @@ -85,7 +85,7 @@ else to_chat(src, "You will no longer hear music in the game lobby.") mob.stop_sound_channel(CHANNEL_LOBBYMUSIC) - feedback_add_details("preferences_verb","Toggle Lobby Music|[prefs.toggles & SOUND_LOBBY]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Lobby Music|[prefs.toggles & SOUND_LOBBY]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/togglemidis() set name = "Hear/Silence Midis" @@ -98,14 +98,14 @@ else to_chat(src, "You will no longer hear sounds uploaded by admins") mob.stop_sound_channel(CHANNEL_ADMIN) - feedback_add_details("preferences_verb","Toggle Hearing Midis|[prefs.toggles & SOUND_MIDI]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Hearing Midis|[prefs.toggles & SOUND_MIDI]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/stop_client_sounds() set name = "Stop Sounds" set category = "Preferences" set desc = "Kills all currently playing sounds, use if admin taste in midis a shite" src << sound(null) - feedback_add_details("preferences_verb","Stop Self Sounds") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Stop Self Sounds") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/listen_ooc() set name = "Show/Hide OOC" @@ -114,7 +114,7 @@ prefs.chat_toggles ^= CHAT_OOC prefs.save_preferences() to_chat(src, "You will [(prefs.chat_toggles & CHAT_OOC) ? "now" : "no longer"] see messages on the OOC channel.") - feedback_add_details("preferences_verb","Toggle Seeing OOC|[prefs.chat_toggles & CHAT_OOC]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Seeing OOC|[prefs.chat_toggles & CHAT_OOC]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/Toggle_Soundscape() //All new ambience should be added here so it works with this verb until someone better at things comes up with a fix that isn't awful set name = "Hear/Silence Ambience" @@ -128,7 +128,7 @@ to_chat(src, "You will no longer hear ambient sounds.") src << sound(null, repeat = 0, wait = 0, volume = 0, channel = 1) src << sound(null, repeat = 0, wait = 0, volume = 0, channel = 2) - feedback_add_details("preferences_verb","Toggle Ambience|[prefs.toggles & SOUND_AMBIENCE]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Ambience|[prefs.toggles & SOUND_AMBIENCE]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! // This needs a toggle because you people are awful and spammed terrible music /client/verb/toggle_instruments() @@ -141,7 +141,7 @@ to_chat(src, "You will now hear people playing musical instruments.") else to_chat(src, "You will no longer hear musical instruments.") - feedback_add_details("preferences_verb","Toggle Instruments|[prefs.toggles & SOUND_INSTRUMENTS]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Instruments|[prefs.toggles & SOUND_INSTRUMENTS]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //Lots of people get headaches from the normal ship ambience, this is to prevent that /client/verb/toggle_ship_ambience() @@ -156,7 +156,7 @@ to_chat(src, "You will no longer hear ship ambience.") src << sound(null, repeat = 0, wait = 0, volume = 0, channel = 2) src.ambience_playing = 0 - feedback_add_details("preferences_verb", "Toggle Ship Ambience|[prefs.toggles & SOUND_SHIP_AMBIENCE]") //If you are copy-pasting this, I bet you read this comment expecting to see the same thing :^) + SSblackbox.add_details("preferences_verb", "Toggle Ship Ambience|[prefs.toggles & SOUND_SHIP_AMBIENCE]") //If you are copy-pasting this, I bet you read this comment expecting to see the same thing :^) GLOBAL_LIST_INIT(ghost_forms, list("ghost","ghostking","ghostian2","skeleghost","ghost_red","ghost_black", \ "ghost_blue","ghost_yellow","ghost_green","ghost_pink", \ @@ -244,7 +244,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.toggles ^= INTENT_STYLE to_chat(src, "[(prefs.toggles & INTENT_STYLE) ? "Clicking directly on intents selects them." : "Clicking on intents rotates selection clockwise."]") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Intent Selection|[prefs.toggles & INTENT_STYLE]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Intent Selection|[prefs.toggles & INTENT_STYLE]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/setup_character() set name = "Game Preferences" @@ -263,7 +263,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.save_preferences() if(isobserver(mob)) mob.hud_used.show_hud() - feedback_add_details("preferences_verb","Toggle Ghost HUD|[prefs.ghost_hud]") + SSblackbox.add_details("preferences_verb","Toggle Ghost HUD|[prefs.ghost_hud]") /client/verb/toggle_inquisition() // warning: unexpected inquisition set name = "Toggle Inquisitiveness" @@ -276,7 +276,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS to_chat(src, "You will now examine everything you click on.") else to_chat(src, "You will no longer examine things you click on.") - feedback_add_details("preferences_verb","Toggle Ghost Inquisitiveness|[prefs.inquisitive_ghost]") + SSblackbox.add_details("preferences_verb","Toggle Ghost Inquisitiveness|[prefs.inquisitive_ghost]") /client/verb/toggle_announcement_sound() set name = "Hear/Silence Announcements" @@ -285,7 +285,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.toggles ^= SOUND_ANNOUNCEMENTS to_chat(src, "You will now [(prefs.toggles & SOUND_ANNOUNCEMENTS) ? "hear announcement sounds" : "no longer hear announcements"].") prefs.save_preferences() - feedback_add_details("preferences_verb","Toggle Announcement Sound|[prefs.toggles & SOUND_ANNOUNCEMENTS]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("preferences_verb","Toggle Announcement Sound|[prefs.toggles & SOUND_ANNOUNCEMENTS]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //Admin Preferences /client/proc/toggleadminhelpsound() @@ -297,7 +297,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.toggles ^= SOUND_ADMINHELP prefs.save_preferences() to_chat(usr, "You will [(prefs.toggles & SOUND_ADMINHELP) ? "now" : "no longer"] hear a sound when adminhelps arrive.") - feedback_add_details("admin_toggle","Toggle Adminhelp Sound|[prefs.toggles & SOUND_ADMINHELP]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Adminhelp Sound|[prefs.toggles & SOUND_ADMINHELP]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggleannouncelogin() set name = "Do/Don't Announce Login" @@ -308,7 +308,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.toggles ^= ANNOUNCE_LOGIN prefs.save_preferences() to_chat(usr, "You will [(prefs.toggles & ANNOUNCE_LOGIN) ? "now" : "no longer"] have an announcement to other admins when you login.") - feedback_add_details("admin_toggle","Toggle Login Announcement|[prefs.toggles & ANNOUNCE_LOGIN]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Login Announcement|[prefs.toggles & ANNOUNCE_LOGIN]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggle_hear_radio() set name = "Show/Hide Radio Chatter" @@ -318,7 +318,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.chat_toggles ^= CHAT_RADIO prefs.save_preferences() to_chat(usr, "You will [(prefs.chat_toggles & CHAT_RADIO) ? "now" : "no longer"] see radio chatter from nearby radios or speakers") - feedback_add_details("admin_toggle","Toggle Radio Chatter|[prefs.chat_toggles & CHAT_RADIO]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Radio Chatter|[prefs.chat_toggles & CHAT_RADIO]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/deadchat() set name = "Show/Hide Deadchat" @@ -327,7 +327,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.chat_toggles ^= CHAT_DEAD prefs.save_preferences() to_chat(src, "You will [(prefs.chat_toggles & CHAT_DEAD) ? "now" : "no longer"] see deadchat.") - feedback_add_details("admin_toggle","Toggle Deadchat Visibility|[prefs.chat_toggles & CHAT_DEAD]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Deadchat Visibility|[prefs.chat_toggles & CHAT_DEAD]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggleprayers() set name = "Show/Hide Prayers" @@ -336,7 +336,7 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.chat_toggles ^= CHAT_PRAYER prefs.save_preferences() to_chat(src, "You will [(prefs.chat_toggles & CHAT_PRAYER) ? "now" : "no longer"] see prayerchat.") - feedback_add_details("admin_toggle","Toggle Prayer Visibility|[prefs.chat_toggles & CHAT_PRAYER]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_toggle","Toggle Prayer Visibility|[prefs.chat_toggles & CHAT_PRAYER]") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggleprayersounds() set name = "Hear/Silence Prayer Sounds" @@ -348,4 +348,4 @@ GLOBAL_LIST_INIT(ghost_orbits, list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS to_chat(src, "You will now hear prayer sounds.") else to_chat(src, "You will no longer prayer sounds.") - feedback_add_details("admin_toggle", "Toggle Prayer Sounds|[prefs.toggles & SOUND_PRAYERS]") + SSblackbox.add_details("admin_toggle", "Toggle Prayer Sounds|[prefs.toggles & SOUND_PRAYERS]") diff --git a/code/modules/client/verbs/ooc.dm b/code/modules/client/verbs/ooc.dm index 79b21dccee2..97e05ee221d 100644 --- a/code/modules/client/verbs/ooc.dm +++ b/code/modules/client/verbs/ooc.dm @@ -108,7 +108,7 @@ GLOBAL_VAR_INIT(normal_ooc_colour, OOC_COLOR) if(new_ooccolor) prefs.ooccolor = sanitize_ooccolor(new_ooccolor) prefs.save_preferences() - feedback_add_details("admin_verb","Set OOC Color") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.add_details("admin_verb","Set OOC Color") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return /client/verb/resetcolorooc() diff --git a/code/modules/crafting/craft.dm b/code/modules/crafting/craft.dm index 77d1e1d6d9c..a14d301a31e 100644 --- a/code/modules/crafting/craft.dm +++ b/code/modules/crafting/craft.dm @@ -124,7 +124,7 @@ var/atom/movable/I = new R.result (get_turf(user.loc)) I.CheckParts(parts, R) if(send_feedback) - feedback_add_details("object_crafted","[I.type]") + SSblackbox.add_details("object_crafted","[I.type]") return 0 return "." return ", missing tool." diff --git a/code/modules/events/_event.dm b/code/modules/events/_event.dm index 4046e7dcb80..4eef1c06a31 100644 --- a/code/modules/events/_event.dm +++ b/code/modules/events/_event.dm @@ -78,13 +78,13 @@ triggering = FALSE message_admins("[key_name_admin(usr)] cancelled event [name].") log_admin_private("[key_name(usr)] cancelled event [name].") - feedback_add_details("event_admin_cancelled","[typepath]") + SSblackbox.add_details("event_admin_cancelled","[typepath]") /datum/round_event_control/proc/runEvent(random) var/datum/round_event/E = new typepath() E.current_players = get_active_player_count(alive_check = 1, afk_check = 1, human_check = 1) E.control = src - feedback_add_details("event_ran","[E]") + SSblackbox.add_details("event_ran","[E]") occurrences++ testing("[time2text(world.time, "hh:mm:ss")] [E.type]") diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index d50c80567a5..148541922ff 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -170,7 +170,7 @@ if(istype(A, B)) continue contents_loop qdel(A) - feedback_add_details("food_made","[type]") + SSblackbox.add_details("food_made","[type]") if(bonus_reagents && bonus_reagents.len) for(var/r_id in bonus_reagents) @@ -262,7 +262,7 @@ initialize_cooked_food(S, M.efficiency) else initialize_cooked_food(S, 1) - feedback_add_details("food_made","[type]") + SSblackbox.add_details("food_made","[type]") else new /obj/item/weapon/reagent_containers/food/snacks/badrecipe(src) if(M && M.dirty < 100) diff --git a/code/modules/food_and_drinks/kitchen_machinery/processor.dm b/code/modules/food_and_drinks/kitchen_machinery/processor.dm index 6274716f0d9..4a2f0948d9a 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/processor.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/processor.dm @@ -142,7 +142,7 @@ return for(var/i in 1 to (C+processor.rating_amount-1)) new S.coretype(loc) - feedback_add_details("slime_core_harvested","[replacetext(S.colour," ","_")]") + SSblackbox.add_details("slime_core_harvested","[replacetext(S.colour," ","_")]") ..() /datum/food_processor_process/mob/slime/input = /mob/living/simple_animal/slime diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm index 7c2d58d8a80..4b83485fa55 100644 --- a/code/modules/hydroponics/seeds.dm +++ b/code/modules/hydroponics/seeds.dm @@ -150,7 +150,7 @@ t_amount++ product_name = t_prod.name if(getYield() >= 1) - feedback_add_details("food_harvested","[product_name]|[getYield()]") + SSblackbox.add_details("food_harvested","[product_name]|[getYield()]") parent.update_tray() return result diff --git a/code/modules/jobs/job_types/civilian_chaplain.dm b/code/modules/jobs/job_types/civilian_chaplain.dm index f796da92005..0633e6486d3 100644 --- a/code/modules/jobs/job_types/civilian_chaplain.dm +++ b/code/modules/jobs/job_types/civilian_chaplain.dm @@ -82,8 +82,8 @@ Chaplain H.equip_to_slot_or_del(B, slot_in_backpack) - feedback_set_details("religion_name","[new_religion]") - feedback_set_details("religion_deity","[new_deity]") + SSblackbox.set_details("religion_name","[new_religion]") + SSblackbox.set_details("religion_deity","[new_deity]") /datum/outfit/job/chaplain name = "Chaplain" diff --git a/code/modules/mining/aux_base.dm b/code/modules/mining/aux_base.dm index b98a3cfd98f..8c2d1ca2818 100644 --- a/code/modules/mining/aux_base.dm +++ b/code/modules/mining/aux_base.dm @@ -131,7 +131,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also /obj/machinery/computer/auxillary_base/onShuttleMove(turf/T1, rotation) ..() if(z == ZLEVEL_MINING) //Avoids double logging and landing on other Z-levels due to badminnery - feedback_add_details("colonies_dropped", "[x]|[y]|[z]") //Number of times a base has been dropped! + SSblackbox.add_details("colonies_dropped", "[x]|[y]|[z]") //Number of times a base has been dropped! /obj/machinery/computer/auxillary_base/proc/set_mining_mode() if(z == ZLEVEL_MINING) //The console switches to controlling the mining shuttle once landed. diff --git a/code/modules/mining/equipment.dm b/code/modules/mining/equipment.dm index 36c30531431..dd8766bdc9a 100644 --- a/code/modules/mining/equipment.dm +++ b/code/modules/mining/equipment.dm @@ -68,7 +68,7 @@ /obj/item/device/wormhole_jaunter/attack_self(mob/user) user.visible_message("[user.name] activates the [src.name]!") - feedback_add_details("jaunter", "User") // user activated + SSblackbox.add_details("jaunter", "User") // user activated activate(user) /obj/item/device/wormhole_jaunter/proc/turf_check(mob/user) @@ -124,13 +124,13 @@ if(triggered) usr.visible_message("The [src] overloads and activates!") - feedback_add_details("jaunter","EMP") // EMP accidental activation + SSblackbox.add_details("jaunter","EMP") // EMP accidental activation activate(usr) /obj/item/device/wormhole_jaunter/proc/chasm_react(mob/user) if(user.get_item_by_slot(slot_belt) == src) to_chat(user, "Your [src] activates, saving you from the chasm!") - feedback_add_details("jaunter","Chasm") // chasm automatic activation + SSblackbox.add_details("jaunter","Chasm") // chasm automatic activation activate(user) else to_chat(user, "The [src] is not attached to your belt, preventing it from saving you from the chasm. RIP.") @@ -320,7 +320,7 @@ H.attack_same = 0 loaded = 0 user.visible_message("[user] injects [M] with [src], reviving it.") - feedback_add_details("lazarus_injector", "[M.type]") + SSblackbox.add_details("lazarus_injector", "[M.type]") playsound(src,'sound/effects/refill.ogg',50,1) icon_state = "lazarus_empty" return diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 95f8d2d9bdc..6b1179a5851 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -86,7 +86,7 @@ user.sight |= SEE_MOBS icon_state = "lantern" wisp.orbit(user, 20) - feedback_add_details("wisp_lantern","Freed") + SSblackbox.add_details("wisp_lantern","Freed") else to_chat(user, "You return the wisp to the lantern.") @@ -101,7 +101,7 @@ wisp.stop_orbit() wisp.loc = src icon_state = "lantern-blue" - feedback_add_details("wisp_lantern","Returned") + SSblackbox.add_details("wisp_lantern","Returned") /obj/item/device/wisp_lantern/Initialize() ..() @@ -140,7 +140,7 @@ return new /obj/effect/particle_effect/smoke(user.loc) user.forceMove(get_turf(linked)) - feedback_add_details("warp_cube","[src.type]") + SSblackbox.add_details("warp_cube","[src.type]") new /obj/effect/particle_effect/smoke(user.loc) /obj/item/device/warp_cube/red @@ -228,7 +228,7 @@ /obj/item/device/immortality_talisman/attack_self(mob/user) if(cooldown < world.time) - feedback_add_details("immortality_talisman","Activated") // usage + SSblackbox.add_details("immortality_talisman","Activated") // usage cooldown = world.time + 600 user.visible_message("[user] vanishes from reality, leaving a a hole in [user.p_their()] place!") var/obj/effect/immortality_talisman/Z = new(get_turf(src.loc)) diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index dc6bc87d189..0d651518b75 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -136,7 +136,7 @@ else inserted_id.mining_points -= prize.cost new prize.equipment_path(src.loc) - feedback_add_details("mining_equipment_bought", + SSblackbox.add_details("mining_equipment_bought", "[src.type]|[prize.equipment_path]") // Add src.type to keep track of free golem purchases // seperately. @@ -189,7 +189,7 @@ if("Mining Conscription Kit") new /obj/item/weapon/storage/backpack/dufflebag/mining_conscript(loc) - feedback_add_details("mining_voucher_redeemed", selection) + SSblackbox.add_details("mining_voucher_redeemed", selection) qdel(voucher) /obj/machinery/mineral/equipment_vendor/ex_act(severity, target) diff --git a/code/modules/mob/living/brain/MMI.dm b/code/modules/mob/living/brain/MMI.dm index 397824d8301..62470837479 100644 --- a/code/modules/mob/living/brain/MMI.dm +++ b/code/modules/mob/living/brain/MMI.dm @@ -73,7 +73,7 @@ name = "Man-Machine Interface: [brainmob.real_name]" update_icon() - feedback_inc("cyborg_mmis_filled",1) + SSblackbox.inc("cyborg_mmis_filled",1) else if(brainmob) O.attack(brainmob, user) //Oh noooeeeee diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 68b48c81d73..5df1d9296ae 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -33,7 +33,7 @@ dna.species.spec_death(gibbed, src) if(SSticker && SSticker.mode) - sql_report_death(src) + SSblackbox.ReportDeath(src) if(mind && mind.devilinfo) INVOKE_ASYNC(mind.devilinfo, /datum/devilinfo.proc/beginResurrectionCheck, src) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 3b5a14441d5..3a350bb31b6 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -177,8 +177,8 @@ var/obj/item/bodypart/affecting = get_bodypart(ran_zone(user.zone_selected)) //what we're actually ending up trying to hit. var/target_area = parse_zone(check_zone(user.zone_selected)) //our intended target - feedback_add_details("item_used_for_combat","[I.type]|[I.force]") - feedback_add_details("zone_targeted","[target_area]") + SSblackbox.add_details("item_used_for_combat","[I.type]|[I.force]") + SSblackbox.add_details("zone_targeted","[target_area]") // the attacked_by code varies among species return dna.species.spec_attacked_by(I, user, affecting, a_intent, src) diff --git a/code/modules/mob/living/silicon/robot/death.dm b/code/modules/mob/living/silicon/robot/death.dm index 3d88433dec2..4df0c54d1a1 100644 --- a/code/modules/mob/living/silicon/robot/death.dm +++ b/code/modules/mob/living/silicon/robot/death.dm @@ -32,4 +32,4 @@ unbuckle_all_mobs(TRUE) - sql_report_death(src) + SSblackbox.ReportDeath(src) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 257bf11163c..1891e2a5520 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -222,7 +222,7 @@ if(R.hud_used) R.hud_used.update_robot_modules_display() if(feedback_key && !did_feedback) - feedback_inc(feedback_key, 1) + SSblackbox.inc(feedback_key, 1) /obj/item/weapon/robot_module/standard name = "Standard" diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm index 8af5c76f5be..0a0ff6bdd3a 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -53,7 +53,7 @@ return else if(!admin_spawned) - feedback_set_details("megafauna_kills","[initial(name)]") + SSblackbox.set_details("megafauna_kills","[initial(name)]") if(!elimination) //used so the achievment only occurs for the last legion to die. grant_achievement(medal_type,score_type) ..() diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index ca0ef6a7ea7..a68ccc48840 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -48,7 +48,7 @@ ..() /mob/living/simple_animal/hostile/asteroid/death(gibbed) - feedback_add_details("mobs_killed_mining","[src.type]") + SSblackbox.add_details("mobs_killed_mining","[src.type]") ..(gibbed) /mob/living/simple_animal/hostile/asteroid/basilisk @@ -266,15 +266,15 @@ update_icon() if(implanted) - feedback_add_details("hivelord_core", "[type]|implanted") + SSblackbox.add_details("hivelord_core", "[type]|implanted") else - feedback_add_details("hivelord_core", "[type]|stabilizer") + SSblackbox.add_details("hivelord_core", "[type]|stabilizer") /obj/item/organ/hivelord_core/proc/go_inert() inert = TRUE desc = "The remains of a hivelord that have become useless, having been left alone too long after being harvested." - feedback_add_details("hivelord_core", "[src.type]|inert") + SSblackbox.add_details("hivelord_core", "[src.type]|inert") update_icon() /obj/item/organ/hivelord_core/ui_action_click() @@ -298,10 +298,10 @@ return if(H != user) H.visible_message("[user] forces [H] to apply [src]... [H.p_they()] quickly regenerate all injuries!") - feedback_add_details("hivelord_core","[src.type]|used|other") + SSblackbox.add_details("hivelord_core","[src.type]|used|other") else to_chat(user, "You start to smear [src] on yourself. It feels and smells disgusting, but you feel amazingly refreshed in mere moments.") - feedback_add_details("hivelord_core","[src.type]|used|self") + SSblackbox.add_details("hivelord_core","[src.type]|used|self") H.revive(full_heal = 1) qdel(src) ..() diff --git a/code/modules/mob/living/simple_animal/slime/powers.dm b/code/modules/mob/living/simple_animal/slime/powers.dm index aec971fb37f..dab6b717a41 100644 --- a/code/modules/mob/living/simple_animal/slime/powers.dm +++ b/code/modules/mob/living/simple_animal/slime/powers.dm @@ -166,7 +166,7 @@ M.Friends = Friends.Copy() babies += M M.mutation_chance = Clamp(mutation_chance+(rand(5,-5)),0,100) - feedback_add_details("slime_babies_born","slimebirth_[replacetext(M.colour," ","_")]") + SSblackbox.add_details("slime_babies_born","slimebirth_[replacetext(M.colour," ","_")]") var/mob/living/simple_animal/slime/new_slime = pick(babies) new_slime.a_intent = INTENT_HARM diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 985fceec23f..350eb534e65 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -69,7 +69,7 @@ return 0 charge = (charge - amount) if(!istype(loc, /obj/machinery/power/apc)) - feedback_add_details("cell_used","[src.type]") + SSblackbox.add_details("cell_used","[src.type]") return 1 // recharge the cell diff --git a/code/modules/power/singularity/generator.dm b/code/modules/power/singularity/generator.dm index bc3d6f86691..9e6f2fdb967 100644 --- a/code/modules/power/singularity/generator.dm +++ b/code/modules/power/singularity/generator.dm @@ -32,7 +32,7 @@ if(energy > 0) if(energy >= 200) var/turf/T = get_turf(src) - feedback_add_details("engine_started","[src.type]") + SSblackbox.add_details("engine_started","[src.type]") var/obj/singularity/S = new creation_type(T, 50) transfer_fingerprints_to(S) qdel(src) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index f69d4cc23f0..2dffe0a567e 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -265,7 +265,7 @@ if(user) user.update_inv_hands() - feedback_add_details("gun_fired","[src.type]") + SSblackbox.add_details("gun_fired","[src.type]") return 1 /obj/item/weapon/gun/attack(mob/M as mob, mob/user) diff --git a/code/modules/projectiles/guns/medbeam.dm b/code/modules/projectiles/guns/medbeam.dm index da4346109a3..32646ee1e8f 100644 --- a/code/modules/projectiles/guns/medbeam.dm +++ b/code/modules/projectiles/guns/medbeam.dm @@ -55,7 +55,7 @@ current_beam = new(user,current_target,time=6000,beam_icon_state="medbeam",btype=/obj/effect/ebeam/medical) INVOKE_ASYNC(current_beam, /datum/beam.proc/Start) - feedback_add_details("gun_fired","[src.type]") + SSblackbox.add_details("gun_fired","[src.type]") /obj/item/weapon/gun/medbeam/process() diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index dbbb0b80b98..2c8ef5e065f 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -396,7 +396,7 @@ remove_reagent(B, (multiplier * cached_required_reagents[B]), safety = 1) for(var/P in C.results) - feedback_add_details("chemical_reaction", "[P]|[cached_results[P]*multiplier]") + SSblackbox.add_details("chemical_reaction", "[P]|[cached_results[P]*multiplier]") multiplier = max(multiplier, 1) //this shouldnt happen ... add_reagent(P, cached_results[P]*multiplier, null, chem_temp) diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index 52205b24973..a1c4a74795f 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -3,7 +3,7 @@ var/deletes_extract = TRUE /datum/chemical_reaction/slime/on_reaction(datum/reagents/holder) - feedback_add_details("slime_cores_used","[type]") + SSblackbox.add_details("slime_cores_used","[type]") if(deletes_extract) delete_extract(holder) diff --git a/code/modules/recycling/disposal-unit.dm b/code/modules/recycling/disposal-unit.dm index 5013d9d8799..296978c9018 100644 --- a/code/modules/recycling/disposal-unit.dm +++ b/code/modules/recycling/disposal-unit.dm @@ -391,7 +391,7 @@ if(contents.len) if(full_pressure) spawn(0) - feedback_inc("disposal_auto_flush",1) + SSblackbox.inc("disposal_auto_flush",1) flush() flush_count = 0 diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index f2bdd738c46..b77cee861cc 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -309,13 +309,13 @@ won't update every console in existence) but it's more of a hassle to do. Also, for(var/T in temp_tech) var/datum/tech/KT = files.known_tech[T] //For stat logging of high levels if(files.IsTechHigher(T, temp_tech[T]) && KT.level >= 5) //For stat logging of high levels - feedback_add_details("high_research_level","[KT][KT.level + 1]") //+1 to show the level which we're about to get + SSblackbox.add_details("high_research_level","[KT][KT.level + 1]") //+1 to show the level which we're about to get files.UpdateTech(T, temp_tech[T]) if(linked_lathe) //Also sends salvaged materials to a linked protolathe, if any. for(var/material in linked_destroy.loaded_item.materials) linked_lathe.materials.insert_amount(min((linked_lathe.materials.max_amount - linked_lathe.materials.total_amount), (linked_destroy.loaded_item.materials[material]*(linked_destroy.decon_mod/10))), material) - feedback_add_details("item_deconstructed","[linked_destroy.loaded_item.type]") + SSblackbox.add_details("item_deconstructed","[linked_destroy.loaded_item.type]") linked_destroy.loaded_item = null for(var/obj/I in linked_destroy.contents) for(var/mob/M in I.contents) @@ -452,7 +452,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, new_item.materials = efficient_mats.Copy() new_item.loc = linked_lathe.loc if(!already_logged) - feedback_add_details("item_printed","[new_item.type]|[amount]") + SSblackbox.add_details("item_printed","[new_item.type]|[amount]") already_logged = 1 screen = old_screen linked_lathe.busy = 0 @@ -519,7 +519,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/obj/item/new_item = new P(src) new_item.loc = linked_imprinter.loc new_item.materials = efficient_mats.Copy() - feedback_add_details("circuit_printed","[new_item.type]") + SSblackbox.add_details("circuit_printed","[new_item.type]") screen = old_screen linked_imprinter.busy = 0 else diff --git a/code/modules/security_levels/keycard_authentication.dm b/code/modules/security_levels/keycard_authentication.dm index e7c115e1004..a7d97ec63a3 100644 --- a/code/modules/security_levels/keycard_authentication.dm +++ b/code/modules/security_levels/keycard_authentication.dm @@ -95,10 +95,10 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new) switch(event) if("Red Alert") set_security_level(SEC_LEVEL_RED) - feedback_inc("alert_keycard_auth_red",1) + SSblackbox.inc("alert_keycard_auth_red",1) if("Emergency Maintenance Access") make_maint_all_access() - feedback_inc("alert_keycard_auth_maint",1) + SSblackbox.inc("alert_keycard_auth_maint",1) GLOBAL_VAR_INIT(emergency_access, FALSE) diff --git a/code/modules/shuttle/arrivals.dm b/code/modules/shuttle/arrivals.dm index ccb8f6b0914..852a7bc2fca 100644 --- a/code/modules/shuttle/arrivals.dm +++ b/code/modules/shuttle/arrivals.dm @@ -187,5 +187,5 @@ /obj/docking_port/mobile/arrivals/vv_edit_var(var_name, var_value) switch(var_name) if("perma_docked") - feedback_add_details("admin_secrets_fun_used","ShA[var_value ? "s" : "g"]") + SSblackbox.add_details("admin_secrets_fun_used","ShA[var_value ? "s" : "g"]") return ..() diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 553210a5f72..f13e29273ec 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -290,7 +290,7 @@ setTimer(SSshuttle.emergencyDockTime) send2irc("Server", "The Emergency Shuttle has docked with the station.") priority_announce("The Emergency Shuttle has docked with the station. You have [timeLeft(600)] minutes to board the Emergency Shuttle.", null, 'sound/AI/shuttledock.ogg', "Priority") - feedback_add_details("emergency_shuttle", src.name) + SSblackbox.add_details("emergency_shuttle", src.name) // Gangs only have one attempt left if the shuttle has // docked with the station to prevent suffering from diff --git a/code/modules/shuttle/manipulator.dm b/code/modules/shuttle/manipulator.dm index 594a6855da0..d9d4eb7a712 100644 --- a/code/modules/shuttle/manipulator.dm +++ b/code/modules/shuttle/manipulator.dm @@ -155,7 +155,7 @@ message_admins("[key_name_admin(usr)] fast travelled \ [M]") log_admin("[key_name(usr)] fast travelled [M]") - feedback_add_details("shuttle_fasttravel", M.name) + SSblackbox.add_details("shuttle_fasttravel", M.name) break if("preview") @@ -182,7 +182,7 @@ with the shuttle manipulator.") log_admin("[key_name(usr)] loaded [mdp] with the \ shuttle manipulator.") - feedback_add_details("shuttle_manipulator", mdp.name) + SSblackbox.add_details("shuttle_manipulator", mdp.name) update_icon() diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index f214d018b40..eda3c3e6c62 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -583,9 +583,9 @@ "You feel an immense \ crushing pressure as the space around you ripples.") if(M.key || M.get_ghost(TRUE)) - feedback_add_details("shuttle_gib", "[type]") + SSblackbox.add_details("shuttle_gib", "[type]") else - feedback_add_details("shuttle_gib_unintelligent", "[type]") + SSblackbox.add_details("shuttle_gib_unintelligent", "[type]") M.gib() else //non-living mobs shouldn't be affected by shuttles, which is why this is an else diff --git a/code/modules/shuttle/supply.dm b/code/modules/shuttle/supply.dm index 1e3b9906beb..82d5db8b209 100644 --- a/code/modules/shuttle/supply.dm +++ b/code/modules/shuttle/supply.dm @@ -90,7 +90,7 @@ GLOBAL_LIST_INIT(blacklisted_cargo_types, typecacheof(list( SSshuttle.orderhistory += SO SO.generate(pick_n_take(empty_turfs)) - feedback_add_details("cargo_imports", + SSblackbox.add_details("cargo_imports", "[SO.pack.type]|[SO.pack.name]|[SO.pack.cost]") investigate_log("Order #[SO.id] ([SO.pack.name], placed by [key_name(SO.orderer_ckey)]) has shipped.", "cargo") if(SO.pack.dangerous) diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index d1f56978cb8..03beacf27b3 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -54,7 +54,7 @@ return new step_type /datum/surgery/proc/complete() - feedback_add_details("surgeries_completed", "[type]") + SSblackbox.add_details("surgeries_completed", "[type]") qdel(src) diff --git a/code/modules/uplink/uplink_item.dm b/code/modules/uplink/uplink_item.dm index 9ed0565ee77..62d0a032d95 100644 --- a/code/modules/uplink/uplink_item.dm +++ b/code/modules/uplink/uplink_item.dm @@ -88,7 +88,7 @@ GLOBAL_LIST_EMPTY(uplink_items) // Global list so we only initialize this once. /datum/uplink_item/proc/spawn_item(turf/loc, obj/item/device/uplink/U) if(item) - feedback_add_details("traitor_uplink_items_bought", "[name]|[cost]") + SSblackbox.add_details("traitor_uplink_items_bought", "[name]|[cost]") return new item(loc) /datum/uplink_item/proc/buy(mob/user, obj/item/device/uplink/U) @@ -1158,7 +1158,7 @@ GLOBAL_LIST_EMPTY(uplink_items) // Global list so we only initialize this once. /datum/uplink_item/cyber_implants/spawn_item(turf/loc, obj/item/device/uplink/U) if(item) if(istype(item, /obj/item/organ)) - feedback_add_details("traitor_uplink_items_bought", "[item]|[cost]") + SSblackbox.add_details("traitor_uplink_items_bought", "[item]|[cost]") return new /obj/item/weapon/storage/box/cyber_implants(loc, item) else return ..() @@ -1326,7 +1326,7 @@ GLOBAL_LIST_EMPTY(uplink_items) // Global list so we only initialize this once. new I.item(C) U.purchase_log += "\icon[I.item]" - feedback_add_details("traitor_uplink_items_bought", "[name]|[cost]") + SSblackbox.add_details("traitor_uplink_items_bought", "[name]|[cost]") return C /datum/uplink_item/badass/random @@ -1352,6 +1352,6 @@ GLOBAL_LIST_EMPTY(uplink_items) // Global list so we only initialize this once. var/datum/uplink_item/I = pick(possible_items) U.telecrystals -= I.cost U.spent_telecrystals += I.cost - feedback_add_details("traitor_uplink_items_bought","[name]|[I.cost]") - feedback_add_details("traitor_random_uplink_items_gotten","[I.name]") + SSblackbox.add_details("traitor_uplink_items_bought","[name]|[I.cost]") + SSblackbox.add_details("traitor_random_uplink_items_gotten","[I.name]") return new I.item(loc) diff --git a/code/world.dm b/code/world.dm index 75470585e43..94ae1ce165a 100644 --- a/code/world.dm +++ b/code/world.dm @@ -208,11 +208,9 @@ #undef WORLD_REBOOT /world/proc/OnReboot(reason, feedback_c, feedback_r, round_end_sound_sent) - feedback_set_details("[feedback_c]","[feedback_r]") + SSblackbox.set_details("[feedback_c]","[feedback_r]") log_game("Rebooting World. [reason]") - feedback_set("ahelp_unresolved", GLOB.ahelp_tickets.active_tickets.len) - if(GLOB.blackbox) - GLOB.blackbox.save_all_data_to_sql() + SSblackbox.set_val("ahelp_unresolved", GLOB.ahelp_tickets.active_tickets.len) Master.Shutdown() //run SS shutdowns RoundEndAnimation(round_end_sound_sent) kick_clients_in_lobby("The round came to an end with you in the lobby.", 1) //second parameter ensures only afk clients are kicked diff --git a/tgstation.dme b/tgstation.dme index 6785056c1ac..4336e73df60 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -160,6 +160,7 @@ #include "code\controllers\subsystem\assets.dm" #include "code\controllers\subsystem\atoms.dm" #include "code\controllers\subsystem\augury.dm" +#include "code\controllers\subsystem\blackbox.dm" #include "code\controllers\subsystem\communications.dm" #include "code\controllers\subsystem\dbcore.dm" #include "code\controllers\subsystem\disease.dm" @@ -180,7 +181,6 @@ #include "code\controllers\subsystem\pai.dm" #include "code\controllers\subsystem\parallax.dm" #include "code\controllers\subsystem\persistence.dm" -#include "code\controllers\subsystem\ping.dm" #include "code\controllers\subsystem\radio.dm" #include "code\controllers\subsystem\religion.dm" #include "code\controllers\subsystem\server_maint.dm" @@ -2088,7 +2088,6 @@ #include "code\modules\VR\vr_sleeper.dm" #include "code\modules\zombie\items.dm" #include "code\modules\zombie\organs.dm" -#include "code\orphaned_procs\statistics.dm" #include "interface\interface.dm" #include "interface\stylesheet.dm" #include "interface\skin.dmf"