Commit graph

1056 commits

Author SHA1 Message Date
Christoph Oelckers
25ef58f897 - re-enabled all model specific code in Duke's animatesprites function and removed some remaining software renderer-only code in the engine. 2020-12-01 23:57:39 +01:00
Christoph Oelckers
06a069750f - addressed more type casting issues in SW.
This should cover everything with coordinates.
2020-12-01 19:01:38 +01:00
Christoph Oelckers
39b67b4086 - SW: removed some very dangerous type casting. 2020-12-01 18:30:21 +01:00
Christoph Oelckers
b52668ecdf - SW: added some simple allocation wrappers around common code sequences. 2020-12-01 16:53:29 +01:00
Christoph Oelckers
6dfe869614 - shorten the struct for puser to what actually gets used from it.
This is preparation for making USER more serialization friendly as it was copied to puser.
2020-12-01 16:22:32 +01:00
Christoph Oelckers
ae36ea88c3 - wrap all checks of cl_syncinput in an inline function. 2020-11-30 23:40:16 +01:00
Mitchell Richters
22f7fc93f4 - Exhumed/SW: Move code to trigger synchronised input for edge cases where its needed into gamecontrol. 2020-12-01 07:31:47 +11:00
Christoph Oelckers
a34f5debe8 - route the shared control CCMDs through the game interface instead of registering local variants for each game. 2020-11-29 13:35:09 +01:00
Christoph Oelckers
48b16d5233 - cleanup on player CVAR use. 2020-11-29 13:22:04 +01:00
Christoph Oelckers
a587a1a888 - SW: generalize the resetting of the one-sided flag for pickup items instead of trying to handle each case explicitly.
Fixes #202
2020-11-27 20:21:13 +01:00
Christoph Oelckers
922dc178d6 - SW: interpolate texture panning. 2020-11-26 18:32:37 +01:00
Christoph Oelckers
3d0842d851 - SW: made sector object interpolation more serialization friendly.
This eliminates all the direct pointers to various game data and replaces it by encoded offsets.
2020-11-26 18:32:36 +01:00
Christoph Oelckers
bf4cc9c6af - migrated SW to the common interpolation system.
So far only the existing pieces - animations and sector objects still to do.
2020-11-26 18:32:36 +01:00
Christoph Oelckers
b9477f147e - migrated Duke's interpolations to the common system and added handling for texture scrollers. 2020-11-26 18:32:36 +01:00
Christoph Oelckers
2cd3927613 - use floats for wall panning offsets. 2020-11-26 18:32:35 +01:00
Christoph Oelckers
d545eb7aa9 - make sector panning variables floats and added some convenience wrappers. 2020-11-26 18:32:35 +01:00
Mitchell Richters
00ce61959c - SW: Clean up some Q16.16 angle usage within DoPlayerTurnTurret(). 2020-11-26 17:30:45 +11:00
Mitchell Richters
80ff918b17 - gameinput.h: For PlayerAngle struct methods settarget(), properly set target as angle + delta between angle & target within method and not game-side. 2020-11-26 17:26:29 +11:00
Mitchell Richters
b9e1cbb5de - gamecontrol.h: Move getHalfLookAng() into PlayerAngle struct as look_anghalf().
* Uses internal struct variables at full BAM precision.
2020-11-26 16:37:37 +11:00
Christoph Oelckers
aac4fcefa2 - fixed comment 2020-11-25 00:09:13 +01:00
Christoph Oelckers
6549f05127 - SW: silence an apparently misplaced ambient sound in level 9. 2020-11-24 22:39:50 +01:00
Mitchell Richters
73df144f65 - SW: Fix ladder angle issues.
* Fixes #197.
2020-11-25 07:50:30 +11:00
Christoph Oelckers
169d708547 - removed all remaining uses of tilesiz. 2020-11-23 08:55:02 +01:00
Christoph Oelckers
d60bc8be9f - replaced all remaining uses of tilesiz[].y 2020-11-23 08:39:49 +01:00
Christoph Oelckers
35f3de64f7 - partial cleanup of SW's game.h
inlined several macros, removed some unused ones, replaced a few with one or two uses and simplified some functions to remove 90's optimizations that these days have no positive effect aside from complicating the code.
2020-11-23 08:39:20 +01:00
Christoph Oelckers
3ad37631a6 - SW: fixed several keycards that were accidentally flagged one-sided. 2020-11-22 23:18:45 +01:00
Mitchell Richters
5ba2e7863d - binaryangle.h: Add asbuildf() method to all classes and use where appropriate. 2020-11-22 21:18:12 +01:00
Mitchell Richters
3b3e926fd3 - gameinput.h: For PlayerAngle struct, add int settarget() overload and change one true call with a float to bvectangf(). 2020-11-22 21:18:11 +01:00
Mitchell Richters
ea4ad0548a - All Games: Make use of new addadjustment() overloads in PlayerAngle struct created in 25207e4f1818a5ed38648ce87673329cd75e20e4. 2020-11-22 21:18:11 +01:00
Mitchell Richters
0190a98a10 - Remove calcSinTableValue() inline function and clean up use of PI/fPI and BANG2RAD #defines. 2020-11-22 21:18:10 +01:00
Mitchell Richters
a2ac8cccc1 - buildutils: Replace calcSinTableValue() use within SW with bsinf()/bcosf(). 2020-11-22 21:18:10 +01:00
Mitchell Richters
feb6d023fa - buildutils: Replace sintable[] use within SW's weapon.cpp with bsin()/bcos(). 2020-11-22 21:18:10 +01:00
Mitchell Richters
a7a223c13d - buildutils: Replace sintable[] use within SW's wallmove.cpp with bsin()/bcos(). 2020-11-22 21:18:09 +01:00
Mitchell Richters
a5082d24d9 - buildutils: Replace sintable[] use within SW's track.cpp with bsin()/bcos(). 2020-11-22 21:18:09 +01:00
Mitchell Richters
72f12e19f3 - buildutils: Replace sintable[] use within SW's sprite.cpp with bsin()/bcos(). 2020-11-22 21:18:09 +01:00
Mitchell Richters
09a560cb6d - buildutils: Replace sintable[] use within SW's skull.cpp with bsin()/bcos(). 2020-11-22 21:18:09 +01:00
Mitchell Richters
3d7d31a5b7 - buildutils: Replace sintable[] use within SW's sector.cpp with bsin()/bcos(). 2020-11-22 21:18:09 +01:00
Mitchell Richters
f57372237c - buildutils: Replace sintable[] use within SW's sbar.cpp with bsin()/bcos(). 2020-11-22 21:18:09 +01:00
Mitchell Richters
f1d9c3ea9b - buildutils: Replace sintable[] use within SW's rooms.cpp with bsin()/bcos(). 2020-11-22 21:18:08 +01:00
Mitchell Richters
d0a8f1fbda - buildutils: Replace sintable[] use within SW's ripper2.cpp with bsin()/bcos(). 2020-11-22 21:18:08 +01:00
Mitchell Richters
54d0b4c291 - buildutils: Replace sintable[] use within SW's ripper.cpp with bsin()/bcos(). 2020-11-22 21:18:08 +01:00
Mitchell Richters
f8cd6d2a37 - buildutils: Replace sintable[] use within SW's player.cpp with bsin()/bcos(). 2020-11-22 21:18:08 +01:00
Mitchell Richters
73355edd2b - buildutils: Replace sintable[] use within SW's ninja.cpp with bsin()/bcos(). 2020-11-22 21:18:08 +01:00
Mitchell Richters
32ea54aca3 - buildutils: Replace sintable[] use within SW's morph.cpp with bsin()/bcos(). 2020-11-22 21:18:07 +01:00
Mitchell Richters
512bb29ed9 - buildutils: Replace sintable[] use within SW's mclip.cpp with bsin()/bcos(). 2020-11-22 21:18:07 +01:00
Mitchell Richters
94bd45569c - buildutils: Replace sintable[] use within SW's input.cpp with bsin()/bcos(). 2020-11-22 21:18:07 +01:00
Mitchell Richters
2e4bced7f9 - buildutils: Replace sintable[] use within SW's hornet.cpp with bsin()/bcos(). 2020-11-22 21:18:07 +01:00
Mitchell Richters
85841f5abd - buildutils: Replace sintable[] use within SW's girlninj.cpp with bsin()/bcos(). 2020-11-22 21:18:07 +01:00
Mitchell Richters
f0be96c385 - buildutils: Replace sintable[] use within SW's game.h with bsin()/bcos(). 2020-11-22 21:18:07 +01:00
Mitchell Richters
ffd768ab71 - buildutils: Replace sintable[] use within SW's eel.cpp with bsin()/bcos(). 2020-11-22 21:18:07 +01:00