Commit graph

6840 commits

Author SHA1 Message Date
Christoph Oelckers
7470286d5b - Exhumed: Switch sounds must use CHANF_LISTENERZ because they use no z-coordinate for their position. 2020-11-24 00:14:32 +01:00
Christoph Oelckers
8cbd67974e - Exhumed: fixed typo in player taunt code. 2020-11-23 19:32:12 +01:00
Christoph Oelckers
2fda1b9d52 - Exhumed: fixed positioning of the player's scream sound.
This was played on the wrong actor - the calling code passed 0 instead of the player's actual sprite index.
2020-11-23 18:38:58 +01:00
Christoph Oelckers
5a5f9b8e02 - backend update from GZDoom. 2020-11-23 15:54:06 +01:00
Mitchell Richters
4ad227c7d6 - Blood: Remove orphaned/unincluded loadsave.h header file. 2020-11-23 22:47:43 +11:00
Christoph Oelckers
88666c3e95 - Blood: always compare xsector and xwall serialization against a null base to reduce file size. 2020-11-23 12:23:19 +01:00
Christoph Oelckers
48049d5548 - Blood: fixed AIState and posture data serialization 2020-11-23 10:18:47 +01:00
Christoph Oelckers
9a4073508d - Blood: Savegame fully transitioned to JSON
not tested yet.
2020-11-23 09:53:58 +01:00
Christoph Oelckers
572d3c9944 - Blood: serialize player as JSON. 2020-11-23 09:53:58 +01:00
Christoph Oelckers
13eae3a7bd - a bit more cleanup 2020-11-23 09:53:58 +01:00
Christoph Oelckers
fde6407266 - removed the local duplication of the player name in Blood.
Using the global CVAR instead - once multiplayer support is in this will work for all players.
2020-11-23 09:53:58 +01:00
Christoph Oelckers
0c6318aed9 - renamed team variables to something meaningful. 2020-11-23 09:53:58 +01:00
Christoph Oelckers
4950a5e963 - Blood: serialize mirrors as JSON and renamed the 3 atxx variables in here. 2020-11-23 09:53:57 +01: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
6b889cbb77 - port from NBlood: Show all available powerups in HUD. 2020-11-23 07:49:36 +01:00
Mitchell Richters
3f14886830 - binaryangle.h: Return BAngToBAM() as int64_t to handle signed values without overflowing on unsigned values. 2020-11-23 10:49:47 +11:00
Mitchell Richters
ea2e4051f1 - Duke (RR): Fix incorrect inline call for angAdjustment following changes in ea4ad0548a. 2020-11-23 10:44:38 +11:00
Mitchell Richters
b65326dc22 - Duke (RR): Fix weapon swaying after copy-paste issue originating from 5172c43e71. 2020-11-23 10:24:43 +11:00
Christoph Oelckers
bbf1352db1 - replaced approx 1/3 of all accesses to the tilesiz wrapper class. 2020-11-23 00:18:30 +01:00
Mitchell Richters
fc359065ae - Duke: Tune level end summary screen text positioning.
* Number positioning was 1 px off for some items such as `TXT_YourTime`.
* Positioning of number and text was 1px off for some items such as `TXT_3DRTIME` and `TXT_EnemiesLeft`.
2020-11-23 09:36:05 +11:00
Christoph Oelckers
3ad37631a6 - SW: fixed several keycards that were accidentally flagged one-sided. 2020-11-22 23:18:45 +01:00
Mitchell Richters
89048c8e70 - binaryangle.h: Use cmath.h functions for binangle/lookangle trig methods as well. 2020-11-23 08:40:18 +11:00
Christoph Oelckers
b89cd6d14c - cleanup on binaryangle.h
* why the reference parameters? These should be passed by value.
* removed the < and > operators from binangle class because angles should not be ordered.
* instead of calling the CRT trig functions, use the ones from cmath.h which are more reliable
2020-11-22 21:54:39 +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
e57d6f8785 - Duke: Fix crane's angle settarget() call.
* Fixes #185.
2020-11-22 21:18:12 +01:00
Mitchell Richters
c42771228d - binaryangle.h: Reverse order of binangle and lookangle classes and declare binangle class a friend of lookangle.
* In-prep for addressing #185.
2020-11-22 21:18:11 +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
2341ed4e25 - gameinput.h: For PlayerAngle struct, add extra addadjustment() overloads to remove type conversions game-side, and when incoming. 2020-11-22 21:18:11 +01:00
Mitchell Richters
35845a63e2 - binaryangle.h: Expand all classes with bit-shift operators and binangle/lookangle classes with some lt/le/ge/gt bools to have parity with the fixedhoriz class. 2020-11-22 21:18:11 +01:00
Mitchell Richters
42689e02c4 - gameinput.cpp: Define getincanglebam() and slightly clean up other getincangle*() functions. 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
6b66a958d0 - buildutils: Replace calcSinTableValue() use within Exhumed with bsinf()/bcosf(). 2020-11-22 21:18:10 +01:00
Mitchell Richters
5172c43e71 - buildutils: Replace calcSinTableValue() use within Duke with bsinf()/bcosf(). 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
Mitchell Richters
e60747a913 - buildutils: Replace sintable[] use within SW's draw.cpp with bsin()/bcos(). 2020-11-22 21:18:06 +01:00
Mitchell Richters
c2c49bd0b9 - buildutils: Replace sintable[] use within SW's coolg.cpp with bsin()/bcos(). 2020-11-22 21:18:06 +01:00
Mitchell Richters
4192416268 - buildutils: Replace sintable[] use within SW's bunny.cpp with bsin()/bcos(). 2020-11-22 21:18:06 +01:00
Mitchell Richters
156709d6bf - buildutils: Replace sintable[] use within SW's ai.cpp with bsin()/bcos(). 2020-11-22 21:18:06 +01:00
Mitchell Richters
772635e351 - buildutils: Replace sintable[] use within SW's actor.cpp with bsin()/bcos(). 2020-11-22 21:18:06 +01:00
Mitchell Richters
ad814f66b0 - buildutils: Replace sintable[] use within Duke's spawn.cpp with bsin()/bcos(). 2020-11-22 21:18:06 +01:00
Mitchell Richters
d6a094dcdd - buildutils: Replace sintable[] use within Duke's sectors_r.cpp with bsin()/bcos(). 2020-11-22 21:18:05 +01:00
Mitchell Richters
6fba78c123 - buildutils: Replace sintable[] use within Duke's sectors_d.cpp with bsin()/bcos(). 2020-11-22 21:18:05 +01:00
Mitchell Richters
6ccf925429 - buildutils: Replace sintable[] use within Duke's sectors.cpp with bsin()/bcos(). 2020-11-22 21:18:05 +01:00
Mitchell Richters
410c2cf41f - buildutils: Replace sintable[] use within Duke's sbar_*.cpp with bsin()/bcos(). 2020-11-22 21:18:05 +01:00
Mitchell Richters
0781d627dc - buildutils: Replace sintable[] use within Duke's prediction.cpp with bsin()/bcos(). 2020-11-22 21:18:05 +01:00
Mitchell Richters
6800e192e1 - buildutils: Replace sintable[] use within Duke's player_w.cpp with bsin()/bcos(). 2020-11-22 21:18:05 +01:00
Mitchell Richters
1c5c90d00f - buildutils: Replace sintable[] use within Duke's player_r.cpp with bsin()/bcos(). 2020-11-22 21:18:04 +01:00
Mitchell Richters
5e45f988e3 - buildutils: Replace sintable[] use within Duke's player_d.cpp with bsin()/bcos(). 2020-11-22 21:18:04 +01:00
Mitchell Richters
50b4d8cc99 - buildutils: Replace sintable[] use within Duke's player.cpp with bsin()/bcos(). 2020-11-22 21:18:04 +01:00
Mitchell Richters
fd4e1b3b28 - buildutils: Replace sintable[] use within Duke's input.cpp with bsin()/bcos(). 2020-11-22 21:18:04 +01:00
Mitchell Richters
d934bfd985 - buildutils: Replace sintable[] use within Duke's gameexec.cpp with bsin()/bcos(). 2020-11-22 21:18:04 +01:00
Mitchell Richters
f1f0b42172 - buildutils: Replace sintable[] use within Duke's game_misc.cpp with bsin()/bcos(). 2020-11-22 21:18:04 +01:00
Mitchell Richters
95fa3a6f52 - buildutils: Replace sintable[] use within Duke's animatesprites_*.cpp with bsin()/bcos(). 2020-11-22 21:18:03 +01:00
Mitchell Richters
b6e8030307 - buildutils: Replace sintable[] use within Duke's actors_r.cpp with bsin()/bcos(). 2020-11-22 21:18:03 +01:00
Mitchell Richters
abc49fed62 - buildutils: Replace sintable[] use within Duke's actors_d.cpp with bsin()/bcos(). 2020-11-22 21:18:03 +01:00
Mitchell Richters
bf8b1238c6 - buildutils: Replace sintable[] use within Duke's actors.cpp with bsin()/bcos(). 2020-11-22 21:18:03 +01:00
Mitchell Richters
bae4d77427 - buildutils: Replace sintable[] use within Exhumed with bsin()/bcos(). 2020-11-22 21:18:03 +01:00
Mitchell Richters
d6d74c2712 - buildutils: Replace sintable[] use within core with bsin()/bcos(). 2020-11-22 21:18:02 +01:00
Mitchell Richters
32a1796728 - buildutils: Replace sintable[] use within Build with bsin()/bcos(), using bsinf()/bcosf() where appropriate.
* Includes a few header include shuffles to make it all come together.
2020-11-22 21:18:02 +01:00
Mitchell Richters
b2c42d5d03 - buildutils: Replace sintable[] use within Blood with bsin()/bcos().
* Further review of this should be considered as the use of sintable[] for nCos was actually sine and the use of sintable[] for nSin was actually cosine. Preserved math despite the variable names.
2020-11-22 21:18:02 +01:00
Mitchell Richters
cf6188b034 - buildutils: Replace Sin() and Cos() from Exhumed with bsin()/bcos(). 2020-11-22 21:18:02 +01:00
Mitchell Richters
8aa7051f78 - buildutils.h: Replace FSin() from Exhumed with bsinf()/bcosf(). 2020-11-22 21:18:02 +01:00
Mitchell Richters
85bb248309 - binaryangle.h: Extend file with sine/cosine inline helper functions. 2020-11-22 21:18:02 +01:00
Christoph Oelckers
a906067102 - Duke WT: attenuate sound volume when commentaties are playing 2020-11-22 21:14:36 +01:00
Christoph Oelckers
3bd48fb8c5 - Exhumed: Fixed CalcPosVel not initializing the vel parameter.
This caused spurious errors in OpenAL if the passed values were NANs or INFs.
Fixes #183
2020-11-22 20:34:57 +01:00
Christoph Oelckers
182b8023ca - Blood: ported BloodGDX's fix for the double shotgun graphics glitch.
Fixes #114
2020-11-22 20:09:09 +01:00
Christoph Oelckers
2db60ae847 - SW-TD: added a hack to flip an inverted card reader in level 10.
For now this is just inserted into the level loader - it should use more sophisticated checks.
Fixes #173.
2020-11-22 19:47:20 +01:00
Christoph Oelckers
143dd3d2cf - fixed weapon cycling in Exhumed.
The sword was checked for ammo (and failed) and wraparound was not handled.
Fixes #193
2020-11-22 18:59:59 +01:00
Christoph Oelckers
921a7a7166 - RRRA: fixed progression from E1L7 to E2L1 plus a texture related crash.
Fixes #189.
2020-11-22 18:46:20 +01:00
Christoph Oelckers
24c797b7e3 - Duke World Tour: Exiting E1L7 should go back to E1L5.
fixes #187
2020-11-22 18:27:52 +01:00
Christoph Oelckers
dfc2cd8580 - make sure that all of SW's sound function check SoundEnabled().
Fixes #192
2020-11-22 18:16:08 +01:00
Christoph Oelckers
7df20ee047 - RR: Give ammo for the secondary ripsaw mode when picking up the weapon in standard RR, too. 2020-11-22 17:50:38 +01:00
Christoph Oelckers
034ef2290b - RR: screen should not turn green when being attacked with alien poo. 2020-11-22 17:38:07 +01:00
Christoph Oelckers
63d71c120a - Blood: save level stats as JSON. 2020-11-22 13:05:17 +01:00
Christoph Oelckers
c6c9b26af2 - do not specifically look in the 'music' directory for CD tracks.
Prepending of 'music/' is done automatically for all music not found without a path so this only limits options.
2020-11-22 12:51:13 +01:00
Christoph Oelckers
751c295b62 - minor savegame optimizations.
Do not write out empty elements of arrays where these are by far the most common ones.
2020-11-22 12:48:43 +01:00
Christoph Oelckers
1a588c3cbf - merged two smaller savegame handlers into the main function. 2020-11-22 12:48:43 +01:00
Christoph Oelckers
2cb3d44384 - AI JSON serialization. 2020-11-22 12:48:43 +01:00