Commit graph

2197 commits

Author SHA1 Message Date
Christoph Oelckers
3a051b8acb - access RoachList through a pointer. 2021-10-24 12:10:18 +02:00
Christoph Oelckers
f0f0ca020b - refactor rex to use actors. 2021-10-24 10:59:45 +02:00
Christoph Oelckers
1cf616c7ba - access RexList through a pointer. 2021-10-24 10:58:27 +02:00
Christoph Oelckers
821f3d356b - renamed DDukeActor::GetIndex to GetSpriteIndex to bring it in line with the other games. 2021-10-24 09:22:35 +02:00
Christoph Oelckers
7ebe492e94 - fixed map-spawned actor indexing in Blood.
This is needed for error reporting and the secret hint system.
2021-10-24 09:11:43 +02:00
Christoph Oelckers
54fc724b25 - fixed bad initialization of local variable.
Probably went unnoticed because it is in an unlikely code path.
2021-10-24 08:24:02 +02:00
Christoph Oelckers
5d0ee1478c - fixed bad pointer comparison.
MSVC did not catch this, only GCC 11 and Clang errored out on this one. :(
2021-10-24 08:21:54 +02:00
Christoph Oelckers
da817a234b - fixed bad actor use in actCheckDudes. 2021-10-24 00:06:02 +02:00
Christoph Oelckers
e88627b72a - refactor the rat to use actors. 2021-10-23 21:57:13 +02:00
Christoph Oelckers
9c8fda9a4d - access RatList through a pointer. 2021-10-23 21:50:57 +02:00
Christoph Oelckers
cd97fdaa30 - refactor the mummy to use actors. 2021-10-23 20:49:03 +02:00
Christoph Oelckers
fab0fff1fe - access LionList through a pointer. 2021-10-23 20:06:48 +02:00
Christoph Oelckers
cd2c796574 - refactor the lion to use actors. 2021-10-23 19:37:04 +02:00
Christoph Oelckers
3de4bc29c1 - access LionList through a pointer. 2021-10-23 19:31:53 +02:00
Christoph Oelckers
77525cecf0 - refactor the lava dude to use actors. 2021-10-23 18:51:52 +02:00
Christoph Oelckers
f12faa9279 - access LavaList through a pointer. 2021-10-23 18:41:05 +02:00
Christoph Oelckers
657e5ef6be - refactor the fish to use actors. 2021-10-23 13:02:43 +02:00
Christoph Oelckers
f8cab790d4 - access FishList through a pointer.
To make the following commmit more readably.
2021-10-23 12:33:33 +02:00
Christoph Oelckers
5d7d4ce496 - fixed radial damage for actors. 2021-10-22 23:57:46 +02:00
Christoph Oelckers
0ac449ab95 - refactored Anubis.
This now stores its data in the actor, not a static array.
2021-10-22 22:09:02 +02:00
Christoph Oelckers
fa8edc7493 - quick replacement of some sprite[] accesses. 2021-10-22 22:05:02 +02:00
Christoph Oelckers
944b7b8776 - DeleteActor implementation. 2021-10-22 22:04:44 +02:00
Christoph Oelckers
491c27caa6 - fixed runlist handling for actor targets. 2021-10-22 22:04:04 +02:00
Christoph Oelckers
51ee9cf6c6 - fixed bad interpolation setup in AddFlow, plus some variable renaming. 2021-10-22 21:55:51 +02:00
Christoph Oelckers
4ee3505dde - Exhumed: fixed return value of BuildTrap 2021-10-22 08:06:24 +02:00
Mitch Richters
d30c94c709 - Blood: Re-fix lighter when changing from TNT to aerosol.
* Fixes #564.
2021-10-20 20:58:10 +11:00
Mitch Richters
fc73c67bb1 - Blood: Fix TNT pickup accidentally equipping player with voodoo doll.
* Fixes #544.
* Thanks to @carnivoroussociety for pointing me in the right direction.
2021-10-20 19:58:07 +11:00
Christoph Oelckers
1214f8ba00 - properly macro-fy parsed strings from Blood's INI. 2021-10-19 21:49:03 +02:00
Christoph Oelckers
4d94fa9b03 - Duke/RR: strip trailing spaces off strings parsed in CON. 2021-10-19 21:49:02 +02:00
Christoph Oelckers
6e919f2364 - Exhumed: fixed handling of torch messages for localization 2021-10-19 21:49:02 +02:00
Christoph Oelckers
2cece35902 Replaced sprite[] in some smaller functions 2021-10-19 21:49:02 +02:00
Mitch Richters
df88b23f63 - Blood: Backport GDX fix for lighter just appearing when switching to the aerosol.
* Fixes #564.
* Thanks to @carnivoroussociety for the heads up.
2021-10-19 11:20:44 +11:00
Christoph Oelckers
5a9978a27b - extended the run list to handle actor targets.
Also renamed fields to be more descriptive.
2021-10-17 16:22:25 +02:00
Christoph Oelckers
1b8d3f9a89 - Exhumed: some inlines for upcoming actor refactoring. 2021-10-17 15:21:29 +02:00
Christoph Oelckers
33261db902 - some quick sprite[] replacements. 2021-10-16 15:36:34 +02:00
Christoph Oelckers
3419d6a901 - fixed compilation. 2021-10-16 15:36:34 +02:00
Christoph Oelckers
1839634d79 - small stuff 2021-10-16 15:36:33 +02:00
Christoph Oelckers
b1d15811c5 - make nBodygunSprite an actor array. 2021-10-16 15:36:33 +02:00
Christoph Oelckers
fe9ddabd35 - made nChunkSprite an actor array
# Conflicts:
#	source/games/exhumed/src/move.cpp
2021-10-16 15:36:33 +02:00
Christoph Oelckers
c2467dc47b - made nBodySprite an actor array.
# Conflicts:
#	source/games/exhumed/src/aistuff.h
#	source/games/exhumed/src/player.cpp

# Conflicts:
#	source/games/exhumed/src/aistuff.h
#	source/games/exhumed/src/player.cpp
2021-10-16 15:36:33 +02:00
Christoph Oelckers
dbe4aa3515 - renamed disassembly variables in bubbles.cpp.
# Conflicts:
#	source/games/exhumed/src/bubbles.cpp
#	source/games/exhumed/src/exhumedactor.h
2021-10-16 15:36:33 +02:00
Christoph Oelckers
0d0326f8c1 - argument of BelowNear 2021-10-16 15:36:32 +02:00
Christoph Oelckers
9badd2e78b - converted switches to classes. 2021-10-16 15:36:32 +02:00
Christoph Oelckers
601d358b49 - converted FuncWasp to a class. 2021-10-16 15:36:32 +02:00
Christoph Oelckers
8d7f37066f - converted FuncSpider to a class 2021-10-16 15:36:32 +02:00
Christoph Oelckers
5a424bdd06 - converted FuncSnake to a class. 2021-10-16 15:36:32 +02:00
Christoph Oelckers
61df236588 - converted FuncSet/FuncSoul to a class. 2021-10-16 15:36:32 +02:00
Christoph Oelckers
d77a5208f3 - converted FuncScorp to a class. 2021-10-16 15:36:31 +02:00
Christoph Oelckers
5418c4326f - converted FuncRoach to a class. 2021-10-16 15:36:31 +02:00
Christoph Oelckers
25de6fe4c5 - converted FuncRex to a class. 2021-10-16 15:36:31 +02:00
Christoph Oelckers
89d98ddf34 - fixed the rat.
- converted FuncRat to a class.
2021-10-16 15:36:11 +02:00
Christoph Oelckers
39ca524185 - converted FuncRa to a class. 2021-10-15 22:57:53 +02:00
Christoph Oelckers
335ebe9272 - converted queen funcs to classes 2021-10-15 22:55:03 +02:00
Christoph Oelckers
93b0a35927 - converted FuncPlayer into a class 2021-10-15 22:19:07 +02:00
Christoph Oelckers
f13e1f2127 - converted all FuncObjects to classes. 2021-10-15 22:14:14 +02:00
Christoph Oelckers
3bda4d5b07 - converted FuncMummy into a class 2021-10-15 22:02:06 +02:00
Christoph Oelckers
008825fe32 - converted FuncCreatureChunk into a class. 2021-10-15 21:58:07 +02:00
Christoph Oelckers
b772200dd4 - converted FuncLion into a class 2021-10-15 21:29:24 +02:00
Christoph Oelckers
45e7b7c4d5 - converted FuncLavaDude(Limb) into classes 2021-10-15 21:25:53 +02:00
Christoph Oelckers
e73725a40e - converted FuncGrenade into a class. 2021-10-15 21:20:28 +02:00
Christoph Oelckers
cdc7fba8a0 - converted AIFish(Limb) into classes 2021-10-15 21:17:25 +02:00
Christoph Oelckers
8f9e9de4b4 - converted FuncBullets into a class. 2021-10-15 21:11:01 +02:00
Christoph Oelckers
832b394561 - converted FuncBubble into a class. 2021-10-15 21:07:58 +02:00
Christoph Oelckers
0fc490bf40 - converted FuncAnubis into a class. 2021-10-15 21:07:33 +02:00
Christoph Oelckers
ce78b23fb6 - converted FuncAnim into a class 2021-10-15 21:06:53 +02:00
Christoph Oelckers
d130a43aa0 - preparations for cleaning up Exhumed's event dispatcher. 2021-10-15 18:51:22 +02:00
Christoph Oelckers
b725adc426 - Exhumed: split up the message word for event messages. 2021-10-15 18:49:35 +02:00
Christoph Oelckers
2ee7be0382 - Exhumed: split up the value parameter of the run list. 2021-10-15 18:37:39 +02:00
Christoph Oelckers
719081824a - exhumedactor.h added. 2021-10-15 00:18:37 +02:00
Christoph Oelckers
2396c89fb9 - migrated EVENT to use its actor pointer. 2021-10-14 21:59:49 +02:00
Christoph Oelckers
f430c28f88 - split up evSend
# Conflicts:
#	source/games/blood/src/nnexts.cpp
2021-10-14 21:59:49 +02:00
Christoph Oelckers
efc791ee00 - route all remaining calls to evPost and evKill through type specific variants. 2021-10-14 21:59:41 +02:00
Christoph Oelckers
b64aede68e - made patrolBonkles local to the only function using this array. 2021-10-14 20:31:45 +02:00
Christoph Oelckers
71b144023d - renamed evPost to evPostActor and evKill to evKillActor for clarity. 2021-10-14 20:31:17 +02:00
Christoph Oelckers
0ab33b7ffe - need to pass the actor separately to getDataFieldOfObject.
We cannot use rxindex anymore.
2021-10-14 20:28:56 +02:00
Christoph Oelckers
e32ac93d96 - use the actor pointer in rxBuckets. 2021-10-14 20:27:36 +02:00
Christoph Oelckers
b449e0a43b - event redirectors for rxBuckets. 2021-10-14 20:26:42 +02:00
Christoph Oelckers
40a8cd7fa3 - playerQavSceneProcess handled for rxBuckets 2021-10-14 20:25:10 +02:00
Christoph Oelckers
db9d4efdc9 - handled 4 aiFight functions for rxBuckets. 2021-10-14 19:53:08 +02:00
Christoph Oelckers
0ef388538d - refactored 'mate' function for rxBucket. 2021-10-14 19:51:49 +02:00
Christoph Oelckers
1d04ce90e4 - first batch of rxBucket refactoring. 2021-10-14 19:49:18 +02:00
Christoph Oelckers
5d0086cb49 - renamed RXBUCKET.index to rxindex.
This will be needed for refactoring for easier lookup.
2021-10-14 19:41:22 +02:00
Christoph Oelckers
93e909dd58 - use actors in the CFX interface. 2021-10-14 19:41:01 +02:00
Christoph Oelckers
77c827e817 - renamed evKill and added an actor pointer to EVENT struct. 2021-10-14 19:37:53 +02:00
Christoph Oelckers
1e1764eda6 - got rid of fxSpawn. 2021-10-14 19:36:25 +02:00
Christoph Oelckers
085bd3a165 - replaced all fxSpawn calls with fxSpawnActor. 2021-10-14 19:35:05 +02:00
Christoph Oelckers
fbe2373972 - started cleanup of evPost calls by renaming the internal functions.
This just renames things - no changes in functionality.
2021-10-14 19:07:51 +02:00
Christoph Oelckers
2a1f31581c - added null pointer checks to all event callback functions. 2021-10-14 19:07:24 +02:00
Christoph Oelckers
add368433e - sanitized callback interface. 2021-10-14 19:07:00 +02:00
Christoph Oelckers
143e947839 - renamed variable for consistency. 2021-10-14 19:02:48 +02:00
Christoph Oelckers
562968262c - moved spriteMass into DBloodActor 2021-10-14 19:01:10 +02:00
Christoph Oelckers
5519596a94 - refactored global sprite index arrays into pointer arrays. 2021-10-14 18:43:56 +02:00
Christoph Oelckers
b60caa362e - fixed bad merge 2021-10-14 01:15:05 +02:00
Christoph Oelckers
62d0d3712e - use a sprite flag to mark mapped sprites.
This avoids another global array which needs to be addressed by sprite index.
2021-10-14 15:09:43 +02:00
Christoph Oelckers
88e86b4248 - added 0 checks to all divisions for calculating dudeSlope.
I had it happen once that an actor was targeting itself here which resulted in zero distance and a division by zero exception.
2021-10-14 00:06:34 +02:00
Christoph Oelckers
a358cf8516 - SW: eliminated all SPRITE_TAG# macros. 2021-10-12 22:21:08 +02:00
Christoph Oelckers
b1ac1ad585 - more changesprite* renaming. 2021-10-12 21:36:42 +02:00
Christoph Oelckers
2e37cc627c - function renaming for clarity and easier lookup. 2021-10-12 21:36:42 +02:00
Christoph Oelckers
895ecc81bc - const-ified some static arrays.
# Conflicts:
#	source/games/blood/src/nnexts.cpp
2021-10-12 21:36:42 +02:00
Christoph Oelckers
3ea4c94266 - removed a few static array references. 2021-10-12 21:36:42 +02:00
Christoph Oelckers
a318129ff3 - iterators in ambient sound code. 2021-10-12 21:36:41 +02:00
Christoph Oelckers
3454fc397e - a few target_i removed.
# Conflicts:
#	source/games/blood/src/ai.cpp
2021-10-12 21:36:41 +02:00
Christoph Oelckers
dc5d32f510 - two missed iterators. 2021-10-12 21:36:41 +02:00
Christoph Oelckers
13348ca428 - a tiny bit of code cleanup. 2021-10-12 21:36:41 +02:00
Christoph Oelckers
b240d2b5bd - aiunicult.cpp is done. 2021-10-12 21:36:41 +02:00
Christoph Oelckers
013eadfd9f - genDudePrepare 2021-10-12 21:36:18 +02:00
Christoph Oelckers
fb5916a3dd - canSwim et.al. 2021-10-12 21:29:12 +02:00
Christoph Oelckers
acec23e034 - ensure the 'slave' array in genDudeExtra is always free of gaps.
This will ensure that adding entries won't accidentally overwrite things.
2021-10-12 21:29:11 +02:00
Christoph Oelckers
6bee3b5ba0 - updateTargetOfSlaves, also storing the slave data as pointers and major cleanup of this function. 2021-10-12 21:29:11 +02:00
Christoph Oelckers
c42e26351e - genDudeSpawn, genDudeTransform and updateTargetOfLeech. 2021-10-12 21:29:11 +02:00
Christoph Oelckers
e41fcb92ab - cleanup and formatting noise again. 2021-10-12 21:29:11 +02:00
Christoph Oelckers
f4fd2a770b - dudeLeechOperate 2021-10-12 21:29:11 +02:00
Christoph Oelckers
e415d93283 - doexplosion 2021-10-12 19:23:25 +02:00
Christoph Oelckers
b1f55434a2 - getRecoilChance + getDodgeChance 2021-10-12 19:23:25 +02:00
Christoph Oelckers
b70368050a - getDispersionModifier and getRangeAttackDist. 2021-10-12 19:23:25 +02:00
Christoph Oelckers
9801ce25dd - scaleDamage 2021-10-12 19:23:24 +02:00
Christoph Oelckers
544145fe4b - reformatting noise split from a larger commit. 2021-10-12 19:23:24 +02:00
Christoph Oelckers
c715ded287 - dudeIsMelee 2021-10-12 19:23:24 +02:00
Christoph Oelckers
eb478ba580 - getNextIncarnation
Event queue handling not refactored yet.
2021-10-12 19:23:24 +02:00
Christoph Oelckers
d892efb78a - killDudeLeech 2021-10-12 19:23:24 +02:00
Christoph Oelckers
040049f83e - more leech stuff.
# Conflicts:
#	source/games/blood/src/ai.cpp
2021-10-12 19:23:23 +02:00
Christoph Oelckers
d2f16ec8ab - leechIsDropped, pLifeLeech 2021-10-12 19:23:23 +02:00
Christoph Oelckers
d907627156 - spriteIsUnderwater 2021-10-12 19:23:23 +02:00
Christoph Oelckers
75258c8b29 - playGenDudeSound. 2021-10-12 19:23:23 +02:00
Christoph Oelckers
ea63229251 - some minor cleanup in aiunicult.cpp.
# Conflicts:
#	source/games/blood/src/aiunicult.cpp
2021-10-12 19:23:22 +02:00
Christoph Oelckers
05571de93a - genDudeUpdate handled. 2021-10-12 19:23:22 +02:00
Christoph Oelckers
49f75e6f51 - 2 more function changed to use actor parameters. 2021-10-12 19:23:22 +02:00
Christoph Oelckers
805ae48607 - ThrowThing cleanup.
Mostly use of VS's rename function.
2021-10-12 19:23:22 +02:00
Christoph Oelckers
c848518746 - use actor parameter in all calls to aiGenDudeNewState.
# Conflicts:
#	source/games/blood/src/aiunicult.cpp
2021-10-12 19:23:22 +02:00
Christoph Oelckers
9de6c7df46 - reformatting commit.
# Conflicts:
#	source/games/blood/src/ai.cpp
2021-10-12 19:23:22 +02:00
Christoph Oelckers
062b3dbf76 - route all access to genDudeExtra through the method in DBloodActor 2021-10-12 19:23:21 +02:00
Christoph Oelckers
cdacf8e470 - fixed badly resolved merge conflict 2021-10-12 00:07:24 +02:00
Christoph Oelckers
64b67291bc - properly write out the genPatrolStates in savegames. 2021-10-11 23:41:44 +02:00
Christoph Oelckers
f370c0f22f - fixed bad null check in aiProcessDudes. 2021-10-11 23:41:04 +02:00
Christoph Oelckers
c6dc564788 - fixed bad target check (again.) 2021-10-11 23:34:49 +02:00
Christoph Oelckers
afce1aba88 - SW: eliminated the only use of the SPRITE_TAG1 macro. 2021-10-11 23:02:54 +02:00
Christoph Oelckers
351dabdb90 - actFireMissile. 2021-10-10 22:36:12 +02:00
Christoph Oelckers
7eac8b71d5 - removed unused constants 2021-10-10 11:47:19 +02:00
Christoph Oelckers
2af688dd62 - replaced RANDOM_RANGE macro with direct calls to RandomRange 2021-10-10 11:47:19 +02:00
Christoph Oelckers
cc912fbf93 - removed pointless BOUND_4PIX macro 2021-10-10 11:47:19 +02:00
Christoph Oelckers
3220a6d786 - some SW cleanup 2021-10-10 11:47:19 +02:00
Christoph Oelckers
bbe49eee7c - reformatting commit 2021-10-10 11:47:18 +02:00
Christoph Oelckers
6f8a5ee2d2 - Exhumed: replaced a large amount of sprite array accesses with pointers.
No logic changes, this is mainly search & replace.
2021-10-10 11:47:18 +02:00
Christoph Oelckers
c485fce958 - reformatted the actor and ai sources. 2021-10-10 11:47:18 +02:00
Christoph Oelckers
0ee81b2bb8 - refactored the remaining pieces in the ai code to use actors. 2021-10-10 11:47:18 +02:00
Christoph Oelckers
d4439b879c - Blood: added checks to the SEQ code to handle situation where their attached object has been removed from the game. 2021-10-10 11:46:38 +02:00
Christoph Oelckers
62502439d7 - eliminated HITINFO.hitsprite.
This was one of the more annoying sprite index variables because it is part of static global data.
2021-10-09 23:09:09 +02:00
Christoph Oelckers
9b4ee3dc2c - some remaining sprite[] access in ai.cpp
# Conflicts:
#	source/games/blood/src/ai.cpp
2021-10-09 23:09:08 +02:00
Christoph Oelckers
f712a674ce - removed the few remaining uses of actDamageSprite_. 2021-10-09 23:09:08 +02:00
Christoph Oelckers
3ab636a13a - sfxPlay3DSound calls partially migrated. 2021-10-09 23:09:08 +02:00