Files
fulpstation/code/_globalvars/logging.dm
Nick 38091b4914 April TGU: Virologist is gone (#1200)
* Initial merge

* Map files

* dme mon ami

* Cult span renames

* updatepaths

* AltClick renamed to click_alt

* beefman hair color stuff

* bye bye beefman viro

* get_all_gear

* Updated mentor refresh verb

* bloodsucker rack atom_deconstruct

* removed LateInitialize from nanites machines

* brain trauama now calls parent on_lose

* readme

* greyscale fulp edit

* arrival sound fulp edit

* tgui routes fulp edit

* build.js fulp edit

* fulpui-patches

* Missed a couple of shuttles

* tgui files

* Map updates

* tgui tweaks and screenshots

* fixed typo

* halloween beacon texture

* Vault piggy banks

* beacon icon fr

* Selene cargo chat console

* selene labour shuttle

* Photobooths!

* Moved photobooth button on selene

* Theia updates

* Reset maps.txt

* Order consoles

* Ports TG's #82906, fixes plasma cutters

* Theia vault piggy bank

* CLICK_ACTION_SUCCESS for coffin alt clicking
2024-05-10 16:24:54 +02:00

83 lines
2.7 KiB
Plaintext

GLOBAL_LIST_EMPTY(active_turfs_startlist)
GLOBAL_VAR(round_id)
GLOBAL_PROTECT(round_id)
/// The directory in which ALL log files should be stored
GLOBAL_VAR(log_directory)
GLOBAL_PROTECT(log_directory)
#define DECLARE_LOG_NAMED(log_var_name, log_file_name, start)\
GLOBAL_VAR(##log_var_name);\
GLOBAL_PROTECT(##log_var_name);\
/world/_initialize_log_files(temp_log_override = null){\
..();\
GLOB.##log_var_name = temp_log_override || "[GLOB.log_directory]/[##log_file_name].log";\
if(!temp_log_override && ##start){\
start_log(GLOB.##log_var_name);\
}\
}
#define DECLARE_LOG(log_name, start) DECLARE_LOG_NAMED(##log_name, "[copytext(#log_name, 1, length(#log_name) - 3)]", start)
#define START_LOG TRUE
#define DONT_START_LOG FALSE
/// Populated by log declaration macros to set log file names and start messages
/world/proc/_initialize_log_files(temp_log_override = null)
// Needs to be here to avoid compiler warnings
SHOULD_CALL_PARENT(TRUE)
return
// All individual log files.
// These should be used where the log category cannot easily be a json log file.
DECLARE_LOG(config_error_log, DONT_START_LOG)
DECLARE_LOG(perf_log, DONT_START_LOG) // Declared here but name is set in time_track subsystem
#ifdef REFERENCE_TRACKING_LOG_APART
DECLARE_LOG_NAMED(harddel_log, "harddels", START_LOG)
#endif
#if defined(UNIT_TESTS) || defined(SPACEMAN_DMM)
DECLARE_LOG_NAMED(test_log, "tests", START_LOG)
#endif
/// Picture logging
GLOBAL_VAR(picture_log_directory)
GLOBAL_PROTECT(picture_log_directory)
GLOBAL_VAR_INIT(picture_logging_id, 1)
GLOBAL_PROTECT(picture_logging_id)
GLOBAL_VAR(picture_logging_prefix)
GLOBAL_PROTECT(picture_logging_prefix)
/// All admin related log lines minus their categories
GLOBAL_LIST_EMPTY(admin_activities)
GLOBAL_PROTECT(admin_activities)
/// All bomb related messages
GLOBAL_LIST_EMPTY(bombers)
GLOBAL_PROTECT(bombers)
/// Investigate log for signaler usage, use the add_to_signaler_investigate_log proc
GLOBAL_LIST_EMPTY(investigate_signaler)
GLOBAL_PROTECT(investigate_signaler)
/// Used to add a text log to the signaler investigation log.
/// Do not add to the list directly; if the list is too large it can cause lag when an admin tries to view it.
/proc/add_to_signaler_investigate_log(text)
var/log_length = length(GLOB.investigate_signaler)
if(log_length >= INVESTIGATE_SIGNALER_LOG_MAX_LENGTH)
GLOB.investigate_signaler = GLOB.investigate_signaler.Copy((INVESTIGATE_SIGNALER_LOG_MAX_LENGTH - log_length) + 2)
GLOB.investigate_signaler += list(text)
/// Stores who uploaded laws to which silicon-based lifeform, and what the law was
GLOBAL_LIST_EMPTY(lawchanges)
GLOBAL_PROTECT(lawchanges)
#undef DECLARE_LOG
#undef DECLARE_LOG_NAMED
#undef START_LOG
#undef DONT_START_LOG