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.
* Re-add non-player sector damage.
Reimplements SECMF_HURTMONSTERS and SECMF_HARMINAIR.
* Fixed 3D floor handling for sector damage.
Fixes sector damage to either monsters or players not working on (non-)solid 3D floors.
One line change in r_utility.cpp affecting a custom field.
Orthographic projection sees "more" of the sceen as fov increases, but only up to 180 degrees, after which it will have no effect.
Orthographic projection has no meaning for fov since there is no Frustum. But since this is fundamental to the engine, I am reinterpreting it. Cherno wanted this too.
I'll update the wiki if this gets in.
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.
* Compartmentalized the LookForEnemiesInBlock checks
* Added LookForEnemiesEx().
This function allows for ZScript code to get an array with all enemies of the caller found in range. Using similar sight logic as functions like LookForEnemies().
* Added noPlayers parameter to LookForEnemiesEx().
This parameter allows the function to also find players around it.
* Added VM abort to LookForEnemiesEx().
Prevent crashes by passing a null array by reference.
Fixed the discrepancy where WalkStepTics and RunStepTics were called, well, that. In the terrain struct in both C++ and ZScript. While the terrain parser looked for WALKINGSTEPTIME and RUNNINGSTEPTIME instead.
Also made the parse not multiply these time values by the ticrate to treat them as seconds instead of tics.
Added flags for P_HitWater().
Added optional overridable footsteps for players.
Added an overridable MakeFootsteps() virtual in PlayerPawn. Which allows for adding totally custom footstep logic for players. By default, it comes with a basic footstep system that uses the footstep properties of whatever terrain the pawn is standing on. bMakeFootsteps must be enabled on the pawn for the virtual to run.
Added generic StepSound TERRAIN property.
Added a generic step sound TERRAIN property, for defining foot-agnostic step sounds. Used by the built-in footstep system over the individual foot ones.
Simplified MakeFootsteps().
Also removed a leftover debug message.