From d0ea8ac7df6c4136b77d11f15249334b5f090867 Mon Sep 17 00:00:00 2001 From: TimePath Date: Sun, 24 Jul 2016 15:48:21 +1000 Subject: [PATCH] Add cvar_localchanges command --- qcsrc/common/debug.qh | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/qcsrc/common/debug.qh b/qcsrc/common/debug.qh index 9aca8e774c..13fd6a24f5 100644 --- a/qcsrc/common/debug.qh +++ b/qcsrc/common/debug.qh @@ -223,6 +223,40 @@ GENERIC_COMMAND(version, "Print the current version") } } +#ifdef CSQC +void(float bufhandle, string pattern, string antipattern) buf_cvarlist = #517; +#endif +GENERIC_COMMAND(cvar_localchanges, "Print locally changed cvars") +{ + switch (request) + { + case CMD_REQUEST_COMMAND: + { + string s = ""; + int h = buf_create(); + buf_cvarlist(h, "", "_"); // exclude all _ cvars as they are temporary + int n = buf_getsize(h); + for (int i = 0; i < n; ++i) { + string k = bufstr_get(h, i); + string v = cvar_string(k); + string d = cvar_defstring(k); + if (v == d) + continue; + s = strcat(s, k, " \"", v, "\" // \"", d, "\"\n"); + } + buf_del(h); + LOG_INFO(s); + return; + } + default: + case CMD_REQUEST_USAGE: + { + LOG_INFO(strcat("\nUsage:^3 ", GetProgramCommandPrefix(), " cvar_localchanges")); + return; + } + } +} + REGISTER_STAT(TRACE_ENT, int) #ifdef SVQC bool autocvar_debugtrace; -- 2.39.2