Commit Graph

13042 Commits

Author SHA1 Message Date
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
Christoph Oelckers 18352a760c - more renames. 2020-11-22 12:48:42 +01:00
Christoph Oelckers 2c6fa57090 - activeXSprites map. 2020-11-22 12:48:42 +01:00
Christoph Oelckers d4873754f3 - even more renames 2020-11-22 12:48:42 +01:00
Christoph Oelckers dced173cda - JSON serializer for actor.
Also cleaned up use of gAffectedSectors and gAffectedXWalls. These are merely needed as local worker variables, not as global persistent status.
2020-11-22 12:48:42 +01:00
Mitchell Richters 2c1b53ad1c - Exhumed: Get GOG music playing without any user intervention required. 2020-11-22 22:35:45 +11:00
Mitchell Richters d7c4e5e59f - searchpaths.cpp: Add registry detection for Powerslave/Exhumed from GOG.
* Fixes #191.
2020-11-22 22:23:01 +11:00
Christoph Oelckers b2a7a0635b - Blood: JSON serializer for triggers
Also renaming members of struct BUSY.
2020-11-21 20:25:06 +01:00
Christoph Oelckers f73ca55c79 - renamed more disasm stuff. 2020-11-21 20:10:45 +01:00
Christoph Oelckers 27dfefef6c - JSON serializer for warp.cpp 2020-11-21 19:39:24 +01:00
Christoph Oelckers 678dedf224 - more renaming. 2020-11-21 19:30:00 +01:00
Christoph Oelckers c13dd52e34 - renamed a few functions with disasm names. 2020-11-21 19:19:02 +01:00
Christoph Oelckers a319687373 - use static init for QAV callbacks.
runtime init order is undefined, so this is not safe.
2020-11-21 18:28:29 +01:00
Christoph Oelckers 9bd02634d9 - renamed a few things with disasm names. 2020-11-21 18:18:58 +01:00
Christoph Oelckers 7945242fa8 - removed some redundant utility functions. 2020-11-21 18:13:10 +01:00
Christoph Oelckers 8bfc6d98d4 - Blood: cleanup and simplification of SEQ code.
* removed all the large instance arrays. None of this is really necessary, all we need is a single dynamic array with only the active sequences that can expand as needed.
* added JSON serialization. With the above change this part now becomes trivial.
* renamed all 'atxx' variables in this code.
2020-11-21 18:12:51 +01:00
Christoph Oelckers 4aa06ff702 - use a static table for SEQ callbacks.
This ensures that callback indices are consistent. Runtime registration as performed by NBlood has undefined order and will make savegames non-transferrable.
2020-11-21 16:34:32 +01:00
Christoph Oelckers fe845d7e12 - renamed some of those annoying 'atxx' variables. 2020-11-21 15:45:37 +01:00
Christoph Oelckers 1535182577 - simplified the event management further and added a JSON serializer for it. 2020-11-21 15:09:38 +01:00
Christoph Oelckers 5f54eac297 - made palette loader part of the game interface.
This gets rid of the Blood 'replace' hook for thus.
2020-11-21 12:54:09 +01:00
Christoph Oelckers 71e70f8d15 - simplified the event code by removing the priority queue layer.
We do not need that compatibility handling so the high level code can use the multiset directly.
2020-11-21 12:49:24 +01:00
Christoph Oelckers b97f12a2eb - did some global search & replace to reduce the number of accesses to the tilesiz wrapper. 2020-11-20 08:18:26 +01:00
Christoph Oelckers 9a43886be6 - Duke: fixed parsing of overlong CON identifiers. 2020-11-15 07:35:39 +01:00
alexey.lysiuk 07eeba88fa - fixed incorrect autosegs section addresses on macOS
It appeared that getsectbyname() returns address stored in executable header as is, i.e. without adjusting it for ASLR
2020-11-14 12:48:39 +02:00
Christoph Oelckers 36479b623d - re-fixed crosshair scale to only use one CVAR for everything. 2020-11-13 17:56:55 +01:00
sinisterseed 34dfb6c5fc - fixed crosshair scaling in Exhumed & the other games.
The problem was that the CVARs operating the scale were different between Exhumed and the other titles, meaning that "crosshairscale" worked in one, but not the others. They have now been split.
Also lowered the default crosshair size as it was too much for Exhumed.
Fixes #180.
2020-11-13 18:33:18 +02:00
sinisterseed 913239ee5d - minor adjustment to the level stats widget.
Since the widget was right on top of the status bar, the shadows behind it were slightly bleeding into it.
2020-11-13 17:12:01 +02:00
Christoph Oelckers d089aa8d2e - moved Blood's and Exhumed's d_menu.cpp back into the gameprojects
With the new autoseg code this separation is not needed anymore.
2020-11-13 11:25:43 +01:00