Commit graph

22106 commits

Author SHA1 Message Date
f7cjo
f1e6445e82 Add GetSelfObituary 2025-02-20 04:13:56 -03:00
inkoalawetrust
b54da619ad Added spawn origin flags.
- Added new spawn flags that allow for checking if an actor was spawned by the level, the console, or ACS/DECORATE/ZScript.
2025-02-20 04:13:36 -03:00
Boondorl
606bc1d04e Added versioning for Behaviors 2025-02-20 04:12:46 -03:00
Boondorl
7a4927fdf5 Added TransferredOwner virtual
Allows for proper cleaning up of behaviors when moving between Actors. Important for player respawn handling and morphing.
2025-02-20 04:12:46 -03:00
Boondorl
7efd301810 Clean up for Behavior API
Use TObjPtr to improve null checking. Add option to clear only specific kinds of Behaviors. Fixed removal checks while ticking. Don't stop at now-null behaviors when iterating.
2025-02-20 04:12:46 -03:00
Boondorl
1e05bb2a55 Clean up behaviors properly when moving levels
Also adds support for foreach loops with the behavior iterator.
2025-02-20 04:12:46 -03:00
Boondorl
ad87477650 Make DBehavior final
Specifics should be implemented in ZScript.
2025-02-20 04:12:46 -03:00
Boondorl
3d6506df5b Added owner type parameter to iterator 2025-02-20 04:12:46 -03:00
Boondorl
14f7a10ae6 Added global iterator for behaviors
Imported Behaviors to the engine to allow them to properly clean up their level list. Restrict Behaviors from being new'd in ZScript as they need an owner to function.
2025-02-20 04:12:46 -03:00
Boondorl
e27bf38165 Added behavior iterator for Actors
Renamed Readded to Reinitialize.
2025-02-20 04:12:46 -03:00
Boondorl
08de93b2fa Fixed missing ref in MoveBehaviors 2025-02-20 04:12:46 -03:00
Boondorl
f301e6cc0f Improve Behavior Tick() behavior
Collect all objects first to account for the map being modified mid-iteration.
2025-02-20 04:12:46 -03:00
Boondorl
bd60fd7546 Added initial Behavior API
Allows for arbitrary behaviors to be attached to Actors in a way that doesn't require the use of Inventory tokens. This list can't be freely modified nor can it have duplicates meaning it has far better deterministic behavior than using Inventory items for this purpose.
2025-02-20 04:12:46 -03:00
Chronos Ouroboros
7d180069e3 Fix FxExpression::EmitCompare not properly handling constant registers. 2025-02-17 07:53:27 -03:00
Rachael Alexanderson
e01297803a
- language update 2025-02-16 00:29:50 -05:00
Boondorl
fdd2a90545 Fixed ammo and backpack with local items on
Now avoids duplicate calling CreateCopy
2025-02-14 13:43:58 -05:00
Boondorl
a7d4d409a0 Added PlayerRespawning event
Allows denying player respawns for better control on special game modes e.g. Last Man Standing.
2025-02-14 03:49:56 -05:00
Boondorl
567a180d2b Added is3DFloor parameter to SpecialBounceHit
Allows for better plane bounce handling e.g. flipping the normal.
2025-02-11 20:49:39 -03:00
Rachael Alexanderson
047e1e8b74
- remove priority changing code entirely - replace with vid_lowerinbackground which activates FPS capping in background 2025-02-08 21:42:39 -05:00
nashmuhandes
e12ef80745 Add VKDoom's lm_ao and lm_bounce to the UDMF specs 2025-02-08 20:44:02 -03:00
Ricardo Luís Vaz Silva
7eaab2691b fix out-of-bounds array access (again) 2025-02-08 17:55:51 -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
f2ecdc5d96 fix id24 weapons transparency 2025-02-08 15:05:16 -03:00
Ricardo Luís Vaz Silva
fa2f03f60b replace incomplete flags from DECOHACK with projectile combo 2025-02-08 15:05:16 -03:00
Ricardo Luís Vaz Silva
5bc5df8429 fix ammo give/autoaim for incinerator/calamity blade 2025-02-08 14:55:29 -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
33bae944f7 allow optionally skipping initial wipe in in-game intermissions 2025-02-07 20:17:54 -03:00
Ricardo Luís Vaz Silva
206c2291d9 allow cutscenes in intermissions 2025-02-07 20:17:54 -03:00
nashmuhandes
74a04474e1 Smoothly interpolate the player pitch-centering action 2025-02-07 04:57:56 -05:00
Ricardo Luís Vaz Silva
a872097da1 fix out-of-bounds array access 2025-02-04 18:08:30 -03:00
Ricardo Luís Vaz Silva
eb7c99b34a more misc animation fixes 2025-02-04 18:08:30 -03:00
Ricardo Luís Vaz Silva
ec42c77289 fix A_DoChase using the wrong type in non-jit 2025-02-01 10:45:26 -03:00
Rachael Alexanderson
ec8e0e667c
- apparently, this was broken before which is why this neeeded this commit in the first place, but now it's been fixed in the official distribution, which makes this commit unnecessary. Or so I am told.
Revert "make the broken ID24 levelnums work somehow so that Legacy of Rust's intermissions play."

This reverts commit 59b567689a.
2025-02-01 07:38:47 -05:00
Rachael Alexanderson
f21b68c8f6
- revamp priority changing on windows, add cvar i_allowprioritychange to disallow priority changing entirely, allowing batch scripts to dictate GZDoom's process priority 2025-01-31 06:07:14 -05:00
Boondorl
59ac494c19 Make CopyBloodColor readonly
Allows getting blood colors from default Actors.
2025-01-31 05:49:34 -05:00
Ricardo Luís Vaz Silva
987a07bcdf add fuel/calamity blade/incinerator from id24 2025-01-30 13:34:25 -03:00
Ricardo Luís Vaz Silva
e543e26bdc expand deprecation allowance for gzdoom.pk3 2025-01-30 13:34:25 -03:00
Boondorl
d527829ee3 Added NOAUTOOFFSKULLFLY flag
Disables resetting skullfly and state when velocity is zero while charging.
2025-01-30 13:33:33 -03:00
nashmuhandes
5bcbe1718b New "Translatable" property in DECALDEF which is just an alias for "OpaqueBlood" to reflect its general use, and also to support the new translation parameter of A_SprayDecal. "OpaqueBlood" should be considered deprecated. Note that specifying a translation directly in the DECALDEF will be added in future, in another commit. 2025-01-30 13:32:18 -03:00
Boondorl
864fe1f66f Added translation argument for A_SprayDecal 2025-01-30 13:32:18 -03:00
Jon Daniel
3adddd6674 fix compile error missing tarray.h 2025-01-29 20:37:46 -03:00
nashmuhandes
aae8c12cdf Add a particle flag to allow user shaders on the sprites 2025-01-29 17:00:12 -03:00
Adam Kaminski
162ab3c4ec Fixed ACS scripts executing a function from another library that cause a division/modulus of zero from aborting the game. 2025-01-27 21:27:39 -03:00
Boondorl
e0394ef16a Added flags for angle handling on bounce
Allows for keeping the current angle on bounce or modifying the pitch.
2025-01-27 21:27:03 -03:00
Ricardo Luís Vaz Silva
3d2f9e06ed remove bone component cache to decrease memory consumption
caching this is entirely unnecessary, as it changes every frame
2025-01-27 17:04:46 -03:00
Rachael Alexanderson
6ea1b68a1c
- add null check for the defcvars blacklist 2025-01-26 18:45:46 -05:00
Rachael Alexanderson
3c8c484327
- add CVAR_SYSTEM_ONLY flag to automatically blacklist filesystem-related cvars for defcvars. This should be used on any cvar that can be changed by the user that relates to filenames or pathnames 2025-01-24 23:19:31 -05:00
Boondorl
3db1ee9a1e Improvements for VisualThinkers
Added BeginPlay virtual that's called after construction. Added getter for render style in ZScript.
2025-01-24 22:53:19 -05:00
Ricardo Luís Vaz Silva
98b5d8b1d2 add one last missing field from vkdoom 2025-01-24 14:29:38 -03:00
nashmuhandes
27b6cb2f72 Allow passing sound volume to PlayBounceSound in ZScript 2025-01-23 13:54:26 -03:00