-
IfStringGoTo,
IfValGoTo, and
IfStatGoTo are now working.
-
IfStringRun,
IfValRun, and
IfStatRun are now working. As with
Run, you can now run multiple scripts in a row using a single call to one of these actions; just delimit the names of the individual scripts you wish to run with the vertical bar character (|). These functions no longer automatically interrupt all following actions when successful--instead, there is now a separate action for that called...
-
ClearQueue. When called, ClearQueue immediately clears all actions that have been queued up from the current dialogue branch/script. Use this as the last action in a script to prevent all other actions that were queued up to occur after.
For example, say Branch 0 has the following actions:
<Action>Run/A Script</Action>
<Action>SetStr/ExampleStr,This is what it'll be without ClearQueue</Action>
And
A Script has:
<Action>SetStr/ExampleStr,This is the string as set in A Script</Action>
<Action>ClearQueue</Action>
On branch 0 of the dialogue, both Run and SetStr are queued; when Run is executed, however,
A Script runs its own SetStr and then clears the original SetStr from the queue using ClearQueue. The result:
ExampleStr is set to
This is the string as set in A Script, and is not changed to
This is what it'll be without ClearQueue.
I'm curious: are numerical values in the new engine limited to integers, or are floating-point values supported?
Floating point values are used for a few things--certain things related to skills and procedurally generated items, for instance. As far as character stats, though, everything is in integers. (Integers take less memory and require less processing power to use than floating-point numbers, and they don't accumulate floating-point errors, so I prefer to use them whenever I have the chance.)