Christoph Oelckers
0b797b0ccd
- Exhumed: added JSON serialization for view and switch - also renamed the fields in the switch struct.
...
Some refactoring was needed to put a plain C array into a TArray to remove the limits.
2020-11-29 23:32:28 +01:00
Christoph Oelckers
a51b77b95b
- do not statically initialize DukeGameInfo.
...
Since this structure contains several large arrays it will inflate the EXE size with 800kb of empty space.
2020-11-29 22:31:02 +01:00
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