Commit Graph

258 Commits

Author SHA1 Message Date
Bill Currie 5ee4ec8421 Array now requires its elements to be Objects 2005-05-02 06:29:44 +00:00
Brian Koropoff 256630c84d Added proper error checking and reporting with line numbers. Next:
Runtime errors and support for line number reporting with the error.
2005-05-02 04:58:22 +00:00
Brian Koropoff 438073e110 Bug fixes, plus a first stab at the garbage collector. It *seems* to work
properly so far.
2005-05-02 02:33:44 +00:00
Brian Koropoff 5130545c72 Array now properly retains/releases objects it stores. 2005-05-02 02:32:03 +00:00
Bill Currie 0213efb331 sv_recorder seems to be ready for qtv :) 2005-05-02 00:45:25 +00:00
Brian Koropoff 281b683e14 Initial commit of a future partial implementation of the R5RS Scheme
standard, implemented in Ruamoko.  Currently works for a few simple
"Hello, world!" programs.
2005-05-01 11:48:36 +00:00
Bill Currie a35c33b397 finish ProxyView and get crosshair toggle working properly in the video
options menu.
2005-04-24 15:26:30 +00:00
Bill Currie 73e45cc8ee working on scripted menus; video works
dealloc -> release

This is an imperfect revision of history.
2004-11-18 05:08:00 +00:00
Bill Currie 3a7ecf9f31 enable obj_sendv
This is an imperfect revision of history.
2004-11-17 21:27:00 +00:00
Bill Currie 96e20d891c overload str_mid so it has the same semantics as Python's slice operator
This is an imperfect revision of history.
2004-11-14 00:53:00 +00:00
Bill Currie 7a217b81cd add a PropertyList class hierarchy
This is an imperfect revision of history.
2004-11-13 01:55:00 +00:00
Bill Currie f5b22f50e8 and the ruamoko side of entity parsing :) currently disabled for now (just need to uncomment the line in Entity's +load) due to lack of filtering, but as a proof of concept, it works quite well, though I'm not at all happy about the handling of world.
This is an imperfect revision of history.
2004-11-12 11:23:00 +00:00
Bill Currie 53f4d13f43 wrap the plist functions
This is an imperfect revision of history.
2004-11-11 22:42:00 +00:00
Bill Currie 5ef382d2a7 Add a rua wrapper for scripts (seems, to work, too:). Also added generic resource handle support based on strref handling in pr_strings.c.
This is an imperfect revision of history.
2004-11-11 04:06:00 +00:00
Bill Currie 7b4edb2859 it's "dealloc", not "free" (missed name changes from a while back)
This is an imperfect revision of history.
2004-11-11 01:31:00 +00:00
Bill Currie 64cc8c60d2 compile time protocol support seems to be complete now. fortunatly, protocols had never been written out so the corrections to the protocol related stuctures do not need a progs version bump. runtime protocol support hasn't been fully tested yet.
+load runtime support seems to be working.

This is an imperfect revision of history.
2004-11-11 00:34:00 +00:00
Bill Currie 6ad13faf98 fix a param name oopsie
This is an imperfect revision of history.
2004-11-10 04:09:00 +00:00
Bill Currie a3a2dd62e3 fix type of "self"
This is an imperfect revision of history.
2004-11-02 07:13:00 +00:00
Jeff Teunissen 2842f4d4f1 Ruamoko builtin declaration/implementation cleanup/simplification. Incomplete,
but working.
2004-04-28 00:42:38 +00:00
Bill Currie 204618da66 make dist fix 2004-04-22 02:49:50 +00:00
Bill Currie 804ba76719 add bindings for the qfs functions 2004-04-20 23:01:54 +00:00
Bill Currie 4afe0c1588 move hash.r and plist.r to libr where they belong 2004-02-25 02:38:15 +00:00
Bill Currie 8069becadf pkgincludedir and pkglibdir patch from
"Alexey I. Froloff" <sir_raorn@immo.ru> (raorn)
2004-02-18 06:28:37 +00:00
Bill Currie 82bc3055bc oops, needed menu_draw_hud. don't need the state stuff any more, though :) 2004-02-14 05:33:34 +00:00
Bill Currie c493a82de1 more cleanup 2004-02-14 05:02:25 +00:00
Bill Currie 98ccba65bb not needed 2004-02-14 04:51:08 +00:00
Bill Currie 1207b44462 whitespace 2004-02-14 04:35:59 +00:00
Bill Currie 790048368d control options "done" 2004-02-14 04:01:36 +00:00
Bill Currie 3f44dfad1d control options menu almost done (yay for oo:) 2004-02-14 03:18:53 +00:00
Bill Currie 103299e7e4 rename Cvar_GetCvarString to Cvar_GetString and add
Cvar_Set{String,Float,Integer,Vector} and
Cvar_Get{String,Float,Integer,Vector}. use them in the menus
2004-02-14 02:56:29 +00:00
Bill Currie 0e147a7b61 video options "done" 2004-02-14 02:09:18 +00:00
Bill Currie fec7423cc3 player options are now grouped 2004-02-13 06:42:51 +00:00
Bill Currie 0e34eabbc4 network options are now in a group 2004-02-13 05:49:43 +00:00
Bill Currie 8978d1ca55 make an inputline with a text box behind it 2004-02-13 05:36:35 +00:00
Bill Currie ac577232db audio and features options menus are now almost fully object-ized (as
close as they're going to get until everything else is)
2004-02-13 02:53:13 +00:00
Bill Currie e3a393dd52 add Pic and CenterPic views 2004-02-13 02:52:14 +00:00
Bill Currie e472364f51 call [self init] rather than [super init] (and variants where possible) to
ease derived class initialization (all allocation can be done in -init).
Objective-C rocks :)
2004-02-13 02:51:38 +00:00
Bill Currie de567310fb fix a typo 2004-02-13 01:21:17 +00:00
Bill Currie c5789ff620 more object usage 2004-02-13 00:21:51 +00:00
Bill Currie 9f56ee80c6 arg, committed debug code again 2004-02-07 00:10:39 +00:00
Bill Currie 51cd2fc69a most of the video menu now uses CvarToggle and CvarToggleView (and rename
RangeSlider to CvarRangeView)
2004-02-07 00:09:50 +00:00
Bill Currie f4e0147345 missed Slider.h 2004-02-04 23:26:39 +00:00
Bill Currie bc6204335a now all range indicators use the RangeSlider view (need a better name:P) 2004-02-04 07:14:00 +00:00
Bill Currie c3d99b47a7 in_mouse_amp finally working properly :)
forced to move to CMV for the indicator because I ran out of params...
2004-02-04 06:56:53 +00:00
Bill Currie c43950abd8 autoconvert for function parameters now works :) 2004-02-04 05:49:54 +00:00
Bill Currie a128d7121b install the gui headers properly 2004-02-04 05:45:17 +00:00
Bill Currie 892e80938b that made a royal mess :( 2004-02-04 04:49:46 +00:00
Bill Currie b2474a2b97 better auto-conversion of function parameters (ugh, this is getting messy
:( )
2004-02-04 04:33:08 +00:00
Bill Currie 237027d1ff moving towards object-ized menus :) 2004-02-04 02:35:57 +00:00
Bill Currie fb9c3e6125 Object error doesn't return anything... 2004-02-04 00:56:33 +00:00
Bill Currie c74adc29b0 all slider indicators now use Slider. nuke draw_perc_bar 2004-02-03 13:35:10 +00:00
Bill Currie 0e0f3704c5 correct the math for calculating the position of the slider indicator 2004-02-03 13:33:16 +00:00
Bill Currie ec26083228 start working on a gui lib with a Slider class. use the slider class for
the volume settings. doesn't /quite/ work properly yet
2004-02-03 08:31:26 +00:00
Bill Currie 888ff5f571 make the math functions Grievre provided available 2004-02-03 06:24:43 +00:00
Bill Currie a4bcf2dab6 hopefully better library arrangement 2004-02-03 06:00:16 +00:00
Bill Currie 1542268d40 use casts rather than ftoi and itof 2004-02-03 05:59:51 +00:00
Bill Currie 73b226b4b7 fix the key bindings menus (invalid strings) and add a music volume knob 2004-01-22 01:33:27 +00:00
Bill Currie b3f76e1e48 add some string builtins (only the basics for now, but enough to deal with
temporary strings) and fix the game load/save menus.
2004-01-07 07:36:17 +00:00
Bill Currie 9c92a916ff change the dict and array add functions to return true/false and add some
more docs
2004-01-07 06:19:11 +00:00
Bill Currie 380e397d5b set all of our static builtin extentions to 0x000fxxxx. fixes the invalid
builtin crash in menus
2004-01-07 00:04:07 +00:00
Bill Currie 6f1dd54e99 quick and dirty fix to get menus loading again. libr.a really needs to be
cleaned up: most of the stuff in it should /not/ be in the standard library
2004-01-05 09:06:06 +00:00
Bill Currie 8593c1bc53 show_* -> hud_*. Thanks for the headsup, IrcMonkey 2003-09-23 21:49:34 +00:00
Brian Koropoff 687a0845b6 Introducing the GIB Object System (TM). This breaks scriptable HUD for now
and probably has enough bugs to leave the Orkin man scratching his head,
but it works and allows you to do neat things like write classes in GIB
(amazing!) and subclass builtin classes (which are Object and Thread at the
moment, Hash should be coming soon as a replacement for stem and leaf
variables).
2003-09-11 06:03:13 +00:00
Bill Currie 8b36ae6c00 bunch of bug fixes. rather important part of the bot fixes (oops:) 2003-09-03 01:27:57 +00:00
Bill Currie 7ff9f32706 uncomment some functions that may or may not get implemented 2003-08-23 06:12:10 +00:00
Bill Currie a48b2dd103 fix some errors picked up by the recent changes to qfcc 2003-08-22 06:34:09 +00:00
Bill Currie ac330a32c2 remove @extern from definitions 2003-08-20 22:36:35 +00:00
Bill Currie 054d2b61e8 correct the vertical position of the lanconfig menu 2003-08-20 05:43:24 +00:00
Bill Currie 27306a9a2b correct the prototypes for the hash functions (oops:) 2003-08-19 21:10:19 +00:00
Bill Currie 5a944f4098 add Stack.h 2003-08-03 19:10:12 +00:00
Bill Currie dd9ab1e050 get unsigned mostly working 2003-08-01 21:20:04 +00:00
Bill Currie fd15377532 unsigned is partially implemented... 2003-08-01 17:38:52 +00:00
Bill Currie 908a3dab29 fix a bunch of FIXMEs now that qfcc has been fixed for these items 2003-08-01 16:37:44 +00:00
Bill Currie 6ecb707257 revamp the struct system so "struct foo;" does the right thing (ala C) 2003-07-30 04:11:45 +00:00
Bill Currie da86367824 update for recent changes to Object 2003-07-29 19:55:41 +00:00
Jeff Teunissen d05f17cdae Re-add -autorelease to the Object protocol. 2003-07-29 18:23:44 +00:00
Jeff Teunissen 7713a539ca Okay, y'all...the Ruamoko root class, Object, has been replaced with another
class with the same name. This will break things. To support it, there are
three new classes, one of which is incomplete (AutoreleasePool). It'll get
finished soonish, but the rest of the class lib will need some updating to
work.
2003-07-29 18:02:03 +00:00
Bill Currie f2ad4dea7b add removeItemAtHead and removeItemAtTail 2003-07-29 17:43:42 +00:00
Bill Currie ef1b68e697 add a List class 2003-07-29 16:01:35 +00:00
Bill Currie 673f6ba643 add itterators and make -free actually free the Array object 2003-07-24 20:50:40 +00:00
Bill Currie ba19ee1120 clear the current menu so going to console via the menus doesn't screw
things up
2003-06-06 18:57:56 +00:00
Bill Currie 54e8cb1cb2 make dist fix (again:/) 2003-06-04 20:32:10 +00:00
Bill Currie 0c42b0f644 make dist fix 2003-06-04 18:50:54 +00:00
Bill Currie e8c28cc3f3 fix some incompatable pointer types 2003-05-23 20:12:38 +00:00
Brian Koropoff c5be2fb501 OK, I think I need caffeine. This time, the Array class is really switched
over to using ids.
2003-05-23 04:38:08 +00:00
Brian Koropoff 3205f0f672 Added the HUDAnimation class and GIB bindings to use it, as well as other
enhancements and cleanups to the scriptable HUD system.
2003-05-23 04:29:01 +00:00
Brian Koropoff f9ff908157 Changed the Array class to use object ids instead of null pointers for easy
and safe freeing of elements when an Array is disposed.
2003-05-23 04:27:30 +00:00
Brian Koropoff dcf1bcf141 HUD interface leak fixes and enhancements. Something is still leaking
memory, though.
2003-05-15 06:49:10 +00:00
Bill Currie dedb2fa6bf get [super ...] working correctly 2003-05-15 05:58:31 +00:00
Brian Koropoff e160ead563 Added the scriptable HUD interface between the engine, Rua, and GIB. 2003-05-14 21:17:32 +00:00
Brian Koropoff fe5a62b75a Fixed an incorrect builtin definition. 2003-05-14 21:12:18 +00:00
Brian Koropoff cc3f98e99c Added a removeItem method to the Array Ruamoko class. 2003-05-14 21:11:23 +00:00
Bill Currie dd39fde9cf remove a debug print 2003-05-13 19:18:25 +00:00
Bill Currie 8eced18ab2 make dist fix 2003-05-12 15:04:04 +00:00
Bill Currie 508fb4fb5c new view stuff mostly working. just a few visual bugs to iron out 2003-05-06 02:19:13 +00:00
Bill Currie 6a0b74ca10 detect type mismatches in method declarations and definitions 2003-04-22 15:48:39 +00:00
Brian Koropoff 3b703db4d4 Added the beginnings of an interface between Ruamoko and GIB. Although the
API is by no means finalized, it's now possible to write GIB builtins in
Ruamoko that can take arguments and return values to GIB.
2003-04-13 20:43:52 +00:00
Bill Currie 0b0dfcc38e nuke the string api (never really liked it) 2003-04-08 02:35:09 +00:00
Bill Currie 5d40d7e8f3 use the correct array for getting the number of elements 2003-04-08 01:34:34 +00:00
Bill Currie 0566bbfb04 fix a snafu 2003-04-08 00:46:10 +00:00
Bill Currie 13fd0b8533 nuke the string hash api as it's been obsoleted 2003-04-07 22:34:39 +00:00
Bill Currie 84ee27f824 bah, still not used to qc needing @extern on functions :P 2003-04-07 21:15:45 +00:00
Bill Currie 7001f1d851 plist api (hope it works:) 2003-04-07 20:02:06 +00:00
Bill Currie 33c9ce0f7b add hash table api 2003-04-07 16:38:34 +00:00
Bill Currie 8db10ff577 prototype the new Write functions 2003-03-03 16:13:04 +00:00
Ragnvald Maartmann-Moe IV b64f193d56 Rest of the Write* update. 2003-03-03 05:34:26 +00:00
Ragnvald Maartmann-Moe IV 888337527e Use Write*V and WriteBytes, instead of antique bloated functions. ;) 2003-03-03 05:28:13 +00:00
Ragnvald Maartmann-Moe IV e472c6b935 *shakes an angry shambler at ugly codingstyle* 2003-03-03 05:24:45 +00:00
Bill Currie a710e809f5 d'oh, forgot to include qfile.h 2003-02-14 19:07:15 +00:00
Bill Currie fd7636137d implement a proper (and optionally secure) QFile interace for ruamoko. 2003-02-14 18:17:17 +00:00
Ragnvald Maartmann-Moe IV ed02b5b4be Ignore *.sym.gz 2003-02-13 19:07:33 +00:00
Ragnvald Maartmann-Moe IV d65534735b Ignore *.dat.gz 2003-02-13 19:06:27 +00:00
Bill Currie 1be25d5ddf don't install game.dat but do gzip it 2003-02-07 21:46:42 +00:00
Bill Currie 137b56892f move menu.dat to its new home :) 2003-02-07 20:18:59 +00:00
Bill Currie b2e1160cfd toss these in before they get lost 2003-01-08 15:56:11 +00:00
Brian Koropoff 8ebef28b7a Removed references to Cmd_Return, which should have gone away when GIB was
separated out into an independent interpreter.
2002-11-10 03:24:00 +00:00
Bill Currie a6a171a5e1 python before ruamoko does interesting things to the mind 2002-11-01 22:53:02 +00:00
Bill Currie 7f69f593d3 configure.ac:
define default include and lib paths for qfcc
ruamoko:
	{cl_menu,game}/Makefile.am:
		conform to the new qfcc library linking rules
	lib/Makefile.am:
		install the libs to ${prefix}/lib/ruamoko
qfcc:
	linker.[ch]:
		support path searching for -llib and make linker_add_lib search for
		libfoo.a for -lfoo in the paths, or just a single dir search for the
		libname otherwise.
	options.c:
		support -L libpath and setup the default include and lib paths
		also change most strdup calls to save_string
	qfcc.c:
		check for foo.a as well as -lfoo when deciding whether the file is
		an object file or lib file.
2002-11-01 18:05:12 +00:00
Bill Currie ca95033c4f and a bunch more cast fixes 2002-11-01 01:39:36 +00:00
Bill Currie 868201e509 remove a bunch of obsolete (and now wrong syntax anyway) casts 2002-11-01 01:31:37 +00:00
Bill Currie 9dc9ee537d implement a dynamic array class 2002-10-31 23:00:40 +00:00
Bill Currie dd727edb17 correct the type for obj_verror 2002-10-17 19:33:46 +00:00
Ragnvald Maartmann-Moe IV 48f53e1c88 space to tabs. Grr! 2002-09-19 03:19:50 +00:00
Bill Currie 317c02539b macro-ize --with-{clients,servers} and implement --with-tools using the new
macro
2002-09-17 22:19:14 +00:00
Bill Currie 20922dd408 rename basic bindings to movement bindings and move the two weopon related
bindings from the movement menu to the weapon menu. now the movment menu
/just/ fits on a 320x200 screen.
2002-09-09 17:28:19 +00:00
Bill Currie 2d2dcaa4dc grenade and rocket launcher were swapped 2002-08-28 22:18:11 +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
Jamie Wilkinson ef7a72890e - Fixed a spelling error in the menus. The american
spelling of "favourite" still bugs me though ;-)
2002-08-23 02:52:20 +00:00
Bill Currie ea063fe0f2 remove the bogus -p $(STRIP) 2002-08-21 22:57:43 +00:00
Bill Currie 118e982edd odd, must have forgotten to test this lot 2002-08-20 22:29:04 +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 b97b70bfe1 final InputLine object conversion 2002-08-20 06:22:28 +00:00
Bill Currie e4d587fdcf get the args in the right order for Rect 2002-08-20 06:12:02 +00:00
Bill Currie c927b2e834 quakefs.c:
allow . and .. in a path so long as the result doesn't escape from the
	game directory
cl_menu/Makefile.am:
	don't strip source paths
optoins.qc:
	use InputLine object
def.c:
	use notice to show stray temps
emit.c:
	make sure expression args get emitted for function calls
expr.c:
	'C' is a cast
	rewrite cast_expr to handle casted pointere derefs
2002-08-20 06:11:10 +00:00
Bill Currie b99a72e876 pr_obj.c:
call obj_find_message with super instead of class when doing a super
	lookup
client_menu.[ch]:
	use the InputLine object instead of directly using the api
InputLine.r:
	builint functions are = #0, not = 0 :P
function.[ch]:
	provide copy_params
method.[ch]
	provide copy_keywordargs
expr.c:
	call inc_users for the parm temp if it's a bind expression
	revers a copy of the selector when building the selector name so the
	selector doesn't get mangled
qc-parse.y:
	catch erronous func = const inintializers (should be func = #const)
2002-08-20 02:09:34 +00:00
Bill Currie b6e311d4ce varous make dist fixes 2002-08-19 03:58:55 +00:00
Jeff Teunissen d796f9ea5a Add $(top_srcdir)/include to ruamoko/lib's includes (to get key.h). This didn't
show up if you already had QF installed.
2002-08-18 00:30:07 +00:00
Jeff Teunissen 8cee7b7e4a Whoops! Need to add the header changes. 2002-08-17 07:17:53 +00:00
Jeff Teunissen 51ce063486 Implement Size and Rect. 2002-08-17 06:47:03 +00:00
Jeff Teunissen 5e1ce57322 Okay, this might or might not work (but it should). It's the beginning of the
Ruamoko standard library overhaul.
2002-08-17 05:27:34 +00:00
Ragnvald Maartmann-Moe IV 52588e0698 Not a basic instruction. ;) 2002-08-17 03:25:54 +00:00
Bill Currie 300f638647 finalize the move of the menu code 2002-08-16 22:58:44 +00:00
Bill Currie e1f6830067 missed this too, bah! 2002-08-16 22:00:54 +00:00
Bill Currie a27041c3ef prepare to move the client menu code. not used yet due to some ObjQC bugs
and I don't think people would appreciate losing their menus :)
2002-08-16 21:54:21 +00:00
Bill Currie a12fa85506 bring in most of the remaining api bits from cs-code (except string and
stringh: I'm not really that keen on those interfaces and I'ld like to
see them go away) and create libcsqc for most of it (key goes into gui)
2002-08-16 20:15:10 +00:00
Bill Currie 5a9e5277c9 add the draw api interface with a QPic class 2002-08-16 19:57:26 +00:00
Bill Currie e2adc436db make it clearer just what the inputline params are 2002-08-16 18:42:09 +00:00
Bill Currie 6c5cad0806 make dist fixes 2002-08-16 17:20:40 +00:00
Bill Currie 045e52cf14 start working on gui stuff for the new client menus and make the header file
protection macros consistent
2002-08-15 21:00:51 +00:00
Bill Currie 20394c3a4d add Makefile and Makefile.in 2002-08-15 19:09:48 +00:00