of using a colon to specify a parent class in a GIB class definition,
"extends" is now used. If no parent class is specified, it now defaults to
Object.
object, the sending object is included in the message. This is available
in GIB-scripted methods as the local variable "sender", which will be 0
if the sender was not an object.
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).
cache the value.
don't call Qopen directly in the engine. instead call QFS_Open (generic) or
QFS_WOpen (write only, zip flag).
rework QFS_NextFilename to use a dstring (avoiding a potential buffer
overflow), support 10000 files and work from the top-level fs_userpath
directory. adjust QFS_WriteFile and QFS_WriteBuffers etc to suit.
make sw32 screenshots actually get written.
hopefully everything gets written to the right places :)
GIB. Added some breakpoint GIB builtins for debugging script/intepreter
interactions. Made carne work properly again (local variables don't
disappear in interactive mode)
of leaf names in a stem variable via %var, the builtin functions 'count'
and 'contains', and an initial interface between qw-server and GIB to allow
querying of clients and their info strings. Also cleaned up the chat event
interface a bit. Renamed a few builtins.
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.
parser a bit to accomodate this. Backslashes in double quotes are now only
removed if they escape a character that can't be written normally, or
another backslash. Removed start position support from string::findsub
since variable slices can be used instead. Added support for regular
expressions in the form of regex::match, regex::replace, and
regex::extract. Checked in regex.c from GNU regex 0.12 for platforms that
do not have regex functions in their standard library. Two minor changes
were made to this file to fix gcc warnings. Prepared the path transform
function for a change to a filesystem rooted at fs_userpath instead of the
current gamedir, but these changes are commented out pending security
considerations.
interpreter struct so that custom cbuf data can be reset after an error.
This fixes a bug where GIB would think it was still waiting for a return
value after an error occurred in an embedded command.
below, or relative above (uses .. to ascend the filesystem). Changed
file functions in GIB to use this. GIB can now be initialized in a
non-sandboxed mode, which at the moment means that GIB scripts run with
carne can access the entire filesystem.