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
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
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
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
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
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
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
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
6b889cbb77
- port from NBlood: Show all available powerups in HUD.
2020-11-23 07:49:36 +01: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
5ba2e7863d
- binaryangle.h: Add asbuildf()
method to all classes and use where appropriate.
2020-11-22 21:18:12 +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
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
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
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
63d71c120a
- Blood: save level stats as JSON.
2020-11-22 13:05:17 +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
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