Commit graph

17158 commits

Author SHA1 Message Date
Christoph Oelckers
11b21cce2c - handle wall sprites on orthogonal walls better.
This covers the case that a wall sprite may overlap two walls with a slight deviation in their position - always pick the closest one.
2022-01-30 08:28:52 +01:00
Christoph Oelckers
ce325e6453 - disabled assert in FAFhitscan.
There's maps out there which trigger this - so it should better be silenced, despite being a mapping error.
2022-01-30 08:13:35 +01:00
Christoph Oelckers
12b25df582 - Exhumed: handle unterminated strings in LoadSound without reading beyond their end. 2022-01-29 13:29:59 +01:00
Christoph Oelckers
f98765ce95 - fixed handling of badly placed sprites in map validation code. 2022-01-29 12:33:11 +01:00
Christoph Oelckers
ca9936a601 - Exhumed: fix issues with uninitialized buffer data in seq_ReadSequence. 2022-01-29 12:25:48 +01:00
Christoph Oelckers
b82198b351 - Blood: fixed bad alignment flags for HUD flames. 2022-01-29 11:38:24 +01:00
Christoph Oelckers
a015958f66 - Duke: had to give the trip bomb yet another flag.
Unlike every other actor this has scripted animation logic attached that is not supposed to be used. Weird.
2022-01-29 10:45:36 +01:00
Christoph Oelckers
686a648aa1 - fixed inverted logic when checking for dragged sectors. 2022-01-29 09:59:29 +01:00
Christoph Oelckers
8487d693f5 - flags for the bolts. 2022-01-27 01:05:12 +01:00
Christoph Oelckers
82898e42a6 - fix the camera.
- camera flag added
2022-01-27 01:05:12 +01:00
Christoph Oelckers
8e89bc29e4 - new explosion flags 2022-01-27 01:05:12 +01:00
Christoph Oelckers
fba8f54bb3 - two more flags to get sprite indices out of movecrack.
# Conflicts:
#	source/games/duke/src/constants.h
2022-01-27 00:48:39 +01:00
Christoph Oelckers
d3f2d50088 - added NOFLOORPAL flag to remove some special cases from animatesprites.
# Conflicts:
#	source/games/duke/src/constants.h
2022-01-27 00:48:00 +01:00
Christoph Oelckers
c0a40cb7d7 - renamed RR's TRIPBOMBSPRITE to POWDERKEG 2022-01-27 00:46:46 +01:00
Christoph Oelckers
3d0c794224 - two more flags for LASERLINE. 2022-01-27 00:46:24 +01:00
Christoph Oelckers
a776e5c56e - turned the exclude lists for initspriteforspawn into a flag. 2022-01-27 00:45:55 +01:00
Christoph Oelckers
e4cfc374be - another trip bomb flag. 2022-01-27 00:42:57 +01:00
Christoph Oelckers
0574da7cd4 - SE24 cleanup using flags.
The whole setup is actually very simple, once all the mess got removed from the code.
2022-01-27 00:42:49 +01:00
Christoph Oelckers
eae5ca93d0 - cleanup - flag name and removal of unused code. 2022-01-27 00:42:40 +01:00
Christoph Oelckers
2468debe34 - added a new flag for non-teleporting items. 2022-01-27 00:42:16 +01:00
Christoph Oelckers
fc94fb9651 - replaced checktimetosleep with a flag. 2022-01-27 00:42:07 +01:00
Christoph Oelckers
72510a47fa - replaced one more actor list check in hitradius with a flag. 2022-01-27 00:41:57 +01:00
Christoph Oelckers
125c3e8004 - flammable flags. 2022-01-27 00:41:33 +01:00
Christoph Oelckers
913b0622b8 - use symbolic constants 2022-01-27 00:35:45 +01:00
Christoph Oelckers
58b718d2a2 - turn all special actor type checks in moveflammable into flags.
Also wrap all flag checks in actorflag function
2022-01-27 00:34:21 +01:00
Christoph Oelckers
cbd8de36a9 - added spawn number parser to .DEF.
This is for mapping actor classes to whatever the games use to decide what kind of actor a sprite is.
2022-01-26 23:53:05 +01:00
Christoph Oelckers
d9fee902de - setSpritesetImage export added. 2022-01-26 23:35:53 +01:00
Christoph Oelckers
ef22a78618 - moved all VM exports to their own file. 2022-01-26 23:35:46 +01:00
Christoph Oelckers
6ff8e89739 - add statnums and virtual base methods to DukeActor. 2022-01-26 00:37:11 +01:00
Christoph Oelckers
5fe5dbd5aa - added spriteSet property to DukeActor
The idea here is to abstract picnum manipulation. Since all this is strongly index based it translates poorly to a system with named textures.
This allows a class to define a set of sprite images it intends to operate on as if it was still a simple indexed resource, even if the underlying storage changes.
2022-01-26 00:36:34 +01:00
Christoph Oelckers
c27976b2e5 - added script exports for Duke's iterators 2022-01-26 00:16:21 +01:00
Christoph Oelckers
5bc8b1c2d3 - Duke: added two more flags to eliminate the references to the crane's tile numbers. 2022-01-25 22:26:53 +01:00
Christoph Oelckers
e3103fff02 - fixed sky tiling. 2022-01-25 19:00:52 +01:00
Christoph Oelckers
0e89bffabd - Exhumed: fixed surace collisions of projectiles.
There was some commented out undefined behavior here, we need to properly define this case.
2022-01-25 00:57:59 +01:00
Christoph Oelckers
30adac6e7f - Exhumed: removed erroneous target assignment in Anubis AI. 2022-01-25 00:25:52 +01:00
Christoph Oelckers
58f535d3a4 - Duke: fixed gamevars not being allocated for map spawned actors. 2022-01-24 23:05:22 +01:00
Mitchell Richters
515bd54512 - Exhumed: Add save game option to in-game menu. 2022-01-24 21:51:28 +11:00
Christoph Oelckers
d19e2e3e40 - version bump. 2022-01-24 10:29:16 +01:00
Christoph Oelckers
2022de845a - did some reshuffling on Exhumed's menu.
To allow adding a "User map" item and prevent accidental reset of ongoing games, both the items for starting the campaign and the training map are now in a submenu.
This allows the game to go through the regular startup procedure common to all games, which in turn allows adding the "User map" item to the episode selection.
2022-01-24 01:00:05 +01:00
Christoph Oelckers
a252b206d1 - exported DukeActor's native member variables.
This includes renaming two native ones because they shared the same name with members of spritetype.
2022-01-24 00:24:47 +01:00
Christoph Oelckers
f194fb6c90 - added a name to tilenum function so that we can define picnums by name in scripted actors. 2022-01-24 00:24:47 +01:00
Christoph Oelckers
e206a71448 - added the native property handlers for CoreActor. 2022-01-24 00:24:47 +01:00
Christoph Oelckers
0a6a5fe871 - set a default bitmask for the cstat flags.
These need to be combined with the flags from the map, so we need to know which ones are being used by the actor defaults.
2022-01-24 00:24:46 +01:00
Christoph Oelckers
04a380ce14 - added script exports for DCoreActor's member variables. 2022-01-24 00:24:46 +01:00
Christoph Oelckers
43f2601bd6 - added script definitions for the base actor classes so that the engine can start up again. 2022-01-23 13:03:40 +01:00
Christoph Oelckers
531a42e801 - added the flag parsing utilities. 2022-01-23 13:03:39 +01:00
Christoph Oelckers
e035ce00b6 - hooked up the compiler extension and the static actor data setup. 2022-01-23 13:03:39 +01:00
Christoph Oelckers
0398ba4ff0 - added all parts needed to implement the actor property parser.
Not hooked up yet with the rest of the code, this just adds the needed files in compilable form.
2022-01-23 13:03:39 +01:00
Christoph Oelckers
b5a5d24bf4 - SW: fixed Polymost sky panning 2022-01-23 12:51:14 +01:00
Christoph Oelckers
bd22aeb0d9 - SW: use correct sky scale in Polymost. 2022-01-23 12:44:22 +01:00