Commit graph

19506 commits

Author SHA1 Message Date
Christoph Oelckers
28dab3889b - moved the handling of ending PowerWeaponLevel2 into PlayerPawn.Tick and restored the immediate weapon switch.
This got changed because switching weapons in EndPowerup is not safe - this can be called from weapon states where the player can end up with a different weapon being active than the one running the state.
The actual weapon switch has to be delayed until the state processing has ended.
2021-05-19 17:59:44 +02:00
Christoph Oelckers
af137dbb35 - reset the 'playedtitlemusic' flag in D_StartTitle.
When returning to the title loop the music should play once again.
2021-05-19 16:43:01 +02:00
Cacodemon345
14ffe3537f Clear CMAKE_REQUIRED_FLAGS if backtrace facility isn't found 2021-05-18 22:47:33 +03:00
Rachael Alexanderson
cfc080e37f - never run the shader timer on the 0th frame. fixes this bug: https://forum.zdoom.org/viewtopic.php?f=2&t=62693 2021-05-18 14:37:05 -04:00
Christoph Oelckers
8a4fa8b65f - backend update from Raze. 2021-05-17 20:44:19 +02:00
Christoph Oelckers
97b8c0ccfb Revert "- fixed some uses of postincre,ment/decrements on narrow types."
This reverts commit 668f8f2cf6.

Revert "- added a proper error message when '--' or '++' gets used on 8 or 16 bit values."

This reverts commit a94f5dd1b3.

None of this was necessary - the triggered assert was bogus and had to be removed.
2021-05-17 18:13:30 +02:00
Christoph Oelckers
6ebe30ce44 - fixed time positioning on stat screen.
This was still a hard coded offset, but with a two-line time display it needs to be dynamic in case the font is too tall.
2021-05-17 12:21:38 +02:00
Christoph Oelckers
6e9c85791c - pick the proper dot for cutting off the extension in ExtractFileBase. 2021-05-17 13:11:41 +02:00
Christoph Oelckers
6071cf66cc - added proper string labels for Doom 2 episodes. 2021-05-17 13:02:01 +02:00
Christoph Oelckers
5bf2a26b82 - removed bogus assert from FxMinMax.
This would also trigger on signed/unsigned mismatches which it is not supposed to do.
2021-05-17 12:48:22 +02:00
Christoph Oelckers
0b5b919352 - let the CSV parser for the string table handle hex escapes. 2021-05-17 12:42:45 +02:00
Christoph Oelckers
668f8f2cf6 - fixed some uses of postincre,ment/decrements on narrow types.
THe VM has no opcode for this, all these places produced code with undefined behavior.
2021-05-17 12:42:22 +02:00
Christoph Oelckers
a94f5dd1b3 - added a proper error message when '--' or '++' gets used on 8 or 16 bit values. 2021-05-17 12:27:27 +02:00
Christoph Oelckers
f4143f7624 - added a few missing statusbar constants- 2021-05-17 12:07:10 +02:00
Christoph Oelckers
161f3a3c07 - don't display keys on the HUD in deathmatch. 2021-05-17 12:06:44 +02:00
Christoph Oelckers
5077973012 - fixed A_CheckTerrain's check for instant death sectors.
This was still checking the sector special even though this had been reactored 5 years ago.
2021-05-17 12:00:16 +02:00
Christoph Oelckers
ebbc94280e - fixed: The PrisonPass's TryPickup method did not properly report successful pickup. 2021-05-17 11:51:06 +02:00
Christoph Oelckers
e47671c865 - make the title music only play once, unless a real demo is successfully played. 2021-05-17 11:41:43 +02:00
alexey.lysiuk
aaf8323eb2 - updated continuous integration settings
* Restored Clang 6 target by removing GCC 11 because its libstdc++ cannot be used with older compilers
* Replaced GCC 10 with 11
2021-05-15 10:54:11 +03:00
nashmuhandes
e2d3f26a35 Fixed wrong alpha value being applied on sprite shadows in the hardware renderer. 2021-05-12 10:48:51 -04:00
alexey.lysiuk
ddcf1535a6 - disabled clang 6 in continuous integration
I cannot reproduce this compilation error with up-to-date Ubuntu 20.04
2021-05-12 14:44:53 +03:00
Christoph Oelckers
31b1d760b1 - include fix. 2021-05-12 09:58:26 +02:00
Cacodemon345
c1c4066c76 SDL: Report Vulkan initialization errors 2021-05-09 22:57:00 +03:00
Christoph Oelckers
cf3c573222 - give the first 16 DEHEXTRA states proper content.
No idea where this BLD2 stuff came from...
2021-05-07 23:03:46 +02:00
Rachael Alexanderson
bc15ded2a1 - make DI_ALPHAMAPPED change the style to STYLE_Shaded in the status bar drawer 2021-05-07 03:41:41 -04:00
Christoph Oelckers
c51af868de Revert "- restricted the portal rendering shortcut only to real skies in the primary layer."
This reverts commit b193e582ce.

This made the one thing I hoped it would fix even worse so it's useless.
2021-05-07 09:05:56 +02:00
Rachael Alexanderson
bb58dedff2 this fix was requested here: https://forum.zdoom.org/viewtopic.php?p=1188347#p1188347 2021-05-04 07:59:13 +02:00
Christoph Oelckers
3477d6c7c1 - added missing default values. 2021-05-03 14:33:40 +02:00
Christoph Oelckers
52554dc32c - Backend update fron Raze, mainly new script exports and extensions. 2021-05-03 14:13:03 +02:00
Christoph Oelckers
b193e582ce - restricted the portal rendering shortcut only to real skies in the primary layer.
This won't work properly with sector portals that contain other portals because those setups require a proper stencil to work as expected.
2021-05-03 13:58:46 +02:00
alexey.lysiuk
66e220ff9c - removed SDL2 version check
https://forum.zdoom.org/viewtopic.php?t=72152
2021-05-03 08:20:01 +03:00
alexey.lysiuk
80ba522b20 - brought back old SDL2 CMake module
https://forum.zdoom.org/viewtopic.php?t=72152
2021-05-02 22:02:35 +03:00
alexey.lysiuk
1efb9f4def - cleaned and minimized SDL2 version check 2021-05-02 13:05:20 +03:00
Cacodemon345
e4ada10e78
Remove support for SDL2 2.0.5 and earlier 2021-05-02 12:59:38 +03:00
William Breathitt Gray
f676cd81d2 Remove FindSDL2 find-module, use sdl2-config.cmake instead
This requires SDL >= 2.0.4.

Since <https://bugzilla.libsdl.org/show_bug.cgi?id=2464> was fixed in
SDL 2.0.4, SDL behaves as a CMake "config-file package", even if it was
not itself built using CMake: it installs a sdl2-config.cmake file to
${libdir}/cmake/SDL2, which tells CMake where to find SDL's headers and
library, analogous to a pkg-config .pc file.

As a result, we no longer need to copy/paste a "find-module package"
to be able to find a system copy of SDL >= 2.0.4 with find_package(SDL2).
Find-module packages are now discouraged by the CMake developers, in
favour of having upstream projects behave as config-file packages.

This results in a small API change: FindSDL2 used to set SDL2_INCLUDE_DIR
and SDL2_LIBRARY, but the standard behaviour for config-file packages is
to set <name>_INCLUDE_DIRS and <name>_LIBRARIES. Use the CONFIG keyword
to make sure we search in config-file package mode, and will not find a
FindSDL2.cmake in some other directory that implements the old interface.

In addition to deleting redundant code, this avoids some assumptions in
FindSDL2 about the layout of a SDL installation. The current libsdl2-dev
package in Debian breaks those assumptions; this is considered a bug
and will hopefully be fixed soon, but it illustrates how fragile these
assumptions can be. We can be more robust against different installation
layouts by relying on SDL's own CMake integration.

When linking to a copy of CMake in a non-standard location, users can
now set the SDL2_DIR or CMAKE_PREFIX_PATH environment variable to point
to it; previously, these users would have used the SDL2DIR environment
variable. This continues to be unnecessary if using matching system-wide
installations of CMake and SDL2, for example both from Debian.

This is based on the patch written by Simon McVittie for OpenJK:
52030235f0
2021-05-02 12:45:45 +03:00
Rachael Alexanderson
153968dc7c - change vid_allowtrueultrawide - -1 allows for any arbitrary ratio for hud aspects, 0 changed to old behavior (max 16:9), 1 changed to old behavior except at 21:9, 1 is now the default.
- `vid_allowtrueultrawide` is now placed in game-specific config, instead of global.
2021-05-02 01:25:21 -04:00
nashmuhandes
ff35ea9ac7 Don't print the weapon tag if the game is paused 2021-04-27 00:07:24 +02:00
nashmuhandes
afd7b2e954 Allow settable render styles for status bar drawing functions DrawTexture, DrawImage and DrawString 2021-04-26 23:04:39 +02:00
nashmuhandes
c12a671b3e Made OptionMenuSliderBase::IsGrayed virtual 2021-04-26 23:02:35 +02:00
alexey.lysiuk
8695325383 - fixed saving game to wrong save slot
This is a temporary solution as it makes GZDoom and Raze code bases incompatible

https://forum.zdoom.org/viewtopic.php?t=72085
2021-04-26 09:46:20 +03:00
Rachael Alexanderson
a2d3dbf74e - Change VKHardwareTexture::CreateTexture to allow a null buffer to be passed. This is used by the software renderer to create an arbitrary texture for screen rendering. 2021-04-25 02:06:40 -04:00
nashmuhandes
bfb83abbc2 Default Heretic's, Hexen's and Strife's default screen wipe styles to match their original counterparts. 2021-04-24 22:46:03 -04:00
nashmuhandes
57e6d84d46 Expose sprite shadow options to the Display menu 2021-04-24 22:40:54 -04:00
nashmuhandes
15159a3c19 Add sprite shadows for the hardware renderer 2021-04-24 22:40:54 -04:00
nashmuhandes
5446a1a355 Add sprite shadows for the software renderer 2021-04-24 22:40:54 -04:00
Marisa Kirisame
a172513535 Expose level_info_t to scripting + helper functions. 2021-04-24 22:37:50 -04:00
James Le Cuirot
90381c4ad6 Allow ACS SpawnDecal zoffset and distance args to be fixed point
The wiki currently says they should be fixed point but the code
currently treats them as integers. Given that they are placed with
double precision horizontally, it is odd that the same precision
cannot be applied vertically. Changing this would break existing maps
so add two flags to support both types.
2021-04-24 14:37:20 -04:00
Nikolay Ambartsumov
cf30982ddf Add Polyobj_StopSound special 2021-04-24 15:31:04 -03:00
alexey.lysiuk
4bcea0ab78 - handle empty command names when getting key binds
See https://github.com/Realm667/WolfenDoom/issues/498
2021-04-19 18:09:20 +03:00
alexey.lysiuk
de0361842f - removed useless initializations in binds printing ACS code
variables are initialized by FKeyBindings::GetKeysForCommand() anyway
2021-04-19 18:05:52 +03:00