Commit graph

88 commits

Author SHA1 Message Date
smallmodel
75f8f86f86
Fixed compilation error on some compilers 2023-11-29 00:08:35 +01:00
smallmodel
b10ce9a426
Added GetKey() / SetKey() in con_set's Entry, so ScriptVariable can override it and set the key appropriately 2023-11-28 19:50:19 +01:00
smallmodel
2ac2800ecb
Only archive used variables on the local VM stack 2023-11-28 19:14:09 +01:00
smallmodel
fad555308b
Archive ScriptVM and ScriptThread appropriately 2023-11-27 19:30:40 +01:00
smallmodel
37de859bee
Fixed field var breaking code position on exception 2023-11-14 00:16:09 +01:00
smallmodel
befcedcf58
Fixed OPCODE_STORE_FIELD_REF incorrectly not skipping field on exception
It would cause invalid opcode afterwards.
2023-11-14 00:06:23 +01:00
smallmodel
e8aad97975
Fixed alignment issue on ARM CPUs 2023-11-13 23:28:42 +01:00
smallmodel
1698f6d1bf
The return value of an event must be the first value 2023-11-02 19:53:26 +01:00
smallmodel
7c655944a5
Convert fields name to lower 2023-11-01 19:16:01 +01:00
smallmodel
4695932ea1
Added StoppedNotify()
This fixes scripts waiting for another executing script which fixes Actor being stuck on some animations
2023-11-01 17:31:46 +01:00
smallmodel
7c5c34741c
Added more script trace and initialize state to STATE_EXECUTION in ScriptVM constructor 2023-11-01 16:52:30 +01:00
smallmodel
ff3ee39830
Fixed field name not showing in the exception message 2023-10-31 20:39:28 +01:00
smallmodel
dd1f8bd92a
Compare with STATE_RUNNING instead 2023-10-30 22:46:59 +01:00
smallmodel
57e450a745
Thread state fix 2023-10-27 20:41:47 +02:00
smallmodel
481cd760a9
Added ScriptTrace/GetSourcePos 2023-10-27 20:00:48 +02:00
smallmodel
6d6043775e
Use const unsigned char* for sourcepos 2023-10-27 19:59:29 +02:00
smallmodel
a6e602af1d
Renamed variables in ScriptClass::RemoveThread for more clarification 2023-10-26 20:18:50 +02:00
smallmodel
04a6012e5d
Renamed thread parameters 2023-10-26 20:17:53 +02:00
smallmodel
0f7691c722
Reordered NotifyDelete switch statement for more clarity 2023-10-26 20:17:42 +02:00
smallmodel
f01a0a17c1
Added script traces 2023-10-26 20:13:07 +02:00
smallmodel
b291ab92b6
Fixed script class being always created even when a thread was started in the same group 2023-10-26 20:08:09 +02:00
smallmodel
d757fa6306
Renamed world.cpp and world.h to worldspawn.cpp and worldspawn.h 2023-10-08 00:08:47 +02:00
smallmodel
673a42242d
Formatted source files 2023-10-01 22:47:25 +02:00
smallmodel
3317345d92
Use a const string for target name 2023-10-01 22:45:41 +02:00
smallmodel
f7bfa47f2e
Made ScriptVariable classes part of LightClass 2023-09-13 23:51:33 +02:00
smallmodel
9f6ef14ea1
GetCompiledScript should remain unused 2023-09-13 21:32:58 +02:00
smallmodel
c5a46be23e
Optimized calls to Event() (avoid allocating a new Event when it can be reused) 2023-09-07 18:22:07 +02:00
smallmodel
47a3c0bf55
Optimized event name
Use a static char*, instead of an allocated str
2023-09-07 18:05:49 +02:00
smallmodel
f2ec502dc2
Fixed str allocation 2023-09-04 22:06:13 +02:00
smallmodel
a99a4a3a2b
Clear the top value of a return command, if the listener is NULL 2023-08-30 23:34:29 +02:00
smallmodel
a307450e17
Made sourceLine argument optional to avoid string allocation 2023-08-19 21:12:03 +02:00
smallmodel
1a03288144
SetFastData: Move the ScriptVariable instead of copying it 2023-08-19 20:47:36 +02:00
smallmodel
0c2326480b
Avoid reallocation if the assigned ScriptVariable is the same as the other ScriptVariable 2023-08-19 20:47:14 +02:00
smallmodel
24f3b3bc93
Added anyValue union field 2023-08-19 20:46:42 +02:00
smallmodel
b1753df1ed
Reworked con_set and con_arrayset so that they have their own Entry class 2023-08-19 02:56:51 +02:00
smallmodel
843b49d56b
Allow operator new and operator delete to be called when debugging memory 2023-08-19 02:19:01 +02:00
smallmodel
b9f3ee867b
Fixed switch label with "default" case 2023-08-19 00:57:29 +02:00
smallmodel
f16b992a97
Fixed assignments with case-insensitive event names 2023-08-19 00:57:19 +02:00
smallmodel
9ba5710412
Fixed variable comparison operators with VARIABLE_CHAR 2023-08-19 00:57:02 +02:00
smallmodel
80ab513d76
Fixed size() returning 0 when the type is VARIABLE_NONE (must return -1) 2023-08-18 14:14:32 +02:00
smallmodel
3cc0c41b7b
Added ScriptArrayHolder constructor 2023-08-18 01:42:10 +02:00
smallmodel
2b38a0f48e
Fixed wrong opcode for method event 2023-08-17 21:29:55 +02:00
smallmodel
28de2543ec
Removed listenerVars as it can cause issues 2023-08-17 19:51:53 +02:00
smallmodel
1435489a43
Fixed floats with negative values 2023-08-17 19:17:16 +02:00
smallmodel
23e01fc1a7
Make sure to set m_data.containerValue when copying the value 2023-08-17 17:39:26 +02:00
smallmodel
911d1f1706
Fixed OP_STORE_FIELD and OP_STORE_FIELD_REF 2023-08-17 16:07:38 +02:00
smallmodel
56fba733f3
Always cast targetlist to const array value, so the iteration remains untouched 2023-08-17 03:18:41 +02:00
smallmodel
a3c65ef7e4
Fixed containerValue allocation (mustn't allocate a new one) 2023-08-17 03:18:19 +02:00
smallmodel
73bc196592
Fixed cmd execution while iterating over a target list 2023-08-17 03:04:01 +02:00
smallmodel
8487099264
Fixed crash due to improper ScriptPointer usage 2023-08-17 03:03:40 +02:00