Christoph Oelckers
130028fa82
- SpawnSplash(XY)
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:55:50 +01:00
Christoph Oelckers
7411e7e9ba
- MissileHitDiveArea
2021-11-29 00:55:50 +01:00
Christoph Oelckers
f438773af9
- internal cleanup of some spawn functions.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
96ebfe808c
- turned some macros into functions.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
64e812bd33
- TestDontStick.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
dfb5d07459
- QueueHole
2021-11-29 00:55:49 +01:00
Christoph Oelckers
83d0930a2e
- QueueFootPrint + QueuefloorBlood.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
01d2967378
- QueueWallBlood.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
deddd7d514
- it is not necessary to clear the owner of a freshly spawned actor.
...
They are always spawned owner-less.
2021-11-29 00:55:49 +01:00
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
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
Christoph Oelckers
0df721f331
- sumo.cpp + associated code elsewhere.
2021-11-29 00:55:36 +01:00
Christoph Oelckers
e32a1af7b2
- lots of PlaySound calls migrated to actors.
2021-11-29 00:55:36 +01:00
Christoph Oelckers
e6c625f6e8
- second part of slidor.cpp.
2021-11-29 00:55:36 +01:00
Christoph Oelckers
2397e4c2a5
- one third of slidor.cpp
2021-11-29 00:55:35 +01:00
Christoph Oelckers
dfc557e0ec
- StarQueue
2021-11-29 00:55:35 +01:00
Christoph Oelckers
bd161f155c
- skull.cpp
2021-11-29 00:55:35 +01:00
Christoph Oelckers
a728555ec7
- skel.cpp
2021-11-29 00:55:35 +01:00
Christoph Oelckers
07f61e061e
- serp.cpp
2021-11-29 00:55:35 +01:00
Christoph Oelckers
7704042df4
- the rest of sector.cpp.
2021-11-29 00:55:35 +01:00
Christoph Oelckers
98c1684c13
- OperateSprite
2021-11-29 00:55:34 +01:00
Christoph Oelckers
1e00a4ff18
- second batch of sector.cpp
2021-11-29 00:55:34 +01:00
Christoph Oelckers
2b8ea7ae1b
- first half of sector.cpp.
...
Mostly iterators replaced.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
edf8ba0aa1
- cleanup pass on sector.cpp.
...
No functional changes here.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
cfebfbca8a
- rest of rotator.cpp.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
1388794032
- first half of rotator.cpp.
2021-11-29 00:55:34 +01:00
Christoph Oelckers
0a18edfdad
- iterators in rooms.cpp.
2021-11-29 00:55:33 +01:00
Christoph Oelckers
6b92ee1ee6
- InitPlayerSprite
2021-11-29 00:55:33 +01:00
Christoph Oelckers
eb3131df97
- cleanup
...
mostly redundant comments.
2021-11-29 00:55:33 +01:00
Christoph Oelckers
da683ddf7a
- ripper2.cpp
2021-11-29 00:55:33 +01:00
Christoph Oelckers
3ed3029345
-some overlooked User’s.
2021-11-29 00:55:32 +01:00
Christoph Oelckers
82b4385ede
- ripper.cpp
2021-11-29 00:55:32 +01:00
Christoph Oelckers
4661f6d7c5
- iterators in quake.cpp
2021-11-29 00:55:32 +01:00
Christoph Oelckers
0e629eb322
- sop.match_event_sprite
2021-11-29 00:55:32 +01:00
Christoph Oelckers
04657ab559
- QueueWallBlood callers.
2021-11-29 00:55:32 +01:00
Christoph Oelckers
2fdc2ec00f
- small stuff
2021-11-29 00:55:32 +01:00
Christoph Oelckers
2fe71a65a8
- added a few fallthrough annotations that were missed last time.
2021-11-29 00:55:31 +01:00
Christoph Oelckers
74fce3bf58
- sector object sprite list
2021-11-29 00:55:31 +01:00
Mitch Richters
2a7d0e6fe3
- gi->AddExcludedEpisode()
: Pass FString variable through as reference instead of by value.
2021-11-29 00:55:31 +01:00
Mitch Richters
974ca7bd1d
- Remove a lot of reference values on primitive data types from Blood's QAV interpolation system. Also use move assignments on the ignoredata
TMap when we're adding it to the game-side after processing it.
2021-11-29 00:55:31 +01:00
Christoph Oelckers
78e0719eca
- SW: removed unused SpawnUnderSplash function.
2021-11-29 00:55:30 +01:00
Christoph Oelckers
01abe7b2ac
- addressed most unused/uninitialized variable warnings from MSVC.
2021-11-29 00:55:30 +01:00
Christoph Oelckers
c6bd5c04c7
- fixed most warnings GCC pointed out in game code.
2021-11-29 00:55:29 +01:00
Christoph Oelckers
f7fdc5af41
- address several warnings reported by GCC 11.
2021-11-29 00:55:29 +01:00
Christoph Oelckers
dcccb0d653
- Duke: added [[fallthrough]] annotations wherever needed.
2021-11-29 00:55:29 +01:00
Christoph Oelckers
910a51b290
- proper actor handling in all of SOP interpolation
2021-11-29 00:55:28 +01:00
Christoph Oelckers
e4e164a07f
- use a dedicated type for SOP angle interpolation
...
This allows reusing the already existing pointer.
2021-11-29 00:55:28 +01:00
Christoph Oelckers
e75258f57b
- SOP spriteofang
...
Still needs work
2021-11-29 00:55:28 +01:00
Christoph Oelckers
5078750569
- sprite indices in mirrors converted to actor pointers
2021-11-29 00:55:28 +01:00
Christoph Oelckers
1152ec0b54
- use actor pointers in animation system.
2021-11-29 00:55:28 +01:00
Christoph Oelckers
826b514571
- removed a few pointless or unused macros.
2021-11-29 00:55:27 +01:00
Christoph Oelckers
1011f10c0b
- SpriteP fully replaced in player.cpp
2021-11-29 00:55:27 +01:00
Christoph Oelckers
a583a9cb14
- some smaller changes in various places.
2021-11-29 00:55:27 +01:00
Christoph Oelckers
bc584f6ff6
- the rest pf player.cpp
2021-11-29 00:55:27 +01:00
Christoph Oelckers
ba4b5bbbcb
- PLAYER::Killer
2021-11-29 00:55:27 +01:00
Christoph Oelckers
f2058933ed
- DoPlayerBeginDie
2021-11-29 00:55:26 +01:00
Christoph Oelckers
c40fc488e5
- SpawnBubble.
2021-11-29 00:55:26 +01:00
Christoph Oelckers
d3302d6cf9
- minor changes in multiple functions in player.cpp
2021-11-29 00:55:26 +01:00
Christoph Oelckers
7d7000f6ab
- FindNearSprite + PLAYER::remote_sprite.
2021-11-29 00:55:26 +01:00
Christoph Oelckers
0e37e0904e
- sop::sp_child.
2021-11-29 00:55:26 +01:00
Christoph Oelckers
b6c741892e
- player movement functions.
2021-11-29 00:55:25 +01:00
Christoph Oelckers
89ef1c0961
- DoPlayerZRange + DoPlayerSlide.
2021-11-29 00:55:25 +01:00
Christoph Oelckers
48b1ce0c62
- savegame compatibility.
2021-11-29 00:55:25 +01:00
Christoph Oelckers
02671dbe2f
- PlayerUnderSprite.
2021-11-29 00:55:25 +01:00
Christoph Oelckers
dd684f36a4
- a few player functions.
2021-11-29 00:55:25 +01:00
Christoph Oelckers
448e57c86c
- PickEnemyTarget
...
prioritized to get rid of some recent mess.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
8780be4ee4
- WpnGoal + sprite_num.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
8336f689dd
- DoPickTarget.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
f4d813b0c7
- reformatting function headers + deletion of unused code in player.cpp.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
4ab13dcbea
- player.cpp global search & replace.
2021-11-29 00:55:24 +01:00
Christoph Oelckers
8ac0eed08a
- panel.cpp
2021-11-29 00:55:23 +01:00
Christoph Oelckers
b4d298874a
- most of ninja.cpp, except the player stuff.
2021-11-29 00:55:23 +01:00
Christoph Oelckers
5eca574bba
- got rid of some rarely used macros.
2021-11-29 00:55:23 +01:00
Christoph Oelckers
d10919704a
- miscactr.cpp
...
Mostly done with search & replace.
2021-11-29 00:55:23 +01:00
Christoph Oelckers
ac8df2f9f6
- light.cpp
2021-11-29 00:55:23 +01:00
Christoph Oelckers
65da74538c
- ActorFollowTrack.
2021-11-29 00:55:23 +01:00
Christoph Oelckers
69c97a88d3
- lava.cpp
2021-11-29 00:55:22 +01:00
Christoph Oelckers
e7dcd279af
- PickJumpMaxSpeed.
2021-11-29 00:55:22 +01:00
Christoph Oelckers
f09cf97822
- ScaleSpriteVector
2021-11-29 00:55:22 +01:00
Christoph Oelckers
e94785e571
- cleanup.
2021-11-29 00:55:22 +01:00
Christoph Oelckers
7012a77685
- InitShell / SpawnShell
2021-11-29 00:55:21 +01:00
Christoph Oelckers
aef68363b4
- FlagOwner refactoring.
...
Only those parts which use it as a sprite index, seveal actors recycle it as a general purpose variable.
2021-11-29 00:55:21 +01:00
Christoph Oelckers
e9fc342c93
- flag stuff.
2021-11-29 00:55:21 +01:00
Christoph Oelckers
3e91ac6417
- InitBloodSpray
2021-11-29 00:55:21 +01:00
Christoph Oelckers
5efb63b780
- InitCaltrops + InitPhosphorus
2021-11-29 00:55:21 +01:00
Christoph Oelckers
0b77a73976
- InitFlashBomb + PlayerInitCaltrops
2021-11-29 00:55:20 +01:00
Christoph Oelckers
3d04e332fc
- InitChemBomb + PlayerInitFlashBomb
2021-11-29 00:55:20 +01:00
Christoph Oelckers
0e1e29d768
- ChemBomb stuff.
2021-11-29 00:55:20 +01:00