Commit graph

288 commits

Author SHA1 Message Date
Ricardo Luís Vaz Silva
cb1edbde01 restrict internal structs to gzdoom.pk3 2025-04-09 14:21:36 -03:00
Ricardo Luís Vaz Silva
a0592816cd don't allow backing types of string/array/map/etc to be referenced as actual types 2025-04-09 14:21:36 -03:00
Ricardo Luís Vaz Silva
3a24dfcd2e add better descriptive name for vectors/quats 2025-04-09 14:21:36 -03:00
Ricardo Luís Vaz Silva
96a3e8d405 rework how vector local type restrictions are managed 2025-04-09 14:21:36 -03:00
marrub
dcbd66a528
add default cvar getters 2025-02-21 07:18:03 -05:00
Boondorl
5a5bed5c31
Added FindClass
Allows for classes to be looked up during run time without having to use string casting.
2025-02-21 07:17:49 -05: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
Ricardo Luís Vaz Silva
e85ec240bf Store type together with pointers to allow safe substitution 2024-03-28 15:48:23 -04:00
Ricardo Luís Vaz Silva
682dd1b22d Can't narrow down the JIT bug yet, so block JIT for functions that call Function Pointers temporarily 2024-03-22 13:28:02 -03:00
Ricardo Luís Vaz Silva
071b5c5180 fix argument pointer wrapping in function pointers 2024-03-22 13:28:02 -03:00
Ricardo Luís Vaz Silva
d848a57bac Fix readonly for SpecialBounceHit virtual 2024-02-23 07:07:56 +01:00
Ricardo Luís Vaz Silva
bc26c54b15 Fix readonly native structs 2024-02-17 07:23:00 +01:00
Ricardo Luís Vaz Silva
2002396b8b Fix .. to root folder in relative include 2024-01-31 07:48:59 -05:00
Christoph Oelckers
83aa9388ca backend update from Raze
* moving large allocations off the stack
* use proper printf formatters for size_t and ptrdiff_t.
* adding some missing 'noexcept'.
2024-01-06 15:24:10 +01:00
Christoph Oelckers
ec227383ed fixed bad comment with non-UTF-8 extended character which MSVC warns about when compiling with /utf-8 2024-01-02 21:05:31 +01:00
Christoph Oelckers
958303556f warnings and debug code cleanup 2023-12-26 22:16:21 +01:00
Cacodemon345
a368588db6 Export FScanner parser to ZScript as ScriptScanner 2023-12-25 10:52:56 +01:00
Christoph Oelckers
aaea3d52aa fixed more warnings. 2023-12-14 17:22:29 +01:00
Ricardo Luís Vaz Silva
43c70cdf9d JIT-Compile all functions during startup 2023-12-06 17:44:51 -05:00
Ricardo Luís Vaz Silva
74ace89d6e properly serialize int-backed keys for maps 2023-11-25 21:06:39 -05:00
Ricardo Luís Vaz Silva
4ec76afc40 move all doom-specific loops out of common code 2023-11-20 22:11:05 -05:00