Commit graph

332 commits

Author SHA1 Message Date
Bill Currie
067db089a2 make edict pruning, field parsing and the builtins part of progs_t like they
should have been
2001-03-27 22:39:21 +00:00
Bill Currie
f78b973978 move the api headers into include/QF and clean up (most of) the resulting mess.
target specific files that I don't build won't compile yet. just put QF/
infront of the offending headers.

Also move ver_check into libqfutils
2001-03-27 20:33:07 +00:00
Bill Currie
f6073d756f better progs access error checking and cleanups resulting from it. Fixes
mega2k and nq.
2001-03-27 03:57:17 +00:00
Bill Currie
771648a5b4 forgot to remove the old prstring stuff 2001-03-06 16:10:28 +00:00
Bill Currie
97bf8d2c51 garbage collector implemented but untested. Also unsused because the issue is
WHEN to call it. I don't imagine it will be cheap :/
2001-03-06 05:29:46 +00:00
Bill Currie
4489319298 first step towards garbage collected dynamic strings in qc. All strings
external to the progs file are now malloced and then freed at progs reload.
All that needs to be implementd for gc to work is the scanner and deallocator.
2001-03-06 04:22:33 +00:00
Bill Currie
f40b361fb3 hash.[ch]:
slight api change: the getkey and free functions now take a user data
	parameter (which is an aditional parameter to Hash_New.
cmd.c, cvar.c, quakefs.c:
	clean up the resulting errors.
pr_edict.c:
	use hash tables for lookups of function, global and field definitions.
	should speed things up a bit, ESPECIALLY when type checking is enabled.
2001-03-05 05:11:26 +00:00
Bill Currie
09b58f7e5f merge math code into utils 2001-03-05 02:06:05 +00:00
Bill Currie
cf3629b3b3 merge in my progs work off the `taniwha' branch. This prigs us a few nice
thinks:
  o Full progs modularity
  o CSQC should now be just a matter of creating the builtin functions and
    loading the code.
  o total independence from progs globals, functions and entity field layouts
    on the conditoin that their definitions have not been stripped from the
    progs file.
  o optional (though currently forced on) type checking on access to progs
    entity fields from C
  o the progs engine is fully shared between nq and qw.
2001-03-04 06:30:30 +00:00
Bill Currie
8e52f7dc39 more nq fixes, not there yet 2001-03-03 09:09:39 +00:00
Bill Currie
baa5ce01a1 more independence cleanups and nq is closer to running 2001-03-03 08:59:55 +00:00
Bill Currie
51ca0b6a41 missed this in the previous checkin 2001-03-02 23:41:50 +00:00
Bill Currie
6c9de8061b fix the silly OP_STATE bug. also erradicate pr_offs.c and its contents (the
source of the bug)
2001-03-02 19:18:04 +00:00
Bill Currie
10e6b7af84 edict field access type checking :) Currently forced on, but it will become a
configure option in the future
2001-03-01 21:11:35 +00:00
Bill Currie
ef38fd2e79 progsdef.h is now used only for the PROGHEADER_CRC def. Much of the protocol
still seems to be broken :(
2001-03-01 18:44:19 +00:00
Bill Currie
ad18afaa3c really clean up global and function access. Unfortunatly, frames are still
borked, at least for the view entity.
2001-03-01 08:34:30 +00:00
Joseph Carter
b2a53d4b46 The download bar is now seperate from Con_DrawConsole. This is currently
not really for the best, but it will be soon.
2001-03-01 02:51:51 +00:00
Bill Currie
63b990cd30 qw-server builds, but dies a sad death. I REALLY REALLY NEED to clean up my
progs globals and edict fields accessors, but I'm not so sure that's the cause
of the run-time error:

SV_Error: SV_ModelIndex: model progs/player.mdl not precached
Fatal error: SV_Error: SV_ModelIndex: model progs/player.mdl not precached

I suspect I failed to find the spawn function.
2001-02-28 22:44:38 +00:00
Bill Currie
dfaf767890 libqfgamecode now builds. Now for the fun part: getting qw and nq to work using
the new setup.
2001-02-28 09:12:01 +00:00
Bill Currie
b5d86d522d pr_edict.c is closer to compiling and has been re-indented 2001-02-28 02:25:03 +00:00
Bill Currie
9f2dacd2e1 re-think edict_t. this is going to massivly break things for a while, but
tough, progs should never have known about entity_state_t in the first place.
Nor should it have been mod spefic.
2001-02-28 01:59:31 +00:00
Bill Currie
e5543eb0a6 next step of the progs merge done. just need to sort out interdependencies,
fix PR_SetString, and a few other things.
2001-02-28 00:56:03 +00:00
Bill Currie
a457cfb467 rev the version number to the devel series 2001-02-24 04:40:49 +00:00
Bill Currie
2bfeed6820 looks like utils is more or less complete for now, except for some fixes in
nq for abyss etc (ie, the magical -<mod> args).
The interface to the message subsystem got a revamp and all the mods to the .c
files reflect this. currently a little ugly, but I plan on abstracting msg
further to clean it up and make it more oo.
2001-02-23 23:16:13 +00:00
Bill Currie
981d067000 merge qw's net_com.c and checksum.c (net_com.c was identitcle to nq's
checksum.c) and then move the resutlting checksum.c into libs/utils
ditching nq's. Due to net_com.c, qw's libqfnet.a will need to be deleted or
you will get duplicate symbol link errors. Also merge crc.[ch] and move
qfplits.[ch] to their final homes. Also, remove a slightly overzealous use
of "static" in qfplist.[ch].
2001-02-23 18:31:48 +00:00
Ragnvald Maartmann-Moe IV
00cf07b221 More misspellings messily dispatched. 2001-02-23 05:32:06 +00:00
Bill Currie
9aa50a847c clean up the mess caused by attempting to merge cmd.[ch]. When taken further,
this might give us nice controlability of when cvars can be changed.
2001-02-22 04:46:59 +00:00
Bill Currie
be075686bf move the win32 includes to the top level using qw's stuff 2001-02-22 04:10:24 +00:00
Bill Currie
10b8c5e8ad ok, nq compiles again 2001-02-21 21:44:57 +00:00
Bill Currie
95f6db7775 start merging stuff into libs/util and fix the concequences in nq. nq doesn't
build yet though (keys.c, *screen.c and *view.c) due to console fun.
2001-02-21 19:35:06 +00:00
Bill Currie
e3b7ab218e minor fixups 2001-02-20 03:51:04 +00:00
Bill Currie
e33986e87a add needed things for autoconfiscation 2001-02-20 03:23:35 +00:00