Commit graph

24 commits

Author SHA1 Message Date
Bill Currie
12c84046f3 [cvar] Make cvars properly typed
This is an extremely extensive patch as it hits every cvar, and every
usage of the cvars. Cvars no longer store the value they control,
instead, they use a cexpr value object to reference the value and
specify the value's type (currently, a null type is used for strings).
Non-string cvars are passed through cexpr, allowing expressions in the
cvars' settings. Also, cvars have returned to an enhanced version of the
original (id quake) registration scheme.

As a minor benefit, relevant code having direct access to the
cvar-controlled variables is probably a slight optimization as it
removed a pointer dereference, and the variables can be located for data
locality.

The static cvar descriptors are made private as an additional safety
layer, though there's nothing stopping external modification via
Cvar_FindVar (which is needed for adding listeners).

While not used yet (partly due to working out the design), cvars can
have a validation function.

Registering a cvar allows a primary listener (and its data) to be
specified: it will always be called first when the cvar is modified. The
combination of proper listeners and direct access to the controlled
variable greatly simplifies the more complex cvar interactions as much
less null checking is required, and there's no need for one cvar's
callback to call another's.

nq-x11 is known to work at least well enough for the demos. More testing
will come.
2022-04-24 19:15:22 +09:00
Bill Currie
e0497c7fff [tools] Add a tool to dump sprite info 2021-12-17 08:31:28 +09:00
Bill Currie
97febc0888 [tools/misc] Update mdl.py for python 3 2021-01-27 12:51:22 +09:00
Bill Currie
a3e53337b6 Put my blender struts script in a safe place.
Nothing to do with QF, but then again, it might be useful.
2012-02-22 17:47:16 +09:00
Bill Currie
dedda7596d Just for fun :) 2011-06-15 17:33:03 +09:00
Bill Currie
2ef291bf46 Make mdl.py work on 64 bit machines. 2010-10-18 17:53:04 +09:00
Bill Currie
2ccff86089 ignore unknown stuff 2004-05-09 00:57:57 +00:00
Bill Currie
1a9ca12bcf can't use None due to the math 2004-05-01 03:41:51 +00:00
Bill Currie
7205e10f94 fun tool to display item info in a map (using an already extracted entity
file). use as a filter
2004-05-01 03:21:42 +00:00
Bill Currie
518143bec3 move graph-timeframes and qfgl_gen.pl into misc. general tidy up 2004-01-28 05:31:03 +00:00
Bill Currie
cc41875968 make the bbox output easier to read 2003-08-29 00:50:39 +00:00
Bill Currie
53448a483e handle multiple files better and auto-scale 2003-08-13 22:42:52 +00:00
Bill Currie
c9346e806c now sporting multiple runs (currently 3) and blending 2003-08-12 22:18:51 +00:00
Bill Currie
c73d57e9ee put the axes behind the graphs and don't skip the first couple frames 2003-08-12 16:24:50 +00:00
Bill Currie
f7fd1d70a2 correct white and add axes with ms and 100 frame ticks 2003-08-12 16:04:00 +00:00
Bill Currie
b3f99a70be rename cl_timeframes to demo_timeframes and make it /not/ archive.
move call to CL_TimeFrames_AddTimestamp from cl_main.c to cl_demo.c.

add a hacky little python script to create a pnm (portable anymap file
format) graph from timeframes.txt
2003-08-12 06:33:13 +00:00
Bill Currie
d7a3608943 can now convert v3 models to v6 2003-03-17 19:54:57 +00:00
Bill Currie
067405b461 finally have v3 mdl figured out 2003-03-17 18:41:07 +00:00
Bill Currie
dc74519205 no flags for mdl v3, but yes to skin type 2003-03-14 01:00:53 +00:00
Bill Currie
f604a84363 attempting to reverse engineer mdl ver 3 2003-03-14 00:43:33 +00:00
Bill Currie
664e121444 make the output a little more readable 2003-03-12 02:22:06 +00:00
Bill Currie
63edd414d6 use the command line for the file name rather than hardcoding it 2003-03-11 02:55:22 +00:00
Bill Currie
fc5daabb05 silly little python script for dumping models 2002-09-11 19:03:51 +00:00
Bill Currie
ad0eee5dfe bring in the tools from newtree and nuq. the two pythong files are from nuq
and the rest from newtree
2001-01-09 05:58:40 +00:00