Released with L3DT v2.9 build 14.
Removed 'ExtAPI' namespace, to match Zeolite v2.9.1 API. Zeolite functions are now in root namespace.
Modified string escaping to be handled in ParseCommand , not ParseLiteralString .
Released v2.9.0.0, with L3DT v2.9
Added JIT compiler
Added 'RunScript2' function, which takes options list as arg. Recognised options are:
FileName [string]
WorkingDir [string]
ExternVars [varlist]
Added new functions:
Syntax changes:
<zs:…> syntax replaced by <…>
<m:…> operator replaced by <GetMap…> function
<f:…> operator replaced by <GetFormat…> function
<v:…> operator replaced by <GetVar…> function (for globals)
<cast:…> operator replaced by <cast…> function.
<&:…> operator replaced by & operator.
<*:…> operator replaced by * operator.
'new' and 'delete' functions now behave like C equivalents, via hvar pointers, and using new heap list.
C-like variable name rules are now enforced.
removed 'goto'.
Ended automatic dereferencing of hvars to var arguments; users must now manually reference/dereference.
Bug fixes:
Fixed 'stresc' function, which did not correctly close escaped strings within strings in some cases.
Fixed handling of literal characters.
Fixed casting of characters.
Released v2.7.2.0.
Added 'iseq' (is equal), 'isgt' (is greater than) and 'islt' (is less than) intrinsic functions.
Added 'add', 'sub', 'mul', 'div' 'mod', 'max' and 'min' algebraic functions.
Removed 'newset', 'seta' and 'setv' functions.
Modified 'set' and 'del' to take arg as varref.
Modified 'incr' and 'decr' to take arg as varref, and return int64.
Added 'srand', 'rand', 'frand' and 'absrand' pseudo-random number functions.
Added 'fopen', 'fclose', 'fread', 'fwrite', 'fseek', 'rewind', 'ftell'.
Added 'MessageBox'.
Added 'GetScriptFilename', 'RunScript'.
Released v2.6.1.0, with L3DT 2.7 beta 1.
Added 'goto', 'GetLineNo', 'isdef' intrinsic functions.
Added 'if' / 'else' / 'endif' support.
Added 'do' / 'while' support.
Added support for literals in ‘setv’ intrinsic.
Re-mapped ‘set’ to point to ‘setv’ (was ‘seta’).
Correct line numbers for goto by including empty code lines.
Support auto-casting of variable types.
Released v2.5.4.1 (with L3DT 2.5.4.3)
added 'assert' intrinsic.
added 'GetWorkingDir' and 'SetWorkingDir' functions.
Changed intrinsic functions to work on variable handles:
'del', 'set', 'setv' (arg types changed from string to hVar)
'EditUI' (arg type changed from string to hVar)
'not', 'and', 'or' (arg types changed from string to bool)
'incr', 'decr' (arg types changed from string to variant)
Changed <cast:…> to handle hVars, and removed <castv:…>
Escaped literal string inputs. — this is a breaking change; please check scripts and plugins accordingly.
Released v2.5.3.3 (with L3DT 2.5.3.10)
added new intrinsic functions:
'set', 'setv'
'newset'
'not', 'or', 'and'
'echo'
'EditUI'
'strcat', 'strlen'
added local (non-global) variable stack to scripts, used by with new/set/etc intrinsic and <var:…>
added <cast:…> and <castv:…> opcodes. These support casting to/from bool, byte, sbyte, short, ushort, int, uint, int64, float, double and string. Other types will be supported as required.
added support for more descriptive opcode names:
added support for 'VarID' defines with literal ints.
Released v2.5.3.1 (with L3DT SE 2.5.2.32)
Added exception catching code / error reporting to RunScript function.
added 'new' and 'del' intrinsic functions.
Released v2.3.1.0.
Add <v:…> syntax, to access variables.
Add <v:-new…> syntax, to create variables.
Calls to ZeoScript.RunScript return variables correctly.
Updated to Zeolite v2.3.1.

|