Commit graph

1901 commits

Author SHA1 Message Date
Christoph Oelckers
651bf324e3 - int_Actor* cleanup. 2022-10-14 20:31:54 +02:00
Christoph Oelckers
35d74c7f9f - some MOVExy replacements. 2022-10-14 20:31:54 +02:00
Christoph Oelckers
05ad1e38e9 - renamed PLAYER::bob_amt and minor cleanup. 2022-10-14 20:31:54 +02:00
Christoph Oelckers
b9906ad5ce - grate stuff 2022-10-14 20:31:54 +02:00
Christoph Oelckers
574a24aded - some simple stuff 2022-10-14 20:31:54 +02:00
Christoph Oelckers
c7c9ab52ce - the last remaining set_int_z calls in SW. 2022-10-14 20:31:53 +02:00
Christoph Oelckers
6b06d37d14 - the last uses of the int_Actor functions. 2022-10-14 20:31:53 +02:00
Christoph Oelckers
562ac2461d - InitSkelSpell 2022-10-14 20:31:53 +02:00
Christoph Oelckers
d815d0dfeb - two more functions 2022-10-14 20:31:53 +02:00
Christoph Oelckers
6a9972938e - position in InitZillaRail 2022-10-14 20:31:53 +02:00
Christoph Oelckers
bd54c4e8e2 - floatified WeaponHitscanShootFeet 2022-10-14 20:31:53 +02:00
Christoph Oelckers
12d182db6d - floatify InitEnemyUzi. 2022-10-14 20:31:52 +02:00
Christoph Oelckers
91a89cd0f5 - more SetZVelFromTarget. 2022-10-14 20:31:52 +02:00
Christoph Oelckers
c6d69da727 - serpent stuff 2022-10-14 20:31:52 +02:00
Christoph Oelckers
453c45e0dc - floatified InitVulcanBoulder 2022-10-14 20:31:52 +02:00
Christoph Oelckers
43a108bfb6 - consolidated and floatified 4 occurences of the same formula. 2022-10-14 20:31:52 +02:00
Mitchell Richters
d63fb33dd0 - Pass DVector2 objects directly through to F2DDrawer::AddLine() and F2DDrawer::AddThickLine().
* Since all the external code calling through to these methods are built on vectors, makes sense to pass them around by reference.
2022-10-14 18:19:04 +02:00
Mitchell Richters
e57ef59900 - Minor consistency fix with Duke and SW's automap code. 2022-10-14 18:19:03 +02:00
Mitchell Richters
5407de6924 - Use MaxSmoothRatio everywhere so refactoring is easier later on. 2022-10-14 18:19:03 +02:00
Mitchell Richters
7d85acac13 - Clean up remaining automap interfaces to finish the floatification.
* Even though we pre-calculate the sine/cosine needed in `DrawOverheadMap()`, Duke and SW require the full angle for their more mature automaps.
2022-10-14 18:19:02 +02:00
Mitchell Richters
a4ac9afa2f - SW: Floatify automap draw code (same math as Duke's, fortunately). 2022-10-14 18:19:02 +02:00
Christoph Oelckers
ca27a2e47f - floatified SpawnGrenadeExp 2022-10-14 18:19:02 +02:00
Christoph Oelckers
02ad203a79 - floatified SpawnCoolieExp 2022-10-14 18:19:01 +02:00
Christoph Oelckers
9d35e3efd4 - fix compiler warning 2022-10-14 18:19:01 +02:00
Christoph Oelckers
99b8457eb4 - FindDistance in DoExpDamageTest 2022-10-14 18:19:01 +02:00
Christoph Oelckers
e2fdb5fc02 - vneartag in ActorTrackDecide 2022-10-14 18:19:01 +02:00
Christoph Oelckers
91355e4b04 - floatified ActorDrop 2022-10-14 18:19:01 +02:00
Christoph Oelckers
cef65c4ba4 - very simple replacements 2022-10-14 18:19:01 +02:00
Christoph Oelckers
9a2929a9c6 - floatified BuildNearTagList calls 2022-10-14 18:19:00 +02:00
Christoph Oelckers
958ec46cbb - floatified InitRipper2Hang 2022-10-14 18:19:00 +02:00
Christoph Oelckers
984dfb9889 - floatified InitRipperHang 2022-10-14 18:19:00 +02:00
Christoph Oelckers
975e08666c - floatified 2 updatesectorz calls. 2022-10-14 18:19:00 +02:00
Christoph Oelckers
138e200510 - floatified UpdatePlayerUnderSprite 2022-10-14 18:19:00 +02:00
Christoph Oelckers
19f5eac518 - SpawnActor in SpawnShell 2022-10-14 18:19:00 +02:00
Christoph Oelckers
dd171cd158 - floatified GetRepeatFromHeight's input. 2022-10-14 18:18:59 +02:00
Christoph Oelckers
49b9863e42 - handle parts of CameraView 2022-10-14 18:18:59 +02:00
Christoph Oelckers
c6bb8cea89 - some simple replacements. 2022-10-14 18:18:59 +02:00
Christoph Oelckers
933e5eb35a - floatified WeaponAutoAimZVel 2022-10-14 18:18:59 +02:00
Christoph Oelckers
1bf6170fc1 - two one-liners 2022-10-14 18:18:59 +02:00
Christoph Oelckers
8a23a5d16b - floatified VectorWormSeek 2022-10-14 18:18:58 +02:00
Christoph Oelckers
07f2039095 - floatified most of WeaponAutoAim 2022-10-14 18:18:58 +02:00
Christoph Oelckers
cbf929fc50 - floatified VectorMissileSeek 2022-10-14 18:18:58 +02:00
Christoph Oelckers
c2064fc5c0 - floatified ComboMissileSeek 2022-10-14 18:18:58 +02:00
Christoph Oelckers
75d2b4560d - floatified MissileSeek. 2022-10-14 18:18:58 +02:00
Christoph Oelckers
02e411080c - SW: floatified SpawnBlood 2022-10-14 18:18:28 +02:00
Christoph Oelckers
3ce9c15829 - floatified SpawnShrap 2022-10-14 18:13:50 +02:00
Christoph Oelckers
c9ab96f504 - floatified SpriteOverlapZ 2022-10-14 18:13:48 +02:00
Christoph Oelckers
a5d6cbaa57 - floatified SpriteOverlap and user.OverlayZ 2022-10-14 18:13:48 +02:00
Christoph Oelckers
6d91838ae5 - floatified SpawnActor call in DoSpawnTeleporterEffect 2022-10-14 18:13:48 +02:00
Christoph Oelckers
bb8c12efb4 - inlined GetSpriteSizeY in the only place where it was used. 2022-10-14 18:13:48 +02:00
Christoph Oelckers
9717082759 - int_change is gone 2022-10-14 18:13:48 +02:00
Christoph Oelckers
4b25400e40 - floatified SlopeBounce 2022-10-14 18:13:47 +02:00
Christoph Oelckers
d946e5de70 - floatified WallBounce 2022-10-14 18:13:47 +02:00
Christoph Oelckers
9aedc3fe9e - more change wrappers removed 2022-10-14 18:13:47 +02:00
Christoph Oelckers
a5d6e1d406 - more int_change gone 2022-10-14 18:13:47 +02:00
Christoph Oelckers
a59f363224 - eliminated some int_change calls 2022-10-14 18:13:46 +02:00
Christoph Oelckers
620de9ebf7 - handle all remaining move_sprite calls.
int_ceiling_dist and int_floor_dist are gone
2022-10-14 18:13:46 +02:00
Christoph Oelckers
55eb824e7d - migrated several move_sprite calls 2022-10-14 18:10:45 +02:00
Christoph Oelckers
2838fa3e72 - floatified sectortype::ang 2022-10-14 17:17:37 +02:00
Christoph Oelckers
ce7533c1c4 - floatified move_missile’s API 2022-10-14 17:17:37 +02:00
Christoph Oelckers
e7197e2d73 - migrate all remaining move_missile calls 2022-10-14 17:17:37 +02:00
Christoph Oelckers
f7d2ab20d8 - handle more move_missile calls 2022-10-14 17:17:36 +02:00
Christoph Oelckers
9803041dfb - refactored move_missile calls 2022-10-14 17:17:36 +02:00
Christoph Oelckers
93ce8f77be - got rid of temporary helper wrappers 2022-10-14 17:17:36 +02:00
Christoph Oelckers
3d336bb7e7 - floatified USER::change 2022-10-14 17:17:01 +02:00
Christoph Oelckers
153b5b84f3 - wrapped almost everything 2022-10-14 17:17:01 +02:00
Christoph Oelckers
8bb609fbb1 - set_int_change_z 2022-10-14 17:17:01 +02:00
Christoph Oelckers
8bb4bc55eb - set_int_change_y 2022-10-14 17:17:01 +02:00
Christoph Oelckers
b6c0560430 - set_int_change_x 2022-10-14 17:17:01 +02:00
Christoph Oelckers
390dd4d9df - wrapped a few more 2022-10-14 17:17:00 +02:00
Christoph Oelckers
fbfec1f037 - avoid using change.X as a marker value 2022-10-14 17:17:00 +02:00
Christoph Oelckers
6334b7d3b8 - wrapped half of the remaining access to user.change
Strictly search and replace.
2022-10-14 17:17:00 +02:00
Christoph Oelckers
420636f7ee - a bit more lightening on change 2022-10-14 17:17:00 +02:00
Christoph Oelckers
10e08556c1 - put more access to user.change behind wrappers 2022-10-14 17:16:59 +02:00
Christoph Oelckers
f81aada041 - lightened the number of references to user.change by 1/3rd
The less, the better for refactoring
2022-10-14 17:16:31 +02:00
Christoph Oelckers
ab3e7df1b9 - use UpdateChangeXY in a few more places 2022-10-14 00:06:30 +02:00
Christoph Oelckers
61fc57131f - eliminated a few calls to int_Actor* functions 2022-10-14 00:06:30 +02:00
Christoph Oelckers
b557e5b5db - eliminated int_upos wrapper 2022-10-14 00:06:30 +02:00
Christoph Oelckers
3ac4e7ed2d - eliminated player_int_ceiling_dist, player_int_floor_dist wrappers 2022-10-14 00:06:30 +02:00
Christoph Oelckers
8c5e52938d - deleted int_loz/hiz wrappers 2022-10-14 00:06:30 +02:00
Christoph Oelckers
c59b052d19 - floatified PickJumpMaxSpeed 2022-10-14 00:06:29 +02:00
Christoph Oelckers
502994fb0a - floatified SpawnExpZadjust’s interface 2022-10-14 00:06:29 +02:00
Christoph Oelckers
f656d8b1a3 - floatified SpawnExpZadjust 2022-10-14 00:06:29 +02:00
Christoph Oelckers
4a486f5a10 - deal with an extremely redundant code fragment
Consolidates almost 100 lines that still need work in a small subfunction. :)
2022-10-13 22:54:43 +02:00
Christoph Oelckers
28c8efd104 - eliminated set_int_ppos_Z 2022-10-13 22:54:43 +02:00
Christoph Oelckers
785575604b - no need to use int_delta when all we want is the angle. 2022-10-13 22:54:43 +02:00
Christoph Oelckers
6ce01e24d2 - renamed walltype::delta and walltype::center 2022-10-13 22:54:42 +02:00
Christoph Oelckers
1d28ebec98 - eliminated add_int_z and add_int_y wrappers 2022-10-13 22:54:42 +02:00
Christoph Oelckers
ffba7996b3 - SW: floatified PLAYER::siang 2022-10-13 20:58:12 +02:00
Christoph Oelckers
634db656e7 - SW: floatified PLAYER::si 2022-10-13 20:58:12 +02:00
Christoph Oelckers
94e198f9a9 - SW: floatified DoPlayerTeleportToSprite 2022-10-13 20:58:12 +02:00
Christoph Oelckers
f4d8ccf7b9 - floatified WarpToCoords 2022-10-13 20:58:12 +02:00
Christoph Oelckers
cceecb4ab6 - use ToVector where appropriate 2022-10-13 20:41:54 +02:00
Christoph Oelckers
5bb9a16d34 - floatified TRACK_ACTOR_CLIMB_LADDER case in ActorTrackDecide 2022-10-13 20:23:34 +02:00
Christoph Oelckers
0fcbe57111 - pos in DoBloodWorm 2022-10-13 19:59:15 +02:00
Christoph Oelckers
06be4eeb91 - floatified most of SpriteWarpToUnderwater 2022-10-13 19:59:15 +02:00
Christoph Oelckers
db16eb9d19 - converted position in move_ground_missile 2022-10-13 19:59:15 +02:00
Christoph Oelckers
2044a7c562 - converted some simple assignments 2022-10-13 19:59:15 +02:00
Christoph Oelckers
07826c7791 - eliminated DCoreActor::copyXY 2022-10-13 00:59:05 +02:00
Mitchell Richters
4d04a4dd3a - Floatified automap's gZoom.
* Also use the global directly in automap functions instead of passing it around as function variables.
2022-10-13 00:59:04 +02:00
Mitchell Richters
f5116dd787 - Pass a DAngle through to all the automap code. 2022-10-13 00:59:04 +02:00
Mitchell Richters
e970ed0f27 - Migrate spritetypebase::interpolatedvec3() to backend solution.
* Also eliminate unused `interpolatedvec2() method from class.
2022-10-13 00:59:03 +02:00
Mitchell Richters
1e36aa0e7f - Move TAngle<> interpolation function to common and add ones for TVector<> classes. 2022-10-13 00:59:03 +02:00
Mitchell Richters
dbcde19834 - Remove some Normalized360() method calls I added where it shouldn't be necessary. 2022-10-13 00:59:03 +02:00
Mitchell Richters
2e25ccaa4d - SW: Replace some set_int_ang() usage. 2022-10-13 00:59:02 +02:00
Christoph Oelckers
5faeedc144 -refactored the remaining code using int_zclip. 2022-10-13 00:59:02 +02:00
Christoph Oelckers
78e8957043 -refactored the remaining code using int_zclip for move_missile. 2022-10-13 00:59:02 +02:00
Christoph Oelckers
d3715e3332 - floatified globloz and globhiz 2022-10-13 00:59:01 +02:00
Christoph Oelckers
d573ba4cad - pass map start as DVector3 2022-10-13 00:59:01 +02:00
Christoph Oelckers
b949f37be2 - Sound stuff for SW 2022-10-13 00:59:01 +02:00
Christoph Oelckers
0edd12bc11 - set_int_ang(getangle 2022-10-13 00:59:01 +02:00
Christoph Oelckers
f45e6317ab - SpriteWarpToSurface 2022-10-13 00:59:00 +02:00
Christoph Oelckers
2f896b859b - made the code mostly signed-char safe.
This eliminates all char function parameters that are not really ASCII characters and casts all char argument to the ctype is... functions.
2022-10-12 22:12:30 +02:00
Christoph Oelckers
f269ceff64 slope functions with position vectors 2022-10-12 22:10:37 +02:00
Christoph Oelckers
0499be0c26 - getting rid of some int_pos calls. 2022-10-12 22:10:37 +02:00
Christoph Oelckers
a5a3669238 - eliminated the SetActor/Z function receiving a vec3_t pointer.
The only one left is the one with a DVector3 now.
2022-10-12 22:10:36 +02:00
Christoph Oelckers
f750ea8a70 - twq more SpawnActor calls. 2022-10-12 22:10:36 +02:00
Christoph Oelckers
12b238b2bf - the remaining SpawnActor calls. 2022-10-12 22:10:36 +02:00
Christoph Oelckers
80f019c429 - next batch of SpawnActor calls. 2022-10-12 22:10:35 +02:00
Christoph Oelckers
c7437da255 - more SpawnActors 2022-10-12 22:10:35 +02:00
Christoph Oelckers
da6e8e9341 - several SpawnActor and getangle calls. 2022-10-12 22:10:35 +02:00
Christoph Oelckers
fe42de1fcb - the one add_int_floorz/add_int_ceilingz calls each in SW. 2022-10-12 22:10:35 +02:00
Christoph Oelckers
f0769048ed - yet another bunch of SpawnActor calls in weapon.cpp 2022-10-12 22:10:35 +02:00
Christoph Oelckers
5e28b2cca3 - lots of SpawnActor calls in weapon.cpp 2022-10-12 22:10:34 +02:00
Christoph Oelckers
446407cafe - more SpawnActor calls 2022-10-12 22:10:34 +02:00
Christoph Oelckers
d8c7054751 - many SpawnActor calls 2022-10-12 22:10:34 +02:00
Christoph Oelckers
2a8dd6b955 - improved RANDOM_P2F interface. 2022-10-12 22:10:34 +02:00
Christoph Oelckers
f77ecbed32 - several HitBreakWall calls 2022-10-12 22:10:34 +02:00
Christoph Oelckers
3a0eec76ad - some getangle and SpawnActor calls 2022-10-12 22:10:34 +02:00
Christoph Oelckers
97223af592 - silenced a few conversion truncation warnings. 2022-10-12 15:49:07 +02:00
Christoph Oelckers
f35c610328 - the remaining cansee calls 2022-10-11 18:09:48 +02:00
Christoph Oelckers
d8f379c8fa - SetActorZ vectors 2022-10-10 17:37:20 +02:00
Christoph Oelckers
e76dfa5d3c - GetActor pos replacement 2022-10-10 17:37:19 +02:00
Christoph Oelckers
e20b2ab872 - don't use labs. 2022-10-10 17:37:19 +02:00
Christoph Oelckers
0767ffe41b - eliminated the last wrapper call for track points 2022-10-10 17:37:17 +02:00
Christoph Oelckers
23a0433b95 - the remaining track point stuff. 2022-10-10 17:37:17 +02:00
Christoph Oelckers
aa584c51ac - trackpoint wrapper cleanup 2022-10-10 17:37:17 +02:00
Christoph Oelckers
90cbb1be13 - more track stuff 2022-10-10 17:37:17 +02:00
Christoph Oelckers
767933dff9 - track stuff in ai.cpp 2022-10-10 17:37:17 +02:00
Christoph Oelckers
27152ae189 - floatified track point storage. 2022-10-10 17:37:17 +02:00
Christoph Oelckers
3ac4b6300f - code cleanup to eliminate wrappers. 2022-10-10 17:36:41 +02:00
Christoph Oelckers
ed12e333e3 - RANDOM_ANGLE + move_debris 2022-10-10 17:31:30 +02:00
Christoph Oelckers
834f833298 - 2 getangle calls refactored 2022-10-10 17:31:30 +02:00
Christoph Oelckers
ef1e77514d - floatified DoActorOperate 2022-10-10 17:31:30 +02:00
Christoph Oelckers
072cb5ccdf - floatified CanHitPlayer and sanitized its overcomplicated and broken math. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
bc5a92bcc9 - distance stuff in sound code. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
9444bd4370 - last FAFcansee bunch 2022-10-10 17:31:29 +02:00
Christoph Oelckers
7aca321fab - FAFcansee refactoring, part 5. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
9f9a315ce2 - FAFcansee refactoring, part 4. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
4aa5de689c - renamed old FAFcansee function for easier searching. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
ff6d1fd284 - FAFcansee refactoring, part 3. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
7eb2dede6a - FAFcansee refactoring, part 2. 2022-10-10 17:31:29 +02:00
Christoph Oelckers
5b7b8233e7 - FAFcansee refactoring, part 1. 2022-10-10 17:31:28 +02:00
Christoph Oelckers
6ee24a2213 - let ANIM work on the native floating point data. 2022-10-10 17:31:28 +02:00
Christoph Oelckers
80e10d89f4 - added alignceilslope and alignflorslope variants receiving a position vector. 2022-10-10 17:31:28 +02:00
Christoph Oelckers
98b06697f7 - pass position pointers to DISTANCE. 2022-10-10 17:31:28 +02:00
Christoph Oelckers
bd497a7e68 - floatified remote.pos. 2022-10-09 23:59:01 +02:00
Christoph Oelckers
837b31c672 - got rid of int_ploz and int_phiz. 2022-10-09 23:59:01 +02:00
Christoph Oelckers
7475a6cfb7 - renamed variable back. 2022-10-09 23:57:17 +02:00
Christoph Oelckers
e089100ab1 - floatified PLAYER::bob_amt 2022-10-09 23:56:15 +02:00
Christoph Oelckers
4dc2fc9151 - floatified 3 function interfaces. 2022-10-09 22:30:51 +02:00
Christoph Oelckers
24b23d6919 - floatified PLAYER::ceiling_dist/floor_dist. 2022-10-09 22:30:51 +02:00
Christoph Oelckers
8aab82691b - renamed two PLAYER members for easier searching. 2022-10-09 22:30:51 +02:00
Christoph Oelckers
6497456471 - most of int_phiz,int_ploz 2022-10-09 22:29:54 +02:00
Christoph Oelckers
e1a26c157d - leftovers 2022-10-09 22:00:43 +02:00
Christoph Oelckers
13d9505662 - PLAYER::hiz,loz refactoring, part 1 2022-10-09 22:00:43 +02:00
Christoph Oelckers
30b620c700 - removed unused oz_speed member variable. 2022-10-09 22:00:43 +02:00
Christoph Oelckers
e1ceab240b - SW's quake stuff 2022-10-09 22:00:43 +02:00
Christoph Oelckers
31dfd1af7a - eliminated most int_upos calls. 2022-10-09 21:57:30 +02:00
Christoph Oelckers
df2f68efc1 - messy ladder stuff. 2022-10-09 14:53:11 +02:00
Christoph Oelckers
17d5242958 - got rid of int_z_tgt 2022-10-09 14:53:11 +02:00
Christoph Oelckers
d2818322b0 - 2x int_hiz 2022-10-09 14:53:11 +02:00
Christoph Oelckers
7e963cb7a3 - floatified DoHornetMatchPlayerZ 2022-10-09 14:53:11 +02:00
Christoph Oelckers
0d24aeb3f5 - handle all remaining trivial int_loz. 2022-10-09 14:53:11 +02:00
Christoph Oelckers
5e14361dd6 - another set of 2 Utilities prepared for floatification. 2022-10-09 14:53:11 +02:00
Christoph Oelckers
82968f876f - floatified most of DoEelMatchPlayerZ 2022-10-09 14:53:11 +02:00
Christoph Oelckers
9ed66acd44 - renamed 2 integer functions to add float variants 2022-10-09 14:53:10 +02:00
Christoph Oelckers
abf9d764c4 - fix some z scaling mishap (again...)
- shadow stuff
2022-10-09 14:53:10 +02:00
Christoph Oelckers
30e6db9e3b - floatified DoVatorMove and got rid of int_oz. 2022-10-09 14:53:10 +02:00
Christoph Oelckers
af7e63137f - got rid of most int_oz calls. 2022-10-09 14:53:10 +02:00
Christoph Oelckers
9433f2ada8 - floatified DoCoolgMatchPlayerZ. 2022-10-09 14:53:10 +02:00
Christoph Oelckers
f53a61693b - floatified user.pos.
Special care needed to be taken for two cases where it did not store a coordinate.
2022-10-09 08:21:56 +02:00
Christoph Oelckers
f43a8d4fce - user.pos wrapping. 2022-10-09 08:21:56 +02:00
Christoph Oelckers
bc853d3a00 - user.zclip floatified 2022-10-09 08:21:56 +02:00
Christoph Oelckers
a93349b445 - messy pointer use cleaned up. 2022-10-09 08:21:56 +02:00
Christoph Oelckers
a630f27a48 - wrapped user.zclip reads. 2022-10-09 08:21:56 +02:00
Christoph Oelckers
4021d13e8d - completed floatification of ceiling_dist and floor_dist. 2022-10-09 08:21:56 +02:00
Christoph Oelckers
5416100ba2 - trivial assignments
(does not compile, this commit is only supposed to reduce the noise on the next one.
2022-10-09 08:21:55 +02:00
Christoph Oelckers
5f12f0deaa - missed 3. 2022-10-09 08:21:55 +02:00
Christoph Oelckers
8672a9f051 - wrapped user.floor_dist reads. 2022-10-09 08:21:55 +02:00
Christoph Oelckers
4f073dec26 - wrapped user.ceiling_dist reads. 2022-10-09 08:21:55 +02:00
Christoph Oelckers
467ab9f7ee - int_hiz/int_loz replacements. 2022-10-09 08:21:55 +02:00
Christoph Oelckers
425f4055b4 - floatified user.z_tgt. 2022-10-09 08:21:55 +02:00
Christoph Oelckers
65d1e5cac9 - wrapped user.z_tgt reads. 2022-10-09 08:21:55 +02:00
Christoph Oelckers
620f7c5430 - floatified user.oz. 2022-10-09 08:21:54 +02:00
Christoph Oelckers
a7d62f944b - wrapped user.oz reads. 2022-10-09 08:21:54 +02:00
Christoph Oelckers
306e751a51 - floatified user.hiz and user.loz 2022-10-09 08:21:54 +02:00
Christoph Oelckers
d117544da8 - wrapped user.hiz reads. 2022-10-09 08:21:54 +02:00
Christoph Oelckers
ac3f6d73e3 - wrapped all reads to user.loz. 2022-10-09 08:21:54 +02:00
Christoph Oelckers
ade20cbfe2 - some angular stuff. 2022-10-09 08:21:54 +02:00
Christoph Oelckers
766ddeb445 - one more batch of trivial replacements 2022-10-09 08:21:53 +02:00
Christoph Oelckers
6111b11359 - trivial replacements in SW. 2022-10-09 08:21:53 +02:00
Christoph Oelckers
91acf93c7d - SW: fixed viewpoint interpolation 2022-10-09 08:21:53 +02:00
Christoph Oelckers
df9f444d88 - SW: fixed bad actor parameter in SpawnShell.
cherry pick on master
2022-10-09 08:18:38 +02:00
Christoph Oelckers
0e38d5e52b - SW: fixed sound owner issues with non-follow sounds.
These sounds were given the wrong type now.

cherry pick on master.
2022-10-08 19:28:57 +02:00
Christoph Oelckers
aa0080039f - refactored coordinate display to have a single unified printing function.
The games will now only return the data, this has also been added for Exhumed.
Printing will now be in actual map units, not build's internal mixed format.
2022-10-08 19:28:57 +02:00
Christoph Oelckers
b32c4444c4 - replaced all add_int_z calls with constants. 2022-10-08 19:28:57 +02:00
Christoph Oelckers
4a6f9f316a - one assignment 2022-10-08 19:28:57 +02:00
Christoph Oelckers
5df5520754 - one more 2022-10-08 16:11:23 +02:00
Christoph Oelckers
4d02cdcce9 - use explicit types in hitscan calls 2022-10-06 20:50:47 +02:00
Christoph Oelckers
5455ce42c0 -got rid of some simple int_ppos wrappers. 2022-10-06 20:50:47 +02:00
Christoph Oelckers
76569ffd9f - fix constants 2022-10-06 20:50:47 +02:00
Christoph Oelckers
eedac509a2 - LadderPosition 2022-10-06 20:50:47 +02:00
Christoph Oelckers
c6af5ff9e1 - removed all quickly doable ppos wrapper calls. 2022-10-06 20:50:47 +02:00
Christoph Oelckers
280cd8970e - floatify all 3 player position variables. 2022-10-06 20:50:47 +02:00
Christoph Oelckers
c5414bd29c - map to final names. 2022-10-06 20:50:46 +02:00
Christoph Oelckers
6ced076812 - ladder stuff 2022-10-06 20:50:46 +02:00
Christoph Oelckers
72869304ea - add_int_ppos_XY 2022-10-06 20:50:46 +02:00
Christoph Oelckers
8ff62c5a07 - sone remaining int_ppos. 2022-10-06 20:50:46 +02:00
Christoph Oelckers
f125d615c8 -more ppos setters. 2022-10-06 20:50:46 +02:00
Christoph Oelckers
55aa981f89 - ppos.Z assignments 2022-10-06 20:50:46 +02:00
Christoph Oelckers
5db79fecd7 - more int_ppos 2022-10-06 20:50:45 +02:00
Christoph Oelckers
8e966fc575 - int_ppos replacements 2022-10-06 20:50:45 +02:00
Christoph Oelckers
da73d2bba4 - renamed player position variables. 2022-10-06 20:50:45 +02:00
Christoph Oelckers
22dae296c6 - SW: SectorExp floatified 2022-10-06 20:50:45 +02:00
Christoph Oelckers
ed6adc33c4 - floatified SO rotations. 2022-10-06 20:50:45 +02:00
Christoph Oelckers
e71254dfa6 - floatified some parts of the SO interface for consistent use of MAXSO. 2022-10-06 20:50:45 +02:00
Christoph Oelckers
b9dbcebe2e - floatified SECTOR_OBJECT::pmid 2022-10-06 20:50:44 +02:00
Christoph Oelckers
9393170408 - new utilities for SO floatification. 2022-10-06 20:50:44 +02:00
Christoph Oelckers
48cbdeb697 - replaced all possible __int_pmid with access functions. 2022-10-06 20:50:44 +02:00
Christoph Oelckers
819297a409 - SW: renamed SECTOR_OBJECT::pmid 2022-10-06 20:50:44 +02:00
Christoph Oelckers
eef7802111 - SW: floatify some set_int_pos calls 2022-10-06 20:50:44 +02:00
Christoph Oelckers
049c6f948d - deleted unused SpawnWallHole function. 2022-10-06 20:50:43 +02:00
Christoph Oelckers
e8d18e42d1 - SW: QueueHole 2022-10-06 20:50:43 +02:00
Christoph Oelckers
661655fb67 - SW: use a DVector3 in SpawnVis 2022-10-06 20:50:43 +02:00
Christoph Oelckers
3a9f9988f4 - redid clipinsidebox* functions.
* Completely rewritten to be less obtuse.
* Consolidated the two variants.
* Renamed to be clearer about what they do.
2022-10-05 18:31:45 +02:00
Christoph Oelckers
21944d5ac2 - updatesectorz with DVector3. 2022-10-05 18:22:07 +02:00
Christoph Oelckers
643d3e7eba - SW’s BulletHitSprite 2022-10-05 18:19:56 +02:00
Christoph Oelckers
b3d9320d54 - Distance in SW 2022-10-05 18:18:27 +02:00
Christoph Oelckers
84f690654e - hitpos replacements in spawn calls 2022-10-05 18:17:15 +02:00
Christoph Oelckers
5505c362e2 - floatified hitpos 2022-10-05 18:11:59 +02:00
Christoph Oelckers
1f96b4eac6 - Warp wrappers 2022-10-05 18:11:12 +02:00
Christoph Oelckers
55ade2eda4 - use int_hitpos() access function where applicable 2022-10-05 18:10:44 +02:00
Christoph Oelckers
296b5d7edd - renamed HitInfo::hitpos 2022-10-05 18:03:41 +02:00
Christoph Oelckers
086c699df0 - use float coords for spawning some SW actors. 2022-10-05 18:01:57 +02:00
Christoph Oelckers
0c8ed75d54 - SW: SpawnActor with float vector 2022-10-05 18:01:21 +02:00
Christoph Oelckers
8f4c418a1b - pos simplifications 2022-10-05 18:00:25 +02:00
Christoph Oelckers
46aa695b54 - add a float version of ActorZOfMiddle. 2022-10-05 17:59:32 +02:00
Christoph Oelckers
cdff2b12cc - renamed ActorZOfMiddle 2022-10-05 17:58:37 +02:00
Christoph Oelckers
64391c52f9 - large batch of set_int_pos, minus Exhumed 2022-10-05 17:33:01 +02:00
Mitchell Richters
d28d6cd4cf - Utilise actor sprite's full precision in instances where angle was converted to Build and back again. 2022-10-05 00:36:30 +02:00
Mitchell Richters
5c84f93c08 - Use the static constexpr nullAngle everywhere possible. 2022-10-05 00:36:30 +02:00
Mitchell Richters
02dfe2cb62 - Repair interpolation issues following change of sprite angles from integer to DAngle types. 2022-10-05 00:36:30 +02:00
Christoph Oelckers
fe6fcdff1f - use DAngle for actors
Note that intangle needs to be kept - primarily for SW's ST tags.
2022-10-05 00:36:29 +02:00
Mitchell Richters
ad908719ec - Remaining manual changes to replace player's ang with DAngle object. 2022-10-05 00:36:27 +02:00
Mitchell Richters
b23e77d9c7 - Replace player's ang with DAngle object.
* This commit does not build. Committed items are everything that's been done by find and replace.
* Next commit has hand-performed changes that are better separated out for clarity.
2022-10-05 00:36:27 +02:00
Mitchell Richters
7a6f5c0864 - Replace binangle usage in PlayerHorizon::calcviewpitch() with DAngle object. 2022-10-05 00:36:27 +02:00
Mitchell Richters
dbc46e2a75 - Change out PlayerAngle::settarget()'s input from binangle to DAngle. 2022-10-05 00:36:27 +02:00
Mitchell Richters
a090f31bc4 - Change out PlayerAngle::addadjustment()'s input from binangle to DAngle. 2022-10-05 00:36:26 +02:00
Mitchell Richters
782fb08209 - SW: Make better use of some TAngle backend utilities. 2022-10-05 00:36:26 +02:00
Mitchell Richters
13ea55b4cb - Replace player's rotscrnang and look_ang angles with DAngle objects.
* Went the el cheapo route and added some floating point Build angle methods. As these and the integer build methods are really just refactoring aids, we'll come back to this in due course.
2022-10-05 00:36:26 +02:00
Mitchell Richters
d3022947eb - Replace use of binangle in gi->processSprites() with DAngle object. 2022-10-05 00:36:24 +02:00
Mitchell Richters
6167448f27 - Blood: Replace all uses of binangle with DAngle objects. 2022-10-05 00:36:24 +02:00
Mitchell Richters
8912d7d6cc - SW: Change RevolveAng, RevolveDeltaAng and GlobSpeedSO to DAngle objects.
* For now, SW is as `binangle` free as it can be until other backend parts are changed.
2022-10-05 00:36:23 +02:00
Mitchell Richters
3242b8fd81 - SW: Remove leftover Polymost draw code prototype. 2022-10-05 00:36:23 +02:00
Mitchell Richters
2f76ca100f - SW: Replace last uses of binangle in game's draw code with DAngle objects.
* Easiest done in one hit since we had pointers and things to deal with.
2022-10-05 00:36:23 +02:00
Mitchell Richters
ebac932efe - Update render_drawrooms() and render_camtex() to work off DAngle objects. 2022-10-05 00:36:23 +02:00
Mitchell Richters
c935fc2226 - Refactor chase cam positional code to use DAngle input rather than binangle.
* These changes still maintain Build's integer positional values in Q28.4/Q24.8, changing this will be done later on.
2022-10-05 00:36:22 +02:00
Mitchell Richters
54ef648936 - SW: Change limit_ang_center and limit_ang_delta to DAngle objects. 2022-10-05 00:36:22 +02:00
Mitchell Richters
303e7ddf76 - Replace binangle in ShadowWarrior::PREDICT with DAngle object(s). 2022-10-05 00:36:22 +02:00
Mitchell Richters
08b10a7320 - Replace binangle in ShadowWarrior::UpdateSounds() with DAngle object(s). 2022-10-05 00:36:22 +02:00
Christoph Oelckers
9a27dc2020 - handle all leftover __int_angles.
Most were in comments but were changed anyway.
2022-10-05 00:36:21 +02:00
Christoph Oelckers
6bdfa09dd1 - the remaining angle stuff. 2022-10-05 00:36:21 +02:00
Christoph Oelckers
2d51058de8 - add_int_ang 2022-10-05 00:35:14 +02:00
Christoph Oelckers
c2f4fa8bb5 - more angles 2022-10-04 23:56:44 +02:00
Christoph Oelckers
2533841541 - set_int_ang in SW. 2022-10-04 23:56:44 +02:00
Christoph Oelckers
6381015229 - set_int_ang in SW, part 1. 2022-10-04 23:56:44 +02:00
Christoph Oelckers
f54e4b8a9a - more int_ang() 2022-10-04 23:56:43 +02:00
Christoph Oelckers
33d5b54ce0 - use int_ang(). 2022-10-04 23:56:43 +02:00
Christoph Oelckers
735b9a8fed - renamed ang to __int_angle 2022-10-04 23:56:42 +02:00
Christoph Oelckers
9bac3b8857 - floatified DBloodActor::basePoint. 2022-10-04 23:56:24 +02:00
Christoph Oelckers
022f22cd10 -replaced tspritetype::set_int_x/y. 2022-10-04 18:44:16 +02:00
Christoph Oelckers
838d28b934 - more simple replacements. 2022-10-04 18:44:16 +02:00
Christoph Oelckers
3edbec4f55 - use copyXY method where possible. 2022-10-04 18:44:16 +02:00
Christoph Oelckers
24c845f827 - remove float_pos wrapper. 2022-10-04 18:44:15 +02:00
Christoph Oelckers
b327f7f03a - some simple replacements. 2022-10-04 18:44:15 +02:00
Christoph Oelckers
6816e32d23 - call float 'interpolated' functions for setting tsprite's pos. 2022-10-02 20:46:56 +02:00
Christoph Oelckers
7745701d4b - floatified opos. 2022-10-02 20:46:56 +02:00
Christoph Oelckers
5df4caa82f - renamed interpolate functions as preparation for floatifying opos. 2022-10-02 20:46:56 +02:00
Christoph Oelckers
631bea6a98 - v3df_follow cannot be disabled.
This caused the sound field to deteriorate. Fortunately the flag was already ignored for player sounds so hopefully it's ok like this.
2022-10-01 16:09:53 +02:00
Christoph Oelckers
f1bdee015d - SW: fixed Bouncing Betty not spawning on Twin Dragon's $outpost.map 2022-10-01 15:57:40 +02:00
Christoph Oelckers
f307e22f4b - fixed SW's flash bomb. 2022-10-01 14:33:56 +02:00
Christoph Oelckers
d1b4bef98d - don't draw invalid shadow sprites. 2022-10-01 10:01:56 +02:00
Christoph Oelckers
e2a1190e32 - SW: disabled 'dontpan' and force 'follow' sound flag.
While these may theoretically be useful, their use in SW is so poor that we are better off playing everything except ambients as a positioned world sound.
2022-10-01 09:39:49 +02:00
Christoph Oelckers
a59a771209 - use floats for ceilingz/floorz storage. 2022-08-27 10:49:59 +02:00
Christoph Oelckers
044929ad06 - replaced all remaining read access to __int_floorz and __int_ceilingz with wrappers. 2022-08-27 10:13:15 +02:00
Christoph Oelckers
109684c029 - renamed a few things to make searching easier. 2022-08-27 10:03:10 +02:00
Christoph Oelckers
8325e7369f - removed floorzptr and ceilingzptr.
These were obstacles for further changes.
2022-08-27 10:01:01 +02:00
Christoph Oelckers
c84d75b8bf - use inline access functions to read floorz/ceilingz. 2022-08-27 09:58:16 +02:00
Christoph Oelckers
0672572e63 - renamed sectortype::floorz and ceilingz as preparation for floatification 2022-08-27 09:47:48 +02:00
Christoph Oelckers
02ae6476de - changed the pos vector of spritetype to floating point. 2022-08-27 09:26:13 +02:00
Christoph Oelckers
825d94f5a5 - SW: rewrote sound code to avoid using a position pointer- 2022-08-27 09:22:42 +02:00
Christoph Oelckers
9407fa549d - SW: made ANIM value type independent. 2022-08-27 08:49:38 +02:00
Christoph Oelckers
2e63453cd0 - added missing range check to secret hack for WT. 2022-08-26 21:46:16 +02:00
Christoph Oelckers
c15aeec9f7 - late __int_pos additions 2022-08-26 19:53:11 +02:00
Christoph Oelckers
1231f6025d - handle the last remaining uses of __int_pos that can be done with the function interface. 2022-08-26 19:53:10 +02:00
Christoph Oelckers
8ccaa0ab8c - more tsprite position stuff 2022-08-26 19:53:10 +02:00
Christoph Oelckers
810e722e5e - tspritetype::pos access wrappers, part 2. 2022-08-26 19:53:10 +02:00
Christoph Oelckers
170387ab26 - tspritetype::pos access wrappers, part 1. 2022-08-26 19:53:10 +02:00
Christoph Oelckers
dc94dedc6b - renaming spritetype::pos 2022-08-26 19:53:10 +02:00
Christoph Oelckers
e732e2f947 - SW: replaced spr.pos globally (except two functions)
# Conflicts:
#	source/games/sw/src/_polymost.cpp
2022-08-26 19:53:09 +02:00
Christoph Oelckers
d35b131dd5 - SW: handle pos in _PlaySound 2022-08-26 19:53:09 +02:00
Christoph Oelckers
b74355fcee - SW: almost the last wraps. 2022-08-26 19:53:09 +02:00
Christoph Oelckers
b49aed6620 - SW: more spr.pos write wraps. 2022-08-26 19:53:09 +02:00
Christoph Oelckers
6a5384f39e - SW: eighth batch of spr.pos wraps. 2022-08-26 19:53:09 +02:00
Christoph Oelckers
1101a8c9e8 - SW: seventh batch of spr.pos wraps. 2022-08-26 19:53:09 +02:00
Christoph Oelckers
9ace89ad53 - SW: sixth batch of spr.pos wraps. 2022-08-26 19:53:08 +02:00
Christoph Oelckers
2d91ea29ce - SW: fifth batch of spr.pos wraps. 2022-08-26 19:53:08 +02:00
Christoph Oelckers
212b9e8bab - SW: fourth batch of spr.pos wraps. 2022-08-26 19:53:08 +02:00
Christoph Oelckers
53ce186e7b - SW: third batch of spr.pos wraps. 2022-08-26 19:53:08 +02:00
Christoph Oelckers
8ca4d85069 - SW: second batch of spr.pos wraps. 2022-08-26 19:53:08 +02:00
Christoph Oelckers
871f0c4ec6 - SW: first batch of spr.pos wraps. 2022-08-26 19:53:08 +02:00
Christoph Oelckers
4f391e46ce - added GetSoundPos variant taking a reference instead of pointer. 2022-08-26 19:53:03 +02:00
Christoph Oelckers
4d423004e9 - unlimited the displayable sprites.
Now with Polymost gone this can finally be done properly.
2022-08-07 10:25:15 +02:00
Christoph Oelckers
738c133d05 - animation precaching cleanup.
No need to handle animations on the,game side. markTileForPrecache already handles this - now also for oscillating animations.
2022-08-05 23:48:43 +02:00
Christoph Oelckers
83c0ad55f2 - rewrote nextsectorneighborzptr with a better parameter interface 2022-08-05 18:43:48 +02:00
Christoph Oelckers
c2fc7577db - cleanup of 3D viewport code.
Removes all the hackery that Polymost needed and now uses a sane struct to store the info.
2022-08-05 17:04:45 +02:00
Christoph Oelckers
b60181eed5 - variable cleanup. 2022-08-03 15:58:18 +02:00
Christoph Oelckers
291726cc55 - removed the Polymost renderer. 2022-08-03 15:50:27 +02:00
Mitchell Richters
00e12ea031 - Remove some uses of xs_Float.h functions in game-side code where overflow protection isn't needed.
* Went a little bit nuts and just used this everywhere back way back when.
2022-07-23 10:37:32 +10:00
Christoph Oelckers
f8aacb3825 - fixed crash in Last Warrior map 9.
Really, asserts should not be used to test for errors that can actually happen!
2022-06-06 20:56:50 +02:00
Christoph Oelckers
84173ee09b - backend update from GZDoom.
The main bulk of this is the new start screen code. To make this work in Raze some more work on the startup procedure is needed.
What this does provide is support for the DOS end-of-game text screens in Duke and SW on non-Windows systems.
2022-06-06 11:45:34 +02:00
Christoph Oelckers
0a020e9cc1 - ported secret hack for WT's map 11 from SW Redux.
This is hideously awful and definitely needs a better approach. For now it'll do...
2022-06-01 12:22:59 +02:00
Mitchell Richters
de88d4dc8b - SW: Remove some unnecessary ternaries in some inline bools and fix a few return types. 2022-05-30 20:51:53 +10:00
Mitchell Richters
7282e0d8bf - Remove multiple addadjustment()/settarget() overloads in favour of native binangle/fixedhoriz versions only.
* Simplifies these classes a bit.
* Better shows intent in actual game code.
* Removes unnecessary int to double conversions.
2022-05-30 20:35:41 +10:00
Christoph Oelckers
22d6e3f2f6 - SW: added interpolation for sine wave floors. 2022-05-29 23:20:09 +02:00
Christoph Oelckers
d7c15d7153 - SW: fixed shadow positioning. 2022-05-29 23:04:36 +02:00
Christoph Oelckers
aab13addb7 -renamed spritetype’s owner field to ‚intowner‘
Mainly for easier searching.
Also remove the duplicate ‚detail‘ field.
2022-05-24 00:30:41 +02:00
Christoph Oelckers
84bafe6d02 - manual merge of latest nnext update. 2022-05-11 08:31:58 +02:00
Christoph Oelckers
3114059145 - fixed sprite indices for map spawned sprites. 2022-03-20 12:08:47 +01:00
Rachael Alexanderson
735740e453 - add level names to title bar (and by proxy, to RPC) 2022-03-18 05:06:58 -04:00
Christoph Oelckers
680a87085a - SW: remap LIGHT_Tics to the otherwise unused spritetype::detail.
We should not hijack a coordinate for this due to access rights for scripting and potential value ranme issues. Since this value is never loaded from a map this is safe.
2022-02-15 22:34:03 +01:00
Christoph Oelckers
536c7e0c7b - SW: floatify slidor.cpp 2022-02-15 22:18:27 +01:00
Christoph Oelckers
b8ea49ee0e - SW: bumped two hard limits because there's maps out there that exceed them. 2022-02-15 22:18:25 +01:00
Christoph Oelckers
6fbecf2348 - RR: cleaned up and floatified the mine cart code 2022-02-15 22:18:25 +01:00
Christoph Oelckers
13d01bc98b - lower the value of MAXSO.
This was causing overflow issues and resulted in bad int <-> float conversions.
2022-02-15 22:18:25 +01:00
Christoph Oelckers
6e96b1ee81 - floatify SW's sector object rotation. 2022-02-15 22:18:25 +01:00
Christoph Oelckers
02d508baef - renamed floatified wall coordinate to 'pos'. 2022-02-15 22:18:24 +01:00
Christoph Oelckers
cd55658786 - use floats for vertices. 2022-02-15 22:18:23 +01:00
Christoph Oelckers
a9cf6feb60 - SW: changed sector object interpolation to be independent of the interpolated values' types. 2022-02-15 22:18:23 +01:00
Christoph Oelckers
f44736a5b6 -use an access function for reading wall positions so that we have a non-modifiable value wherever this is possible. 2022-02-15 22:18:23 +01:00
Christoph Oelckers
89ef81da55 - renamed walltype::pos as preparation for refactoring.
no functional changes here
2022-02-15 22:18:22 +01:00
Christoph Oelckers
ce325e6453 - disabled assert in FAFhitscan.
There's maps out there which trigger this - so it should better be silenced, despite being a mapping error.
2022-01-30 08:13:35 +01:00
Christoph Oelckers
f194fb6c90 - added a name to tilenum function so that we can define picnums by name in scripted actors. 2022-01-24 00:24:47 +01:00
Christoph Oelckers
04a380ce14 - added script exports for DCoreActor's member variables. 2022-01-24 00:24:46 +01:00
Christoph Oelckers
bd22aeb0d9 - SW: use correct sky scale in Polymost. 2022-01-23 12:44:22 +01:00
Christoph Oelckers
3aff12cf4c - sky management rework. 2022-01-16 12:12:43 +01:00
Christoph Oelckers
c5b382907d - SW: fixed velocity issue in InitEnemyFireball.
The value of the first shot was retrieved too early.
2022-01-15 10:36:55 +01:00
Christoph Oelckers
ddcee4ecbf - split up g_visibility into two variables.
This is preparation for experimenting with the weapon flashes that can be quite annoying with how they brighten distant parts of the level far more than nearby parts.
2022-01-11 00:12:32 +01:00
Christoph Oelckers
e892de21ec - preparations for unlimited tsprites.
Right now it is a no-op because Polymost cannot deal with this properly.
2022-01-11 00:12:32 +01:00
Christoph Oelckers
415dc5246d - fixed sprting of non-translucent sprites. 2022-01-08 21:18:18 +01:00
Christoph Oelckers
70087ebc12 - fixed: The new renderer still called the Polymost screen finish function.
This led to a second, redundant postprocessing step with incorrect matrix values.
It now calls screen->Update() directly without the unneeded stuff, but this required a bit of reordering in the game code to ensure that the renderer receives the weapon data to display.
2022-01-08 13:50:47 +01:00
Christoph Oelckers
a3162f6ccf - renamed testnewrenderer CVAR. 2022-01-07 12:49:41 +01:00
Christoph Oelckers
e1d32bdbf5 - removed the error messages in GetOverlapSector(2).
These can actually be triggered in legitimate scenarios by hitscans so just returning 0 looks like the best way of handling it.
2022-01-05 09:23:30 +01:00
Christoph Oelckers
468aea78ef - SW: fixed wrong actor being checked in ContinueHitscan. 2022-01-04 12:42:46 +01:00
Christoph Oelckers
9f83fd3575 - SW: added a double deletion guard to KillBreakSprite.
This code can easily run into the case where SpawnShrap kills the actor but then further operations are performed, including deleting it again.
2022-01-03 12:28:25 +01:00
Christoph Oelckers
e302c45a0b Revert "- added two FAFcansee variants that take shorter parameter lists for clearer code."
This reverts commit 29da39dda0.

Something in here was wrong, so back to the start with it.
The positive effect was too small anyway.
2022-01-02 17:35:12 +01:00
Christoph Oelckers
a6845f55e4 - comments 2022-01-02 15:59:24 +01:00
Christoph Oelckers
2ac83b733c - SW: clear some pointers before killing actors in TerminateLevel.
KillActor is an in-game function which may produce undefined behavior if being run on a partially deinitialized level.
All actor pointers it may operate upon should be cleared before taking down the actors.cpp
2022-01-02 15:06:57 +01:00
Christoph Oelckers
8c9b810b16 Revert "- removed Interp_Sprite_Z."
Sadly, SW's sprite interpolation is too screwed up to do a better fix on short notice.
It's the same with interpolating sprites attached to SOP's, it is only needed because generally interpolating sprites in SW is problematic.
2022-01-01 19:50:30 +01:00
Christoph Oelckers
0bfb4abc1c - undid some leftover placeholder code in FAFhitscan. 2022-01-01 18:39:59 +01:00
Christoph Oelckers
d215ae0c63 - fixed bad target check for Ripper2's jump attack 2022-01-01 18:25:18 +01:00
Christoph Oelckers
1294f10cd7 - SW: fixed negated FAFcansee call in explosion code. 2022-01-01 17:14:49 +01:00
Christoph Oelckers
27eae52228 - fixed incorrect argument in FAFcansee call. 2022-01-01 17:11:15 +01:00
Mitchell Richters
45057ff8a0 - SW: Fix all GCC warning: suggest parentheses around assignment used as truth value [-Wparentheses] warnings.
Regex to match such conditions: `while (\([\w]+\s?=\s?.+\.Next\(\)\))`.
2022-01-01 20:49:31 +11:00
Mitchell Richters
0375dfdf83 - SW: Replace SECTOR_OBJECT zmid with pmid.Z calls and eliminate pmid union. 2022-01-01 09:34:30 +11:00
Mitchell Richters
9145895b47 - SW: Replace SECTOR_OBJECT ymid with pmid.Y calls. 2022-01-01 09:33:30 +11:00
Mitchell Richters
5e2bbb12b5 - SW: Replace SECTOR_OBJECT xmid with pmid.X calls. 2022-01-01 09:32:40 +11:00
Mitchell Richters
1c0ba71c69 - SW: Eliminated ANIMATORp typedef. 2022-01-01 09:09:41 +11:00
Mitchell Richters
1d51903a9e - SW: Eliminated Voc3D_Flags typedef. 2022-01-01 08:36:56 +11:00
Christoph Oelckers
84ca96c52c eliminated STATEp 2021-12-31 16:00:14 +01:00
Christoph Oelckers
d1be430fbf - eliminated PLAYERp 2021-12-31 15:59:11 +01:00
Christoph Oelckers
69b5d502e2 - renamed PLAYERstruct. 2021-12-31 15:57:55 +01:00
Christoph Oelckers
392397c2b0 - replaced SECTOR_OBJECTp 2021-12-31 15:50:44 +01:00
Christoph Oelckers
74593feab1 - replaced PANEL_SPRITEp 2021-12-31 15:49:07 +01:00
Christoph Oelckers
699bf9c4f5 - anim typedef eliminated. 2021-12-31 15:47:10 +01:00
Christoph Oelckers
8fb769649b - eliminated sectortype aliases. 2021-12-31 15:43:47 +01:00
Christoph Oelckers
98492aae54 - eliminated walltype aliases. 2021-12-31 15:41:39 +01:00
Christoph Oelckers
72962cc098 - the last batch of small scale typedefs eliminated. 2021-12-31 15:40:29 +01:00
Christoph Oelckers
87d2b3274b - cleaned out most of the less frequent typedef types in SW. 2021-12-31 15:27:18 +01:00
Christoph Oelckers
10187e892f - handle track typedefs. 2021-12-31 15:13:05 +01:00
Christoph Oelckers
f43f63adec - all typedefs in jsector.h and inv.h plus a bit of cleanup and #define removal. 2021-12-31 15:10:37 +01:00
Christoph Oelckers
6b50344417 - eliminated PANEL_SPRITEp 2021-12-31 15:03:12 +01:00
Christoph Oelckers
994a575435 - panel.h cleanup. 2021-12-31 13:49:34 +01:00
Christoph Oelckers
12c63d2337 - eliminated a few more typedefs, 2021-12-31 13:37:57 +01:00
Christoph Oelckers
89ab00fe99 - eliminated typedefs in sound code.cc.obj 2021-12-31 13:31:13 +01:00
Christoph Oelckers
085eb8a36e - eliminated SHRAP typedefs. 2021-12-31 13:26:07 +01:00
Christoph Oelckers
271af39a59 - consolidated MISSILE_PLACEMENT definitions. 2021-12-31 13:20:56 +01:00
Christoph Oelckers
90ad4b8ef1 - eliminated typedefs for DECISION and BREAK_INFO. 2021-12-31 13:16:38 +01:00
Christoph Oelckers
0cba0e19b5 - SW: fixed some pointer mixup in UpdatePlayerUnderSprite 2021-12-30 23:39:54 +01:00
Christoph Oelckers
552668418a - moved opos and oang to DCoreActor. 2021-12-30 18:21:02 +01:00
Christoph Oelckers
2bb7cecf27 - eliminated spritetype::clear.
Most uses were bad anyway, and the legitimate ones are just clearing the object.
2021-12-30 17:55:17 +01:00
Christoph Oelckers
7f62df517d - moved all interpolate* methods from spritetypebase to DCoreActor.
The places where it was used on tsprites were redone to use the actor's base coordinate, which at the point of the operation would always be the same.
2021-12-30 17:32:31 +01:00
Christoph Oelckers
c10fb1278a - moved the backup... methods to DCoreActor. 2021-12-30 17:10:08 +01:00
Christoph Oelckers
6c381d4392 - removed sector() method from low level sprite type. 2021-12-30 16:58:48 +01:00
Christoph Oelckers
5498699faf - use DCoreActor::sector() wherever possible. 2021-12-30 16:51:56 +01:00
Christoph Oelckers
88e4bb9f79 - moved sectno method to DCoreActor. 2021-12-30 16:39:43 +01:00
Christoph Oelckers
f0b7fe4add - use setsector from DCoreActor.
Also did a bit of cleanup
2021-12-30 16:36:04 +01:00
Christoph Oelckers
af6ca40e3d - use DCoreActor::insector instead of spritetype::insector. 2021-12-30 16:24:51 +01:00
Mitchell Richters
dc50ad154e - SW: Replace PANEL_SPRITEstruct yorig with bobpos.Y calls. 2021-12-31 00:36:13 +11:00
Mitchell Richters
d8aab1ecea - SW: Replace PANEL_SPRITEstruct xorig with bobpos.X calls. 2021-12-31 00:34:46 +11:00
Mitchell Richters
36b549b7f1 - SW: Replace PANEL_SPRITEstruct oy with opos.Y calls. 2021-12-31 00:34:03 +11:00
Mitchell Richters
81b74c2cdf - SW: Replace PANEL_SPRITEstruct ox with opos.X calls. 2021-12-31 00:32:55 +11:00
Mitchell Richters
145028bc16 - SW: Replace PANEL_SPRITEstruct y with pos.Y calls. 2021-12-31 00:32:00 +11:00
Mitchell Richters
defdb23533 - SW: Replace PANEL_SPRITEstruct x with pos.X calls. 2021-12-31 00:30:42 +11:00
Mitchell Richters
ab6b9fd083 - SW: Replace USER zchange with change.Z calls. 2021-12-31 00:23:30 +11:00
Mitchell Richters
50cb85e389 - SW: Replace USER ychange with change.Y calls. 2021-12-31 00:22:48 +11:00
Mitchell Richters
ad0ea3f2f1 - SW: Replace USER xchange with change.X calls. 2021-12-31 00:22:42 +11:00
Mitchell Richters
424b9c5f34 - SW: Replace REMOTE_CONTROL pos* variables with a vector. 2021-12-31 00:19:34 +11:00
Mitchell Richters
287351e678 - SW: Replace REMOTE_CONTROL *vect variables with vectors. 2021-12-31 00:19:34 +11:00
Mitchell Richters
5d10b32301 - SW: Replace PLAYERstruct oldpos* variables with a vector. 2021-12-31 00:19:33 +11:00
Mitchell Richters
e4d19a0bbe - SW: Replace PLAYERstruct slide_yvect with slide_vect.Y calls. 2021-12-31 00:19:33 +11:00
Mitchell Richters
8c1c5f3d55 - SW: Replace PLAYERstruct slide_xvect with slide_vect.X calls. 2021-12-31 00:19:33 +11:00
Mitchell Richters
8c99053ebd - SW: Replace PLAYERstruct oyvect with ovect.Y calls. 2021-12-31 00:19:33 +11:00
Mitchell Richters
75cc539c58 - SW: Replace PLAYERstruct oxvect with ovect.X calls. 2021-12-31 00:19:33 +11:00
Mitchell Richters
5515830e2b - SW: Replace PLAYERstruct yvect with vect.Y calls. 2021-12-31 00:19:33 +11:00
Mitchell Richters
f2497d7d08 - SW: Replace PLAYERstruct xvect with vect.X calls. 2021-12-31 00:19:33 +11:00
Mitchell Richters
03da70b3b9 - SW: Replace PLAYERstruct si* variables with a vector. 2021-12-31 00:19:33 +11:00
Mitchell Richters
6e130d026e - SW: Replace PLAYERstruct lv_* variables with a vector. 2021-12-31 00:19:33 +11:00
Christoph Oelckers
9158796284 - partial replacement of tspriteptr_t. 2021-12-30 11:48:10 +01:00
Mitchell Richters
13639a09b7 - SW: Remove unused PLAYERstruct variable turn180_target that was deprecated with 7bf1cacc7f. 2021-12-30 20:46:36 +11:00
Mitchell Richters
cf68018909 - SW: Replace PLAYERstruct RevolveY with Revolve.Y calls. 2021-12-30 20:41:27 +11:00
Mitchell Richters
acc11f34bf - SW: Replace PLAYERstruct RevolveX with Revolve.X calls. 2021-12-30 20:41:27 +11:00
Mitchell Richters
05de974080 - SW: Replace PLAYERstruct ly with LadderPosition.Y calls. 2021-12-30 20:41:27 +11:00
Mitchell Richters
a18fc5b66f - SW: Replace PLAYERstruct lx with LadderPosition.X calls. 2021-12-30 20:41:26 +11:00
Mitchell Richters
9c1e54a148 - SW: Replace USER sz with pos.Z calls. 2021-12-30 20:40:29 +11:00
Mitchell Richters
0d70d26625 - SW: Replace USER sy with pos.Y calls. 2021-12-30 20:31:09 +11:00
Mitchell Richters
fcf18c8c63 - SW: Replace USER sx with pos.X calls. 2021-12-30 20:31:09 +11:00
Mitchell Richters
620f0fa7b8 - SW: Use correct function name in GetOverlapSector2() I_Error() call. 2021-12-30 20:31:09 +11:00
Mitchell Richters
9bbb54fe2e - Replace every line that just contains spaces or tabs with an empty line feed in all files except 3rd party libraries. 2021-12-30 20:30:21 +11:00
Mitchell Richters
1b077251e3 - SW: Use BIT() inline in a few places that were changed in "- SW: Replace the last few remaining TEST() macro uses and remove from mytypes.h."
Originally, `BIT()` was going to be dropped in a subsequent commit but we've elected not to.
2021-12-30 20:14:01 +11:00
Christoph Oelckers
3fcecedf32 - deleted ClearContent functions from actor classes.
this is a leftover from pre-DObject times and no longer needed.
2021-12-30 09:58:47 +01:00
Christoph Oelckers
bf9defc062 - SW: moved some Polymost hack stuff to its proper place. 2021-12-30 09:58:46 +01:00
Mitchell Richters
bf7437c827 - SW: Remove ON pre-processor define and eliminate mytypes.h. 2021-12-30 09:58:46 +01:00
Mitchell Richters
3cf9450bd8 - SW: Remove OFF pre-processor define. 2021-12-30 09:58:45 +01:00
Mitchell Richters
ae49a55fce - SW: Replace the last few remaining TEST() macro uses and remove from mytypes.h. 2021-12-30 09:58:45 +01:00
Mitchell Richters
1439d5f268 - SW: Replace TEST\(([\w\-\>.()\[\]]+),\s?([\w\_\|\s]+)\) with ($1 & ($2)). 2021-12-30 09:58:45 +01:00
Mitchell Richters
48b0058d38 - SW: Replace TEST\(([\w\-\>.()]+),\s?(\w+)\) with ($1 & $2). 2021-12-30 09:58:45 +01:00
Mitchell Richters
5316e23737 - SW: Replace !TEST\(([\w\-\>.()\[\]]+),\s?([\w\_\|\s]+)\) with !($1 & ($2)) 2021-12-30 09:58:45 +01:00
Mitchell Richters
8df3966d08 - SW: Replace !TEST\(([\w\-\>.()\[\]]+),\s?(\w+)\) with !($1 & $2). 2021-12-30 09:58:44 +01:00
Christoph Oelckers
c8b5fa6556 - SW: fixed signed-ness issue with SP_TAG13 2021-12-30 09:58:14 +01:00
Christoph Oelckers
fb53f32603 - handle the remaining write accesses to ceilingz and floorz.
Everything is routed through the wrapper functions now.
2021-12-30 09:58:14 +01:00
Christoph Oelckers
c24aafd3d6 - SW: game.h cleanup
Turned almost all #defines into enums or inline functions, removed unused declarations and all leftover MONO_PRINT fragments elsewhere.
2021-12-30 09:58:13 +01:00
Christoph Oelckers
96396385e7 - more TEST() replacements.
This covers roughly half of the original use.
2021-12-30 09:58:13 +01:00
Christoph Oelckers
61564ab96a - one third of TEST(). 2021-12-30 09:58:13 +01:00
Christoph Oelckers
7727597bd7 - removed FLIP macro
was only used 3 times
2021-12-30 09:58:12 +01:00
Christoph Oelckers
08fcfb382c - the remaining RESET() calls. 2021-12-30 09:58:12 +01:00
Christoph Oelckers
e29d0f50cf - lots of RESET() flags replaced. 2021-12-30 09:58:12 +01:00
Christoph Oelckers
1ae7565a2a - SW macro cleanup. 2021-12-30 09:58:12 +01:00
Christoph Oelckers
d15c3aeff6 - got rid of the DIV2 macro. 2021-12-30 09:58:11 +01:00
Christoph Oelckers
387d65abb4 - the remaining SET()s.
These had to be done manually.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
fe292fce0d - yet more SET flag replacements
90% done.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
12ad85f6f8 - SW: turned flag #defines into enums. 2021-12-30 09:58:11 +01:00
Christoph Oelckers
92ed3fa728 - replaced more SET() macros.
This covers another 30-35%.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
dc3f2473ba - quick search & replace on ~40% of SET( macros in SW. 2021-12-30 09:58:10 +01:00
Christoph Oelckers
745794a1f1 - where did that comma go? 2021-12-30 09:58:07 +01:00
Christoph Oelckers
34f14aa4c3 - added vector variants of FindDistance2D and FindDistance3D 2021-12-30 09:58:07 +01:00
Christoph Oelckers
29da39dda0 - added two FAFcansee variants that take shorter parameter lists for clearer code. 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