Commit Graph

6840 Commits

Author SHA1 Message Date
Christoph Oelckers 9a345bdfa7 - Exhumed: Wasp 2020-11-29 22:29:36 +01:00
Christoph Oelckers 45ee475df7 - Exhumed: Set. 2020-11-29 20:59:42 +01:00
Christoph Oelckers 59e9cfa6ac - Exhumed: Scorpion 2020-11-29 20:52:16 +01:00
Christoph Oelckers cf5982b3fc - Exhumed: Roach. 2020-11-29 20:47:55 +01:00
Christoph Oelckers 4f1999ab24 - Exhumed: Rex 2020-11-29 20:43:35 +01:00
Christoph Oelckers 4543982e54 - Exhumed: Rat 2020-11-29 20:39:27 +01:00
Christoph Oelckers d92428d217 - Exhumed: The mummy has been handled, too - also renamed some fields to match the other enemies. 2020-11-29 20:34:55 +01:00
Christoph Oelckers 1fa087767e - Exhumed: ... and for the lava dude. 2020-11-29 20:30:17 +01:00
Christoph Oelckers bd3efcb6c4 - Exhumed: same procedure for the Lion. 2020-11-29 20:26:54 +01:00
Christoph Oelckers b669e5405d - Exhumed: did the same for the fish, changed some disassembly names and removed unused fields from enemy structs. 2020-11-29 20:16:58 +01:00
Christoph Oelckers e81dbbdc93 - Exhumed: limit removal, cleanup and JSON serialization for the spider. 2020-11-29 19:32:58 +01:00
Christoph Oelckers b26f6157e9 - Exhumed: Anubis cleanup, JSON serialization and limit removal. 2020-11-29 19:20:38 +01:00
Christoph Oelckers 8a7b3dc667 - Interpolate Duke's wave floor effect. 2020-11-29 17:40:41 +01:00
Christoph Oelckers 3ba0a242bf - Blood: do not recreate the bucket list when loading a savegame.
It has been read from the savegame already, and creating a new one will not produce a correct list because not all data has been loaded yet.
2020-11-29 16:22:29 +01:00
Christoph Oelckers ed8266df0b - fixed bad args check in WarpToCoords CCMD. 2020-11-29 16:06:15 +01:00
Christoph Oelckers 1b1449605f - fixed: Blood did not serialize its mirror data (which is also used for certain portals.)
Fixes #203
2020-11-29 16:05:23 +01:00
Christoph Oelckers cd1b79a703 - use stricter checks when trying to levelwarp.
If saving is blocked, so should changing the level.
Fixes #204.
2020-11-29 15:22:54 +01:00
Christoph Oelckers 92bf1232da - Duke: documented global variables for eventual scriptification.
Most are only needed internally or for very special uses and do not need any scripting consideration.
2020-11-29 15:09:23 +01:00
Christoph Oelckers 553bb2af19 - moved 'frags' into player_struct.
Again for reducing the work with the script interface.
2020-11-29 14:10:03 +01:00
Christoph Oelckers 346921211e - re-enabled the widescreen pinning code.
It is still off by default - the idea here is to provide a means for the user to switch it on in case a mod replaces the weapons with non-widescreen-friendly versions.
2020-11-29 14:05:53 +01:00
Christoph Oelckers 7ad0750839 - grouped all of Duke's constant per-session state in a single struct.
Mainly done so later the script export can be done more easily.
This also renames a few of the affected variables for clarity.
2020-11-29 13:54:58 +01: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 7887c4e80d - use lambdas instead of templates for chaining ExitFromMenu's actions. 2020-11-29 13:15:19 +01:00
Christoph Oelckers f2f095c469 - Blood: Only clear global state before reading a savegame.
Doing it before writing permanently trashes it.
2020-11-28 00:20:12 +01:00
Christoph Oelckers 7143f62cb1 - Blood: restore pointers after loading all sequences. 2020-11-27 23:47:39 +01:00
Christoph Oelckers 6a29c38240 - Blood: write out the buckethead array to the savegame instead of trying to restore it afterward.
It looks like this cannot be reliably reconstructed from a running level anymore.
2020-11-27 23:34:36 +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 daf71fa470 - replaced a few more literal numbers. 2020-11-27 20:06:38 +01:00
Christoph Oelckers 81bdee90f7 - Exhumed: interpolate texture animations. 2020-11-26 18:32:37 +01:00
Christoph Oelckers d22229c042 - removed the unused interpolation utilities in Exhumed.
None of this was used, but with the shared implementation it isn't needed anymore.
2020-11-26 18:32:37 +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 87111a2fbc - we no longer need to recreate interpolations after loading a savegame. 2020-11-26 18:32:36 +01:00
Christoph Oelckers 82a0e95485 - made the new interpolation system work in Blood.
The panning interpolations need wraparuound handling due to their small value range.
2020-11-26 18:32:35 +01:00
Christoph Oelckers 2cd3927613 - use floats for wall panning offsets. 2020-11-26 18:32:35 +01:00
Christoph Oelckers 357199ecc1 - cross-game, serialization-friendly and pointer free interpolation implementation.
Not hooked up yet.
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
Christoph Oelckers 82d80f3f07 - Blood: handle super secrets properly in the statistics display.
Fixes #198
2020-11-26 07:48:34 +01:00
Mitchell Richters 1504e19cf8 - Exhumed: Add sprite interpolation to `analyzesprites()`. 2020-11-26 19:15:49 +11: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 e9e4590f6a - gameinput.h: For PlayerHorizon and PlayerAngle struct methods `settarget()`, always set the angle directly if backup set to true. 2020-11-26 16:42:07 +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 0b115ac9c7 - Exhumed: added a countdown display for the magic spells in the fullscreen HUD. 2020-11-24 21:04:27 +01:00