Commit Graph

17341 Commits

Author SHA1 Message Date
Christoph Oelckers ac48518abc - merged SuggestMissileAttack back into P_CheckMissileRange.
This was once a virtual function to handle the various monster specific modifiers but this had been changed into properties a long time ago.
2021-08-21 12:37:23 +02:00
Christoph Oelckers d15f450fef - implemented MBF's monsters_avoid_hazards feature.
Both as a map flag for MBF21 support and as an actor flag for better control.
2021-08-21 12:29:24 +02:00
Christoph Oelckers 5382e7c17b - fixed compilation 2021-08-21 12:22:53 +02:00
Christoph Oelckers 8bdd4befbf - replaced deprecated throw() with noexcept in TObjPtr 2021-08-21 12:22:15 +02:00
Christoph Oelckers b1de11dce8 - added a map flag to disable MF6_JUMPDOWN.
Not really useful but since MBF has this we may need it if we support the OPTIONS lump for MBF21 later.
This is intentionally not exposed to MAPINFO.
2021-08-21 11:37:57 +02:00
Christoph Oelckers ff497996a3 - added a per-level AVOIDMELEE flag.
This already existed as a per-actor flag, but for proper MBF support it needs to be settable on a per-map basis as well.
2021-08-21 10:55:22 +02:00
Christoph Oelckers 4614ce41cd - allow passing a remap table to BestColor. 2021-08-21 10:55:21 +02:00
Marisa Kirisame 13bdd324e1 hud models: add nullptr check for psprites without caller. 2021-08-15 08:47:04 +02:00
Christoph Oelckers 109069f718 - removed the unused palette parameter from the V_GetColor family of functions. 2021-08-14 09:57:23 +02:00
Christoph Oelckers c3772fe203 - changed FString API to use ptrdiff_t instead of long for signed size arguments. 2021-08-12 00:45:59 +02:00
Marisa Kirisame 1d96b68e1a Fixed IsHUDModelForPlayerAvailable limitation. 2021-08-11 20:09:25 +02:00
Marisa Kirisame 888eab3063 HUD model tweaks:
- Look up HUD models by referencing the psprite's caller, rather than player's ReadyWeapon.
- Allow Strife hands psprite to be a model.
2021-08-11 20:09:25 +02:00
Christoph Oelckers f34258281f - fixed: crushing stairs must use HexenCrush mode.
This was the default for floors even in Doom, so it must also apply to the stairs.
2021-08-11 19:58:57 +02:00
alexey.lysiuk ed606b8ed3 - extended 2D buffer lifetime to the end of the frame 2021-08-11 19:50:49 +02:00
alexey.lysiuk 387aef27ad - use RefCountedPtr to manage 2D shape buffer infos 2021-08-11 19:50:49 +02:00
alexey.lysiuk 76ecf44549 - added RefCountedBase without virtual destructor 2021-08-11 19:50:49 +02:00
alexey.lysiuk bbcd522052 - made RefCountedPtr follow rule of five 2021-08-11 19:50:49 +02:00
Gutawer 67e7d1a6f5 - make RenderCommands able to use Shape2D vertex buffers past the Shape2D's lifetime without crashing 2021-08-11 19:50:49 +02:00
Christoph Oelckers ccf46281df - fixed line color handling in V_BreakLines.
This cannot use the last color found while reading ahead - it must pick the last color of the string part that just got broken out into its own line when starting the next one.
2021-08-11 16:01:40 +02:00
Christoph Oelckers 139f501ec5 - run the dynamic light recreation loop before calling the light ticker.
This was done afterward which performed some needed cleanup too late.
2021-08-11 15:41:42 +02:00
Christoph Oelckers 1097bd6c73 - fixed: instead of checking gl_lights, better check Level->HasDynamicLights.
Especially in the thinker code this is needed for software rendering.
Strictly speaking, the software renderer should do the same, but it checks r_dynlight in so many places deep in the logic where the level is not available.
2021-08-11 14:09:00 +02:00
Christoph Oelckers 26d00e14c7 - file system update from Raze. 2021-08-11 12:39:32 +02:00
Christoph Oelckers 3adadfe4d3 - do not run the dynamic light ticker when lights are switched off. 2021-08-11 12:39:17 +02:00
Christoph Oelckers f662c629e3 - ensure that shadowmap indices only get set when shadowmaps are enabled.
Having valid indices set when shadowmaps are off would cause the shader to run the full checks for all lights.
2021-08-11 10:06:22 +02:00
Christoph Oelckers 436ec28e94 - fixed file system's zip loader to not strip away a 'filter/' prefix. 2021-08-11 10:01:11 +02:00
Christoph Oelckers c24f644a61 - do not perform shadowmap updates when dynamic lights are disabled. 2021-08-11 08:08:29 +02:00
Christoph Oelckers 6a63d9e70e - moved the CheckForRestart call one level up so that it is within the Windows code and does not need #ifdefs. 2021-08-10 22:17:00 +02:00
Christoph Oelckers 4505bfa4b8 - delay the restart action from the error pane until after everything has been shut down.
This cannot be done from a place where the old instance still can write to the config file, which happens only in the shutdown process.
2021-08-10 22:09:32 +02:00
Christoph Oelckers b6156ac490 - re-fixed the font spacing. 2021-08-10 22:04:32 +02:00
Christoph Oelckers 9cd1e8cf7a - use proper XMove for sheet fonts. 2021-08-10 21:18:27 +02:00
Christoph Oelckers 99c66071fb - use original menu spacing for skill and episode menus if all elements are patches. 2021-08-10 21:08:26 +02:00
Christoph Oelckers f29eff5b4c - fixed: the software scene drawer must be deleted before calling ST_Endoom.
This contains render data that won't get deleted in time before taking down the render backend if not manually performed.
2021-08-10 19:22:19 +02:00
Christoph Oelckers 03b7324f71 - reorder evaluation for 'if' statements to handle the condition first.
Otherwise this won't emit errors if a bad condition is used with an empty conditional part.
2021-08-10 19:03:40 +02:00
Christoph Oelckers a16088f4b4 - fixed two vr_* CVARs not getting archived. 2021-08-10 18:51:44 +02:00
Christoph Oelckers 61efe76ffd - fixed: palette index 0 (transparent) was left uninitialized for BMF fonts. 2021-08-10 18:18:44 +02:00
Christoph Oelckers 4cee567b23 - fixed: P_RoughMonsterSearch did not pass the fov parameter to its worker functions. 2021-08-10 18:04:10 +02:00
Christoph Oelckers 61739b4086 - fixed BlockThingsIterator to not reset its list of processed actors when traversing portals. 2021-08-10 18:00:14 +02:00
alexey.lysiuk 747c291ae1 - fixed patch version in compatibility implementation of macOS detection 2021-08-07 12:37:18 +03:00
alexey.lysiuk a21c388dd6 - destroyed stale thinkers after change level failure
https://forum.zdoom.org/viewtopic.php?t=72890
2021-08-06 15:10:21 +03:00
alexey.lysiuk dcfd72c766 - fixed crash after change level failure
https://forum.zdoom.org/viewtopic.php?t=72890
2021-08-06 15:02:00 +03:00
Cacodemon345 a067466dd8 SDL2: Properly print white bold text to the screen 2021-08-04 20:27:14 +03:00
Christoph Oelckers a8a5613675 - use proper music check in 'idmus' CCMD. 2021-08-03 12:59:10 +02:00
Christoph Oelckers b82b5384a0 - Backend update from Raze.
* voc loader fix.
* better prefix detection in Zip loader.
* SDL Vulkan init.
* disabling of shadowmap management when the feature is off.
2021-08-03 12:52:21 +02:00
Christoph Oelckers c1a8776a15 - updated common code from screenjob branch.
That is, all parts not related to cutscenes.
2021-08-03 12:30:44 +02:00
drfrag f89e6950c3 - Make changemap use + for next and +$ for nextsecret maps. 2021-07-29 10:16:10 +02:00
drfrag 5a0dc4297f - Extend the changemap command to allow warping to next or nextsecret. 2021-07-28 10:24:25 -04:00
alexey.lysiuk 7a3d8bd0e5 - fixed crash after fatal error in SDL backend
https://forum.zdoom.org/viewtopic.php?t=72885
2021-07-28 09:50:34 +03:00
alexey.lysiuk b5247182f4 - fixed premature destruction of status bar
Status bar was already freed while `FCajunMaster::RemoveAllBots()` function may still access it
Status bar is destroyed a bit later in `P_Shutdown()` function

https://forum.zdoom.org/viewtopic.php?t=72843
2021-07-28 09:48:52 +03:00
Cacodemon345 b4fe164192 Search $HOME/.local/share/games/doom directory...
...for soundfonts, IWADs and WAD files.

This partially matches Chocolate Doom behaviour.
2021-07-23 15:51:55 -04:00
Jeroen de Baat 8ac8e31a61 Fix typo in sw renderer comment 2021-07-21 20:58:41 +02:00