X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fdebug.qh;h=7fee4258e84969bd5701d9dd93fd4a61f6655ebe;hb=eb877d9a99429c3ffc846377fac46fb750af8620;hp=40b2b3547ef16116994ef2ce879f0a497fa6125d;hpb=d271f27a5ac351a3a7b39636932f6d661492be1d;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/debug.qh b/qcsrc/common/debug.qh index 40b2b3547..7fee4258e 100644 --- a/qcsrc/common/debug.qh +++ b/qcsrc/common/debug.qh @@ -4,7 +4,7 @@ .entity tag_entity; #endif -#ifndef MENUQC +#ifdef GAMEQC .bool debug; .int sv_entnum; REGISTER_NET_TEMP(net_debug) @@ -47,7 +47,8 @@ REGISTER_NET_TEMP(net_debug) } #endif -#ifndef MENUQC +#if ENABLE_DEBUGDRAW +#ifdef GAMEQC /** * 0: off * 1: on @@ -100,7 +101,7 @@ bool autocvar_debugdraw; // if (it.entnum) break; // if (it.drawmask) break; // if (it.predraw) break; -// if (it.movetype) break; +// if (it.move_movetype) break; if (it.solid) break; // if (it.origin) break; // if (it.oldorigin) break; @@ -142,7 +143,7 @@ bool autocvar_debugdraw; if (pos.z < 0) continue; pos.z = 0; pos.y += ofs * sz; - drawcolorcodedstring2(pos, + drawcolorcodedstring2_builtin(pos, sprintf("%d: '%s'@%s", (it.debug ? it.sv_entnum : etof(it)), it.classname, it.sourceLoc), sz * '1 1 0', rgb, 0.5, DRAWFLAG_NORMAL); @@ -176,12 +177,13 @@ bool autocvar_debugdraw; default: case CMD_REQUEST_USAGE: { - LOG_INFO(strcat("\nUsage:^3 ", GetProgramCommandPrefix(), " debugdraw_sv")); + LOG_INFO("Usage:^3 ", GetProgramCommandPrefix(), " debugdraw_sv"); return; } } } #endif +#endif GENERIC_COMMAND(bufstr_get, "Examine a string buffer object") { @@ -199,7 +201,7 @@ GENERIC_COMMAND(bufstr_get, "Examine a string buffer object") default: case CMD_REQUEST_USAGE: { - LOG_INFO(strcat("\nUsage:^3 ", GetProgramCommandPrefix(), " bufstr_get bufhandle string_index")); + LOG_INFO("Usage:^3 ", GetProgramCommandPrefix(), " bufstr_get bufhandle string_index"); return; } } @@ -217,12 +219,47 @@ GENERIC_COMMAND(version, "Print the current version") default: case CMD_REQUEST_USAGE: { - LOG_INFO(strcat("\nUsage:^3 ", GetProgramCommandPrefix(), " version")); + LOG_INFO("Usage:^3 ", GetProgramCommandPrefix(), " version"); return; } } } +#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("Usage:^3 ", GetProgramCommandPrefix(), " cvar_localchanges"); + return; + } + } +} + +#if ENABLE_DEBUGTRACE REGISTER_STAT(TRACE_ENT, int) #ifdef SVQC bool autocvar_debugtrace; @@ -246,7 +283,7 @@ MUTATOR_HOOKFUNCTION(trace, SV_StartFrame) vector forward = '0 0 0'; vector right = '0 0 0'; vector up = '0 0 0'; MAKEVECTORS(makevectors, it.v_angle, forward, right, up); vector pos = it.origin + it.view_ofs; - traceline(pos, pos + forward * MAX_SHOT_DISTANCE, MOVE_NORMAL, it); + traceline(pos, pos + forward * max_shot_distance, MOVE_NORMAL, it); FOREACH_ENTITY(true, { it.solid = it.solid_prev; it.solid_prev = 0; @@ -275,8 +312,10 @@ STATIC_INIT(TRACE_ENT) { entity e = TRACE_ENT = new_pure(TRACE_ENT); e.draw2d = Trace_draw2d; + IL_PUSH(g_drawables_2d, e); } #endif +#endif GENERIC_COMMAND(find, "Search through entities for matching classname") { @@ -284,7 +323,14 @@ GENERIC_COMMAND(find, "Search through entities for matching classname") { case CMD_REQUEST_COMMAND: { - FOREACH_ENTITY_CLASS_ORDERED(argv(1), true, LOG_INFOF("%i (%s)\n", it, it.classname)); + int entcnt = 0; + FOREACH_ENTITY_CLASS_ORDERED(argv(1), true, + { + LOG_INFOF("%i (%s)\n", it, it.classname); + ++entcnt; + }); + if(entcnt) + LOG_INFOF("Found %d entities\n", entcnt); return; } @@ -294,7 +340,7 @@ GENERIC_COMMAND(find, "Search through entities for matching classname") } case CMD_REQUEST_USAGE: { - LOG_INFO("\nUsage:^3 " GetProgramCommandPrefix() " find classname\n"); + LOG_INFO("Usage:^3 " GetProgramCommandPrefix() " find classname\n"); LOG_INFO(" Where 'classname' is the classname to search for.\n"); return; } @@ -316,7 +362,7 @@ GENERIC_COMMAND(findat, "Search through entities for matching origin") LOG_INFO("Incorrect parameters for ^2findat^7\n"); case CMD_REQUEST_USAGE: { - LOG_INFO("\nUsage:^3 " GetProgramCommandPrefix() " findat \"0 0 0\"\n"); + LOG_INFO("Usage:^3 " GetProgramCommandPrefix() " findat \"0 0 0\"\n"); return; } }