.entity tag_entity;
#endif
-#ifndef MENUQC
+#ifdef GAMEQC
.bool debug;
.int sv_entnum;
REGISTER_NET_TEMP(net_debug)
Net_Accept(net_debug);
this.sv_entnum = ReadShort();
if (ReadByte()) make_pure(this);
- this.origin_x = ReadCoord();
- this.origin_y = ReadCoord();
- this.origin_z = ReadCoord();
+ this.origin = ReadVector();
setorigin(this, this.origin);
this.debug = true; // identify server entities by this
this.classname = strzone(ReadString());
o = (this.absmin + this.absmax) / 2;
if (this.tag_entity)
o += this.tag_entity.origin;
- WriteCoord(channel, o.x); WriteCoord(channel, o.y); WriteCoord(channel, o.z);
+ WriteVector(channel, o);
WriteString(channel, this.classname);
WriteString(channel, this.sourceLoc);
return true;
}
#endif
-#ifndef MENUQC
+#if ENABLE_DEBUGDRAW
+#ifdef GAMEQC
/**
* 0: off
* 1: on
// 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;
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);
e.debug = true;
--rem;
}
- LOG_INFOF("%d server entities sent\n", n - rem);
+ LOG_INFOF("%d server entities sent", n - rem);
return;
}
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")
{
int bufhandle = stof(argv(1));
int string_index = stof(argv(2));
string s = bufstr_get(bufhandle, string_index);
- LOG_INFOF("%s\n", s);
+ LOG_INFOF("%s", s);
return;
}
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;
}
}
{
case CMD_REQUEST_COMMAND:
{
- LOG_INFO(WATERMARK "\n");
+ LOG_INFO(WATERMARK);
return;
}
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;
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;
{
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")
{
{
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)", it, it.classname);
+ ++entcnt;
+ });
+ if(entcnt)
+ LOG_INFOF("Found %d entities", entcnt);
return;
}
default:
{
- LOG_INFO("Incorrect parameters for ^2find^7\n");
+ LOG_INFO("Incorrect parameters for ^2find^7");
}
case CMD_REQUEST_USAGE:
{
- LOG_INFO("\nUsage:^3 " GetProgramCommandPrefix() " find classname\n");
- LOG_INFO(" Where 'classname' is the classname to search for.\n");
+ LOG_INFO("Usage:^3 " GetProgramCommandPrefix() " find classname");
+ LOG_INFO(" Where 'classname' is the classname to search for.");
return;
}
}
case CMD_REQUEST_COMMAND:
{
vector match = stov(argv(1));
- FOREACH_ENTITY_ORDERED(it.origin == match, LOG_INFOF("%i (%s)\n", it, it.classname));
+ FOREACH_ENTITY_ORDERED(it.origin == match, LOG_INFOF("%i (%s)", it, it.classname));
return;
}
default:
- LOG_INFO("Incorrect parameters for ^2findat^7\n");
+ LOG_INFO("Incorrect parameters for ^2findat^7");
case CMD_REQUEST_USAGE:
{
- LOG_INFO("\nUsage:^3 " GetProgramCommandPrefix() " findat \"0 0 0\"\n");
+ LOG_INFO("Usage:^3 " GetProgramCommandPrefix() " findat \"0 0 0\"");
return;
}
}