Ricardo Luís Vaz Silva
d8651420cc
fix parameter/return checking
2025-04-01 17:19:03 -03:00
Ricardo Luís Vaz Silva
278bd0fb7d
finish implementing VMCallSingle
2025-04-01 17:19:03 -03:00
Ricardo Luís Vaz Silva
1f1c271883
VMCallScript -> VMCallSingle
2025-04-01 17:19:03 -03:00
MajorCooke
6f3032dc54
Exported:
...
* GetLumpContainer
* GetContainerName
* GetLumpFullPath
for WADS struct, useful for debugging custom-made parsers and identifying where problems may arise.
All credit goes to Jay for the code.
2025-03-30 20:36:13 -03:00
Magnus Norddahl
92cc96a672
Add VMCallScript template for calling ZScript functions with type checking
2025-03-20 00:10:50 -03:00
Magnus Norddahl
b4c3d2331e
Fix memory leak in mixins
2025-03-20 00:10:50 -03:00
Ricardo Luís Vaz Silva
c82c6bff16
fix function-pointer cast parsing
2025-03-07 17:22:24 -03:00
Ricardo Luís Vaz Silva
b0889b9814
Fix deprecation version checks on class fields/pointers
2025-03-06 08:59:02 -03:00
Ricardo Luís Vaz Silva
909d211137
rename vm internal structs to make room for compilation-unit-internal structs/classes
2025-03-05 12:07:19 -03:00
Ricardo Luís Vaz Silva
0d963166f1
Allow >> in parser for aggregate types
...
makes stuff like Array<Class<X>> parse properly (bit hacky but can't do much better without restructuring the scanner/lexer)
2025-03-05 12:07:19 -03:00
Ricardo Luís Vaz Silva
7685553af8
4.14.1 accepts 4.15, bump version to 4.15.1
2025-03-03 08:28:59 -03:00
Ricardo Luís Vaz Silva
02523b1f90
restrict internal structs to gzdoom.pk3
2025-03-02 17:48:03 -03:00
Ricardo Luís Vaz Silva
93c8af32ca
allow deprecation of classes/structs, deprecate Dictionary
2025-03-02 17:48:03 -03:00
Ricardo Luís Vaz Silva
35c44c7e21
don't allow backing types of string/array/map/etc to be referenced as actual types
2025-03-02 17:48:03 -03:00
Ricardo Luís Vaz Silva
e8b7a30a79
add better descriptive name for vectors/quats
2025-03-02 17:48:03 -03:00
Ricardo Luís Vaz Silva
6b8736fb30
rework how vector local type restrictions are managed
2025-03-02 17:48:03 -03:00
Ricardo Luís Vaz Silva
ad579a8e43
add unsafe clearscope, to allow declaring clearscope fields outside of gzdoom.pk3
2025-02-20 04:18:29 -03:00
Ricardo Luís Vaz Silva
7e86116ab1
make const actually work, and add unsafe(const) for old behavior
2025-02-20 04:18:29 -03:00
Boondorl
236c9b4224
Added FindClass
...
Allows for classes to be looked up during run time without having to use string casting.
2025-02-20 04:14:18 -03:00
marrub
9f6c1d65c5
add default cvar getters
2025-02-20 04:14:07 -03:00
Chronos Ouroboros
7d180069e3
Fix FxExpression::EmitCompare not properly handling constant registers.
2025-02-17 07:53:27 -03:00
Ricardo Luís Vaz Silva
bfd9b6f720
add static function to convert ints to names
2025-02-08 16:49:00 -03:00
Ricardo Luís Vaz Silva
fcc2fc65de
change id type fixes version from 4.15 to 4.14.1
2025-02-08 10:56:55 -05:00
Ricardo Luís Vaz Silva
e543e26bdc
expand deprecation allowance for gzdoom.pk3
2025-01-30 13:34:25 -03:00
Ricardo Luís Vaz Silva
61df13306f
fix DScriptScanner
2025-01-11 09:31:20 -03:00
Rachael Alexanderson
f3b0c3ac5e
- Roll back filesystem changes. These were causing instabilities in the master branch that were interfering with development.
2025-01-04 11:27:21 -05:00
Ricardo Luís Vaz Silva
bdddfcc80a
allow nullptr with spriteid/textureid/translationid (for default parameters/etc)
2024-12-21 04:33:25 -05:00
Ricardo Luís Vaz Silva
d36fa3c36b
add helper methods to Sound/SpriteID/TranslationID
2024-12-21 04:33:25 -05:00
Ricardo Luís Vaz Silva
eefad0764e
fix TranslationID casting
2024-12-21 04:33:25 -05:00
Ricardo Luís Vaz Silva
e82c7d2428
remove "DECORATE" from error string
...
* print warning count as well
* allow treating warnings as errors
2024-12-13 16:46:48 -03:00
Ricardo Luís Vaz Silva
325817afdf
remove version check for array type fix, to prevent crashes/etc with bad types
2024-12-12 15:18:53 -05:00
Christoph Oelckers
d1abc3eb8c
renamed things in file system to reduce Doom specific terminology.
2024-11-24 18:05:11 +01:00
Christoph Oelckers
634a646c2d
take namespace enum out of namespace and added CheckNumForAnyName and CheckNumForFullNameInFile to clarify the meaning of CheckNumForFullName.
...
This is to take some renaming noise out of the upcoming refactoring.
2024-11-24 17:59:16 +01:00
Christoph Oelckers
ba2800d698
renamed GetFileFullName to GetFileName
2024-11-24 17:59:15 +01:00
Christoph Oelckers
e0778e23eb
M_SaveDefaults is also not part of the common engine backend.
2024-11-23 20:39:23 +01:00
Boondorl
597b06ae52
Added CRandom functions
...
Unique RNG namespace for client-side effects and HUDs. Identifiers for these cannot clash with identifiers that affect the playsim making them completely safe to use in HUD elements. They also won't be saved.
2024-11-15 23:56:23 -03:00
Boondorl
d85d04f421
Fixed crash on functions with missing return values
2024-11-05 01:02:19 -05:00
Christoph Oelckers
a14bba3561
Check array size for overflow.
...
Since ZScript is a 32 bit VM, the largest safe value for an array's physical size is 2GB. Any larger value will be destroyed by the compiler which relies on signed 32 bit values too much.
2024-10-25 08:47:19 +02:00
Christoph Oelckers
ee6991e6d8
Do a check if a local variable exceeds the available stack space.
...
Windows stack is 1 MB so play it safe and allow 512 kb as max. stack space for a single function.
2024-10-25 07:55:17 +02:00
Kaelan
81f2bef4ac
Further cleanup as per recommendations
2024-10-16 00:39:32 -03:00
Kaelan
b4d214a0cf
add PARAM_PROLOGUE
2024-10-16 00:39:32 -03:00
Kaelan
9d725276ac
Add manual config saving to CVar struct
...
Allows for calling to save custom cvars manually to ensure they're reliably stored. As is, the only way to ensure that cvars are saved is to safely/manually close out GZDoom, meaning if a crash occurs, that data is lost.
THis is very detrimental to mods/standalone projects that rely on CVars for storing custom data, and or data that transcends save games.
2024-10-16 00:39:32 -03:00
Christoph Oelckers
f0676cdf01
fixed a few memory leaks
2024-10-05 10:22:05 +02:00
Christoph Oelckers
3798fd815f
the MISSILE(EVEN)MORE flags still need to be accessible by ZScript for backwards compatibility.
...
Since these do not exist anymore an internal interface to Handle/CheckDeprecatedFlags was added.
2024-10-03 12:32:09 +02:00
Boondorl
1e96ed31aa
Exported DPrintf
...
Allows for custom debug message handling using the built-in
2024-09-29 17:56:16 -04:00
Rachael Alexanderson
3524d06813
- export FFont::GetChar() to ZScript
2024-09-20 20:00:01 +02:00
Ricardo Luís Vaz Silva
461c2f77b7
restrict new relaxed named arguments to zscript >= 4.13
2024-06-03 10:52:07 -03:00
Ricardo Luís Vaz Silva
20cf8befbf
Rework named arguments
...
Now allows arguments to be in any arbitrary position, and allows required arguments to be named
2024-06-03 10:52:07 -03:00
Christoph Oelckers
ebd4ebf298
StringTable cleanup and improvements
...
cleaned up function interface to avoid referencing the file system in the worker functions.
replaced StringTable's operators with functions.. The main reason is that these are far easier to look up when browsing the source.
This also fixes a premature translation in SBARINFO that was done in the parsing stage, not the printing stage.
2024-04-21 10:34:44 +02:00
Ricardo Luís Vaz Silva
949cd5b746
Fix let ignoring const-ness
2024-04-19 13:28:18 -03:00