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
Christoph Oelckers
010162261e
- Duke: use utilities in handle_se19
2021-11-29 00:55:39 +01:00
Christoph Oelckers
312bf5bf95
- Duke: use wall utilities in bounce and queball
2021-11-29 00:55:39 +01:00
Christoph Oelckers
58a091067f
- use provided sector/wall iterators in cacheit functions
2021-11-29 00:55:39 +01:00
Christoph Oelckers
aadbca8e5d
- zombie.cpp.
2021-11-29 00:55:38 +01:00
Christoph Oelckers
95c92153ad
- zilla.cpp
2021-11-29 00:55:38 +01:00
Christoph Oelckers
e98e1a6fea
- warp.cpp
2021-11-29 00:55:38 +01:00
Christoph Oelckers
21af63dfcc
- wallmove.cpp
2021-11-29 00:55:38 +01:00
Christoph Oelckers
10ea8b0fb5
- vator.cpp
2021-11-29 00:55:38 +01:00
Christoph Oelckers
2c94259603
- BossSpriteNum
2021-11-29 00:55:37 +01:00
Christoph Oelckers
36067baedd
- owner cleanup.
2021-11-29 00:55:37 +01:00
Christoph Oelckers
411c814dc3
- vis.cpp
2021-11-29 00:55:37 +01:00
Christoph Oelckers
02bdba71fc
- spike.cpp.
2021-11-29 00:55:37 +01:00
Christoph Oelckers
e2e697e9bb
- do better owner checks in weapon code.
...
Due to poor data clearing logic there is a chance that the owner of a sprite is 0 if invalid, but this code never properly checked all conditions before accessing the owner's user's ID.
2021-11-29 00:55:37 +01:00
Christoph Oelckers
cb31127df5
- removed Set3DSoundOwner entirely.
2021-11-29 00:55:36 +01:00