Commit graph

4021 commits

Author SHA1 Message Date
Christoph Oelckers
fcf04a7df1 - delete unused variable. 2022-01-13 12:27:40 +01:00
Mitchell Richters
40ffb23b44 - Duke: Directly check the backend input code's crouch_toggle to always remain crouched after pausing, even if the first tic doesn't have input.
* This is needed because unlike the other games, Duke doesn't have any decent state manager for the player like Blood and SW do.
2022-01-13 21:54:56 +11:00
Christoph Oelckers
85cce1128a - do proper handling of the 'no shadow' case for Duke's bad guys.
Using a flag like RedNukem instead of hacking dispicnum, which occasionally does reach the renderer and causes problems.
2022-01-13 00:42:34 +01:00
Christoph Oelckers
a13612ab9b - Blood: allow bad start spots to pass for modern maps.
These can have alternative start spot definitions.
The error will still be printed, though.
2022-01-13 00:21:15 +01:00
Mitchell Richters
f8ffaa4be9 - Blood: Tidy up some missed kWeap constants. 2022-01-12 22:22:54 +11:00
Christoph Oelckers
ddcee4ecbf - split up g_visibility into two variables.
This is preparation for experimenting with the weapon flashes that can be quite annoying with how they brighten distant parts of the level far more than nearby parts.
2022-01-11 00:12:32 +01:00
Christoph Oelckers
da5a92852f - cleanup of Duke's actor flags. 2022-01-11 00:12:32 +01:00
Christoph Oelckers
e892de21ec - preparations for unlimited tsprites.
Right now it is a no-op because Polymost cannot deal with this properly.
2022-01-11 00:12:32 +01:00
Christoph Oelckers
3c54495c58 - Duke: hardened the sound controller a bit by flagging the callsound call from doanimations as most likely terminating.
This allows avoiding unnecessary sound repeats on some doors.
A real fix is not possible with the broken setup here - the sound controller can only implicitly toggle its state so it is likely that improper use is frequent.
2022-01-09 23:03:11 +01:00
Christoph Oelckers
0f925d4cc0 - Duke: fixed monster sight sounds not being played. 2022-01-09 21:25:02 +01:00
Christoph Oelckers
e1661e0de1 - Duke: disabled sound limiting.
This does not work with how the game uses sounds. Unlike Doom the sound engine in DOS Duke has no channel limit so any sound can play as many times as the game deems fit.
2022-01-09 15:18:35 +01:00
Christoph Oelckers
694f44774f - Duke: added missing z-offset in hits.
Among other things, this made throwing pipebombs on slopes misbehave.
2022-01-09 14:43:59 +01:00
Christoph Oelckers
a50430bf68 - Duke: fixed SE02's handling of sloping sectors. 2022-01-09 13:38:10 +01:00
Christoph Oelckers
3c2c53c7e1 - fixed NAM's sniper rifle.
This was using one of WW2GI's apl* variables, but shouldn't.
2022-01-08 21:42:44 +01:00
Christoph Oelckers
415dc5246d - fixed sprting of non-translucent sprites. 2022-01-08 21:18:18 +01:00
Christoph Oelckers
70087ebc12 - fixed: The new renderer still called the Polymost screen finish function.
This led to a second, redundant postprocessing step with incorrect matrix values.
It now calls screen->Update() directly without the unneeded stuff, but this required a bit of reordering in the game code to ensure that the renderer receives the weapon data to display.
2022-01-08 13:50:47 +01:00
Christoph Oelckers
5759bcc1a6 - Duke/RR: removed all in-game assignments to g_visibility.
These are remnants of the software renderer which used it to calculate light fading but with the current hardware renderers none of these ever reach the renderer, the values are never used.
2022-01-08 13:49:06 +01:00
Mitchell Richters
771a84338e - Fix typo in MOVEFTA flag (was NOVEFTA). Thanks Gaerzi! 2022-01-08 22:30:34 +11:00
Christoph Oelckers
a3162f6ccf - renamed testnewrenderer CVAR. 2022-01-07 12:49:41 +01:00
Mitchell Richters
e5bcb8ee61 - Duke: Repair issues with handle_se32() following lost Sgn() call.
* Originated from "- first batch of routing all write access to sectortype::ceilingz and floorz through a function interface.".
2022-01-05 22:45:33 +11:00
Christoph Oelckers
e1d32bdbf5 - removed the error messages in GetOverlapSector(2).
These can actually be triggered in legitimate scenarios by hitscans so just returning 0 looks like the best way of handling it.
2022-01-05 09:23:30 +01:00
Mitchell Richters
eca3c29261 - Duke: Fix nullptr issue in RR's processinput_r(). 2022-01-05 19:22:21 +11:00
Christoph Oelckers
5ff7d45f7f - Duke/RR: better handling for one random kill scenario in the player movement code.
Using the same appoach as EDuke32 - instead of outright killing the player it will first reset its position and retry the pushmove check.
2022-01-05 09:20:54 +01:00
Mitchell Richters
9de4b4753a - Duke: Add nullptr check to haskey(). 2022-01-05 18:05:15 +11:00
Mitchell Richters
b422b049c1 - Duke: Fix bad interp check in RR's dofurniture(). 2022-01-05 10:03:33 +11:00
Mitchell Richters
874f9952f8 - Duke: Fix bad clipmove result check in movesprite_ex_r(). 2022-01-05 09:50:22 +11:00
Christoph Oelckers
47b9de1fb4 - RR: interpolate moving furniture. 2022-01-04 17:18:25 +01:00
Christoph Oelckers
33aee54113 - RR: interpolate jaildoors and minecarts. 2022-01-04 17:18:25 +01:00
Christoph Oelckers
45b88277a3 - Platoon Leader: Set explicit sky offset for the third episode's orange sky. 2022-01-04 17:17:58 +01:00
Christoph Oelckers
8dedcf94d3 - Duke: removed special precaching for sky texture
Due to precomposition these single tiles will never be rendered anyway.
2022-01-04 17:17:58 +01:00
Mitchell Richters
6414a4ce78 - Duke: Add nullptr check to footprints() code. 2022-01-04 22:44:11 +11:00
Christoph Oelckers
468aea78ef - SW: fixed wrong actor being checked in ContinueHitscan. 2022-01-04 12:42:46 +01:00
Christoph Oelckers
2f66377511 - Exhumed: use the loop flag when starting music. 2022-01-04 12:42:45 +01:00
Christoph Oelckers
9c07f05f0f - Exhumed: clear all pointers in the player struct when starting a level. 2022-01-04 12:42:45 +01:00
Christoph Oelckers
78f02fbd55 - avoid larger time jumps in Ramses text scroll. 2022-01-04 12:42:45 +01:00
Christoph Oelckers
8267f327e3 - Exhumed: hide all screen overlays when Ramses is talking. 2022-01-04 12:42:45 +01:00
Christoph Oelckers
894f9a6b0a - Exhumed: fix Ramses text overlay display. 2022-01-04 12:42:44 +01:00
Mitchell Richters
57d54a2105 - Exhumed: Don't force the framerate to reduce to ticrate at end of each level, instead interpolate player's position to prevent draw errors. 2022-01-04 21:43:08 +11:00
Christoph Oelckers
226807db34 - RR: fixed wakeup check logic in movefta.
Essentially the feature must be on for all RR actors and off for all Duke actors.
RR's original logic here to exclude animals was broken and non-functional.
2022-01-04 09:39:55 +01:00
Mitchell Richters
783dd98641 - Duke: Fix nullptr check for Duke and RR that was causing a crash in a glitched spot in RR's E1L1. 2022-01-04 14:00:18 +11:00
Christoph Oelckers
b683c31ef7 - fixed bad GC setup for Blood's collision struct.
This is a union so the pointers must also be conditionally marked based on the union's state.
2022-01-03 16:18:07 +01:00
Christoph Oelckers
9f83fd3575 - SW: added a double deletion guard to KillBreakSprite.
This code can easily run into the case where SpawnShrap kills the actor but then further operations are performed, including deleting it again.
2022-01-03 12:28:25 +01:00
Christoph Oelckers
7915fb7ef1 - allow using "Mario" cheat with a space between name and number. 2022-01-03 07:13:34 +01:00
Mitchell Richters
aee4388a03 - Blood: Add nullptr check to OperatePath() to fix crash in Eviction's sgarage.map. 2022-01-03 10:19:08 +11:00
Christoph Oelckers
00ffc8b6a2 - Blood: fixed vertical wall texture interpolations. 2022-01-02 17:53:07 +01:00
Christoph Oelckers
e302c45a0b Revert "- added two FAFcansee variants that take shorter parameter lists for clearer code."
This reverts commit 29da39dda0.

Something in here was wrong, so back to the start with it.
The positive effect was too small anyway.
2022-01-02 17:35:12 +01:00
Christoph Oelckers
7205319853 - Blood: clean up some variable mess in actFireVector 2022-01-02 17:23:01 +01:00
Christoph Oelckers
1d091ae395 - merged both movefta functions, using the already defined flags instead of explicit picnum checks. 2022-01-02 15:59:24 +01:00
Christoph Oelckers
a6845f55e4 - comments 2022-01-02 15:59:24 +01:00
Mitchell Richters
84e9356bf2 Revert "- Blood: Force synchronised input while a revolving door is busy/in-use."
This reverts commit 232dd5e07a. The true fix was in "- Blood: fixed interpolation of sprites on rotating sectors.".
2022-01-03 01:50:17 +11:00