Commit Graph

21125 Commits

Author SHA1 Message Date
Christoph Oelckers 096b9cdc4f - fixed. Boom's generalized crushers must stop 8 units above the floor
This required changing the special, so a new one was added to avoid altering Generic_Crusher.
2023-09-15 00:35:20 +02:00
Sally Coolatta 15521e5181 Fix a very rare crash with complex Polyobjects
If all of the worst stars align when compiling Polyobject BSP and splitting a seg into two sets:
- The very first seg in the current set fails all of the metrics for determining which side of a split it is on, and doesn't know which side it should go to. Since there are 0 are in front, it goes to front by default.
- Every other seg in the same set don't fail their metrics, and they all decide they are meant to go to the front side.
- Oops! Now there's nothing in the back side!
I've fixed this by collecting all of the undecided segs in a split, and setting the new side after the other segs. Doing it in the normal loop means there's a non-zero chance the crash prevention will fail depending on how the segs are in memory.

This can technically happen with even the most simplistic Polyobjects, but it becomes more common the more complex it is (add tons of lines, move and rotate it at the same time, so on). Quite an annoying crash since it doesn't always replicate consistently.
2023-09-15 00:13:22 +02:00
Gutawer 23b489960e - put DTA_Localize at the end of the enum for backwards compat with integer usage 2023-09-14 23:24:42 +02:00
Gutawer 44d134298a - add support for not localizing some text functions, and modify menu text fields to use this 2023-09-14 23:24:42 +02:00
Christoph Oelckers 04815f9db4 - let Dehacked set the implicit missile flags. 2023-09-14 23:08:59 +02:00
Christoph Oelckers 79ef78e2b5 - fix ammo consumption of powered up Phoenix Rod. 2023-09-14 22:32:20 +02:00
Christoph Oelckers 727c57583b - add unexplored secret color for overlay automap to the menu 2023-09-14 22:31:49 +02:00
Christoph Oelckers 4fd5f00c4b - made all FileReader implementations 64 bit capable. 2023-09-14 21:45:38 +02:00
Christoph Oelckers 139d1a7eb6 - use wrapping fixed point conversion for SW rendering coordinates. 2023-09-14 20:34:28 +02:00
Christoph Oelckers 6847a9a5c1 - added a nomirrors compatibility handler and applied it to Conf256's CONF55 map.
This is for disabling broken plane reflection setups.
2023-09-14 20:21:35 +02:00
Nikolay Ambartsumov 4ad76f549e When compat_floormove is enabled prevent sector floor from lowering if a thing is stuck in the ceiling (vanilla behavior) 2023-09-14 20:06:51 +02:00
Christoph Oelckers 30c2524742 - validate text data before drawing the console. 2023-09-14 16:45:06 +02:00
Christoph Oelckers ffa7891719 - remove pointless assert. 2023-09-14 16:39:21 +02:00
Professor Hastig a5e1f3bcad - fixed M_GetSavegamesPath for Linux. 2023-09-14 16:31:48 +02:00
Ricardo Luís Vaz Silva 0e70e95fa4 Add Inventory::ModifyBob and Inventory::ModifyBob3D 2023-09-14 16:28:38 +02:00
Ricardo Luís Vaz Silva e61ab4cbe2 Expose OF_Transient to actors as bNoSaveGame 2023-09-14 16:28:23 +02:00
Ricardo Luís Vaz Silva 9f24d8babc Move StartGameDirect from PlayerMenu to Menu 2023-09-14 16:28:08 +02:00
Ricardo Luís Vaz Silva 133fbf1390 Disallow starting a new game during a netgame 2023-09-14 16:28:08 +02:00
Ricardo Luís Vaz Silva 736d38e8c3 add StartGameDirect function 2023-09-14 16:28:08 +02:00
Rachael Alexanderson 6033b054e2 - bump vcpkg version in continuous integration 2023-09-14 08:45:39 -04:00
Rachael Alexanderson e4bf6c229a - update vcpkg base to address vulnerability [CVE-2023-4863](https://nvd.nist.gov/vuln/detail/CVE-2023-4863) 2023-09-14 08:36:48 -04:00
Professor Hastig fbf7d1025a - fixed bad clamp in software renderer
This one can have its upper bound below its lower bound which triggers the validation within std::clamp.

Fixes #2125
2023-09-14 05:11:02 -04:00
Christoph Oelckers 52ec2b2a5b - listsounds CCMD 2023-09-13 21:10:08 +02:00
Christoph Oelckers 0980b53881 - fixed: MBF21's BOSS flag implies NORADIUSDMG. 2023-09-13 20:48:57 +02:00
Christoph Oelckers 2fe0a7c60d - fixed sound issues with DSDHacked.
* forward declarations must be allowed.
* this must disable map-local SNDINFOs because the added sounds would get lost otherwise.
2023-09-13 18:44:14 +02:00
Christoph Oelckers f72da434a8 - fixed: For Dehacked, A_CPosAttack needs to use a hard coded attack sound.
This discrepancy is ancient, so the approach used for the shotgunner does not work here and some hacks are needed to remap the function only for Dehacked.
2023-09-13 17:50:47 +02:00
Professor Hastig 8b31e0d3b6 - fix bad stringpool setup in filesystem.
Doing it in the constructor does not work because InitMultipleFiles will clear everything again before building up the directory so it would always be null.
This triggered another bug in file_directory.cpp which used the constructor's unvalidated parameter.
2023-09-13 16:42:22 +02:00
alexey.lysiuk 5cfdd82e0f - ci: update to clang 10
versions before 9 fails to compile with the following error
/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_tree.h:701:4: error: exception specification of explicitly defaulted move constructor does not match the calculated one

clang 9 fails to link with the following errors
/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/cmath:223: undefined reference to `__expf_finite'
src/rendering/swrenderer/drawers/r_draw_rgba.cpp:1120: undefined reference to `__log2_finite'
src/rendering/swrenderer/drawers/r_draw_rgba.cpp:1120: undefined reference to `__log2_finite'
src/rendering/swrenderer/drawers/r_draw_rgba.cpp:1120: undefined reference to `__log2_finite'
src/rendering/swrenderer/plane/r_flatplane.cpp:183: undefined reference to `__log2_finite'
src/rendering/swrenderer/viewport/r_spritedrawer.cpp:174: undefined reference to `__log2_finite'
2023-09-13 13:57:27 +03:00
alexey.lysiuk 76734201e6 - updated zlib to 1.3
https://www.zlib.net/zlib-1.3.tar.gz
2023-09-13 12:50:42 +03:00
Christoph Oelckers b75a8ed8ff - removed pointless heap allocation that never was freed. 2023-09-11 23:22:24 +02:00
Christoph Oelckers 99f17f2dce - fixed several issues with parsing DSDhacked 2023-09-11 23:22:24 +02:00
Christoph Oelckers 7f61266621 - fixed memory leaks in file system management 2023-09-11 23:22:24 +02:00
Christoph Oelckers bdd02d9b2c - implemented the remaining dynamic structures of dsdhacked 2023-09-11 23:22:24 +02:00
Christoph Oelckers 24d57b58c5 - dsdhacked: Allow dynamic creation of new actors 2023-09-11 23:22:24 +02:00
Christoph Oelckers b44741b8aa - dsdehacked: allow dynamic creation of new states. 2023-09-11 23:22:23 +02:00
nashmuhandes 99983b37ca Update ZDRay UDMF specs and remove deleted features. 2023-09-11 20:09:16 +02:00
Ricardo Luís Vaz Silva 0243efd851 Fix pointer math in FileSystem to stop debug assertions in std::vector 2023-09-11 04:41:00 -04:00
Christoph Oelckers a44f7a72ca - fixed voxel loader 2023-09-10 21:31:53 +02:00
Christoph Oelckers f6c3ce6b15 - fixed several line ID functions accessing the sector tag array. 2023-09-10 11:45:23 +02:00
Ricardo Luís Vaz Silva bf0e74447d add float.equal_epsilon and double.equal_epsilon 2023-09-07 10:19:10 -04:00
mc776 86ca0cbecd lights: update for Freedoom.
- new FloatingSkull light.
- use armour primary colours instead of red for both, with the red gem having its separate light.
- give subtractive pulselight to blursphere.
2023-09-07 10:18:04 -04:00
Romain Tisserand 06f13006ca Allows building gzdoom with Vulkan with either X11 or Wayland WSI integration through CMake options 2023-09-07 10:17:12 -04:00
Christoph Oelckers de770faeb1 - disabled nosectionmerge because it doesn't work right. 2023-09-06 21:47:20 +02:00
Christoph Oelckers e7a79b0d44 - string conversion fixes 2023-09-06 00:19:36 +02:00
Christoph Oelckers 17ab6e851a - make sure that FileWriter::Printf never writes null characters. 2023-09-03 23:48:42 +02:00
Christoph Oelckers ef8fd472a8 - fixed bad virtual override in FSheetTexture. 2023-09-03 19:52:53 +02:00
Christoph Oelckers 351e0d7ed9 - removed obsolete CMake version requirements.
Most were still at 3.1 which prompts noisy warnings from up-to-date CMake versions.
Version requirements have been removed entirely from dependent subprojects, all others were upped to 3.16.
2023-09-03 09:04:17 +02:00
Christoph Oelckers 4baabf98c4 - use stb-image for JPEG decoding.
the statically provided library did not provide any advantage over it whatsoever and even libjpeg-turbo's better performance cannot really play out here so ease of use and getting rid of a dependency wins.
2023-09-03 08:34:58 +02:00
Ricardo Luís Vaz Silva d0a955fef0 Allow disabling colors for NameAllKeys 2023-09-01 18:25:22 +02:00
inkoalawetrust 520b6af947 Added some null pointer checks to prevent crashes. 2023-08-31 19:51:06 +02:00