Commit graph

10792 commits

Author SHA1 Message Date
Christoph Oelckers
e3ce0da111 - make all actor pointers in the player struct regular pointers. 2021-12-30 09:58:06 +01:00
Christoph Oelckers
de3e66016c - removed the Actor() access method from Exhumed's player as well. 2021-12-30 09:58:06 +01:00
Christoph Oelckers
bf3f580d52 - deleted PLAYER::Actor()
Also made actor a regular pointer. Unlike the other ones this may not be prematurely nulled ever.
2021-12-30 09:58:06 +01:00
Christoph Oelckers
d340a7e80c - u() and USERp are gone. 2021-12-30 09:58:05 +01:00
Christoph Oelckers
26f93ab724 - the final u()'s. 2021-12-30 09:58:05 +01:00
Christoph Oelckers
cf88bcbecb - handle u-> in player.cpp 2021-12-30 09:58:05 +01:00
Christoph Oelckers
bfea02a192 - a few in player.cpp 2021-12-30 09:58:05 +01:00
Christoph Oelckers
cc161fe66a - deleted u variables in track.cpp 2021-12-30 09:58:05 +01:00
Christoph Oelckers
c544046fb3 - renamed u-> in track.cpp 2021-12-30 09:58:05 +01:00
Christoph Oelckers
055982f0db - smaller u in track.cpp 2021-12-30 09:58:04 +01:00
Christoph Oelckers
050d93a92c - deleted unused pointers and handled u() in the script interface. 2021-12-30 09:58:04 +01:00
Christoph Oelckers
6df854d612 - replaced one sprite inline with its actor variant. 2021-12-30 09:58:04 +01:00
Christoph Oelckers
4e7724ece2 - deleted all leftover SPRITEp stuff. 2021-12-30 09:58:04 +01:00
Christoph Oelckers
f1c60e4a52 - fixed SpawnFireballFlames and deleted leftover sprite pointers. 2021-12-30 09:58:04 +01:00
Christoph Oelckers
2543a46278 - deleted all u variables from weapon.cpp 2021-12-30 09:58:03 +01:00
Christoph Oelckers
8739ef9182 - renamed all u-> in weapon.cpp 2021-12-30 09:58:03 +01:00
Christoph Oelckers
3e79c917f2 - the last u in weapon.cpp that are not actor->u() 2021-12-30 09:58:03 +01:00
Christoph Oelckers
b522356120 - stuff that was missed. 2021-12-30 09:58:03 +01:00
Christoph Oelckers
85b687ba13 - all eu, which are expActor. 2021-12-30 09:58:03 +01:00
Christoph Oelckers
e16caa0c62 - eu, that are not expActor 2021-12-30 09:58:03 +01:00
Christoph Oelckers
7147d3c89e - several non-u users in weapon.cpp 2021-12-30 09:58:02 +01:00
Christoph Oelckers
9485816cf7 - deleted u variables from sprite.cpp. 2021-12-30 09:58:02 +01:00
Christoph Oelckers
b9a8647d73 - renamed u-> in sprite.cpp 2021-12-30 09:58:02 +01:00
Christoph Oelckers
02d8551330 - non "u = actor" Users in sprite.cpp 2021-12-30 09:58:02 +01:00
Christoph Oelckers
221f1dc69a - handle u-> in slidor.cpp 2021-12-30 09:58:02 +01:00
Christoph Oelckers
9f27e05fef - deleted u variables in sector.cpp 2021-12-30 09:58:02 +01:00
Christoph Oelckers
121ae62108 - renamed u-> in sector.cpp 2021-12-30 09:58:01 +01:00
Christoph Oelckers
65b9841666 - handle u-> in rotator.cpp 2021-12-30 09:58:01 +01:00
Christoph Oelckers
be1d53db56 - deleted u variables in vator.cpp 2021-12-30 09:58:01 +01:00
Christoph Oelckers
ab359844aa - renamed u-> in vator.cpp 2021-12-30 09:58:01 +01:00
Christoph Oelckers
2ef7fc9bc2 - handle u-> in zilla.cpp and zombie.cpp 2021-12-30 09:58:01 +01:00
Christoph Oelckers
936febd505 - deleted u variables in player.cpp 2021-12-30 09:58:01 +01:00
Christoph Oelckers
3e21dd40a7 - renamed u-> in half of player.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
bc15bdf92c - renaming stuff in player.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
b606d01ca8 - u-> in panel.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
d84c4b4f20 - u() in sumo.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
9b18316fd7 - delete u variables in spike.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
d95a22485b - rename u-> in spike.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
9df3400a91 - deleted u variables in skull.cpp 2021-12-30 09:58:00 +01:00
Christoph Oelckers
cbec67dbf5 - renamed u-> in skull.cpp 2021-12-30 09:57:59 +01:00
Christoph Oelckers
1da38cbc8e - u-> in skel.cpp 2021-12-30 09:57:59 +01:00
Christoph Oelckers
4aed4a6965 - u() in serp.cpp 2021-12-30 09:57:59 +01:00
Christoph Oelckers
0274fa5b4b - deleted u variables in ripper2.cpp 2021-12-30 09:57:59 +01:00
Christoph Oelckers
574deb2111 - renamed u-> in ripper2.cpp 2021-12-30 09:57:59 +01:00
Christoph Oelckers
401f1f8dbc - deleted u variables in ripper.cpp. 2021-12-30 09:57:59 +01:00
Christoph Oelckers
4691da132d - renamed u-> in ripper.cpp 2021-12-30 09:57:58 +01:00
Christoph Oelckers
d14907e847 - deleted u variables in ninja.cpp 2021-12-30 09:57:58 +01:00
Christoph Oelckers
8ab8d219b3 - renamed u-> in ninja.cpp 2021-12-30 09:57:58 +01:00
Christoph Oelckers
704a730a45 - non "u = actor" Users in ninja.cpp. 2021-12-30 09:57:58 +01:00
Christoph Oelckers
e8e85c5816 - deleted u variables in miscactr.cpp. 2021-12-30 09:57:58 +01:00
Christoph Oelckers
8ffa12442c - renamed u-> in miscactr.cpp 2021-12-30 09:57:58 +01:00
Christoph Oelckers
a1c5c06e27 - u() in lava.cpp, light.cpp and predict.cpp 2021-12-30 09:57:58 +01:00
Christoph Oelckers
78fa76678d - deleted u variables in jweapon.cpp 2021-12-30 09:57:57 +01:00
Christoph Oelckers
08244a70f3 - renamed u-> in jweapon.cpp 2021-12-30 09:57:57 +01:00
Christoph Oelckers
a023087e2d - handle non u = actor->u() cases in jweapon.cpp. 2021-12-30 09:57:57 +01:00
Christoph Oelckers
f59fa8b13e - deleted all wu variables. 2021-12-30 09:57:57 +01:00
Christoph Oelckers
dc60cd7689 - renamed all wu-> in weapon.cpp. 2021-12-30 09:57:57 +01:00
Christoph Oelckers
521ad37618 - handle wu-> in weapon.cpp which do not reference actorNew. 2021-12-30 09:57:57 +01:00
Christoph Oelckers
6b0e944e7b - deleted wu variables in jweapon.cpp 2021-12-30 09:57:56 +01:00
Christoph Oelckers
7be6bfeb0e - replacing wu-> in jweapon.cpp 2021-12-30 09:57:56 +01:00
Christoph Oelckers
4eb32d5b18 - renaming stuff 2021-12-30 09:57:56 +01:00
Christoph Oelckers
388b3062fd - u() in input.cpp, interpso.cpp and inv.cpp 2021-12-30 09:57:56 +01:00
Christoph Oelckers
41753240dd - deleted u in hornet.cpp 2021-12-30 09:57:56 +01:00
Christoph Oelckers
64598f6167 - renamed u-> in hornet.cpp 2021-12-30 09:57:56 +01:00
Christoph Oelckers
ff09079502 - deleted u in goro.cpp 2021-12-30 09:57:55 +01:00
Christoph Oelckers
89c9031486 - renamed u-> in goro.cpp 2021-12-30 09:57:55 +01:00
Christoph Oelckers
43e370f079 - deleted u in girlninj.cpp 2021-12-30 09:57:55 +01:00
Christoph Oelckers
dc5821d7c6 - renamed u-> in girlninj.cpp 2021-12-30 09:57:55 +01:00
Christoph Oelckers
a72732a7b1 - handle USERSAVE. 2021-12-30 09:57:55 +01:00
Christoph Oelckers
afe93f89af - deleted u in eel.cpp. 2021-12-30 09:57:55 +01:00
Christoph Oelckers
3908d4b1c6 - renamed u-> in eel.cpp. 2021-12-30 09:57:55 +01:00
Christoph Oelckers
5f281dfc29 - user() in draw.cpp. 2021-12-30 09:57:54 +01:00
Christoph Oelckers
42aa99d7f6 - deleted u in coolie.cpp. 2021-12-30 09:57:54 +01:00
Christoph Oelckers
9c68d14c74 - renamed u-> in coolie.cpp 2021-12-30 09:57:54 +01:00
Christoph Oelckers
fa59f90f92 - removed u variables in coolg.cpp 2021-12-30 09:57:54 +01:00
Christoph Oelckers
2458893528 - u-> in cheats.cpp and coolg.cpp 2021-12-30 09:57:54 +01:00
Christoph Oelckers
29d161dd67 - removed u variables in bunny.cpp 2021-12-30 09:57:54 +01:00
Christoph Oelckers
87100b1f50 renamed u-> in break.cpp and bunny.cpp 2021-12-30 09:57:53 +01:00
Christoph Oelckers
6597827458 - deleted all hu variables. 2021-12-30 09:57:53 +01:00
Christoph Oelckers
8fe11bd848 - replaced hu-> 2021-12-30 09:57:53 +01:00
Christoph Oelckers
91a355a82e - handle all hu = itActor.u(); 2021-12-30 09:57:53 +01:00
Christoph Oelckers
86704b264e - deleted nu variables. 2021-12-30 09:57:53 +01:00
Christoph Oelckers
d096eda3a9 - renamed all nu-> in weapon.cpp. 2021-12-30 09:57:52 +01:00
Christoph Oelckers
13e14553eb - renamed all nu-> outside weapon.cpp. 2021-12-30 09:57:52 +01:00
Christoph Oelckers
38224f05b7 - all nu not referring to actorNew->u() 2021-12-30 09:57:52 +01:00
Christoph Oelckers
b49e3201ae - several uses of tu and bu - almost all very minor stuff. 2021-12-30 09:57:52 +01:00
Christoph Oelckers
1ec6743f20 - replaced tu in bunny.cpp and draw.cpp 2021-12-30 09:57:52 +01:00
Christoph Oelckers
6dcc8761fe - replaced the last remaining s() calls in Blood's interface and deleted the method. 2021-12-30 09:57:51 +01:00
Christoph Oelckers
4dad58e557 - the final s() in SW. 2021-12-30 09:57:51 +01:00
Christoph Oelckers
6729dbd684 - almost done with s(). 2021-12-30 09:57:51 +01:00
Christoph Oelckers
11a59055a4 - 15 more s() from weapon.cpp. 2021-12-30 09:57:51 +01:00
Christoph Oelckers
f02c402036 - 12 more from weapon.cpp 2021-12-30 09:57:51 +01:00
Christoph Oelckers
bd3aaea3b2 - big macro mess cleanup. 2021-12-30 09:57:51 +01:00
Christoph Oelckers
297921204f - rename STD_RANDOM_RANGE 2021-12-30 09:57:50 +01:00
Christoph Oelckers
d957540258 - targeting stuff in weapon.cpp 2021-12-30 09:57:50 +01:00
Christoph Oelckers
85a814d379 - all of track.cpp and vis.cpp 2021-12-30 09:57:50 +01:00
Christoph Oelckers
dcb375a3c6 - all of sprite.cpp 2021-12-30 09:57:50 +01:00
Christoph Oelckers
b7c4ac55d1 - replaced all remaining sp = &actor->s(). 2021-12-30 09:57:50 +01:00
Christoph Oelckers
5643f9b7f7 - deleted dead sp variables. 2021-12-30 09:57:50 +01:00
Christoph Oelckers
8a2908bc30 - eliminated the remaining SP_* spritetype function variants. 2021-12-30 09:57:49 +01:00
Christoph Oelckers
8ffc87134d - track stuff 2021-12-30 09:57:49 +01:00
Christoph Oelckers
e782cc1c28 - deleted unused spritetype inlines. 2021-12-30 09:57:49 +01:00
Christoph Oelckers
7f07be0d6d - - sector, sound, track, rotator 2021-12-30 09:57:49 +01:00
Christoph Oelckers
d62a65b6e3 - do not use sprite pointers in sound code. 2021-12-30 09:57:49 +01:00
Christoph Oelckers
6df8f8a537 - handle all fsp = &actor->s(); 2021-12-30 09:57:48 +01:00
Christoph Oelckers
822c88c135 - handle all auto psp = &pp->Actor()->s(); 2021-12-30 09:57:48 +01:00
Christoph Oelckers
8b5955d3dd - the remaining s() in player.cpp 2021-12-30 09:57:48 +01:00
Christoph Oelckers
c7b80b80d8 - player warp functions. 2021-12-30 09:57:48 +01:00
Christoph Oelckers
188af0dbb3 - half of what's left of s() in player.cpp 2021-12-30 09:57:48 +01:00
Christoph Oelckers
959147c656 - smaller stuff 2021-12-30 09:57:48 +01:00
Christoph Oelckers
6d7337e41b - the rest of light.cpp 2021-12-30 09:57:47 +01:00
Christoph Oelckers
2aba992d63 - most of lights.cpp, including turning the helper macros into functions. 2021-12-30 09:57:47 +01:00
Christoph Oelckers
eba5d222c0 - the remaining s()'s in jweapon.cpp 2021-12-30 09:57:47 +01:00
Christoph Oelckers
571dccda76 - jsector.cpp 2021-12-30 09:57:47 +01:00
Christoph Oelckers
ce7465869f - vator.cpp cleanup. 2021-12-30 09:57:47 +01:00
Christoph Oelckers
35b4db39d7 - sp-> in vator.cpp 2021-12-30 09:57:47 +01:00
Christoph Oelckers
77308356ed - sprite.cpp 2021-12-30 09:57:47 +01:00
Christoph Oelckers
843239d085 - SpriteSetup and related functions. 2021-12-30 09:57:46 +01:00
Christoph Oelckers
0c48b4b2c2 - over/under stuff in weapon.cpp 2021-12-30 09:57:46 +01:00
Christoph Oelckers
47b4c55a5c - parts of sprite.cpp. 2021-12-30 09:57:46 +01:00
Christoph Oelckers
83a7b3ef1c - parts of jsector.cpp 2021-12-30 09:57:46 +01:00
Christoph Oelckers
967385a87c - rotator.cpp, slidor.cpp and a few single ones elsewhere. 2021-12-30 09:57:46 +01:00
Christoph Oelckers
8e8f59caa1 - refactored GetSpriteZOfMiddle (and all s() close by) 2021-12-30 09:57:45 +01:00
Christoph Oelckers
123e19e355 - the rest of draw.cpp 2021-12-30 09:57:45 +01:00
Christoph Oelckers
9cdf4db648 - the remaining sp-> in draw.cpp 2021-12-30 09:57:45 +01:00
Christoph Oelckers
3b26c634db - parts of draw.cpp. 2021-12-30 09:57:45 +01:00
Christoph Oelckers
c61e4de409 - WarpCopySprite 2021-12-30 09:57:45 +01:00
Christoph Oelckers
dce8531c48 - all sp in player.cpp 2021-12-30 09:57:45 +01:00
Christoph Oelckers
c5af361564 - renamed sp-> in player.cpp. 2021-12-30 09:57:44 +01:00
Christoph Oelckers
f488b9220c - deal with sp in player.cpp that do not use &actor->s() 2021-12-30 09:57:44 +01:00
Christoph Oelckers
ffb97eb261 - all s() from bunny.cpp + copysect.cpp. 2021-12-30 09:57:44 +01:00
Christoph Oelckers
9ad23631f5 - several s(). 2021-12-30 09:57:44 +01:00
Christoph Oelckers
1e938e2b44 - deleted redundant sprite inlines.
All calls have been transitioned to actors.
2021-12-30 09:57:44 +01:00
Christoph Oelckers
8a1c602dc8 - 10 more s(). 2021-12-30 09:57:43 +01:00
Christoph Oelckers
bdf29cf01e - hs = &itActor->s(); 2021-12-30 09:57:43 +01:00
Christoph Oelckers
6ce1f57b5e - deleted all wp variables. 2021-12-30 09:57:43 +01:00
Christoph Oelckers
cc3c477992 - renamed all wp in jweapon.cpp and weapon.cpp 2021-12-30 09:57:43 +01:00
Christoph Oelckers
cd7f13c4ba - all wp not referencing actorNew. 2021-12-30 09:57:43 +01:00
Christoph Oelckers
2398073529 - getting rid of wall variables named wp. 2021-12-30 09:57:43 +01:00
Christoph Oelckers
7bea7cdae1 - handle all wp referencing actor->s(). 2021-12-30 09:57:42 +01:00
Christoph Oelckers
1afb985291 - renamed all wp referencing weapActor. 2021-12-30 09:57:42 +01:00
Christoph Oelckers
33c8668325 - deleted all np variables. 2021-12-30 09:57:42 +01:00
Christoph Oelckers
14ba7d24d2 - renamed all remaining np-> 2021-12-30 09:57:42 +01:00
Christoph Oelckers
730c9e65e4 - renamed all np-> in weapon.cpp 2021-12-30 09:57:42 +01:00
Christoph Oelckers
5eb958938d - renamed all np-> in sprite.cpp 2021-12-30 09:57:41 +01:00
Christoph Oelckers
b2d4375cde - renamed all np-> in jweapons.cpp 2021-12-30 09:57:41 +01:00
Christoph Oelckers
08a98c3955 - renamed all np-> in bunny.cpp 2021-12-30 09:57:41 +01:00
Christoph Oelckers
0175d27ffa - handle all 'np->' not referencing actorNew. 2021-12-30 09:57:41 +01:00
Christoph Oelckers
09294d7712 - deleted sp from _polymost.cpp 2021-12-30 09:57:41 +01:00
Christoph Oelckers
e1fdb6b7bf - deleted all exp variables from weapon.cpp. 2021-12-30 09:57:41 +01:00
Christoph Oelckers
b5261b9fe1 - renamed exp-> in weapon.cpp 2021-12-30 09:57:40 +01:00
Christoph Oelckers
4395de8fb1 - deleted all sp variables from weapon.cpp. 2021-12-30 09:57:40 +01:00
Christoph Oelckers
b488361639 - more macros in weapons.cpp converted into functions. 2021-12-30 09:57:40 +01:00
Christoph Oelckers
39640a4870 - handle most sp function parameters.
Also de-macrofied ANG2SPRITE and ANG2PLAYER.
2021-12-30 09:57:40 +01:00
Christoph Oelckers
d8b0cbd031 - renamed all sp-> in weapons.cpp. 2021-12-30 09:57:40 +01:00
Christoph Oelckers
17810bc6cd - the ones I missed. 2021-12-30 09:57:39 +01:00
Christoph Oelckers
a8d0e29a3b - handle parts of weapon.cpp where sp is not used for actor->s() 2021-12-30 09:57:39 +01:00
Christoph Oelckers
b2fd05d182 - stuff in InitSwordAttack + InitHeartAttack 2021-12-30 09:57:39 +01:00
Christoph Oelckers
270afb5d49 - sp-> renaming and cleanup in rooms.cpp 2021-12-30 09:57:39 +01:00
Christoph Oelckers
49cc2b3cad - quake.cpp plus SP_TAG13/14 cleanup 2021-12-30 09:57:39 +01:00
Christoph Oelckers
9aaaadefc3 - SpawnQuake 2021-12-30 09:57:39 +01:00
Christoph Oelckers
2b8b4f3fcc - QuakeViewChange 2021-12-30 09:57:38 +01:00
Christoph Oelckers
7419c2e65b - sp cleanup in sector.cpp 2021-12-30 09:57:38 +01:00
Christoph Oelckers
79a9278ff3 - rename sp-> in sector.cpp 2021-12-30 09:57:38 +01:00
Christoph Oelckers
212f07f7ff - sp cleanup in skull.cpp, sumo.cpp, zilla.cpp, zombie.cpp 2021-12-30 09:57:38 +01:00
Christoph Oelckers
926b4f8ba9 - sp cleanup of ripper.cpp, ripper2.cpp, serp.cpp, skel.cpp. 2021-12-30 09:57:38 +01:00
Christoph Oelckers
639613297d - globally replaced sp-> in several files.
No further cleanup yet.
2021-12-30 09:57:38 +01:00
Christoph Oelckers
dc7fecccd0 - globally replaced sp-> in spike.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
f58d4e2604 - globally replaced sp-> in skull.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
0d0d5366b1 - globally replaced sp-> in skel.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
bb4c0be15e - globally replaced sp-> in serp.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
f6c32b10d4 - globally replaced sp-> in ripper2.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
67d82f63be - globally replaced sp-> in ripper.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
ce6f6ff5d3 - globally replaced sp-> in _polymost.cpp 2021-12-30 09:57:37 +01:00
Christoph Oelckers
63fc668d57 - don't use auto when making local copies of TObjPtr. 2021-12-30 09:57:36 +01:00
Christoph Oelckers
1b1a81e2bc - sp in ninja.cpp. 2021-12-30 09:57:36 +01:00
Christoph Oelckers
a3b539da28 - sp cleanup in miscactr.cpp. 2021-12-30 09:57:36 +01:00
Christoph Oelckers
5f187a3efb - sp-> replacement in miscactr.cpp. 2021-12-30 09:57:36 +01:00
Christoph Oelckers
1d6b5e621d - sp cleanup in jweapon.cpp. 2021-12-30 09:57:36 +01:00
Christoph Oelckers
b3b6001248 - sp-> replacements in jweapon.cpp 2021-12-30 09:57:36 +01:00
Christoph Oelckers
aeed726b59 - deleted sp assignments in processed files. 2021-12-30 09:57:35 +01:00
Christoph Oelckers
aac44b27b1 - sp cleanup in bunny.cpp. 2021-12-30 09:57:35 +01:00
Christoph Oelckers
1d76336045 - handle bp in break.cpp 2021-12-30 09:57:35 +01:00
Christoph Oelckers
47b51efdc6 - turning TEST_BOOL into overloaded functions. 2021-12-30 09:57:35 +01:00
Christoph Oelckers
5290939cbc - break.cpp sp cleanup.
Also a few needed renamings.
2021-12-30 09:57:35 +01:00
Christoph Oelckers
06d33b8276 - partial conversion of SP_TAG3 to actors. 2021-12-30 09:57:35 +01:00
Christoph Oelckers
627a69570f - turned all SP_TAGx macros into functions so that they can be overloaded with actor variants. 2021-12-30 09:57:34 +01:00
Christoph Oelckers
397d9b0d84 - made SP_TAG2 a function with an actor parameter. 2021-12-30 09:57:34 +01:00
Christoph Oelckers
5be1bc4de7 - made SP_TAG1 a function with an actor parameter. 2021-12-30 09:57:34 +01:00
Christoph Oelckers
40050f5008 - replaced sp-> in several files. 2021-12-30 09:57:34 +01:00
Christoph Oelckers
42a525692d - fixed check on wrong actor in DoChemBomb. 2021-12-30 09:57:34 +01:00
Christoph Oelckers
514c3ffb10 - cameraactor in _polymost.cpp 2021-12-30 09:57:33 +01:00
Christoph Oelckers
4caee272ef - some non 'actor' sp replacements in weapon.cpp. 2021-12-30 09:57:33 +01:00
Christoph Oelckers
76809965ad - some sp replacements as preparation for replacing most of 'actor->s()'. 2021-12-30 09:57:33 +01:00
Christoph Oelckers
ca14c809f9 - cleaned up some random crap with loops and bad variable types I just randomly found. 2021-12-30 09:57:33 +01:00
Christoph Oelckers
7bbd4343a8 - renamed all shadowing variables in Duke. 2021-12-30 09:57:33 +01:00
Christoph Oelckers
032c597fa5 - renamed shadowing variables in Blood. 2021-12-30 09:57:32 +01:00
Christoph Oelckers
9e14b168bb - addressed more shadowed variables in common code. 2021-12-30 09:57:32 +01:00
Mitchell Richters
0bb4ec7c33 - SW: Ensure pp in analyzesprites() is always initiated as the console player. 2021-12-30 09:57:32 +01:00
Christoph Oelckers
ca9d73ffee - renamed some shadowing variables in common code. 2021-12-30 09:57:32 +01:00
Mitchell Richters
95d270fbdd - Exhumed: Clean up local functions variables to prevent redefinition conflicts. 2021-12-30 09:57:31 +01:00
Mitchell Richters
c26b5d2303 - SW: Clean up local functions variables to prevent redefinition conflicts. 2021-12-30 09:57:31 +01:00
Mitchell Richters
a611fdb152 - Allow variable redefinition warnings for entire project. 2021-12-30 09:57:31 +01:00
Mitchell Richters
36fc6ede8e - Blood: Repair actor variable collision in GetZRange() causing all kinds of weirdness. 2021-12-30 09:57:31 +01:00
Mitchell Richters
a1900253e5 - Fix GCC warning warning: "/*" within comment [-Wcomment]. 2021-12-30 09:57:31 +01:00
Mitchell Richters
e15c887f90 - Duke: Fix bad setup in initcrane() following actor sprite pointer cleanups. 2021-12-30 09:57:31 +01:00
Christoph Oelckers
0ebd7532b8 - don't use s() in other getters. 2021-12-30 09:57:30 +01:00
Christoph Oelckers
395a269feb - globally replaced ->u()->. 2021-12-30 09:57:30 +01:00
Christoph Oelckers
82b883e461 - SW: replaced u() in ai.cpp. 2021-12-30 09:57:30 +01:00
Christoph Oelckers
b55e46ec6d - ai.cpp cleanup. 2021-12-30 09:57:30 +01:00
Christoph Oelckers
ed8b4100f6 - SW: replace s() in ai.cpp.
Also a bit of inline cleanup to make it compile again.
2021-12-30 09:57:30 +01:00
Christoph Oelckers
8d5bffc280 - SW: some inline cleanup. 2021-12-30 09:57:29 +01:00
Christoph Oelckers
810ab29898 - SW: non 'actor' cases of s() in ai.cpp. 2021-12-30 09:57:29 +01:00
Christoph Oelckers
6c97912220 - SW: replace all u()'s in actor.cpp 2021-12-30 09:57:29 +01:00
Christoph Oelckers
fd78cb57c1 - fixed some bad flag replacements.
0x7fff is not ~CSTAT_SPRITE_BLOCK but ~CSTAT_SPRITE_INVISIBLE.
2021-12-30 09:57:29 +01:00
Christoph Oelckers
d84556d829 - fixed broken getzrange setup.
When adding support for slope sprites an assignment to daz2 got lost.
2021-12-30 09:57:29 +01:00
Christoph Oelckers
3992dfae84 - fixed: When merging clip nodes the redundant one needs to be deleted with RemoveRange.
Calling Free is not enough.
2021-12-30 09:57:29 +01:00
Christoph Oelckers
b00f197be3 - fixed: RemoveClipRange did not shorten the range if it had to split it up. 2021-12-30 09:57:29 +01:00
Christoph Oelckers
c9628e2034 - partial cleanup of SW's macro mess.
Renamed some functions to give them better names and converted more macros into functions or constants
2021-12-30 09:57:28 +01:00
Christoph Oelckers
394f06baa0 - SW: converted 1/3 of the #defines in names2.h into enums. 2021-12-30 09:57:28 +01:00
Christoph Oelckers
92f2182e6e - SW: all s() in actor.cpp 2021-12-30 09:57:28 +01:00
Christoph Oelckers
2718b3a5e3 - remaining s() in Exhumed 2021-12-30 09:57:28 +01:00
Christoph Oelckers
d4c01ce957 - remaining s() in queen.cpp. 2021-12-30 09:57:28 +01:00
Christoph Oelckers
4610fc6e99 - remaining s() in player.cpp. 2021-12-30 09:57:27 +01:00
Christoph Oelckers
d40da386a4 - remaining s() in object.cpp. 2021-12-30 09:57:27 +01:00
Christoph Oelckers
301350ef8c - remaining s() in move.cpp 2021-12-30 09:57:27 +01:00
Christoph Oelckers
7eaf669295 - remaining s() in bullet.cpp, grenade.cpp and gun.cpp. 2021-12-30 09:57:27 +01:00
Christoph Oelckers
cd6bb5305e - second batch of Exhumed's s(). 2021-12-30 09:57:27 +01:00
Christoph Oelckers
6f0e7e3784 - Exhumed: batch of several s(). 2021-12-30 09:57:27 +01:00
Christoph Oelckers
56bd9e7e27 - Exhumed: pActor->s() in spider.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
05d2b90418 - Exhumed: pActor->s() in anubis.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
046ff607dc - Exhumed: pActor->s() in wasp.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
eda75a38d2 - Exhumed: pActor->s() in snake.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
0fb92e3928 - Exhumed: pActor->s() in set.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
b34a4af15e - Exhumed: pActor->s() in scorp.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
013cf05042 - Exhumed: pActor->s() in runlist.cpp 2021-12-30 09:57:26 +01:00
Christoph Oelckers
318678b5a1 - Exhumed: pActor->s() in roach.cpp 2021-12-30 09:57:25 +01:00
Christoph Oelckers
a6c592b12c - Exhumed: pActor->s() in rex.cpp 2021-12-30 09:57:25 +01:00
Christoph Oelckers
b02feec2e8 - Exhumed: pActor->s() in rat.cpp 2021-12-30 09:57:25 +01:00
Christoph Oelckers
430a0263d5 - Exhumed: pActor->s() in ra.cpp 2021-12-30 09:57:25 +01:00
Christoph Oelckers
d162c36113 - Exhumed: pActor->s() in queen.cpp 2021-12-30 09:57:25 +01:00
Christoph Oelckers
b641da3959 - Exhumed: pActor->s() in player.cpp and view.cpp. 2021-12-30 09:57:25 +01:00
Christoph Oelckers
b6d04ffec0 - Exhumed: pActor->s() in object.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
dca478d284 - Exhumed: pActor->s() in mummy.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
23f274120c - Exhumed: pActor->s() in move.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
ca88e241e1 - Exhumed: pActor->s() in lion.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
5700b8ade6 - Exhumed: pActor->s() in lavadude.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
33918ac554 - Exhumed: pActor->s() in items.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
1d01a6cff7 - Exhumed: pActor->s() in init.cpp + lighting.cpp 2021-12-30 09:57:24 +01:00
Christoph Oelckers
613dd67578 - Exhumed: pActor->s() in grenade.cpp 2021-12-30 09:57:23 +01:00
Christoph Oelckers
79e6412ad5 - Exhumed: pActor->s() in fish.cpp 2021-12-30 09:57:23 +01:00
Christoph Oelckers
a7cebcafbb - Exhumed: pActor->s() in bullet.cpp 2021-12-30 09:57:23 +01:00
Christoph Oelckers
03759ef73b - Exhumed: pActor->s() in bubbles.cpp 2021-12-30 09:57:23 +01:00
Christoph Oelckers
89a1fcdfac - Exhumed: pActor->s() in anims.cpp 2021-12-30 09:57:23 +01:00
Christoph Oelckers
1bb7f3764d - handle all s() cases in Exhumed using pSprite but not pActor->s(). 2021-12-30 09:57:23 +01:00
Christoph Oelckers
3adbed4826 - t[] replacement in spawn code. 2021-12-30 09:57:22 +01:00
Christoph Oelckers
9b932b2d91 - t[] replacement in actors_d.cpp and actors_r.cpp. 2021-12-30 09:57:22 +01:00
Christoph Oelckers
8c35224fe1 - Duke: removed all t-pointers to temp_data in actors.cpp. 2021-12-30 09:57:22 +01:00
Christoph Oelckers
bd47f56a5c - x() is gone entirely. 2021-12-30 09:57:22 +01:00
Christoph Oelckers
e940fe1931 - the rest of nnexts.cpp 2021-12-30 09:57:22 +01:00
Christoph Oelckers
4177c31deb - next batch of nnexts.cpp 2021-12-30 09:57:22 +01:00
Christoph Oelckers
d3e4f591f2 - third x() batch in nnexts.cpp. 2021-12-30 09:57:21 +01:00
Christoph Oelckers
60382d9992 - all pXCond's. 2021-12-30 09:57:21 +01:00
Christoph Oelckers
fd234984f5 - first batch of x() in nnexts.cpp. 2021-12-30 09:57:21 +01:00
Christoph Oelckers
a291364606 - the big 'pXSprite = &actor->x()' replacement. 2021-12-30 09:57:21 +01:00
Christoph Oelckers
8d8e0550df - got rid of PLAYER::pXSprite.
Now the player references its actor through ONE pointer only.
2021-12-30 09:57:21 +01:00
Christoph Oelckers
b848a9c980 - some more. 2021-12-30 09:57:21 +01:00
Christoph Oelckers
0d5ea0f314 - handle most of PLAYER::pXSprite 2021-12-30 09:57:20 +01:00
Christoph Oelckers
aa3b930a4d - several x()'s in nnexts.cpp. 2021-12-30 09:57:20 +01:00
Christoph Oelckers
812a4ccd7b - handle sourceactor->x() in nnexts.cpp.
Almost exclusively done with search & replace.
2021-12-30 09:57:20 +01:00
Christoph Oelckers
5699488bea - get rid of spritetype in inactive code. (Search noise removal) 2021-12-30 09:57:20 +01:00
Christoph Oelckers
2254dacdf1 - forgot to save the last change. 2021-12-30 09:57:20 +01:00
Christoph Oelckers
5ad43256cc - the final s()'s in Blood. 2021-12-30 09:57:20 +01:00
Christoph Oelckers
582b83601d - targets in weapon.cpp, plus removal of the now redundant spritetype variants of IsTargetTeammate. 2021-12-30 09:57:19 +01:00
Christoph Oelckers
bf25428225 - upper/lower in CheckLink. 2021-12-30 09:57:19 +01:00
Christoph Oelckers
c67c6ed3da - the rest of triggers.cpp. 2021-12-30 09:57:19 +01:00
Christoph Oelckers
06d8db1470 - deal with the markers in triggers.cpp. 2021-12-30 09:57:19 +01:00
Christoph Oelckers
8d66c8468d - the remaining s()'s of nnexts.cpp. 2021-12-30 09:57:19 +01:00
Christoph Oelckers
46320aabac - third batch of nnexts.cpp. 2021-12-30 09:57:19 +01:00
Christoph Oelckers
b8bee4dfe5 - upper/lower stuff in nnexts.cpp. 2021-12-30 09:57:18 +01:00
Christoph Oelckers
929fd7be99 - another block in nnexts.cpp. 2021-12-30 09:57:18 +01:00
Christoph Oelckers
e460d90f37 - several s() in nnexts.cpp. 2021-12-30 09:57:18 +01:00
Christoph Oelckers
c4c6c1def1 - fix GCC warning. 2021-12-30 09:57:18 +01:00
Christoph Oelckers
6766a5922a - pass actors to calcChaseCamPos. 2021-12-30 09:57:18 +01:00
Christoph Oelckers
87894a5640 - deleted PLAYER::pSprite. 2021-12-30 09:57:18 +01:00
Christoph Oelckers
648537a96b - deal with most of PLAYER::pSprite. 2021-12-30 09:57:17 +01:00
Christoph Oelckers
f59af2cc2d - deal with most of PLAYER::pSprite in weapon.cpp. 2021-12-30 09:57:17 +01:00
Christoph Oelckers
b7ee813712 - global search & replace for many uses of PLAYER's pSprite pointer. 2021-12-30 09:57:17 +01:00
Christoph Oelckers
8dac94326a - s() stuff in player.cpp and gib.cpp 2021-12-30 09:57:17 +01:00
Christoph Oelckers
0a1184b388 - the last one in gameutil.cpp. 2021-12-30 09:57:17 +01:00
Christoph Oelckers
2f9848a459 - deal with pSource in nnexts.cpp. 2021-12-30 09:57:17 +01:00
Christoph Oelckers
5623832b17 - deleted the pSprite definitions from last commit. 2021-12-30 09:57:16 +01:00
Christoph Oelckers
6b8ec17017 - the ultimate 'replace pSprite-> with actor->spr. commit.
This takes care of the majority of s() uses in Blood with a single search&replace action after ensuring that pSprite never gets used for other things.
(There were two small functions in nnexts.cpp left that still did.)
2021-12-30 09:57:16 +01:00
Christoph Oelckers
1f11eb24dd - use actor pointers in preload.cpp 2021-12-30 09:57:16 +01:00
Christoph Oelckers
d8134c3fe8 - handle a few pSprite assignments which are not &actor->s(). 2021-12-30 09:57:16 +01:00
Christoph Oelckers
91214b5350 - xsprite in animatesprite.cpp. 2021-12-30 09:57:16 +01:00
Christoph Oelckers
773d7d118f - pXSprite in callback.cpp 2021-12-30 09:57:16 +01:00
Christoph Oelckers
a0b6873446 - handle s() in callback.cpp. 2021-12-30 09:57:15 +01:00
Christoph Oelckers
a1f6b363fb - asound.cpp, blood.cpp, db.cpp and parts of callback.cpp 2021-12-30 09:57:15 +01:00
Christoph Oelckers
40a307650d - the really final parts of the shared code using s() cleaned up. 2021-12-30 09:57:15 +01:00
Christoph Oelckers
ed0c27b240 - Duke: deleted unused spritetype* variants of badguy() and bossguy() 2021-12-30 09:57:15 +01:00
Christoph Oelckers
09634c4993 - use actors instead of sprites in the new renderer's API. 2021-12-30 09:57:15 +01:00
Christoph Oelckers
f602cf3806 - deal with s() in shared code.
clip.cpp was left alone, except for the actual call.
2021-12-30 09:57:14 +01:00
Christoph Oelckers
1f57322d56 - the last one in aiunicult.cpp which the search did not show. 2021-12-30 09:57:14 +01:00
Christoph Oelckers
627318c39b - handle pXSprite in aiunicult.cpp 2021-12-30 09:57:14 +01:00
Christoph Oelckers
be9d71ca6b - non-pXSprite x()'s in aiunicult.cpp. 2021-12-30 09:57:14 +01:00
Christoph Oelckers
49c43297cd - pXSprite in AI... code. 2021-12-30 09:57:14 +01:00
Christoph Oelckers
f678e55daa - pSprite in aiunicult.cpp. 2021-12-30 09:57:14 +01:00
Christoph Oelckers
ff0b8ac5a9 - handle the hitactor parts missed in the last commit. 2021-12-30 09:57:13 +01:00
Christoph Oelckers
b1bd8f3eef - non-pSprite occurences of s() in aiunicult.cpp. 2021-12-30 09:57:13 +01:00
Mitchell Richters
c01fab8c6c - Fix compilation. 2021-12-30 09:57:13 +01:00
Christoph Oelckers
d0143db8fe - got rid of sx() and sm() inlines. 2021-12-30 09:57:13 +01:00
Christoph Oelckers
f67e39450e - deal with a handful of s() uses that do not match the more common patterns. 2021-12-30 09:57:13 +01:00
Christoph Oelckers
723e22743e - handle all x() calls in AI code. 2021-12-30 09:57:12 +01:00
Christoph Oelckers
389933fe3a - missed two... 2021-12-30 09:57:12 +01:00
Christoph Oelckers
1ebdb81e13 - deleted the actor->s() calls in AI code. 2021-12-30 09:57:12 +01:00
Christoph Oelckers
e123e61f99 - quick replace of 'pSprite->' with 'actor->spr.' in AI files. 2021-12-30 09:57:12 +01:00
Christoph Oelckers
612167cbf1 - handle all non- "pSprite = actor->s();" calls of s() in Blood AI code. 2021-12-30 09:57:12 +01:00
Christoph Oelckers
bff3bbea73 - handle all target sprites in AI code. 2021-12-30 09:57:12 +01:00
Christoph Oelckers
18c32d8fe9 - eliminated all x() in ai.cpp. 2021-12-30 09:57:11 +01:00
Christoph Oelckers
9e6943ec83 - eliminated all s() in ai.cpp. 2021-12-30 09:57:11 +01:00
Christoph Oelckers
41e003c831 - the remaining x() in actor.cpp. 2021-12-30 09:57:11 +01:00
Christoph Oelckers
bc42978295 - x() in actor.cpp callbacks. 2021-12-30 09:57:11 +01:00
Christoph Oelckers
bd07313017 - almost the last x() in actor.cpp. 2021-12-30 09:57:11 +01:00
Christoph Oelckers
692a269d92 - still more x() in actor.cpp. 2021-12-30 09:57:11 +01:00
Christoph Oelckers
3f65aee70b - even more x() in actor.cpp. 2021-12-30 09:57:10 +01:00
Christoph Oelckers
3201f85ab9 - yet more x() in actor.cpp. 2021-12-30 09:57:10 +01:00
Christoph Oelckers
a1b2d4a21e - more x() in actor.cpp. 2021-12-30 09:57:10 +01:00
Christoph Oelckers
ffeb52198a - lots of ->x() calls removed in actor.cpp. 2021-12-30 09:57:10 +01:00
Christoph Oelckers
6e0128eb4c - handle the remaining uses of s() in actor.cpp 2021-12-30 09:57:10 +01:00
Christoph Oelckers
b91fe45fc3 - handled all pSprite-> in actor.cpp. 2021-12-30 09:57:10 +01:00
Christoph Oelckers
27e9894ece - handled all parts of actor.cpp which are not "pSprite = &actor->s();" 2021-12-30 09:57:10 +01:00
Christoph Oelckers
88c77ec71a - some pSprite2's plus CheckSector. 2021-12-30 09:57:09 +01:00
Christoph Oelckers
fbb8f1ee70 - pSprite replacements in blood/src/actor.cpp 2021-12-30 09:57:09 +01:00
Christoph Oelckers
a87948677a - globally replaced ->x(). with ->xspr. 2021-12-30 09:57:09 +01:00
Christoph Oelckers
a2fc415b30 - fixed Exhumed panning setup.
Converted it to floating point and removed the nonsensical & with the texture size that was clearing significant bits.
2021-12-30 09:57:09 +01:00
Mitchell Richters
6423684bfb - SW: Replace PLAYERstruct oposz with opos.Z calls. 2021-12-30 09:57:09 +01:00
Mitchell Richters
a2f2cc489a - SW: Replace PLAYERstruct oposy with opos.Y calls. 2021-12-30 09:57:08 +01:00
Mitchell Richters
ae50767c70 - SW: Replace PLAYERstruct oposx with opos.X calls. 2021-12-30 09:57:08 +01:00
Mitchell Richters
05a4ad4729 - SW: Replace PLAYERstruct posz with pos.Z calls and eliminate PLAYERstruct pos union. 2021-12-30 09:57:08 +01:00
Mitchell Richters
ae3369d2a3 - SW: Replace PLAYERstruct posy with pos.Y calls. 2021-12-30 09:57:08 +01:00
Mitchell Richters
3a0ee322ae - SW: Replace PLAYERstruct posx with pos.X calls. 2021-12-30 09:57:07 +01:00
Mitchell Richters
3adf81e4f9 - Duke: Replace player_struct oposz with opos.Z calls. 2021-12-30 09:57:07 +01:00
Mitchell Richters
111aa16e64 - Duke: Replace player_struct oposy with opos.Y calls. 2021-12-30 09:57:07 +01:00
Mitchell Richters
0e897c29b0 - Duke: Replace player_struct oposx with opos.X calls. 2021-12-30 09:57:07 +01:00
Mitchell Richters
dd0ff465b0 - Replace spritetypebase oz with opos.Z calls and eliminate spritetypebase opos union. 2021-12-30 09:57:07 +01:00
Mitchell Richters
a79b4b5ffc - Replace spritetypebase oy with opos.Y calls. 2021-12-30 09:57:06 +01:00
Mitchell Richters
e0fb92bb01 - Replace spritetypebase ox with opos.X calls. 2021-12-30 09:57:06 +01:00
Mitchell Richters
baf78848eb - Replace spritetypebase z with pos.Z calls and eliminate spritetypebase pos union. 2021-12-30 09:57:06 +01:00
Mitchell Richters
cecb8dc48e - Replace spritetypebase y with pos.Y calls. 2021-12-30 09:57:05 +01:00
Mitchell Richters
33ca55023f - Replace spritetypebase x with pos.X calls. 2021-12-30 09:57:05 +01:00
Mitchell Richters
09e00a69fe - Replace walltype y with pos.Y calls and eliminate walltype pos union. 2021-12-30 09:57:04 +01:00
Mitchell Richters
51b647da87 - Replace walltype x with pos.X calls. 2021-12-30 09:57:04 +01:00
Mitchell Richters
cab4ddb1c8 - Eliminate some stale code out of intvec.h. 2021-12-30 09:57:04 +01:00
Mitchell Richters
b24f07f281 - Capitalise vec2_16_t y variable. 2021-12-30 09:57:03 +01:00
Mitchell Richters
e52c3e6d82 - Capitalise vec2_16_t x variable. 2021-12-30 09:57:03 +01:00
Mitchell Richters
b2ab64bb62 - Capitalise vec3_t z variable. 2021-12-30 09:57:03 +01:00
Mitchell Richters
68e2691be7 - Capitalise vec3_t y variable. 2021-12-30 09:57:03 +01:00
Mitchell Richters
c549cc5276 - Capitalise vec3_t x variable. 2021-12-30 09:57:02 +01:00
Mitchell Richters
118ceb18ca - Capitalise vec2_t y variable. 2021-12-30 09:57:02 +01:00
Mitchell Richters
3c9cd926ba - Capitalise vec2_t x variable. 2021-12-30 09:57:02 +01:00
Christoph Oelckers
8ce4edc7ad - fixed bad sprite offsetting in polymost.
This was introduced by incompletely merging the changes for sloped sprites.
2021-12-30 09:57:01 +01:00
Christoph Oelckers
e0e6efe0a0 - Exhumed: fixed some sound source issues. 2021-12-30 09:57:01 +01:00
Christoph Oelckers
3221ecf800 - refactored xsprite use in aibat.cpp. 2021-12-30 09:57:01 +01:00
Christoph Oelckers
6f9484a9ee - fixed compilation on GCC.
error: operands to ?: have different types ‘std::nullptr_t’ and ‘TObjPtr<Duke3d::DDukeActor*>’
2021-12-30 09:57:01 +01:00
Christoph Oelckers
33a00869d8 - shortened the name of DBloodActor::xsprite to xspr. 2021-12-30 09:57:01 +01:00
Christoph Oelckers
f8171ac5d9 - eliminate pSprite pointers in aibat.cpp. 2021-12-30 09:57:01 +01:00
Christoph Oelckers
d9d05e90b5 - globally replaced all occurences of '->s().' with '->spr.' 2021-12-30 09:57:00 +01:00
Christoph Oelckers
56e56e9d2f - removed the triangulator type visualization. 2021-12-30 09:57:00 +01:00
Christoph Oelckers
1240818122 - getting rid of DDukeActor::s, final part. 2021-12-30 09:57:00 +01:00
Christoph Oelckers
f216857f55 - Getting rid of DDukeActor::s, part 1. 2021-12-30 09:57:00 +01:00
Christoph Oelckers
99507ed048 - spawn_d.cpp 2021-12-30 09:57:00 +01:00
Christoph Oelckers
df2fc596f9 - spawn.cpp 2021-12-30 09:56:59 +01:00
Christoph Oelckers
45a2b9766e - sectors_r.cpp 2021-12-30 09:56:59 +01:00
Christoph Oelckers
d532c496f1 - sectors_d.cpp 2021-12-30 09:56:59 +01:00
Christoph Oelckers
f816f2fb22 - ->s in non-gameplay files. 2021-12-30 09:56:59 +01:00
Christoph Oelckers
edf3fd0f82 - premap_r.cpp + dependencies. 2021-12-30 09:56:59 +01:00
Christoph Oelckers
1f40dfa411 - premap.cpp + premap_d.cpp 2021-12-30 09:56:59 +01:00
Christoph Oelckers
e76e28cdea - the rest of player_r.cpp 2021-12-30 09:56:58 +01:00
Christoph Oelckers
0768c9e8b6 - non 'actor' parts of player_r.cpp 2021-12-30 09:56:58 +01:00
Christoph Oelckers
de22c8ca26 - 's->' in player_d.cpp 2021-12-30 09:56:58 +01:00
Christoph Oelckers
6b675cc849 - non 'actor' parts of player_d.cpp 2021-12-30 09:56:58 +01:00
Christoph Oelckers
b55e04d455 - game_misc.cpp + gameexec.cpp. 2021-12-30 09:56:58 +01:00
Christoph Oelckers
a982c7e590 - player.cpp + noise.cpp. 2021-12-30 09:56:58 +01:00
Christoph Oelckers
c0ea208ba3 - animatesprites_d.cpp and animatesprites_r.cpp. 2021-12-30 09:56:57 +01:00
Christoph Oelckers
9eb7c536ab - the rest of actors_r.cpp 2021-12-30 09:56:57 +01:00
Christoph Oelckers
7d5cf6e631 - first third of actors_r.cpp 2021-12-30 09:56:57 +01:00
Christoph Oelckers
8ff53eae7d - second half of actors_d.cpp 2021-12-30 09:56:57 +01:00
Christoph Oelckers
f1e608685e - more parts of actor_d.cpp 2021-12-30 09:56:57 +01:00
Christoph Oelckers
b7a4c484e9 - large block of s = actor->s; in actors_d.cpp 2021-12-30 09:56:57 +01:00
Christoph Oelckers
44895411b9 - a large block of 'act->s' in actors_r.cpp. 2021-12-30 09:56:56 +01:00
Christoph Oelckers
8dcc128697 - deal with 'spri = actor->s;' 2021-12-30 09:56:56 +01:00
Christoph Oelckers
0df97f00ec - the remaining 's's in actor.cpp. 2021-12-30 09:56:56 +01:00
Christoph Oelckers
f5151e31a5 - globally replaced all 's->' with 'actor->spr.' in duke/src/actors.cpp. 2021-12-30 09:56:56 +01:00
Christoph Oelckers
55cb5aaac6 - global search & replace of ->s-> with ->spr.
This is the largest part of uses of DDukeActor's 's' pointer.
2021-12-30 09:56:56 +01:00
Christoph Oelckers
0284ec1cb0 - replacement of DDukeActor::s and pointers to DCoreActor::spr, part 3. 2021-12-30 09:56:56 +01:00
Christoph Oelckers
0f7024e70e - replacement of DDukeActor::s and pointers to DCoreActor::spr, part 2. 2021-12-30 09:56:55 +01:00
Christoph Oelckers
997c12f67a - replacement of DDukeActor::s and pointers to DCoreActor::spr. 2021-12-30 09:56:55 +01:00
Christoph Oelckers
c16b090fbe - Exhumed: clear lasthitsect when starting a new level. 2021-12-30 09:56:55 +01:00
Christoph Oelckers
e42c3afbea - Exhumed: fixed trap setup.
Must clear the structure before the first return and iterate over the walls by reference, otherwise bad pointers will get copied.
2021-12-30 09:56:55 +01:00
Christoph Oelckers
beddf1e1ca - add slope sprite support to the new renderer.
Some fudging was needed to avoid positioning problems as the renderer is more sensitive to this than Polymost.
2021-12-30 09:56:55 +01:00
Christoph Oelckers
6fd4d6d550 - ported slope sorite support from NBlood.
For Polymost only so far.
2021-12-30 09:56:54 +01:00
Christoph Oelckers
156369ac8a - Blood: don't crash when cultists accidentally target themselves. 2021-12-30 09:56:54 +01:00
Christoph Oelckers
785c7d4ceb - removed numsectors and numwalls entirely.
With Blood's Polymost mirror hack the risk of getting out of sync with the arrays was a genuine issue, so now only the array size counts.
2021-12-30 09:56:54 +01:00
Christoph Oelckers
df0c577cf4 - replaced most of numsectors, too. 2021-12-30 09:56:54 +01:00
Christoph Oelckers
f1c0298825 - replaced numwalls with wall.Size in several places. 2021-12-30 09:56:54 +01:00
Christoph Oelckers
65bc6e6aef - removed the now redundant wall() and sector() interator helper functions.
With both wall and sector now being TArrays they are not needed anymore.
2021-12-30 09:56:53 +01:00
Christoph Oelckers
6608096ea3 - added a bit more debug validation to the new clipper code. 2021-12-30 09:56:53 +01:00
Christoph Oelckers
6e3b6028e9 - reinstated bug in pushmove not to check the first wall when scanning backwards.
For real this time
2021-12-30 09:56:53 +01:00
Christoph Oelckers
4904466fd6 - SW: forgot to enable the extended sector parts in CallbackSOsink.
That bit had somehow gone MiA.
2021-12-30 09:56:53 +01:00
Christoph Oelckers
b021aa9a02 - SW: don't try to render non-existent mirrors with Polymost.
We got a counter variable, WTF did this code not use it?
2021-12-30 09:56:53 +01:00
Christoph Oelckers
c546bfc1ca - reinstated bug in pushmove not to check the first wall when scanning backwards.
Seems we need this in a few places.
2021-12-30 09:56:53 +01:00
Christoph Oelckers
68c87db6ec - SW: fixed crash in Polymost with badly set up cameras. 2021-12-30 09:56:52 +01:00
Christoph Oelckers
fd741c4d49 - Disable debug output 2021-12-30 09:56:52 +01:00
Christoph Oelckers
756ed1c14b - removed the workaround to make Lunatic Fringe not glitch. 2021-12-30 09:56:52 +01:00
Christoph Oelckers
c141c89cfd - fixed the clipper.
* must do proper checks for merged ranges when inserting new ones. The checking code assumes that closed ranges are contiguous.
* when discarding parts of overlapping ranges this may not use merged clip values for its checks.
* ranges that have their clip values altered must be released and reinserted to ensure everything is correct.
2021-12-30 09:56:52 +01:00
Christoph Oelckers
f152a4d9b5 - clipper clean up.
The horizontal part of the logic should work now.
2021-12-30 09:56:52 +01:00
Christoph Oelckers
213ed28398 - WindowClipper WIP 2021-12-30 09:56:52 +01:00
Mitchell Richters
1e63c8305b - Fix build issues under GCC. 2021-12-30 09:56:51 +01:00
Christoph Oelckers
986fccfddc - use symbolic constants for all places where globalorientation is checked for the alignment bits. 2021-12-30 09:56:51 +01:00
Christoph Oelckers
5ff36f491e - fixed the remaining places where the compiler complained about cstat. 2021-12-30 09:56:51 +01:00
Christoph Oelckers
8b427e35c2 - stuff that needs FromInt 2021-12-30 09:56:51 +01:00
Christoph Oelckers
955996dddc - the rest of Blood's flags, part II 2021-12-30 09:56:50 +01:00
Christoph Oelckers
13186cec6d - the rest of Blood's flags. 2021-12-30 09:56:50 +01:00
Christoph Oelckers
092cb1e5a3 - second set of Blood flags. 2021-12-30 09:56:50 +01:00
Christoph Oelckers
3bc337264a - flags in blood's actor.cpp
plus a few others caught by search&replace.
2021-12-30 09:56:50 +01:00
Christoph Oelckers
8039d81467 - the remaining Exhumed flags. 2021-12-30 09:56:50 +01:00
Christoph Oelckers
988a91904a - a large of Exhumed flags, most search& replace plus a few local variable types. 2021-12-30 09:56:49 +01:00
Christoph Oelckers
2d648924e8 - the final Duke flags. 2021-12-30 09:56:49 +01:00
Christoph Oelckers
e02f4d8fd1 - randomFlip stuff.
To avoid casting from int to flags.
2021-12-30 09:56:49 +01:00
Christoph Oelckers
8f0f0e8816 - manual sprite flag replacements in Duke. 2021-12-30 09:56:49 +01:00
Christoph Oelckers
8e0b9f7ce6 - some automatic, some manual sprite flag replacements 2021-12-30 09:56:49 +01:00
Christoph Oelckers
ace01d02bc - alignment flags and a few leftovers. 2021-12-30 09:56:48 +01:00
Christoph Oelckers
82fb03e399 - another batch of search&replace, with smaller results. 2021-12-30 09:56:48 +01:00
Christoph Oelckers
c5ae454207 - another big batch of automatic replacements. 2021-12-30 09:56:48 +01:00
Christoph Oelckers
5b65e214e0 - global search & replace of the more frequent sprite flag patterns. 2021-12-30 09:56:48 +01:00
Christoph Oelckers
8f012d1beb - made wall flags type safe 2021-12-30 09:56:47 +01:00
Christoph Oelckers
1e30f461e6 - flags in Polymost 2021-12-30 09:56:47 +01:00
Christoph Oelckers
8fab2e1020 - fix bad flag management in usePropertiesChanger
Not sure if this is 100% correct, but the old code definitely wasn't.
2021-12-30 09:56:47 +01:00
Christoph Oelckers
76e944053b - the (few) numeric flag literals in SW handled.
Virtually all of this was portal hackery.
2021-12-30 09:56:47 +01:00
Christoph Oelckers
d24b8d9ec8 - most wall flags in Blood. 2021-12-30 09:56:47 +01:00
Christoph Oelckers
1883aad7c2 - flag names in SetupGibWallState and TranslateSector 2021-12-30 09:56:47 +01:00
Christoph Oelckers
adbf5177a7 - flag combo stuff. 2021-12-30 09:56:46 +01:00
Christoph Oelckers
b263c3ac6b - wall and sprite flags in Duke, just simple cases. 2021-12-30 09:56:46 +01:00
Christoph Oelckers
e41db411e4 - made TFlags mostly constexpr 2021-12-30 09:56:46 +01:00
Christoph Oelckers
6e32832428 - made sector ceiling/floor flags type safe.
- made sector flags type safe.
2021-12-30 09:56:46 +01:00
Christoph Oelckers
b0e3c6b5ec - some remaining sector flag stuff 2021-12-30 09:56:45 +01:00
Christoph Oelckers
d0a06ae961 - deal with most of CSTAT_SECTOR_SKY and CSTAT_SECTOR_SLOPE 2021-12-30 09:56:45 +01:00
Christoph Oelckers
98f0886b3d -Duke/RR: Automatic replacement for CSTAT_SPRITE_INVISIBLE and CSTAT_SPRITE_BLOCK_ALL 2021-12-30 09:56:45 +01:00
Christoph Oelckers
8d0013128e - Exhumed: use symbolic constant CSTAT_SPRITE_INVISIBLE 2021-12-30 09:56:45 +01:00
Christoph Oelckers
1edccf1423 - added slope setter methods to sectortype.
To make sure that setting the slope flags is always done properly. (Why are the flags even needed?)
As a nice side effect, this, plus use of other inlines made the align*slope functions implode into virtually nothing.
2021-12-30 09:53:56 +01:00
Christoph Oelckers
24a6d45f97 - minor slope math optimization.
May save one division and merges the '<< 5' into the main calculation.
2021-12-30 09:53:56 +01:00
Christoph Oelckers
11f41a97d5 - made gotpic a FixedBitArray.
gets rid of some inline garbage.
2021-12-30 09:53:56 +01:00
Christoph Oelckers
5f18109371 - consolidated all getslope code into a single function.
This also caches a wall's length to avoid taking the square root every single time for a slope calculation.
2021-12-30 09:53:55 +01:00
Christoph Oelckers
bea394a734 - replace SW specific sector flags with the global ones. 2021-12-30 09:53:55 +01:00
Christoph Oelckers
dddf48fd3e - cleaned up and renamed buildtypes.h.
Content was reordered so that the file can contain the inlines belonging to the map data types that previously had to be stored elsewhere.
Also moved out of the Build folder because virtually everything in here can be traced to content available in Duke Nukem 3D's and Shadow Warrior's source releases.
2021-12-30 09:53:46 +01:00
Christoph Oelckers
4a5de6f56e - make sure that all changes of wall coordinates invalidate associated data.
walltype::move should be the preferred function to be used for this, otherwise walltype::moved needs to be called.
2021-12-30 09:53:11 +01:00
Christoph Oelckers
737291ce5f - added stripped down version of EASTL's intrusive list.
This needed some editing and cleanup to get it to work without half of the rest of EASTL for mostly useless things.
This assumes C++17 and removes the sort function which was the main culprit for making the thing non self-contained.
2021-12-30 09:53:11 +01:00
Christoph Oelckers
0e6242626c - removed the viewpoint from the clipper as we don't need this.
ClipWindow will go elsewhere, it has no place here.
2021-12-30 09:53:11 +01:00
Mitchell Richters
83000fab77 - Remove last remaining node builder code. 2021-12-30 09:53:11 +01:00
Mitchell Richters
95d60deecd - Rename remaining hw_sections*.* files to hw_sections.*. 2021-12-30 09:53:11 +01:00
Mitchell Richters
520412075f - Delete empty hw_sections.cpp file. 2021-12-30 09:53:11 +01:00
Christoph Oelckers
46d7487a3b - SW: clear all pointer variables the player may still hold when terminating a level. 2021-12-30 09:53:10 +01:00
Christoph Oelckers
34bee8116c - SW: fixed uninitialized variable in FAFhitscan 2021-12-30 09:53:10 +01:00
Christoph Oelckers
4700299fc6 - fixed bad assert.
This can indeed be called with both angles being identical and should accept this case.
2021-12-30 09:53:10 +01:00
Christoph Oelckers
d1f088a858 - SW/Exhumed fixed sound relinking on actor destruction.
This still passed the sprites instead of the actors. Moved the relinking code to DCoreActor::Destroy because it is the same for all games.
Also did a little bit of sound cleanup to ensure the sound backend does not hold stale actor pointers.
2021-12-30 09:53:10 +01:00
Christoph Oelckers
7c5080f654 - reimplemented sector splitting.
With the new setup this is a lot easier than with the old one.
2021-12-30 09:53:10 +01:00
Christoph Oelckers
d46e3c87e0 - removed development output of the loop grouping code. 2021-12-30 09:53:10 +01:00
Christoph Oelckers
fc41a2bd85 - renamed sections2 and sections2PerSector.
No more need for a '2'.
2021-12-30 09:53:10 +01:00
Christoph Oelckers
f6d852b5a0 - removed the old section builder 2021-12-30 09:53:09 +01:00
Christoph Oelckers
b0e4b49771 - removed the node builder.
With libtess2 working we do not need this anymore.
2021-12-30 09:53:09 +01:00
Christoph Oelckers
bb9313454d - removed SectorGeometry class. 2021-12-30 09:53:09 +01:00
Christoph Oelckers
7a9596ae81 - use SectionGeometry for 3D rendering. 2021-12-30 09:53:09 +01:00
Christoph Oelckers
d8a3035bcc - invalidate plane meshes when the sector is retriangulated.
After this any old mesh has become invalid and needs to be rebuilt.
2021-12-30 09:53:09 +01:00
Christoph Oelckers
37e49ed775 After this any old mesh has become invalid and needs to be rebuilt.
- use only one Section type.
2021-12-30 09:53:09 +01:00
Christoph Oelckers
8e01d559e8 - store sector as an index in Section2 and renamed walls to lines.
Now everything has the same name and type as in the old section.
2021-12-30 09:53:08 +01:00
Christoph Oelckers
208ca4f783 - merge old SectionLine and new Section2Wall into one type and use the same global array. 2021-12-30 09:53:08 +01:00
Christoph Oelckers
d353787d31 - add a global list of section walls. 2021-12-30 09:53:08 +01:00
Christoph Oelckers
f8f6c345fc - use index fields in Section2Wall.
There's little benefit of using pointers here - it inflates a critical render struct, does not make any code more readable and requires quite deep refactoring of hw_bunchdrawer.
Now, with all fields having the same tyoe and name a lot less code needs to be changed.
2021-12-30 09:53:08 +01:00
Christoph Oelckers
a407e86ff6 - migrated automap to new SectionGeometry class. 2021-12-30 09:53:08 +01:00
Christoph Oelckers
362b824775 - ClipWindow WIP 2021-12-30 09:53:08 +01:00
Christoph Oelckers
4364e68d05 - automap work to transition to new sections. 2021-12-30 09:53:08 +01:00
Christoph Oelckers
b3873be514 - added some utilities to the Plane class that will be needed soon. 2021-12-30 09:53:07 +01:00
Christoph Oelckers
411e3e6f9c - make SectionGeometry create some data. 2021-12-30 09:53:07 +01:00
Christoph Oelckers
ca19c265f8 - interface from Section2 to the flat processing. 2021-12-30 09:53:07 +01:00
Christoph Oelckers
69593fd5c7 - Triangulation WIP
# Conflicts:
#	source/core/sectorgeometry.cpp
2021-12-30 09:53:07 +01:00
Christoph Oelckers
931903e291 - added libtess2 to the project. 2021-12-30 09:53:07 +01:00
Christoph Oelckers
449362dcb3 - better debug output. 2021-12-30 09:53:07 +01:00
Christoph Oelckers
a255e90c96 - more work on the new section creator. 2021-12-30 09:53:06 +01:00
Christoph Oelckers
b1bf12df9d - section fixes. 2021-12-30 09:53:06 +01:00
Christoph Oelckers
ad018db80a - new section builder. 2021-12-30 09:53:06 +01:00
Christoph Oelckers
9397eb6a19 - automatically handle one specific case of bad wall loops.
Both RRRA E3L1.map and SW $yamato.map have this:

Wall x and Wall x+1 have identical properties and both reference Wall x+2 as point2.
The duplicate in this case can be safely deleted to make the sector well formed.
2021-12-30 09:53:06 +01:00
Christoph Oelckers
a733de618f - new section WIP. 2021-12-30 09:53:06 +01:00
Christoph Oelckers
1bf654036a - delete duplicated walls in RRRA E1L3 and E1L6. 2021-12-30 09:48:50 +01:00
Christoph Oelckers
504bb08a64 - we do not really need the old rintersect function.
Its only difference is using potentially overflowing 32 bit math for demo compatibility. Aside from that it has no real-life advantage.
2021-12-26 23:10:07 +01:00
Christoph Oelckers
88b660a70d - removed compat.h entirely, all that was left was redundant #includes. 2021-12-26 23:10:07 +01:00
Christoph Oelckers
91cdd82c8a - removed all #include "compat.h" except the one in build.h
Still all compiles fine.
2021-12-26 23:10:07 +01:00
Christoph Oelckers
6db1ba47c2 - SW: fixed some savegame issues:
* the saveable tables were initialized too late when reading in the actors.
* the abort messages for the saveables did not show. We need to use I_FatalError here, plus some actor list modifications to make this work.
2021-12-26 23:10:07 +01:00
Christoph Oelckers
ae622274bd - SW: clear pointer holding variables in TerminateLevel.
Some survive the level transition and would point to invalid data.
2021-12-26 23:10:07 +01:00
Christoph Oelckers
a4ff7e5bd4 - SW: added some null checks to the SO interpolation code.
It looks like this was able to access deleted sprites - by only checking for the index this never registered as a problem, but with pointers it does.
2021-12-26 23:10:07 +01:00
Christoph Oelckers
a23d2ae656 - fixed OOB access in pushmove.
The backwards search loop starts at one element behind the data it is supposed to check. If this is the last wall in the map it accesses undefined memory.

This tripped the range check in TArray for wall[].
2021-12-26 23:10:06 +01:00
Mitchell Richters
4562a0ca97 - SW: Add some nullptr checks to some inlines to prevent noclip crashes. 2021-12-26 23:10:06 +01:00
Mitchell Richters
3b099e09cd - SW: Tidy some ‘newsect’ may be used uninitialized warnings from GCC. 2021-12-26 23:10:06 +01:00
Mitchell Richters
9e51f911ab - Blood: Clear writing to an object of type ‘class TObjPtr<Blood::DBloodActor*>’ with ‘private’ member ‘TObjPtr<Blood::DBloodActor*>::<anonymous>’ warning under GCC. 2021-12-26 23:10:06 +01:00
Mitchell Richters
2f567bdb74 - Exhumed: Fix two signed/unsigned comparison warnings in PlayFX2().
* Lines in question:
** 606 | if (chan->SoundID == nSound + 1)
** 621 | if (chan->SoundID == nSound + 1)
* All data sent to `PlayFX2()` and functions that wrap `PlayFX2()` are signed values, so keep signed all the way through.
2021-12-26 23:10:06 +01:00
Mitchell Richters
a4d165a84e - Tidy some specified bound equals destination size warnings from GCC. 2021-12-26 23:10:05 +01:00
Christoph Oelckers
b89bba5ed1 - Duke: DDukeActor::setActiveCrane must also clear ownerActor.
Apparently something in the crane code can cause a condition where this wasn't cleared before grabbing a player.
Formerly these two were the same variable but had to be separated.
2021-12-26 23:10:05 +01:00
Christoph Oelckers
9e94573ae3 - free the current level before taking down other things on exit.
Nor doing so can cause memory corruption when the object hierarchy gets deleted later which may still reference some stale data.
2021-12-26 23:10:05 +01:00
Christoph Oelckers
d8ccfa1a5f - cleaned up nextsectorneighborz, added a safe variant and use this in all places where the sector pointer is not validated. 2021-12-26 23:10:05 +01:00
Mitchell Richters
18bd2e4d07 - SW: Destroy actor in KillActor() after clearing the pointed to sprite, not before it.
* No idea if it matters but it seems logical that this is how it should be.
2021-12-26 23:10:05 +01:00
Mitchell Richters
65a55d3589 - SW: Tidy up function declarations where return type was on its own line. 2021-12-26 23:10:05 +01:00
Mitchell Richters
1ee1c0c920 Revert "- fixed: updatesectorneighborz may not return -1."
This reverts commit c074b0995648a4057c516e5646f5fe7a11719317.

* The commit notes talk about `updatesectorneighborz()`, but the change is applied to `nextsectorneighborz()`. Further to this, `nextsectorneighborz()` is only called from some ptr wrappers in `build.h` and they both test against `-1` return values.

```
inline sectortype* nextsectorneighborzptr(int16_t sectnum, int32_t refz, int16_t topbottom, int16_t direction)
{
	auto sect = nextsectorneighborz(sectnum, refz, topbottom, direction);
	return sect == -1? nullptr : &sector[sect];
}

inline sectortype* nextsectorneighborzptr(sectortype* sectp, int32_t refz, int16_t topbottom, int16_t direction)
{
	auto sect = nextsectorneighborz(sector.IndexOf(sectp), refz, topbottom, direction);
	return sect == -1? nullptr : &sector[sect];
}
```

* Also fixes broken Duke elevators and possibly a whole raft of issues.
2021-12-26 23:10:04 +01:00
Mitchell Richters
953c7e4ed6 - Blood: Fix some collision issues found following refactoring.
* Originating from 9a2ca3f392e29fe8df4167c271a7b04ab5e8959c "- use refactored Collision struct and clipmove in Blood, too.".
2021-12-26 23:10:04 +01:00
Christoph Oelckers
7b14aacdf4 - match alignment of NPOT flat textures to the software renderer
Tested in RR E1L4, sector 224+40, probably needs more checking in other places as well to confirm that it is correct there as well.
2021-12-26 23:10:04 +01:00
Christoph Oelckers
b4a968841a - missing null check in Blood's map loader. 2021-12-26 23:10:04 +01:00
Christoph Oelckers
5e09a43e91 - added auto-patcher for overlapping wall ranges.
This is for cases where the proper sector can be found by looking at the walls' point2 links.
2021-12-26 23:10:04 +01:00
Christoph Oelckers
fee8df8a1b - fix range check for nextwall in map loader 2021-12-26 23:10:03 +01:00
Christoph Oelckers
177e84881e - added a warning for multiple sectors referencing the same walls.
RR E3L1 contains such a setup, for example.
2021-12-26 23:10:03 +01:00
Mitchell Richters
14b8eda436 - Get rid of some now irrelevant comments. 2021-12-26 23:10:03 +01:00
Christoph Oelckers
106ec53d1f - disabled sector splitter for now because it's broken and useless.
The entire section format needs to be redone for better triangulation so fixing this messy code is pointless.
2021-12-26 23:10:03 +01:00
Christoph Oelckers
8e2d324e85 - fixed: updatesectorneighborz may not return -1.
This value gets never validated by any caller and isn't really what is wanted in this situation.
2021-12-26 23:10:03 +01:00
Christoph Oelckers
74da3e5fa7 - added savegame support for the new actor management. 2021-12-26 23:10:03 +01:00
Mitchell Richters
2dda3ee505 - Tidy up some GCC warnings about ininitialised variables, memsetting non-trivial types and some others. 2021-12-26 23:10:02 +01:00
Mitchell Richters
38842994e0 - Remove the constructors from TObjPtr class.
They're not used in Raze and were preventing build issues under POSIX environment as you can't use constructor objects in anonymous aggregate types (unnamed structs, etc).
2021-12-26 23:10:02 +01:00
Christoph Oelckers
b8c4354691 - got rid of the MAX... constants and adjusted all places still using them. 2021-12-26 23:10:02 +01:00
Christoph Oelckers
1a3b9f8ac0 - made several arrays holding sector related data dynamic. 2021-12-26 23:10:02 +01:00
Christoph Oelckers
2a07159c8d - removed some unused and obsolete content from engine files. 2021-12-26 23:10:02 +01:00
Christoph Oelckers
923a2b6a79 - unlimit the number of sectors/walls for real.
All remaining 16 bit values storing indices have been widened to 32 bit.
2021-12-26 23:10:01 +01:00
Christoph Oelckers
838bed7800 - final cleanup of sectnum related stuff.
Made sure that remaining uses of sector indices are safe to be kept and deleted a few redundant functions.
2021-12-26 23:10:01 +01:00
Christoph Oelckers
6d432fca0a - made spritetype::sectnum a pointer. 2021-12-26 23:10:01 +01:00
Christoph Oelckers
6a43a270fa - use sectno() access function where we really need a sector index. 2021-12-26 23:10:01 +01:00
Christoph Oelckers
2d913982da - changed map loader to work without relying on spritetype::sectnum.
All access to this field is done through access functions now.
2021-12-26 23:10:01 +01:00
Christoph Oelckers
8ee5d1b0d7 - activated the garbage collector
This finally gets rid of all static storage for actors - so no more indices ever! :)
2021-12-26 23:10:00 +01:00
Christoph Oelckers
0dd756fa32 - added GC handling for all backend pointers in the map data.
GC is not active yet!
2021-12-26 23:10:00 +01:00
Christoph Oelckers
db240ea2b0 - GC support in SW.
- SW GC WIP
2021-12-26 23:10:00 +01:00
Christoph Oelckers
6cb260d916 - SW GC preparation commit noise. 2021-12-26 23:10:00 +01:00
Christoph Oelckers
1d371b8cbf - clear some data on init. 2021-12-26 23:09:59 +01:00
Christoph Oelckers
8dde6a3074 - Added GC support to Exhumed 2021-12-26 23:09:59 +01:00
Christoph Oelckers
138690d34e - do not use auto to make local copies of TObjPtr's.
This will just copy the object without performing the read barrier on the source data which is not what we want here.
For these assignments the type must be explicit.
2021-12-26 23:09:59 +01:00
Christoph Oelckers
38c8f2a3b8 - the last 16 bit limits in the new renderer. 2021-12-26 23:09:59 +01:00
Christoph Oelckers
16a8746971 - GC setup for Blood. 2021-12-26 23:09:58 +01:00
Christoph Oelckers
fa62b20d76 - GC setup for Duke. 2021-12-26 23:09:58 +01:00
Christoph Oelckers
5d09748af9 - Duke: added some null pointer checks. 2021-12-26 23:09:58 +01:00
Christoph Oelckers
42e4e9288f - deleted GetSpriteIndex.
It's not needed anymore.
2021-12-26 23:09:58 +01:00
Christoph Oelckers
382689e0a7 - moved the FireProj struct into DDukeActor to avoid the rather expensive TMap code.
Later this can be moved to a dedicated subclass.
2021-12-26 23:09:58 +01:00
Christoph Oelckers
30786360bb - derive spritetype and tspritetype from a common base class to consolidate their common content. 2021-12-26 23:09:57 +01:00
Christoph Oelckers
b0ecf7e87b - unlimit the wall index in sections. 2021-12-26 23:09:57 +01:00
Christoph Oelckers
a2e280e188 - use wallsofsector in 4 more places.
# Conflicts:
#	source/build/src/polymost.cpp
2021-12-26 23:09:57 +01:00
Christoph Oelckers
588f88c9cc - migrated the actors to DObjects.
No GC yet, only the classes have been altered and some GC-related features been added.
Full switchover will require adding GC support to all data in the game.
2021-12-26 23:09:57 +01:00
Christoph Oelckers
8606045689 - Duke: made gamevars type safe and capable of managing actor pointers.
Also a few unrelated changes needed to make it compile again.
2021-12-26 23:09:56 +01:00
Christoph Oelckers
d088ab05a9 - eliminate storage of actors in the sector's hitag for some of Duke's sector effectors.
Also demoted Blood's upperLink and lowerLink to DCoreActor pointers and use static_cast for access to avoid savegame problems. The core code cannot safely serialize a DBloodActor anymore.
2021-12-26 23:09:56 +01:00
Christoph Oelckers
122a1f009d - moved gamevar storage to player and actor objects respectively.
For actors this eliminates the need to for sprite indices which was the intended goal. It also properly associates the gamevars with their owners.
2021-12-26 23:09:56 +01:00
Christoph Oelckers
fa05cfbaf1 - use a real pointer in DSWActor for owner tracking. 2021-12-26 23:09:56 +01:00
Christoph Oelckers
ca10495d7c - Blood: back up player state before ending the level, not just before loading the new one.
The latter is too late, the player's actor data may already be stale and invalid here.
2021-12-26 23:09:56 +01:00
Christoph Oelckers
8a2385dd89 - actor clearing cleaned up.
We still need this until we can get rid of the static arrays...
2021-12-26 23:09:55 +01:00
Christoph Oelckers
c4d23188d5 - removed HitInfoBase::setFromEngine.
This value format no longer exists anywhere.
2021-12-26 23:09:55 +01:00
Christoph Oelckers
cf9d733994 - deleted insertAllSprites. 2021-12-26 23:09:55 +01:00
Christoph Oelckers
d3b1e34d78 - moved sprite[], spriteext[] and spritesmooth[] into DCoreActor.
Also removed the last remaining sprite pointer in saveable data.
2021-12-26 23:09:55 +01:00
Christoph Oelckers
4cecb6f955 - removed the old actor savegame code and instead implemented a virtual Serialize function.
This isn't hooked up yet, currently savegames are non-functional. They will come back once the global actor arrays are no longer relevant for maintenance.
2021-12-26 23:09:55 +01:00
Christoph Oelckers
e79cd8d87f - don't store sprite indices in walltype::portalnum 2021-12-26 23:09:54 +01:00
Christoph Oelckers
f855b1020f - actor lists refactored.
No more shorts, no more static arrays.
This was one of the biggest blockers for unlimiting the engine.
2021-12-26 23:09:54 +01:00
Christoph Oelckers
87ac9bee44 - refactored the owner index in tspritetype.
This is now a separate type from spritetype which contains an actor pointer instead so that sprite display can be handled without requiring a static sprite array.

# Conflicts:
#	source/build/src/polymost.cpp
2021-12-26 23:09:54 +01:00
Christoph Oelckers
eaff9e359f - refactored the owner index in tspritetype.
This is now a separate type from spritetype which contains an actor pointer instead so that sprite display can be handled without requiring a static sprite array.
2021-12-26 23:09:53 +01:00
Christoph Oelckers
793dd032b0 - getzrange cleanup. 2021-12-26 23:09:53 +01:00
Christoph Oelckers
bcc532d36f - eliminated the getzrange wrapper. 2021-12-26 23:09:53 +01:00
Christoph Oelckers
2541425b9d - getzrange is free of hack values, too. 2021-12-26 23:09:53 +01:00
Christoph Oelckers
9d85859a80 - finally got rid of the 16 bit hack return value of clipmove. 2021-12-26 23:09:53 +01:00
Christoph Oelckers
d34a5179f1 - sprite cleanup in clip code.
Just using already available data instead of the indices.
2021-12-26 23:09:53 +01:00
Christoph Oelckers
19236b2526 - removed compatibility handling for the oldest level from hitscan.
This stuff isn't even slope aware so the only legitimate reason for keeping it would be demo playback.
2021-12-26 23:09:52 +01:00
Christoph Oelckers
183f554733 - hitscan cleanup.
Also removed a bit of leftover TROR code.
2021-12-26 23:09:52 +01:00
Christoph Oelckers
8c90f48b61 - cleanup of neartag, plus direct return of a HitInfoBase struct. 2021-12-26 23:09:52 +01:00
Christoph Oelckers
e13a275cfc - got rid of the sole linear sprite iterator in Exhumed and deleted the iterator code entirely. 2021-12-26 23:09:52 +01:00
Christoph Oelckers
8c298de114 - Duke: replaced DukeLinearSpriteIterator and explicit loops over the sprite[] array. 2021-12-26 23:09:52 +01:00
Christoph Oelckers
6600f55543 - separate map loading from actor spawning for the other games, too.
It still uses the horribly messed up original spawn logic, though.
2021-12-26 23:09:51 +01:00
Christoph Oelckers
a3493048e7 - refactoring of spawn code to prepare for the other games.
Map hacks do not work in this commit!
2021-12-26 23:09:51 +01:00
Christoph Oelckers
ec888c097c - Blood: separated actor spawning from map loading. 2021-12-26 23:09:51 +01:00
Christoph Oelckers
e543c70439 - replacement of BloodLinearSpriteIterator
Preparation for eliminating sprite[]. This array can later be created by the actual spawn function.
2021-12-26 23:09:51 +01:00
Mitchell Richters
0c6e55d1b8 - Silence all the -Wuninitialized and -Wmaybe-uninitialized warnings relating to HitInfo objects passed through to functions by reference. 2021-12-26 23:09:50 +01:00
Mitch Richters
c6774d5efd - Duke/RR: Re-add micro-movement cancellation for RR's vehicles that was dropped in 466bc84697. 2021-12-26 23:09:50 +01:00
Christoph Oelckers
379c4f1a60 - merged the cansee wrapper into the actual function and added sector validation. 2021-12-26 23:09:50 +01:00
Christoph Oelckers
363d062685 - minor sanity check improvements. 2021-12-26 23:09:50 +01:00
Mitch Richters
12a0f587a3 - SW: Add nullptr check inside WarpSectorInfo() to prevent crashes while noclipping through level. 2021-12-26 23:09:50 +01:00
Mitch Richters
10e28b8a53 - SW: Add nullptr check inside ActorTrackDecide() for walltype's nextSector() to prevent crashes while noclipping through level. 2021-12-26 23:09:49 +01:00
Mitch Richters
5085dcd866 - SW: Add nullptr check inside DoPlayerHorizon() for canslopetilt to prevent crashes while noclipping through level. 2021-12-26 23:09:49 +01:00
Christoph Oelckers
e223466f4a - removed Interp_Sprite_Z.
This was redundant and interfered with the reworked automatic sprite interpolation.
2021-12-26 23:09:49 +01:00
Christoph Oelckers
2654a19cfd - got rid of setspritez(x) and moved the implementation to SetActor(Z) without referencing the sprite array. 2021-12-26 23:09:49 +01:00
Christoph Oelckers
6773fa2189 - removed unused InitLists function.
# Conflicts:
#	source/build/src/engine.cpp
2021-12-26 23:09:49 +01:00
Christoph Oelckers
58cd933d74 - pass sprite array to map hack parser as parameter.
This will later allow it to work on temporaries.
2021-12-26 23:09:49 +01:00
Christoph Oelckers
5dfc79bdbe - MarkSectorSeen 2021-12-26 23:09:48 +01:00
Christoph Oelckers
f9b1164747 - use point2Wall wherever possible. 2021-12-26 23:09:48 +01:00
Christoph Oelckers
83cf2f3baf -more index stuff. 2021-12-26 23:09:48 +01:00
Christoph Oelckers
ee1b574830 - engine stuff 2021-12-26 23:09:48 +01:00
Christoph Oelckers
b663b8ea26 - wallptr reduction. 2021-12-26 23:09:48 +01:00
Christoph Oelckers
eb0f91e26b - pass sector pointer to render_camtex. 2021-12-26 23:09:47 +01:00
Christoph Oelckers
a22634f228 - sectnum reduction. 2021-12-26 23:09:47 +01:00
Christoph Oelckers
4c13f24357 - rename FBunch's sectnum because it complicated searching for other stuff. 2021-12-26 23:09:47 +01:00
Christoph Oelckers
ed659df9d8 - pass sector pointer to Polymost's SectorVisibility function. 2021-12-26 23:09:47 +01:00
Christoph Oelckers
34373e9c70 - fixed use of wrong indexing function. 2021-12-26 23:09:47 +01:00
Christoph Oelckers
73243f95bb - make Blood's burn source a pointer. 2021-12-26 23:09:46 +01:00
Christoph Oelckers
3a44f168e0 - Blood: Fix DeleteSprite 2021-12-26 23:09:46 +01:00