Commit graph

13287 commits

Author SHA1 Message Date
Christoph Oelckers
cd28c818b0 - fixed bad hitradius distance calculation.
Player offset was retrieved from the wrong actor here.
2022-12-13 17:19:04 +01:00
Christoph Oelckers
fba882e368 - fixed SE30 moving player twice each step.
With the changes in dd5834444e it was applying movement to the player in both the player and the actor loop.
2022-12-13 16:16:48 +01:00
Christoph Oelckers
f45265352d - added a few class types needed for RR's UFO spawners. 2022-12-13 15:49:09 +01:00
Christoph Oelckers
efd6d2cf07 - fix initialization issues with a few serializer functions. 2022-12-13 14:38:58 +01:00
Kevin Caccamo
4cdb0c3c55 Attempt to fix #787 2022-12-13 14:08:02 +01:00
Christoph Oelckers
4f388c3589 - fixed bad direction setup for vertically moving SE 0.
This also adds missing interpolation for this case.
2022-12-13 13:46:55 +01:00
Christoph Oelckers
5f6cd0da79 - Duke/RR: fixed floor alignment of flames in sloped sectors 2022-12-13 12:01:34 +01:00
Christoph Oelckers
6b0c067d46 - Duke: fixed flames not being floor aligned.
The same code was correct in the RR variant, so it just got copied over.
2022-12-13 11:51:14 +01:00
Christoph Oelckers
13e6718153 - added mapSpawned member to DDukeActor
Duke uses the owner a lot to check if an actor was spawned at map start or in-game, but that depends a lot on stale pointers being maintained, which our garbage collected system does not allow. So this field now serves as a more reliable stand-in for these cases.
No actual changes yet.
2022-12-13 10:36:45 +01:00
Christoph Oelckers
9c1fc93e1c - Exhumed: The ObjectList was not properly garbage collected. 2022-12-13 08:49:56 +01:00
Christoph Oelckers
629dc8e163 - fixed kill counting in Blood. 2022-12-13 08:37:22 +01:00
Christoph Oelckers
87ff99caa1 - fixed typo 2022-12-12 09:26:43 +01:00
Christoph Oelckers
1f7954fc29 - fixed World Tour fallback sound lookup. 2022-12-12 08:25:02 +11:00
Christoph Oelckers
1e249d3536 - fixed bad actor type check. 2022-12-11 20:15:14 +01:00
Mitchell Richters
28b97486cd - SW: For single player games, call PlayerDeathReset() from TerminateLevel() and not DoPlayerDeathCheckKeys().
* This fixes issues where player stats like health, etc are shown onscreen as reset before the entire view reloads.
2022-12-11 19:46:27 +01:00
Mitchell Richters
b8a8164b24 - SW: Don't call DoSpawnTeleporterEffect() upon death.
* This causes an air bubble to spawn above the player for a single tic, even while on land until the level truly restarts.
* Since we're restarting, its better to just not do this.
2022-12-11 19:46:27 +01:00
Mitchell Richters
9b73f46aff - SW: Don't reset player pitch upon death.
* This _somewhat_ addresses #770 by hiding the effects of it.
* Since we re-init `Player::Angles` when a new actor is spawned, this all resets anyway.
2022-12-11 19:46:27 +01:00
Mitchell Richters
7d6eb2bae6 - Remove some pitch/yaw deltaangle additions in lieu of setting the angle directly.
* This deltaangle addition was needed with the old input setup.
2022-12-11 19:46:27 +01:00
Mitchell Richters
c3f276a08a - Tidy up remaining Build angle constants in gamefuncs.h. 2022-12-11 19:46:27 +01:00
Mitchell Richters
de8353f085 - Eliminate BAngToDegree constant. 2022-12-11 19:46:26 +01:00
Mitchell Richters
67b40ee1d5 - Convert angle in hud_drawsprite() to work on true degrees, and in the right direction. 2022-12-11 19:46:26 +01:00
Mitchell Richters
3a1729a9ce - Duke (RR): Final tidy-up of displayweapon_r(). 2022-12-11 19:46:26 +01:00
Mitchell Richters
3eb3a29a7e - Duke: Tidy up animateshrunken(). 2022-12-11 19:46:26 +01:00
Mitchell Richters
c45b755773 - Duke (RR): Tidy up remaining uses of old weapon offset code. 2022-12-11 19:46:26 +01:00
Mitchell Richters
7ec2c1a0fa - Duke (RR): Move displaysaw() lambda to new weapon offsets. 2022-12-11 19:46:26 +01:00
Mitchell Richters
6d9b53af3d - Duke (RR): Move displayblaster() lambda to new weapon offsets. 2022-12-11 19:46:26 +01:00
Mitchell Richters
21fe395c2e - Duke (RR): Move displaytits() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
717955d5ab - Duke (RR): Move displaythrowingdynamite() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
70d7210462 - Duke (RR): Move displaydynamite() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
387e0286ac - Duke (RR): Move displaypistol() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
755e2be0a4 - Duke (RR): Move displayrifle() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
82e9b96174 - Duke (RR): Move displayshotgun() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
c6380bfd7a - Duke (RR): Move displaychicken() lambda to new weapon offsets. 2022-12-11 19:46:25 +01:00
Mitchell Richters
79ae9e1f97 - Duke (RR): Move displaycrossbow() lambda to new weapon offsets. 2022-12-11 19:46:24 +01:00
Mitchell Richters
be439918dc - Duke (RR): Move displaypowderkeg() lambda to new weapon offsets. 2022-12-11 19:46:24 +01:00
Mitchell Richters
40ec46e323 - Duke (RR): Move displaybowlingball() lambda to new weapon offsets. 2022-12-11 19:46:24 +01:00
Mitchell Richters
6193d17dac - Duke (RR): Move displayslingblade() lambda to new weapon offsets. 2022-12-11 19:46:24 +01:00
Mitchell Richters
50c1c5b48d - Duke (RR): Initial hookup of new weapon drawing offsets from the backend, starting with displaycrowbar(). 2022-12-11 19:46:24 +01:00
Mitchell Richters
5d3710d677 - Duke: Always use tsprite pos/angle when used in conjunction with viewvec or viewang.
* This solves the issue of jittery picnum changes when circle-strafing actors at high speeds.
2022-12-11 19:45:38 +01:00
Christoph Oelckers
bea6834f8e - code cleanup. 2022-12-11 19:45:38 +01:00
Christoph Oelckers
3874cf365c - use TEXMAN_ForceLookup where it was missing. 2022-12-11 19:45:38 +01:00
Christoph Oelckers
c1abd6fe22 - rewrote drawtile CVAR handling to render the image larger and allow using aliases. 2022-12-11 19:45:38 +01:00
Christoph Oelckers
97d76a01e4 - SW: do a proper implementation for sprites which do not want texture animations.
Instead of hacking the picanm table it is far more preferable to flag the sprite as non-animating and let the renderer handle it.
2022-12-11 19:45:38 +01:00
Christoph Oelckers
281b102fac - gave all textures that were accessed with their "#0xxxx" name a descriptive names.
Only the fallback fonts were intentionally excluded because these are supposed to get the ART file content.
2022-12-11 19:45:18 +01:00
Christoph Oelckers
58db09969c - moved tileForName out of BuildTiles.
Just pulling one change out of the big upcoming refactor commit.
2022-12-11 19:45:18 +01:00
Christoph Oelckers
630276f7e0 - migrated texture flags parsing from .def to RMAPINFO.
This was the final piece of non-tile-related data to be in there.
.def should be restricted to existing use cases concerning setup of render data, not for game content.
2022-12-11 19:45:18 +01:00
Christoph Oelckers
0bacb05c1b - wrapped hiofs in a getter function.
This makes it a lot easier later to refactor.
2022-12-11 19:45:01 +01:00
Christoph Oelckers
aa58b152ab - use a TArray in BuildTiles for the tile descriptors.
For some reason MSVC wants to put this in the EXE now and the array is quite large.
2022-12-11 19:45:00 +01:00
Christoph Oelckers
71ca2c4677 - eliminate the last remaining references to the tile manager in the core renderer files.
The only thing left is the sky which needs more refactoring first and the tileUpdatePicnum call for sprites which cannot be resolved by the texture manager because Blood has a randomization factor included here.
2022-12-11 19:44:01 +01:00
Christoph Oelckers
e26d9106aa - handle all occurences of tileWidth and tileHeight using spritetypebase::picnum. 2022-12-11 19:44:01 +01:00