Commit graph

15459 commits

Author SHA1 Message Date
Christoph Oelckers
9cefc351a1 - bloody stuff. 2021-11-29 00:55:49 +01:00
Christoph Oelckers
2455c197bf - DoShrapVelocity + SlopeBounce. 2021-11-29 00:55:48 +01:00
Christoph Oelckers
0d45e50ea6 - QueueGeneric + ShrapKillSprite. 2021-11-29 00:55:48 +01:00
Christoph Oelckers
95d3095f8d - DoItemFly 2021-11-29 00:55:48 +01:00
Christoph Oelckers
c14fb9e93f - QueueLoWangs 2021-11-29 00:55:48 +01:00
Christoph Oelckers
58749b2770 - NewStateGroup wrappers replaced. 2021-11-29 00:55:48 +01:00
Christoph Oelckers
a85a1e497f - ActorCoughItem. 2021-11-29 00:55:47 +01:00
Christoph Oelckers
cd8e8e4f67 - removed index based version of SpawnUser. 2021-11-29 00:55:47 +01:00
Christoph Oelckers
3a3c6a4395 - IconDefault 2021-11-29 00:55:47 +01:00
Christoph Oelckers
947f5f1d78 - ItemSpotClear. 2021-11-29 00:55:47 +01:00
Christoph Oelckers
374d0524d2 - first pass over SpawnItemsMatch.
This was purely search & replace.
2021-11-29 00:55:47 +01:00
Christoph Oelckers
6489c60905 - lots of search & replace, plus a few fixes on ActorSpawn. 2021-11-29 00:55:46 +01:00
Christoph Oelckers
d49ae699f8 - ChangeSpriteState + change_sprite_stat. 2021-11-29 00:55:46 +01:00
Christoph Oelckers
e41f49d46d KillSprite internals. 2021-11-29 00:55:46 +01:00
Christoph Oelckers
b705ff3b97 - WallBounce 2021-11-29 00:55:46 +01:00
Christoph Oelckers
300e6df6c3 - MissileHitDiveArea calls. 2021-11-29 00:55:46 +01:00
Christoph Oelckers
0b3b30170c - DoActorZRange parameters. 2021-11-29 00:55:45 +01:00
Christoph Oelckers
730b7492cb - moved bitmap_set and bitmap_test into clip.cpp and deleted unused inside_exclude_p function.
No longer used anywhere else and to be replaced with BitArray.
2021-11-29 00:55:45 +01:00
Christoph Oelckers
ae63bcd80b - use BFSSearch in updatesectorneighbor.
The old bfirst_* helpers are gone now.
2021-11-29 00:55:45 +01:00
Christoph Oelckers
22e554e88a - use BFSSearch in clipupdatesector 2021-11-29 00:55:45 +01:00
Christoph Oelckers
7111b2470c - SW: use BFSSearch in TraverseBreakableWalls 2021-11-29 00:55:45 +01:00
Christoph Oelckers
3e558c2295 - use BFSSearch for PreMapCombineFloors. 2021-11-29 00:55:44 +01:00
Christoph Oelckers
2a51e5eca3 - fixed: BFSSearch did not mark its start sector as added.
As a result it could be added twice.
2021-11-29 00:55:44 +01:00
Christoph Oelckers
1b3b8ab7cc - use wallsofsector in PreMapCombineFloors 2021-11-29 00:55:44 +01:00
Christoph Oelckers
6fc43287b3 - redid Exhumed's BelowNear function.
Use BFSSearch, only run one iteration of the search and only run the search if the result is actually used.
2021-11-29 00:55:44 +01:00
Christoph Oelckers
12c26976f0 - GetClosestSpriteSectors: replace distance calculation with proper math.
No need to sample multiple points along the wall if we can just properly calculate the actual distance. :)
2021-11-29 00:55:44 +01:00
Christoph Oelckers
d2f0934726 - Blood: cleaned up GetClosestSpriteSectors
using BFSSearch now and avoiding pointless loop to avoid setting the checked bit.
The entire outcome was just as if the bit was never checked inside the loop, so do just that when not running in compatibility mode.
This simplifies the remaining code quite a lot because it now just needs to run over all walls with no special case considered.
2021-11-29 00:55:44 +01:00
Christoph Oelckers
1bbbeb8f4c - Blood: reworked GetClosestSpriteSectors to use dynamic arrays, deleted unused GetClosestSectors.
# Conflicts:
#	source/games/blood/src/aibeast.cpp

# Conflicts:
#	source/games/blood/src/aibeast.cpp
#	source/games/blood/src/gameutil.h
2021-11-29 00:55:43 +01:00
Christoph Oelckers
269f2580b9 - obsolete prototypes in Exhumed 2021-11-29 00:55:43 +01:00
Christoph Oelckers
1d9d70613f - char review in SW 2021-11-29 00:55:43 +01:00
Christoph Oelckers
b878bf8aac - SW: renamed all unsigned chars to uint8_t
Also deletes some unused declarations
2021-11-29 00:55:43 +01:00
Christoph Oelckers
4f493d3de1 - Exhumed: made all nPlayer variables ints
This looks safe
2021-11-29 00:55:43 +01:00
Christoph Oelckers
b9b4f1e037 - shorts replaced in Exhumed
only a small part, the easy stuff
2021-11-29 00:55:42 +01:00
Christoph Oelckers
d63b6cda37 - exhumed: made all nAngle variables full ints 2021-11-29 00:55:42 +01:00
Christoph Oelckers
28eca1a023 ‚char‘ review in Blood - part 2 2021-11-29 00:55:42 +01:00
Christoph Oelckers
5422bff683 ‚char‘ review in Blood - part 1 2021-11-29 00:55:42 +01:00
Christoph Oelckers
53998c9cb7 - Blood: remove unneeded replacement functions.
changespritesect is the only one called from the engine.
2021-11-29 00:55:42 +01:00
Christoph Oelckers
e9c79292ff - Blood: use wider integer types for a few more things
Mainly removing shorts from all function signatures, except the engine replace interface, replacing them either with int or bool, depending on the use case.
2021-11-29 00:55:41 +01:00
Christoph Oelckers
b685163ab1 - Blood: extend all 16 bit fields holding sector or wall indices to 32 bit. 2021-11-29 00:55:41 +01:00
Christoph Oelckers
499dc9953b - reduction of 'short' noise in Blood.
Mainly using int16_t for deliberately sized struct fields, auto for temporary saves of global data and making several local variables full int.
This changes nothing substantial.
2021-11-29 00:55:41 +01:00
Christoph Oelckers
345d9c87b6 - RR: no more wall[] in actors_r.cpp 2021-11-29 00:55:41 +01:00
Christoph Oelckers
00edd16834 - Duke: get rid of the remaining wall[] references in actors_d.cpp 2021-11-29 00:55:41 +01:00
Christoph Oelckers
e0260bc709 - Duke/RR: weaponhitwall cleaned up (both variants) 2021-11-29 00:55:40 +01:00
Christoph Oelckers
5bb805663e - Duke/RR: cleaned up the rest of hitradius* as well
Using wallsofsector iterator plus defining local variables more locally.
2021-11-29 00:55:40 +01:00
Christoph Oelckers
63985ce6be - Duke/RR: redo the supremely ugly code to access the third point in hitradius* 2021-11-29 00:55:40 +01:00
Mitch Richters
da7de8f1d8 - Harden the skill CCMD to test for valid skill range for loaded game, not the maximum size of the gSkillNames[] array which may not be completely filled. Also print valid skill names in addition to numbers to help the user. 2021-11-29 00:55:40 +01:00
Christoph Oelckers
68d653efe9 - made the same changes to hitradius_r
Also had to do some reformatting to get rid of the goto in there.
2021-11-29 00:55:40 +01:00
Christoph Oelckers
821f341e03 - use BFSSearch in hitradius_d 2021-11-29 00:55:39 +01:00
Christoph Oelckers
a29e6c084a - BFSSearch class added
This was prompted by a bug that was recently introduced in one of the ad-hoc implementations of such a search.

Let’s better use a helper class to deal with the problems and help unify memory usage.
2021-11-29 00:55:39 +01:00
Christoph Oelckers
ad030d7e23 - Duke: SE20 + SE128 are wall-free
Also use symbolic constantfor SE_128 to make it easier to find.
2021-11-29 00:55:39 +01:00