Christoph Oelckers
39b67b4086
- SW: removed some very dangerous type casting.
2020-12-01 18:30:21 +01:00
Christoph Oelckers
b52668ecdf
- SW: added some simple allocation wrappers around common code sequences.
2020-12-01 16:53:29 +01:00
Christoph Oelckers
6dfe869614
- shorten the struct for puser to what actually gets used from it.
...
This is preparation for making USER more serialization friendly as it was copied to puser.
2020-12-01 16:22:32 +01:00
Christoph Oelckers
dd75c8dbe4
- weaken the reverb in Duke.
...
Unfortunately the entire thing is very poorly defined, not setting it for sectors but for sprites with a distance. But some of these sprites cover non-reverb sectors as well and this can produce some ugly sound field in spots where this isn't wanted at all.
2020-12-01 16:34:47 +01:00
Christoph Oelckers
1d6d58538c
- cleaned out the remains of the old savegame code.
2020-12-01 12:58:10 +01:00
Christoph Oelckers
67dff2a863
- Exhumed: Serialize global state as JSON.
...
This was the last item to be converted.
2020-12-01 12:58:10 +01:00
Christoph Oelckers
487d62e264
- Exhumed: Bullet and Grenade.
2020-12-01 12:58:10 +01:00
Christoph Oelckers
54eec61828
- Exhumed: Init
2020-12-01 12:58:10 +01:00
Christoph Oelckers
15579798ad
- Exhumed: bubbles and gun.
2020-12-01 12:58:09 +01:00
Christoph Oelckers
08d8ba8fe4
- Exhumed: lighting
2020-12-01 12:58:09 +01:00
Christoph Oelckers
83ba046d04
- Exhumed: items and move.
2020-12-01 12:58:09 +01:00
Christoph Oelckers
bb0ef6ff70
- Exhumed: Objects.
2020-12-01 12:58:09 +01:00
Christoph Oelckers
262af72235
- Exhumed: Anims and Player.
2020-12-01 12:58:09 +01:00
Christoph Oelckers
531d7c96b4
- Exhumed: Queen
2020-12-01 12:53:10 +01:00
Christoph Oelckers
026d355096
- serialize Ra as JSON, do not serialize Ramses.
...
The Ramses intermissions cannot be safely resumed from a savegame - so saving was blocked there, meaning that this data does not need to be saved.
2020-12-01 12:53:10 +01:00
Christoph Oelckers
3c83775273
- add back the missing secret hint notification calls for Duke/RR.
2020-12-01 12:52:49 +01:00
Christoph Oelckers
92a72cef8b
- Blood: only trigger a secret if the hint system hasn't registered it.
...
There's some bugs in Blood that allow a secret to be triggered multiple times. However, since the hint system already knows which secrets were triggered, use that info to avoid retriggers.
Fixes #206
2020-12-01 12:52:42 +01:00
Christoph Oelckers
6475d772ca
- Exhumed: Runlist and Rand.
2020-12-01 12:19:09 +01:00
Christoph Oelckers
c1b478bf83
- Exhumed: Snake and Sequence
...
# Conflicts:
# source/exhumed/src/save.cpp
2020-12-01 12:15:43 +01:00
Christoph Oelckers
e8c56b1f9f
- Exhumed: serialize the status bar as JSON - added a helper class to handle static arrays with an attached free list more easily.
2020-12-01 12:15:43 +01:00
Christoph Oelckers
1b2895bee6
- Exhumed: wrap all serialized game data into another JSON object
...
# Conflicts:
# source/exhumed/src/save.cpp
2020-12-01 12:15:43 +01:00
Mitchell Richters
f9866f4a21
- Blood: Call resetForcedSyncInput()
after sethorizon()
in ProcessInput()
vs. playerProcess()
. Call was too early and causing player not to be able to look while synchronised input is being forced.
2020-12-01 22:02:20 +11:00
Christoph Oelckers
5850c7b284
- let SyncInput return a combination of gamesetinput and cl_syncinput - also serialize gamesetinput.
2020-11-30 23:45:21 +01:00
Christoph Oelckers
ae36ea88c3
- wrap all checks of cl_syncinput in an inline function.
2020-11-30 23:40:16 +01:00
Mitchell Richters
f429871cc6
- Blood: Promote pPlayer->angold
to binangle class.
2020-12-01 07:43:31 +11:00
Mitchell Richters
232dd5e07a
- Blood: Force synchronised input while a revolving door is busy/in-use.
...
* Fixes #205 .
2020-12-01 07:43:25 +11:00
Mitchell Richters
22f7fc93f4
- Exhumed/SW: Move code to trigger synchronised input for edge cases where its needed into gamecontrol.
2020-12-01 07:31:47 +11:00
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