Commit Graph

6840 Commits

Author SHA1 Message Date
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
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
alexey.lysiuk 555007539d - eliminate dependency on linking order for autosegs registration
This fixes #164
2020-11-13 09:41:58 +01:00
Mitchell Richters 7673766d19 - Duke: Apply same zvel fix from 13839fc3e9 to `shootgrowspark()` that was accidentally changed in f276a5f443. I don't believe this to be an issue in any other spot for Duke. 2020-11-13 10:02:12 +11:00
Christoph Oelckers 483e0b6574 - fixed voxel rendering in palette emulation mode.
The recent changes for replacing fonts with hires versions made the paletted handling kick in, although the voxel textures are not suitable for that.
Fixes #178
2020-11-12 19:26:16 +01:00
Christoph Oelckers f9a776e71c - iterate linearly over sector effectors.
Apparently they aren't all properly linked into the required statnums.
Fixes #179
2020-11-12 19:12:58 +01:00
Mitchell Richters 735d89bfb6 - SW: Ensure save code backs up `crouch_toggle` and player's current input.
* Fixes #166.
2020-11-12 23:31:32 +11:00
Mitchell Richters 70b75f72b5 - Duke: Fix issues with crane angle adjustment in `movecrane()` following changes in fca846272e.
* Fixes #170.
2020-11-12 23:21:03 +11:00
Mitchell Richters 13839fc3e9 - Duke: Fix `shootstuff()` zvel calculation error following changes in badf536fef.
* Fixes #177.
2020-11-12 22:07:16 +11:00
alexey.lysiuk 6b12514a29 - fixed compilation with MSVC 14.28.29333 from VS2019 16.8.0
This fixes #175

include\algorithm(7419,1): error C2678: binary '=': no operator found which takes a left-hand operand of type 'const T' (or there is no acceptable conversion) (compiling source file source\common\scripting\jit\jit.cpp)
include\algorithm(7419,17): error C3892: '_First': you cannot assign to a variable that is const (compiling source file source\core\searchpaths.cpp)
2020-11-12 11:38:53 +02:00
Mitchell Richters 4dc1797345 - Duke: Reset `p->dead_flag` when enabling the god cheat as per original behaviour.
* Fixes #172.
2020-11-12 18:21:42 +11:00
Christoph Oelckers 2ee18b3a11 - fixed voxel rendering. 2020-11-11 20:31:27 +01:00
sinisterseed a7dd547dc1 - fixed some typos in SW's digi.h file. 2020-11-11 17:45:01 +02:00
sinisterseed 9e0e3c649c - marked a missed Wang speech line.
Sneaky one no less, took a while to find... (this was still playing on WT's Skyline when Wang was jumping between rooftops).
2020-11-11 17:37:21 +02:00
Christoph Oelckers 4bded16b09 - removed leftover Polymer checks. 2020-11-11 13:03:47 +01:00
Christoph Oelckers a92b4943f9 - Duke: use original colors for inventory status display.
I took one liberty and still use green/yellow/red for the percentage, but this now uses palette translations so that it works better with hires replacements.
2020-11-11 11:49:05 +01:00
Christoph Oelckers 85edf38eba - do not grayscale all hires tinting. 2020-11-11 07:57:25 +01:00
Christoph Oelckers e2b6ebec91 - partially fixed colorization for hires replacements. 2020-11-10 23:59:04 +01:00
Christoph Oelckers 3558289d70 - give forward declared enum a type. 2020-11-10 21:44:15 +01:00
Christoph Oelckers 96fbfdcf86 - made hires replacements work for untranslated fonts. 2020-11-10 21:34:49 +01:00
Christoph Oelckers 8ac6a4d321 - removed redundant declaration of PickTexture. 2020-11-10 20:30:37 +01:00
Christoph Oelckers 873f4d7c0c - link hires replacements to textures instead of tile numbers.
This is needed to connect them to fonts as well because its glyphs have no tile index.
2020-11-10 20:12:46 +01:00
Christoph Oelckers ed599d0f05 - moved the hires texture replacement logic into a backend callback.
This way it can be handled transparently to the calling code.
Fonts do not work yet, though.
2020-11-10 16:22:02 +01:00
Christoph Oelckers 8c241afc40 - undid texture substitution in 2D code. 2020-11-10 10:08:17 +01:00
Christoph Oelckers 40358febc1 - changed render interface to resolve textures to materials in the backend.
This is needed to have a unified spot where to resolve textures for both 2D and 3D.
2020-11-10 09:08:48 +01:00
Christoph Oelckers 601680d08e - moved widthBits and heightBits into engine.
These functions will go away with the rest of the renderer when the time comes, so this is the right place.
2020-11-09 20:56:28 +01:00
Christoph Oelckers 51115e75df - avoid using widthBits and heightBits outside of engine code. 2020-11-09 20:51:30 +01:00
Christoph Oelckers f24786af71 - Exhumed: Use 0 as transparent color index for the energy tile. 2020-11-09 19:16:43 +01:00
Christoph Oelckers 918425469a - fixed crosshair setup.
Fixes #168
2020-11-09 17:20:14 +01:00
Christoph Oelckers 61b42ea448 - fixed font color in SW's menus
fixes #165
2020-11-09 16:56:59 +01:00
Christoph Oelckers aed8a450fd - SW: fixed episode menu display.
The subtitle needs to use the game specific drawer, not the generic one.
Fixes #162
2020-11-08 10:12:12 +01:00
Christoph Oelckers 40a9a4c86d - removed redundant local variable in SW status bar code. 2020-11-08 09:12:15 +01:00
alexey.lysiuk 7f0d94798d - fail CMake configuration process if libvpx was not found
This helps to avoid #160
2020-11-08 10:00:20 +02:00
Mitchell Richters 9e026d5042 - Exhumed: Partially address issues with LEV20 energy towers in #159. 2020-11-08 12:48:23 +11:00
Mitchell Richters 8178d20f97 - c_notifybuffer.cpp: Center and pulse text for all RR games in `DrawNative()`.
* Fixes #163.
2020-11-08 10:39:45 +11:00
Mitchell Richters f9f365a593 - Ensure `crouch_toggle` bool from 6e3d414b3c is serialised when saving game, and cleared when `InputState::ClearAllInput()` is called. 2020-11-08 07:30:48 +11:00
Christoph Oelckers 59c72c923e - added null pointer checks to locked door sound checks in RR.
This originally accessed undefined memory when no sprite was involved.
Fixes #157
2020-11-07 10:25:41 +01:00
Christoph Oelckers 976675c816 - added some helper code to deal with the fact that the sound system still needs to operate on sprites. 2020-11-07 10:25:40 +01:00
Mitchell Richters ade1a80515 - gameinput.cpp: Remove crouch bool from `applylook()` since we can now just rely in the actions bitfield that's already incoming as required and default `scaleAdjust` in the prototype to `1`. 2020-11-07 18:25:06 +11:00
Mitchell Richters 6e3d414b3c - inputstate.cpp: Move `checkCrouchToggle()` from gameinput.ccp into `ApplyGlobalInput()` and use static bool for crouch toggling vs. game-side bool. 2020-11-07 18:16:16 +11:00
Mitchell Richters a153ebab7e - SW: Migrate crouch toggling to backend solution implemented in 4ef0d20e0e. 2020-11-07 17:53:11 +11:00
Mitchell Richters 01c494e29d - Blood: Don't let Caleb's voice overlap if spamming the use key on a locked door.
* Fixes #113.
2020-11-07 15:13:45 +11:00
Mitchell Richters 4ef0d20e0e - gameinput.cpp: Consolidate `checkCrouchToggle()` from Duke with discrete implementations from Blood in 7c8efde38c and Exhumed in 032db82f82 to unify the functionality. 2020-11-07 13:44:25 +11:00
Mitchell Richters 032db82f82 - Exhumed: Add crouch toggle mechanism. 2020-11-07 13:27:58 +11:00
Mitchell Richters 7c8efde38c - Blood: Add crouch toggle mechanism.
* Fixes #151.
2020-11-07 13:23:16 +11:00
Mitchell Richters a52ee89969 - Duke/RR: Add scaling to mouse input within `motoApplyTurn()` and `boatApplyTurn()`. 2020-11-07 09:56:57 +11:00
Mitchell Richters f0b9029726 - Duke/RR: Fix incorrect boolean used in `boatApplyTurn()` when implementing fcc2521347bb528d7a5bcd3996c509db85e993f0. 2020-11-07 09:56:57 +11:00
Mitchell Richters 74dfbfe6f8 - Duke/RR: Ensure `p->vehForwardScale`/`p->vehReverseScale` can only be a maximum of 1. Controller input with high sensitivity could effectively turbo-charge the bike ;) 2020-11-07 09:56:57 +11:00
Mitchell Richters 466bc84697 - Duke/RR: Completely revamped vehicle mouse/controller input.
* Original algorithm now used purely for keyboard input only.
* Mouse and controller input is no longer a scaled double version of the keyboard input.
* Mouse input is the square root of the base angle adjustment (20) multiplied by (mouse input divided by the input scale factor). As such, mouse input is completely consistent between synchronised and unsynchronised input.
* Controller input is base angle adjustment (20) multiplied by itself.
* Renamed `turnl`/`turnr` variables to `kbdLeft`/`kbdRight` respectively.
* Fixed issue where `p->TiltStatus` wasn't being backed up in `boatApplyTurn()`.
2020-11-07 09:56:57 +11:00
Mitchell Richters c9708a5464 - `CONTROL_GetInput()`: Reverse polarity of dx/dz and update `processMovement()` appropriately. 2020-11-07 09:56:57 +11:00
Mitchell Richters 6f5f66ad35 - Duke/RR: Partially revert c9d875327850e839e3ad1f367ede15497d44fda3 by truncating `p->MotoSpeed` to integer when calculating xvel/yvel to preserve original vehicle feel. 2020-11-07 09:56:57 +11:00
Mitchell Richters 567738f3ad - Duke/RR: Tidy formatting of `onMotorcycle()`, `onBoat()`, `onMotorcycleMove()` and `onBoatMove()`. 2020-11-07 09:56:57 +11:00
Mitchell Richters 1545610501 - Duke/RR: Convert remaining vehicle function local ints to bools where appropriate. 2020-11-07 09:56:57 +11:00
Mitchell Richters c223a50b29 - Duke/RR: Clean up vehicle turn left/right bools used in ticker functions. 2020-11-07 09:56:57 +11:00
Mitchell Richters ad10ea4cb5 - Duke/RR: Initial implementation of scaled `p->MotoSpeed` controller input. 2020-11-07 09:56:57 +11:00
Mitchell Richters 578ded1db3 - Duke/RR: Promote `p->MotoSpeed` from `short` to `double` in prep for applying scaled controller input. 2020-11-07 09:56:57 +11:00
Mitchell Richters c46ad10bb1 - Duke/RR: Clean up some disassembly variable names in vehicle so it's easier to understand what's going on. 2020-11-07 09:56:57 +11:00
Christoph Oelckers 94341e8582 - fixed missing null check in SetOwner and SetHitOwner. 2020-11-06 20:13:06 +01:00
Mitchell Richters 2d903ed918 - Exhumed: Skip over weapons owned but without ammo when doing `WeapSel_Next`/`WeapSel_Prev`.
* Fixes #148.
2020-11-06 23:25:55 +11:00
Mitchell Richters e3c6873410 - Exhumed: Move bullet puff animations up by 4096 units to give the illusion of more accurate aiming.
* Fixes #149.
2020-11-06 23:02:57 +11:00
Mitchell Richters 71be467065 - Duke: Fix missing ammo counter on modern HUD for WT's flamethrower.
* Fixes #156.
2020-11-06 22:07:11 +11:00
Mitchell Richters f2e50161a5 - Exhumed: Fix issues on start of Level 20 following changes in 0c95aee8f5.
* Fixes #152.
2020-11-06 22:02:14 +11:00
Mitchell Richters c823e33bb3 - Duke/RR: Fix remaining issues with drug mode.
* Primary issue was call to `renderSetAspect()` within `setdrugmode()` wasn't mulscaling with `viewingrange`.
* Changed `setdrugmode()` to `getdrugmode()` to return `p->drug_aspect`. This is so `renderSetAspect()` needs to only be called from one place only.
2020-11-06 20:52:43 +11:00
Christoph Oelckers 4e6e564e14 - silenced message about missing function prototypes for exports.
This is necessary to later separate the games' script content from each other because there'd be lots of unprototyped functions otherwise.
2020-11-05 18:59:21 +01:00
Christoph Oelckers d5ff87fa4f - RRRA: fixed vehicle collision with psychedelic cactuses.
This did not fully match the original source which had a critical difference here between RR and RRRA.
2020-11-05 14:31:55 +01:00
Christoph Oelckers 977223287e - cap the frame rate of RRRA's cactus drug mode.
This was running at full render speed.
2020-11-05 07:31:48 +01:00
Christoph Oelckers d8e331ef0f - changed Duke/RR palette handling to only retrieve the currently active palette right before rendering.
Storing this in the player_struct is pointless and a relic from having to use real hardware palette switches.
With this now just being a translation index being passed to the backend it can be cheaply retrieved right when used and nowhere else.
Also making some changes to how RRRA's psychedelic cactus handles the projection. This fixes issues with occasionally passing a bad matrix.
2020-11-05 07:31:48 +01:00
Mitchell Richters e8ccd9bc8c - Fix compilation. 2020-11-05 11:14:04 +11:00
Christoph Oelckers 7621d3e105 - removed redundant dosetaspect function.
This was software rendering only.
2020-11-04 22:30:11 +01:00
Christoph Oelckers 60263ccad9 - fixed destroyit.
This caused parts of the exploding house in RRRA E1L5 not to disappear.
2020-11-04 21:53:56 +01:00
Christoph Oelckers 6729859e39 - fixed the crane.
Cannot take the special value out of the owner field. :(
2020-11-04 21:25:59 +01:00
Christoph Oelckers 721efae0d3 - fixed camera loop. 2020-11-04 20:44:12 +01:00
Christoph Oelckers 083454986b - made camsprite an actor variable. 2020-11-04 20:40:26 +01:00
Christoph Oelckers 25c93e65fc - more script ID wrappers for sectors. 2020-11-04 20:40:26 +01:00
Christoph Oelckers aac5ab55a3 - movesprite cleanup. 2020-11-04 20:40:25 +01:00