Bill Currie
851d203916
work towards a more secure qfs
2003-02-14 22:36:10 +00:00
Bill Currie
6a687f5e45
rename all the globals in quakefs.[ch] to be QFS_* or qfs_*
2003-02-14 19:46:07 +00:00
Bill Currie
fd7636137d
implement a proper (and optionally secure) QFile interace for ruamoko.
2003-02-14 18:17:17 +00:00
Brian Koropoff
3c522a83bc
Various cleanups and bugfixes. Added proper line number reporting to
...
errors. A few new builtin functions, such as slice::find and thread::list.
2003-02-14 08:06:01 +00:00
Brian Koropoff
59fbd48a81
Overhauled GIB to parse scripts in advance, among other design and language
...
changes. There still remains some bugs to be squashed, a feature or two to
add, and some polishing to be done. However, it seems to be in a workable
state.
2003-01-28 21:16:21 +00:00
Bill Currie
761a7546dd
re-arrange things so __attribute__ and __builtin_expect are properly
...
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie
a4dfef63c3
make all files with rcsid include config.h
2003-01-14 20:18:29 +00:00
Bill Currie
71196fedf6
make gcc more anal about prototypes, string constants and function
...
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Ragnvald Maartmann-Moe IV
46a093faba
Change sv_use_curses default to 0, until curses has scrollback support.
2002-12-02 20:03:12 +00:00
Brian Koropoff
0f71b02fd7
Changed the name of GIB builtins from string.length to string::length, etc.
...
Made a few miscellaneous cleanups and enhancements to builtins and changed
all the GIB scripts in CVS to reflect the new naming conventions.
2002-11-11 01:57:34 +00:00
Bill Currie
1d96156936
make sure files loaded by the progs engine can be freed safely
2002-10-22 04:30:20 +00:00
Brian Koropoff
9c4f2d32ca
Add print and print.center GIB commands and fix a nasty bug with threads
...
that could cause a double free.
2002-10-06 04:40:18 +00:00
Bill Currie
5597dc2408
make maplist work over rcon
2002-09-04 18:56:53 +00:00
Bill Currie
be24d628af
bah, thought I tested that. why dstrings were being used anyway I don't know...
2002-08-28 21:03:24 +00:00
Bill Currie
246ab0009c
Change Con_ClearTyping to take a save flag that will cause the current line
...
(if not empty) to be saved in the inputline history.
Clear the input (but put in history) of say or say team when pressing escape.
Don't say or say_team if the text is empty.
2002-08-28 16:02:43 +00:00
Bill Currie
f1938f6b36
fix some segfaults caused by my menu_item->text changes
2002-08-27 08:11:10 +00:00
Bill Currie
ec47e08e1c
go back to using QFile, quakeio.h and quakefs.h
2002-08-27 07:16:28 +00:00
Bill Currie
c72f721eac
fix the multiple frees of menus
2002-08-26 23:40:30 +00:00
Chris Ison
38f68330bb
tanihwa fix for reloading the menu.dat only when gamedir changes
2002-08-26 19:50:00 +00:00
Bill Currie
d328e18de2
implement the "new" inputline api making it possible to pull the Draw_*
...
functions out of bi_inputline.c. now somebody can be insane enough to
implement a qc controled console for the server ;) (more importantly, one
step closer to being able to have the server link with libQFcsqc (hah!))
2002-08-20 21:19:53 +00:00
Bill Currie
8adad57941
Make the cbuf api use a supplied cbuf rather than allocating its own. Kills
...
a FIXME and (Closes : #32 )
2002-08-14 18:45:09 +00:00
Bill Currie
0963c2476d
improved server logging. "logfile" is gone from qw-server to be replaced
...
with "sv_logfile" and thus giving nq-server logging as well.
2002-08-07 18:46:53 +00:00
Bill Currie
2ce0f2ded2
we now require modern autoconf (2.52+), automake (1.6+) and libtool (1.4+).
...
This gives us a bunch more flexibility. plugins no longer have the "lib"
prefix or the version suffix, they're now installed in
$fs_sharepath/QFplugins,, builds should take much less time (in general,
only one of pic or non-pic versions are build), bins and libs can have
individual CFLAGS
2002-08-01 19:49:10 +00:00
Bill Currie
ad6e025a91
take cmd.[ch] back to basics. the gib code is temporarily gone pending
...
renovations. cmd_source handling is a little hacky in nq, but it's working.
2002-07-31 05:19:03 +00:00
Bill Currie
2f57f95783
don't show the single player menu line
2002-07-25 05:33:16 +00:00
Bill Currie
de22355371
use P_* for params and R_* for return values in builtins code
2002-07-24 21:42:33 +00:00
Bill Currie
acf9ce392c
move pakfile.[ch] into libQFutil and make quakefs.c use it instead of its
...
own code. This also removes the evil pak file count limit :)
2002-07-21 06:11:28 +00:00
Bill Currie
d7c7ac7891
don't add -version-info for static plugins
2002-06-03 16:34:46 +00:00
Brian Koropoff
13d6898fe0
Changed aliases to be handled by the command registering system in
...
preparation of separating GIB into its own module. Command-related
functions will stay in util, but the buffer handling code and interpreter
will be moved out of cmd.c.
2002-06-01 22:13:14 +00:00
Bill Currie
9820c5d45a
start working in the obj runtime. any and all functions named ".ctor" will
...
be run in the order found.
2002-05-21 21:29:49 +00:00
Brian Koropoff
3fffa26fb4
Added thread support to GIB and cleaned up escape characters yet again.
...
With any luck it should actually work this time. Added the getimpulse
command so that GIB scripts can check if an impulse command is pending
before sending their own. Fixed all the memory leaks I could find.
QuakeC and GIB seem to be clean except for maybe one or two sneaky leaks
I can't track down.
2002-05-11 00:36:12 +00:00
Bill Currie
08f12355c5
this /should/ fix CoolMoDee's autoconf 2.53 issues
2002-04-29 19:19:26 +00:00
Brian Koropoff
601736719d
Fixed the use of double quotes in chat messages and removed single quotes
...
as an option to enclose tokens.
2002-04-29 01:04:29 +00:00
Bill Currie
ef81af9245
the "two birds with one stone" commit
...
1) when /not/ building static plugins, the plugin info name is, once again,
PluginInfo, but is still type_name_PluginInfo for static plugins. This
allows plugins to be symlinked (highly desirable for the debian packages,
and likely others). This also requires plugins to /not/ be loaded with
RTLD_GLOBAL.
2) because of 1, snd_alsa_0_9 has to explicitly load libasound itself. This
just happens to fix my segfault on shutdown in RedHat 6.2.
2002-04-19 20:08:54 +00:00
Brian Koropoff
4cb89c69b2
Moved commands from bound keys into a separate buffer, changed the syntax
...
of for loops to be like that of C, changed math expressions to be
enclosed in #{} instead of #().
2002-04-17 07:05:43 +00:00
Bill Currie
8220ddd83d
and the command api to csqc and use it to bind menu_load and menu_save. F2
...
and F3 now work in nq :)
2002-04-12 17:19:49 +00:00
Bill Currie
76d004f9cf
fix confim_quit
2002-04-09 17:00:39 +00:00
Brian Koropoff
93c9f96416
Added embedded commands with ~{} and the return command, created a token
...
structure to help tidy the command buffer struct up a bit, fixed a few
bugs and probably created 100 more. A lot of things were changed to
allow embedded commands:
- Old buffers on the stack are left alone for Cbuf_ExecuteStack to
clean up. This is so return values can be extracted from them.
- The imperative flag has been added. An imperative buffer and all buffers
following it can not be paused with the wait command.
- The returning flag and retval dstring have been added. If a buffer
returned something, the flag will be set.
- The return command was added so there was something to use in the
substitution. Return nukes all loop buffers since they don't really count
as independent functions, sets the return value on the top buffer, and
clears it.
- Who knows what else.
2002-03-29 07:43:02 +00:00
Bill Currie
504ee0014f
and another one :/
2002-03-19 17:03:52 +00:00
Bill Currie
7816644fc3
missed a place for enter_hook
2002-03-19 16:59:25 +00:00
Bill Currie
b01cda716f
callback hooks for entering/leaving menus
2002-03-18 20:20:56 +00:00
Bill Currie
5f2dea43f6
break the dependency between cmd.h and dstring.h
2002-03-18 16:47:04 +00:00
Robin Redeker
757556022b
1. general menu code cleanup
...
2. added lots of comments to my menu code
3. wrote a string hash api (key -> value assignment list)
Hm, nothing else afaik. ;)
2002-03-16 15:52:17 +00:00
Bill Currie
5a2538faaf
dstring.[ch]:
...
create dsprintf and dvsprintf to do formated prints to dynamic strings.
rest
Use the new functions :)
2002-03-08 23:11:42 +00:00
Brian Koropoff
f78ec56975
Added escape characters, the <i> tag to ignore tags enclosed within it, and
...
generally cleaned the parser up. If a line begins with |, it will be
stripped off by the tokenizer and no tags or escape characters will be
processed. Commands stuffed into the console from the server are prepended
with | to ensure backward compatibility. This can also be used anywhere
backward compatibility is needed, such as where info strings are stuffed
into the console, or as an alternative to using escape characters in the
entire string.
2002-03-03 08:29:28 +00:00
Bill Currie
a384870e4b
cl_chatmode works again
2002-02-28 04:12:20 +00:00
Bill Currie
8ee5acb208
redo Sys_Error so it's more usable throughout quake
2002-02-20 19:22:52 +00:00
Chris Ison
dcd4ec19c5
fixed up positioning of say_team input, also fixed length of say and say_team, thanx taniwha
2002-02-16 04:21:03 +00:00
Bill Currie
42ba67eb4b
*sigh*, getting this right is proving to be a pain :P
2002-02-12 21:34:28 +00:00
Bill Currie
01882919a2
get it right this time :/
2002-02-12 21:26:34 +00:00
Bill Currie
befc4113b8
fix a braino for vsnprintf return code handling
2002-02-12 20:39:11 +00:00
Bill Currie
799cfa58af
fix the recent win32 crash bug
...
Q_vsnprintfz should return -1 when size is 0. also make client.c's C_Print
use vsnprintf correctly
2002-02-12 04:29:44 +00:00
Robin Redeker
60e99d724b
Fixed a bug with callback-calling in Menu_KeyEvent
2002-02-01 18:50:56 +00:00
Bill Currie
cf2f42ea6a
make it so menu items can get called for any keypress. this is optionally
...
done by setting the allkeys param to 1. when this is the case, if the menu
item function returns 0, normal processing is done, otherwise processing
stops.
2002-02-01 17:32:40 +00:00
Robin Redeker
fa575a3475
Added a start for the QC-Keys-API
2002-01-31 21:08:45 +00:00
Bill Currie
d1460f6166
rename the width parameter to lsize as it's the size of the input line, not
...
the drawn width
2002-01-30 21:23:46 +00:00
Bill Currie
7ef4426775
inputline api `done'. now just to get it working
2002-01-30 08:41:18 +00:00
Bill Currie
8561dfa93a
basic resource management system for the VM
2002-01-30 06:21:20 +00:00
Bill Currie
9c6def5c7d
fade the screen when drawing the menus (this is optional per menu)
2002-01-29 22:32:56 +00:00
Bill Currie
0ea713eda4
redo the progs loader to allocate all the memory needed for progs in one
...
shot, allowing for caller specified alloc and edicts and zone memory sizes.
(progs + edicts + zone).
2002-01-29 20:53:44 +00:00
Bill Currie
b64693a332
get the param order correct for the menu item callback
2002-01-29 18:16:49 +00:00
Bill Currie
85588c8fcb
start implementing the api for input lines and clean up a couple csqc
...
prototype issues.
2002-01-23 22:37:44 +00:00
Bill Currie
ed91b16f45
add Menu_GetIndex
2002-01-23 21:07:38 +00:00
Bill Currie
eb2c7824f8
don't bail out of Menu_Draw if the qc draw function returns 0. this allows
...
for combined C/QC drawing.
2002-01-23 00:48:03 +00:00
Bill Currie
5450fdb692
don't seg on menus with no items
2002-01-21 21:38:34 +00:00
Bill Currie
ec0b3d8940
make Menu_SelectMenu(NIL) do the right thing and handle qc code that clears
...
the current menu but forgets to return 1 in keyevent
2002-01-21 19:40:45 +00:00
Bill Currie
5b0e6dc342
add file and string modules to csqc. the file nodule is rather parnoid
...
about the path it's handed (need to get even more paranoid, though). the
string module just has char replacement so far. Add Draw_CenterPic to
r_progs.c, but this will only last till qpic_t is supported in qc.
the load menu almost works: just need to add key handling and fix a bug in
PF_sprintf
2002-01-21 07:24:51 +00:00
Bill Currie
d59e7d3da4
you can now start a new single player game via the menus
2002-01-20 04:11:08 +00:00
Bill Currie
db7a2264c0
bring in the standard builtins and randomize the quit message
2002-01-20 01:39:06 +00:00
Bill Currie
9f67e81049
don't handle key presses if there's no callback and no items
2002-01-20 00:47:01 +00:00
Bill Currie
95e200a9e0
fix console command line quit
2002-01-20 00:32:14 +00:00
Bill Currie
35de51ee31
the quit menu works now. however, quit from the console doesn't
2002-01-20 00:06:08 +00:00
Bill Currie
6767d6bfa0
win32 compile fixes
2002-01-19 20:45:45 +00:00
Bill Currie
9181ddaa4c
don't go to game when leaving menus when there's no game. doesn't actually
...
work properly, but I think that's a bug in the main client code.
2002-01-19 07:40:35 +00:00
Bill Currie
b73851d5aa
the menu cursor can now be moved up and down using the mouse wheel
2002-01-19 07:19:39 +00:00
Bill Currie
29c19ca243
Menu_CenterPic now centers the pic (horizontally) as intended
2002-01-19 06:18:52 +00:00
Bill Currie
b1b848ae4a
finally get the damn spinner working (not in the right place, though)
2002-01-19 05:56:25 +00:00
Bill Currie
a78ea1464b
provide stubs for the client-only functions (they might prove useful in the
...
server later anyway). this fixes nq-server's segs
2002-01-19 04:37:47 +00:00
Bill Currie
6ab3329b94
bring back togglemenu
2002-01-19 03:28:52 +00:00
Bill Currie
fcc9cbf3b7
the main menu page now displays and can be entered/left. K_ESCAPE is now
...
handled exclusively by the console.
2002-01-18 23:45:28 +00:00
Bill Currie
10acad1ee4
first tie-in for the renderer (Draw_Pic: the interface will likely change
...
to better match the real interface, but this will do for now)
2002-01-18 22:35:46 +00:00
Bill Currie
ac71d101d2
menu code now gets initialized (menu_init in the progs).
2002-01-18 22:02:59 +00:00
Bill Currie
bb96a5b736
first use of client side QuakeC :) (and having more than one progs instance
...
seems to work, too). The menu code gets loaded, but is currently otherwise
unused as of yet.
2002-01-18 19:19:33 +00:00
Bill Currie
c3b2533803
fix shifted key input
2002-01-17 21:49:47 +00:00
Bill Currie
7093c05587
console scrolling works again, and even better than before :)
2002-01-17 21:27:31 +00:00
Bill Currie
303581b798
oops?
2002-01-17 02:47:22 +00:00
Bill Currie
c998c63746
make all of the input lines use the same rendering code
2002-01-17 02:27:53 +00:00
Bill Currie
e090f8dc09
finally get the say scroller working
2002-01-17 02:10:36 +00:00
Bill Currie
9329d15218
more chat improvements
2002-01-17 00:05:30 +00:00
Bill Currie
9e5c7da8e6
move the chat code from keys.c to client.c.
...
oops, chat just got input history, dear me
2002-01-16 23:06:28 +00:00
Bill Currie
ceec1a87e2
fix some installing issues for dynamic plugins
2002-01-16 22:09:41 +00:00
Bill Currie
c86c5a78bf
finally, the client console is merged
2002-01-16 21:53:42 +00:00
Bill Currie
9dedd21158
start getting the shared console code working
2002-01-16 16:27:56 +00:00
Bill Currie
9d59d953bd
more cleanups
2002-01-12 05:32:21 +00:00
Bill Currie
630aa80dc4
various cleanups including TODOs and FIXMEs and rewrite va to use a dynamic
...
buffer.
2002-01-12 04:34:53 +00:00
Bill Currie
a619739bab
fix the server console for static builds (hmm, non-curses only?)
2001-12-02 20:11:21 +00:00
Bill Currie
f0c03f8331
minor cleanups of Sys_ConsoleInput. Cleaning it up properly will take more
...
work, but this removes most of the redundant instantces. nq-sdl (or -sgl)
-dedicated won't have console input, nor will dedicated servers that don't
load a console plugin.
2001-11-18 22:08:24 +00:00
Bill Currie
d168a3daee
this should remove the requirement for gmake on bsd systems
2001-11-12 16:23:41 +00:00
Bill Currie
ae8c255eb0
re-anable the sorting. I guess snax was testing other things and forgot about
...
it.
2001-11-06 21:37:33 +00:00
Brian Koropoff
ccd665e80c
This commit removes maplist.c and replaces it with filelist.c, which
...
contains general functions for creating lists of a type of file and
provides the commands maplist, skinlist, skyboxlist, and demolist.
2001-11-06 07:14:29 +00:00