Commit graph

5783 commits

Author SHA1 Message Date
Mitchell Richters
95cd74bdc0 - renamed slope functions so that the int versions get a special name. 2022-10-22 12:17:02 +02:00
Christoph Oelckers
ac2a3c443f - got rid of all deprecated updatesector variants.
This required a few changes in the map loader and render interface.
2022-10-22 12:17:02 +02:00
Mitchell Richters
2e4996e8fc - floatified nnextCanMove and deleted most deprecated updatesector variants. 2022-10-22 12:17:02 +02:00
Christoph Oelckers
c5a5e3cef5 - deleted some unused deprecated functions. 2022-10-22 12:17:01 +02:00
Christoph Oelckers
9b84a510da - Blood: floatified debrisMove 2022-10-22 12:17:01 +02:00
Christoph Oelckers
d9453138f9 - fixed FAFcansee not working in some edge cases where one actor is very small and poorly placed.
Instead of directly going to the alternative, let's just do a regular cansee anyway and only run the fallback if this fails. hitscan is not good enough to perform sight checks.
2022-10-22 12:17:01 +02:00
Mitchell Richters
ef3be6181e - Blood: Floatified GibThing(). 2022-10-22 12:17:01 +02:00
Mitchell Richters
2e202a022c - Blood: Floatified GibFX(). 2022-10-22 12:17:01 +02:00
Mitchell Richters
3d16b76c9a - Blood: Floatified ghostThinkChase(). 2022-10-22 12:17:01 +02:00
Mitchell Richters
8025682334 - Blood: Floatified gargThinkChase(). 2022-10-22 12:17:00 +02:00
Mitchell Richters
ad8fbc51de - Blood: Floatified batThinkChase(). 2022-10-22 12:17:00 +02:00
Christoph Oelckers
761412313f - did some trivial replacements for deprecated functions. 2022-10-22 12:17:00 +02:00
Christoph Oelckers
6a1ff029b7 - floatified getslopeval and all related code. 2022-10-22 12:17:00 +02:00
Christoph Oelckers
ece8663f5e - floatified calcSlope and cleaned up the get*slope interface 2022-10-22 12:17:00 +02:00
Mitchell Richters
930a78f7b2 - Use REPEAT_SCALE in a few more places. 2022-10-22 12:16:59 +02:00
Christoph Oelckers
8a40fbb020 - deleted ffloorZ. 2022-10-22 12:16:59 +02:00
Christoph Oelckers
84ce8b29f2 - handle another precision issue in MoveDude.
That mulscale16r function is broken enough to affect the values in an observable way that cannot be replicated with real floats.
2022-10-22 12:16:59 +02:00
Christoph Oelckers
c9bcfff654 - gross hack to simulate the original bad precision of Blood's ClipMove. 2022-10-22 12:16:59 +02:00
Mitchell Richters
b45c95eec5 - Blood: Floatify MoveDude() and fixed incorrect velocity check. 2022-10-22 12:16:59 +02:00
Mitchell Richters
4788e26596 - Blood: Floatify actAirDrag() and some associated XSECTOR members.
* Left `XSECTOR::windVel` as an integer type for now.
2022-10-22 12:16:59 +02:00
Mitchell Richters
7747205e03 - Blood: Some small wrapper replacements. 2022-10-22 12:16:59 +02:00
Mitchell Richters
448c52be74 - Blood: Clean up some rotatepoint() usage. 2022-10-22 12:16:59 +02:00
Mitchell Richters
9c67110722 - Blood: Floatify GetSpriteExtents(). 2022-10-22 12:16:59 +02:00
Mitchell Richters
f2be65777b - Blood: Floatify remaining gib interfaces. 2022-10-22 12:16:58 +02:00
Mitchell Richters
d92fda4312 - Blood: Floatify callbackUniMissileBurst(). 2022-10-22 12:16:58 +02:00
Mitchell Richters
3858e2cbd1 - Blood: Floatify FlareBurst(). 2022-10-22 12:16:58 +02:00
Mitchell Richters
216089130c - Blood: Floatify viewProcessSprites(). 2022-10-22 12:16:58 +02:00
Mitchell Richters
e5226c65a9 - Blood: Add DAngle overload for CFX::fxSpawnActor(). 2022-10-22 12:16:58 +02:00
Mitchell Richters
e124288b57 - Blood: Clean up actFloorBounceVector() floatification. 2022-10-22 12:16:58 +02:00
Mitchell Richters
8e851c8b00 - Blood: Initial pass at floatifying actFloorBounceVector().
* Direct translation of the original code.
2022-10-22 12:16:58 +02:00
Mitchell Richters
cdf45103ad - Blood: Floatify MoveThing(). 2022-10-22 12:16:58 +02:00
Mitchell Richters
56bc13e669 - Blood: Floatify vel math in checkCeilHit(). 2022-10-22 12:16:57 +02:00
Mitchell Richters
013158da07 - Blood: Floatify actKickObject(). 2022-10-22 12:16:57 +02:00
Mitchell Richters
6efe565f7c - Blood: Floatified vector addition in ConcussSprite(). 2022-10-22 12:16:57 +02:00
Christoph Oelckers
d7a93e140c - added format conversion helpers to DUDEINFO. 2022-10-22 12:16:57 +02:00
Christoph Oelckers
c44fd07f37 - floatified the portal displacement 2022-10-22 12:16:57 +02:00
Christoph Oelckers
fd4f04b5fd - eliminated fixed point GetSoundPos variants 2022-10-22 12:16:56 +02:00
Christoph Oelckers
375d346ae8 - pass a vector to the processSprites interface. 2022-10-22 12:16:56 +02:00
Christoph Oelckers
04e98f2f77 - avoid inflation of random functions. 2022-10-22 12:16:56 +02:00
Christoph Oelckers
85e4022f77 - foatified GibWall 2022-10-22 12:16:55 +02:00
Christoph Oelckers
49ae7c0c0f - floatified sound code in useSeqSpawnerGen 2022-10-22 12:16:55 +02:00
Christoph Oelckers
d03e890833 - fixed: The GC must mark the SprInSect actor lists 2022-10-22 12:16:55 +02:00
Christoph Oelckers
2b3b7f880f - floatified getSpritesNearWalls 2022-10-22 12:16:55 +02:00
Christoph Oelckers
60e242373c - floatified AlignSlopes 2022-10-22 12:16:55 +02:00
Christoph Oelckers
a3d1420426 - remove int wrappers from CheckProximityWall
As laid out in the comment, the function is broken and only kept for compatibility purposes. Therefore it may not be refactored in any way and should retain its incorrect and often overflowing int math. The wrappers are only a refactoring marker and have no place here.
2022-10-22 12:16:55 +02:00
Christoph Oelckers
e2954dd9d5 - floatified ceilIsTooLow 2022-10-22 12:16:55 +02:00
Christoph Oelckers
02aee7f8aa - floatification in genDudePrepare 2022-10-22 12:16:54 +02:00
Christoph Oelckers
aa909b843d - some identical set_int_bvel_z calls 2022-10-22 12:16:54 +02:00
Christoph Oelckers
7804e23ad0 - 8x set_int_ang 2022-10-22 12:16:54 +02:00
Christoph Oelckers
775ac0564c - convert one sound call 2022-10-22 12:16:54 +02:00
Christoph Oelckers
e682e1bd85 - the last one 2022-10-22 12:16:54 +02:00
Christoph Oelckers
8b260294ae - two more TranslateSector calls. 2022-10-22 12:16:54 +02:00
Christoph Oelckers
ec9272491e - second part of TranslateSector calls. 2022-10-22 12:16:54 +02:00
Christoph Oelckers
8eb4296a56 - floatified first part of TranslateSector calls. 2022-10-22 12:16:54 +02:00
Christoph Oelckers
0c43366a04 - added a TranslateSector wrapper using vectors 2022-10-22 12:16:54 +02:00
Mitchell Richters
a4be139ac7 - floatified CheckLink 2022-10-22 12:16:53 +02:00
Christoph Oelckers
05edd22f67 remove set_int_pos from TranslateSector 2022-10-22 12:16:53 +02:00
Christoph Oelckers
38558bbd39 - floatified most of CFX::fxProcess 2022-10-22 12:16:53 +02:00
Christoph Oelckers
de38eb4dab - add_int_pos in MoveDude 2022-10-22 12:16:53 +02:00
Christoph Oelckers
fb2c4efa2f - eliminated the last place where tspritetype’s add_int_z was used 2022-10-22 12:16:53 +02:00
Christoph Oelckers
25bc068032 - simple add_int_z stuff in nnexts.cpp 2022-10-22 12:16:53 +02:00
Christoph Oelckers
305bca68c0 - Z velocity in MoveMissile 2022-10-22 12:16:53 +02:00
Mitchell Richters
c76540664d - Blood: Fixed bad target angle setup in MoveMissile() where 90° counter-clockwise rotation was lost. 2022-10-22 12:16:52 +02:00
Christoph Oelckers
e1bcb4962e - cleaned up some function calls where passing a vector is doable 2022-10-22 12:16:52 +02:00
Christoph Oelckers
0fdc91904d - replaced getposfromactor 2022-10-22 12:09:54 +02:00
Christoph Oelckers
896c480eb6 - deleted player_int_pos 2022-10-22 12:09:54 +02:00
Christoph Oelckers
ca8b9e9793 - overhauled getzrangepoint to use backend utilities 2022-10-22 12:09:54 +02:00
Christoph Oelckers
b2fd1fdaa4 - second part of final bsin replacement. 2022-10-22 12:09:54 +02:00
Christoph Oelckers
05117f9f5d - first part of final bsin replacement. 2022-10-22 12:09:54 +02:00
Christoph Oelckers
5f44dcc262 - refactor animatesprites API 2022-10-22 12:09:54 +02:00
Christoph Oelckers
9a4c699f53 - floatify all 3 operateweapon functions. 2022-10-22 12:09:44 +02:00
Christoph Oelckers
eae2e638aa - floatified all getangle calls. 2022-10-22 11:33:16 +02:00
Christoph Oelckers
c511e5dca9 - eliminated int_xvel 2022-10-22 11:33:16 +02:00
Christoph Oelckers
ad2e984367 - floatified move_r 2022-10-22 11:33:16 +02:00
Christoph Oelckers
eb40f78bd1 - floatified move_d 2022-10-22 11:33:16 +02:00
Christoph Oelckers
9325886e35 - split use of tempang between real angles and other counters. 2022-10-22 11:33:16 +02:00
Christoph Oelckers
ee28c90429 - angle stuff in recon() 2022-10-22 11:33:16 +02:00
Christoph Oelckers
e5d9875ae5 - one inttoworld -> maptoworld 2022-10-22 11:33:15 +02:00
Christoph Oelckers
8d99277b87 - remaining add_int_ang calls. 2022-10-22 11:33:15 +02:00
Christoph Oelckers
62d9a80379 - floatified most simple set_int_ang and add_int_ang calls. 2022-10-22 11:33:15 +02:00
Christoph Oelckers
d994dbd537 - floatified player_orig::oa 2022-10-22 11:33:15 +02:00
Christoph Oelckers
54346d9398 - eliminate all int_ang calls, except the one setting player.oa. 2022-10-22 11:33:15 +02:00
Christoph Oelckers
61a45da964 - floatified all remaining add_int_pos calls. 2022-10-22 11:33:15 +02:00
Christoph Oelckers
6c0e2624e5 - remaining angle wrappers in actors.cpp 2022-10-22 11:33:15 +02:00
Christoph Oelckers
2ea426be38 - handle several int_angle calls. 2022-10-22 11:33:15 +02:00
Christoph Oelckers
e42036d43b - only use the floatified version of findplayer. 2022-10-22 11:33:14 +02:00
Mitchell Richters
132864ec8d - Duke: Fix issue stemming from - only use the floatified version of findplayer..
* This value must be floored.
* Fixes E2L1's space ship projectile timing.
2022-10-22 11:33:14 +02:00
Christoph Oelckers
1096344cae - only use the floatified version of findplayer. 2022-10-22 11:33:14 +02:00
Christoph Oelckers
201526b53c - only use the floatified version of findplayer. 2022-10-22 11:33:14 +02:00
Christoph Oelckers
1fdfe4635b - only use the floatified version of findplayer. 2022-10-22 11:33:14 +02:00
Christoph Oelckers
848d7fc16e - VM interface cleanup 2022-10-22 11:33:14 +02:00
Christoph Oelckers
b712315ec3 - floatified playerJump 2022-10-22 11:33:14 +02:00
Christoph Oelckers
14b5984664 - removed int_playerheight 2022-10-22 11:33:14 +02:00
Christoph Oelckers
4e9ab67c35 - RR's movement and underwater completed. 2022-10-22 11:33:13 +02:00
Christoph Oelckers
8060813ea8 - floatified large parts of processinput_r 2022-10-22 11:33:13 +02:00
Christoph Oelckers
167e0ecd0e - merge with processinput_d
- floatified processinput_d
2022-10-22 11:33:13 +02:00
Christoph Oelckers
47dc2e6b1f - hitscan call in operatetripbomb 2022-10-22 11:33:13 +02:00
Christoph Oelckers
89cb29292c - floatified operateJetpack 2022-10-22 11:33:13 +02:00
Christoph Oelckers
583a5bd0e3 - floatified playerisdead 2022-10-22 11:33:13 +02:00
Christoph Oelckers
4ded343aa5 - floatified SE16 2022-10-22 11:30:24 +02:00
Christoph Oelckers
e4898af11a - floatified remaining code of SE17. 2022-10-22 09:34:16 +02:00
Christoph Oelckers
671e75ba5f - eliminate the last int_zvel call 2022-10-22 09:34:16 +02:00
Christoph Oelckers
cd6c524b90 - converted most of the remaining CreateActor calls. 2022-10-22 09:34:16 +02:00
Christoph Oelckers
30a3bba644 - many CreateActor calls converted to true floats. 2022-10-22 09:34:15 +02:00
Christoph Oelckers
5ccefcb77b - first round of CreateActor calls. 2022-10-22 09:34:15 +02:00
Mitchell Richters
bbdb953eda - Duke: Fix issue stemming from - handle all remaining set_int_xvel and set_int_zvel..
* Fixes the Liztrooper sprite angle issues.
2022-10-22 09:34:15 +02:00
Christoph Oelckers
13dd7260f5 - handle all remaining set_int_xvel and set_int_zvel. 2022-10-22 09:34:15 +02:00
Christoph Oelckers
e73a6409bb - forcesphere stuff 2022-10-22 09:34:15 +02:00
Christoph Oelckers
42f179f675 - GreenSlime stuff 2022-10-22 09:34:15 +02:00
Christoph Oelckers
fdfd8c2a35 - change for pyoff 2022-10-22 09:34:15 +02:00
Christoph Oelckers
2e947fded3 - trivial changes 2022-10-22 09:34:14 +02:00
Christoph Oelckers
9557137b58 - floatified queball 2022-10-22 09:34:14 +02:00
Christoph Oelckers
9f219ce809 - floatified bounce() 2022-10-22 09:34:14 +02:00
Christoph Oelckers
b9d803bc24 - floatified Duke's sound frontend 2022-10-22 09:34:14 +02:00
Christoph Oelckers
6ed157ccdb - handle all remaining int_pos outside the sound code.
SPOTLITE has no handler, so its temp_data is of no use.
2022-10-22 09:34:14 +02:00
Christoph Oelckers
f52b361dfc - floatified aim() 2022-10-22 09:34:14 +02:00
Christoph Oelckers
b8efc5c563 - floatified RR noise code. 2022-10-22 09:34:14 +02:00
Christoph Oelckers
7ee620628d - floatified handle_se24 2022-10-22 09:34:13 +02:00
Christoph Oelckers
9cfd56a912 - mathutil is not needed anymore. 2022-10-22 09:34:13 +02:00
Christoph Oelckers
ebb7442370 - floatified hitawall 2022-10-22 09:34:13 +02:00
Christoph Oelckers
b176d94ede - floatified hitasprite 2022-10-22 09:34:13 +02:00
Christoph Oelckers
062e533b81 - floatified hitasprite's callers. 2022-10-22 09:34:13 +02:00
Christoph Oelckers
d4aaee6274 - floatified hits() 2022-10-22 09:34:13 +02:00
Christoph Oelckers
9591325876 - floatified return value of hits() 2022-10-22 09:34:13 +02:00
Christoph Oelckers
479616a80f - got new CVar system from GZDoom. 2022-10-22 00:12:17 +02:00
Christoph Oelckers
ff25dc7ae5 - fixed AngleChase pitch calculation.
This had one variable replacement missing.
2022-10-21 23:57:49 +02:00
Christoph Oelckers
81a688ee75 - fixed bad z-scale relations in BuildBullet 2022-10-21 23:17:07 +02:00
Christoph Oelckers
52dc48d671 - fixed spawn position calculation in shootflamethrowerflame. 2022-10-21 22:20:41 +02:00
Christoph Oelckers
45e2347006 - fixed velocity issues with shoot* functions. 2022-10-21 21:42:00 +02:00
Christoph Oelckers
99ca695333 - floatified the main shoot functions. 2022-10-21 00:00:09 +02:00
Christoph Oelckers
be0eb81c95 - deleted unused utilities 2022-10-21 00:00:09 +02:00
Christoph Oelckers
66b00cfb52 - floatified RR's shootmortar 2022-10-21 00:00:09 +02:00
Christoph Oelckers
d0a890dd15 - floatified RR's shootwhip. 2022-10-21 00:00:08 +02:00
Christoph Oelckers
836d7fea34 - fixed some warnings. 2022-10-21 00:00:08 +02:00
Christoph Oelckers
83fc7a3116 - floatified RR's shootrpg. 2022-10-21 00:00:08 +02:00
Christoph Oelckers
81865969be - floatified RR's shootstuff 2022-10-21 00:00:08 +02:00
Christoph Oelckers
b105897d9f - 'effector->GetOwner()' was used a lot in this block... 2022-10-21 00:00:08 +02:00
Christoph Oelckers
4dfba60d99 - eliminated all ldist calls outside the weapon code. 2022-10-21 00:00:08 +02:00
Christoph Oelckers
ef7a6f8c8d - floatified remaining parts of shootflamethrowerflame. 2022-10-21 00:00:08 +02:00
Christoph Oelckers
9d8685096d - floatified shootshrinker 2022-10-21 00:00:07 +02:00
Christoph Oelckers
0b58f2ea3c - floatified shootmortar 2022-10-21 00:00:07 +02:00
Christoph Oelckers
840d1f4793 - floatified shootgrowspark 2022-10-21 00:00:07 +02:00
Christoph Oelckers
cb7c5dc3ac - floatified tracers 2022-10-21 00:00:07 +02:00
Mitchell Richters
623e0ff30e - floatified RR's shootweapon.
Mostly copy/paste from Duke.

* Edited to fix missed `zvel` change within `if (atwith == SHOTSPARK1)`.
2022-10-21 00:00:07 +02:00
Christoph Oelckers
b706e6276a - floatified RR's shootmelee.
Mostly copy/paste from Duke.
2022-10-21 00:00:07 +02:00
Christoph Oelckers
e224abb949 - silenced warnings. 2022-10-21 00:00:07 +02:00
Christoph Oelckers
977131eb8c - eliminated all set_int_z calls in Duke. 2022-10-21 00:00:07 +02:00
Christoph Oelckers
933e42eca6 - moved the remaining shoot handlers out of shoot_d. 2022-10-21 00:00:06 +02:00
Christoph Oelckers
7becce8cb6 - floatified shootlaser 2022-10-21 00:00:06 +02:00
Christoph Oelckers
9598468c9a - floatified Duke's shootrpg 2022-10-21 00:00:06 +02:00
Christoph Oelckers
b5a869b053 - floatified Duke's shootstuff. 2022-10-21 00:00:06 +02:00
Christoph Oelckers
1702491619 - floatified Duke's shootweapon. 2022-10-21 00:00:06 +02:00
Christoph Oelckers
aad2c30af7 - floatified shootknee 2022-10-21 00:00:06 +02:00
Christoph Oelckers
436b8bc50a - floatified shootfireball 2022-10-21 00:00:06 +02:00
Christoph Oelckers
a226a847bd - fixed warnings 2022-10-21 00:00:06 +02:00
Christoph Oelckers
9deb1dfa69 - floatified shootbloodsplat. 2022-10-21 00:00:05 +02:00
Christoph Oelckers
4f5dce81f6 - floatifx position in checkhitswitch_d. 2022-10-21 00:00:05 +02:00
Mitchell Richters
2081e270cd - Duke: Fix bad setup in move_d() that stopped enforcer working properly in E3L1.
* Merge with or above `- eliminated all of add_int_zvel.`.
2022-10-21 00:00:05 +02:00
Christoph Oelckers
1814274124 - eliminated all of add_int_zvel. 2022-10-21 00:00:05 +02:00
Christoph Oelckers
65b6b5ba71 - migrated all simple EGS calls to CreateActor
The remaining ones require more work on the weapon code first
2022-10-21 00:00:05 +02:00
Christoph Oelckers
a48ebc51a6 - This makes no sense either way… 2022-10-21 00:00:05 +02:00
Christoph Oelckers
068099cb3e - floatify glass spawners 2022-10-21 00:00:05 +02:00
Christoph Oelckers
5140baf7c5 - floatified a bunch in move_r 2022-10-21 00:00:05 +02:00
Christoph Oelckers
3e511f33b8 - movetripbomb and movecrack 2022-10-21 00:00:04 +02:00
Christoph Oelckers
facedb6325 - floatified movesprite_ex 2022-10-21 00:00:04 +02:00
Christoph Oelckers
829d06790f - handle the remaining movesprite_ex calls 2022-10-21 00:00:04 +02:00
Christoph Oelckers
4b184c6d43 - movesprite_ex refactoring, part 2 2022-10-21 00:00:04 +02:00
Christoph Oelckers
5dedce047a - movesprite_ex refactoring, part 1 2022-10-21 00:00:04 +02:00
Christoph Oelckers
0432930e5b - converted all dist() calls to vector math and deleted the utilities 2022-10-21 00:00:04 +02:00
Christoph Oelckers
2bcc552ce0 - replace FireProj struct with a second temp_pos vector
We’re going to need this anyway for some SE’s.
2022-10-21 00:00:04 +02:00
Christoph Oelckers
dfd098d719 - simple replacements in sector and spawn code 2022-10-21 00:00:04 +02:00
Christoph Oelckers
1c05d80e53 - simple replacements in player code 2022-10-21 00:00:03 +02:00
Christoph Oelckers
f6d06b1326 - simple replacements in actor code 2022-10-21 00:00:03 +02:00
Christoph Oelckers
ada4af8fb7 -consolidated sprite rotation formula in 2 inline functions. 2022-10-21 00:00:03 +02:00
Christoph Oelckers
c066f1754c - use randomAngle 2022-10-21 00:00:03 +02:00
Christoph Oelckers
b164426dd2 - partial work on processinput_d 2022-10-21 00:00:03 +02:00
Christoph Oelckers
bda3a38ed9 - ported the remaining S_PlaySound3D calls 2022-10-21 00:00:03 +02:00
Christoph Oelckers
4956062b22 - added S_PlaySound3D variant receiving a float vector 2022-10-21 00:00:03 +02:00
Christoph Oelckers
e31f10be8a - floatify position in all remaining updatesector calls for the player 2022-10-21 00:00:03 +02:00
Christoph Oelckers
3c9a94dba8 - consolidated Duke’s ‚away from wall‘ check in the backend
This was also very useful in SW to avoid spawning ‚floating‘ footprints due to lack of an equivalent check in the original.
2022-10-21 00:00:02 +02:00
Christoph Oelckers
1a597c4e0b - fixed and floatified chickenarrow. 2022-10-21 00:00:02 +02:00
Christoph Oelckers
021f7062d1 - ported all simple EGS calls to CreateActor 2022-10-21 00:00:02 +02:00
Christoph Oelckers
dafc1ff2d2 - spawn coordinate in guts 2022-10-21 00:00:02 +02:00
Christoph Oelckers
6bd97e312d - cleanup of the wall hit checks in hitradius
Yes, the z-check was indeed bad.
2022-10-21 00:00:02 +02:00
Christoph Oelckers
3352783be2 - added a Sum function to TVector familiy
Duke uses this kind of distance check quite a lot so it makes sense to add it to the vectors.
2022-10-21 00:00:02 +02:00
Christoph Oelckers
1d7f2c81b6 - fixed position backup for trip bombs. 2022-10-21 00:00:02 +02:00
Christoph Oelckers
38a8e15ff9 - floatified most of movetripbomb and ovel 2022-10-21 00:00:02 +02:00
Christoph Oelckers
1c50801c64 - floatified furthestangle 2022-10-21 00:00:01 +02:00
Christoph Oelckers
3c1970e9e0 - floatified alterang and changed return type of furthestangle 2022-10-21 00:00:01 +02:00
Christoph Oelckers
45f28f666c - floatified dodge. 2022-10-20 23:59:28 +02:00
Christoph Oelckers
c7eabe5b55 - gameexec.cpp code cleanup 2022-10-20 23:59:27 +02:00
Christoph Oelckers
3711473194 - gameexec cleanup 2022-10-20 23:59:27 +02:00
Christoph Oelckers
3cefda2983 - simplify some angle stuff 2022-10-20 23:59:15 +02:00
Christoph Oelckers
43e1e3f50f - floatified SE 32. 2022-10-20 23:08:55 +02:00
Christoph Oelckers
c0e7e6a543 - floatified leftover pieces of some debris-type actors. 2022-10-20 23:08:55 +02:00
Christoph Oelckers
2de1aea4a6 - floatified exit position. 2022-10-20 23:08:55 +02:00
Christoph Oelckers
1a64d18349 - floatified RR hitscan teleporter stuff and other minor things. 2022-10-20 23:08:55 +02:00
Christoph Oelckers
4322a30efb - unlimited the number of active animations, also fixed a few bugs. 2022-10-20 23:08:54 +02:00
Christoph Oelckers
e3ea4cd55c - floatified animation code. 2022-10-20 23:08:22 +02:00
Christoph Oelckers
0c7274752c - falladjustz 2022-10-20 22:25:10 +02:00
Christoph Oelckers
6482fefeb3 - 3x add_int_z. 2022-10-20 22:25:10 +02:00
Christoph Oelckers
fe0a10ed29 - handle neartag calls in checksectors. 2022-10-20 22:25:10 +02:00
Christoph Oelckers
13fc658c1f -floatified findplayer and findotherplayer. 2022-10-20 22:25:09 +02:00
Christoph Oelckers
68bc812681 - floatify hande_se35
This looks broken because the destination height is never set anywhere.
2022-10-20 22:25:09 +02:00
Christoph Oelckers
4196195b89 - floatified handle_se25 2022-10-20 22:25:09 +02:00
Mitchell Richters
8bfcb8c939 - Floatify InputPacket::fvel and InputPacket::svel.
* Since all velocities are floated, we can now take each game's keymove scaling into its ticker and use a consistent keymove size, making non-mouselook and controller input truly identical across the games without having to try and fudge any values.
2022-10-20 00:48:09 +02:00
Mitchell Richters
a178ef1ff6 - Duke: Floatify player_struct::fric. 2022-10-20 00:48:09 +02:00
Christoph Oelckers
6310b06118 - got rid of set_int_z in Blood. 2022-10-20 00:48:09 +02:00
Mitchell Richters
def2b9d483 - Flip svel around in the input code so we can use proper anti-clockwise vector math. 2022-10-20 00:48:09 +02:00
Mitchell Richters
1eaab2f531 - Blood: Floatify POSTURE::xOffset and POSTURE::zOffset.
* POSTURE struct is now completely handled.
2022-10-20 00:48:09 +02:00
Mitchell Richters
6fa3e3fc23 - Blood: Swap around POSTURE::xOffset and POSTURE::zOffset given how they're used. 2022-10-20 00:48:09 +02:00
Mitchell Richters
3b5f4b9222 - Blood: Floatify POSTURE accel values. 2022-10-20 00:48:08 +02:00
Mitchell Richters
bbb0cf73f2 - Blood: Floatify POSTURE::normalJumpZ and POSTURE::pwupJumpZ. 2022-10-20 00:48:08 +02:00
Christoph Oelckers
9426f42f41 - replaced old refactoring wrapper. 2022-10-20 00:48:08 +02:00
Christoph Oelckers
088699f5c8 - floatified handle_se20. 2022-10-20 00:48:08 +02:00
Christoph Oelckers
471f64cf72 - fixes for player velocity. 2022-10-20 00:48:08 +02:00
Christoph Oelckers
a847b23e7c - made player.vel a real float vector with proper value range. 2022-10-20 00:48:07 +02:00
Christoph Oelckers
417dc7c330 - floatified gs.gravity and all relations to player.vel. 2022-10-20 00:47:32 +02:00
Christoph Oelckers
6f8d0e7870 - handle all remaining vel uses not related to gravity and clipmove 2022-10-20 00:47:32 +02:00
Christoph Oelckers
3e05acfcc9 - handle ca. half of the remaining use of vel. 2022-10-20 00:47:31 +02:00
Christoph Oelckers
bca4819841 - handle some simple vector additions with velocity. 2022-10-20 00:47:31 +02:00
Christoph Oelckers
c821683bc5 - copy Duke handling of movement code to RR. 2022-10-20 00:47:31 +02:00
Christoph Oelckers
cebecabe66 - search& replace of zero assignments and comparisons. 2022-10-20 00:47:31 +02:00
Christoph Oelckers
2266ae1cd6 - converted vel use in player_d.cpp's main movement functions
Still using conversion factors until all code has been processed.
2022-10-20 00:47:31 +02:00
Christoph Oelckers
b46b087e0c - first round of vel refactoring.
VEL_FACTOR is used as a marker that later can be quickly removed once the data type gets changed over.
2022-10-20 00:47:19 +02:00
Christoph Oelckers
50a9ca49f3 - floatified player_struct::hitang 2022-10-20 00:33:31 +02:00
Christoph Oelckers
a5652655db - floatified gs.playerfriction 2022-10-20 00:20:41 +02:00
Christoph Oelckers
477120923f - made player.vel and gs.playerfriction floating point.
No change in value range yet, but having them as floats now allows easier refactoring.
2022-10-20 00:20:40 +02:00
Christoph Oelckers
8171927c2a - renamed player_struct::vel 2022-10-20 00:19:56 +02:00
Christoph Oelckers
03a0eb7284 - floatified and consolidated handle_se29. 2022-10-20 00:19:56 +02:00
Christoph Oelckers
9a07dc5b7b - floatified handle_se21 and most of movetongue 2022-10-20 00:19:33 +02:00
Christoph Oelckers
a9c7a5e62f - floatified handle_se21 2022-10-19 18:26:16 +02:00
Christoph Oelckers
b0b5dbc55b - eliminated add_int_ceilingz 2022-10-19 18:26:16 +02:00
Christoph Oelckers
81d4ca71d7 - floatified movetouchplate 2022-10-19 18:26:16 +02:00
Christoph Oelckers
8e4a3f1946 - floatified position in RANDOMSCRAP 2022-10-19 18:26:16 +02:00
Christoph Oelckers
23c529589e - eliminated add_int_xvel 2022-10-19 18:26:16 +02:00
Christoph Oelckers
ccbe472444 - added NULL check where it can crash when noclipping. 2022-10-19 18:25:43 +02:00
Christoph Oelckers
a6bf98399c - fixed inconsistency between angle and intangle use.
Angles abused as flag words should always use intangle.
2022-10-19 18:02:05 +02:00
Christoph Oelckers
1553ec812d - magic carpet fixes for SW's $woods.map
* the track point code needs to retain the original distance function because in this case the difference can be critical as it interprets map data.
* two cases of bad vertical distance calculation due to unclear original code.
2022-10-19 17:49:19 +02:00
Christoph Oelckers
6e11a4317e - SW: fixed savegame pic generation corrupting the actor list.
This case missed the call to PostDraw which is responsible for cleaning up some temporary data.
2022-10-19 00:11:44 +02:00
Christoph Oelckers
0cef35c345 - SW: when an actor is killed, all attached ambient sounds must be deleted.
Not only did the sound not stop but what happened here was very much undefined behavior as the ambient sound retained its pointer to now undefined memory.
2022-10-19 00:05:35 +02:00
Christoph Oelckers
11735c2963 - floatified handle_se13. 2022-10-18 20:02:30 +02:00
Christoph Oelckers
998d71875f - floatified handle_se11. 2022-10-18 20:02:30 +02:00
Christoph Oelckers
b62c081d37 - renamed variables in handle_se08 2022-10-18 20:02:30 +02:00
Christoph Oelckers
845287a7ba - floatified handle_se05 2022-10-18 20:02:30 +02:00
Christoph Oelckers
49125ffed5 - floatified handle_se02 2022-10-18 20:02:29 +02:00
Christoph Oelckers
3898e2fa4c - floatified handle_se06 (both variants) 2022-10-18 20:02:29 +02:00
Christoph Oelckers
228db5839a - floatified handle_se30. 2022-10-18 20:02:28 +02:00
Christoph Oelckers
e7ba113402 - use high precision storage for all of SE00's work data. 2022-10-18 20:02:28 +02:00
Christoph Oelckers
2be133aaee - poolball stuff in Duke 2022-10-18 20:02:01 +02:00
Christoph Oelckers
fe7dfa1c53 - floatify angle stuff for bowling, henstand etc. in RR. 2022-10-18 20:02:01 +02:00
Christoph Oelckers
c30493c344 - floatified handle_se14 2022-10-18 20:02:01 +02:00
Christoph Oelckers
bd3f96e779 - floatified handle_se00 2022-10-18 20:02:01 +02:00
Christoph Oelckers
b5b159f45b - unlimited and floatified the movesector position array. 2022-10-18 20:02:00 +02:00
Christoph Oelckers
4f9718e8a8 - added velocity checks when attempting to dive or surface.
This could misbehave at low velocities that could be misinterpreted as a boundary crossing due to the missing check for the movement direction.
2022-10-18 19:59:07 +02:00
Mitchell Richters
0a4ee4ac07 - Blood: Don't use degrees in the QAV drawer until hud_drawsprite() is uplifted. 2022-10-18 19:52:02 +02:00
Mitchell Richters
f56cb7de48 - Blood: Floatify QAV's x/y coordinates. 2022-10-18 19:52:02 +02:00
Mitchell Richters
b127c37939 - Blood: Floatify all the bobbing/swaying code. 2022-10-18 19:52:02 +02:00
Mitchell Richters
33def4bd6e - Duke: Clean up some long VecToAngle() calls. 2022-10-18 19:52:02 +02:00
Christoph Oelckers
c84bf46611 - eliminated add_int_ceilingz in handle_se32. 2022-10-18 19:51:53 +02:00
Christoph Oelckers
b467e6c6cf - handled a few easy to change distance calculations and nearby assignments. 2022-10-18 19:36:25 +02:00
Christoph Oelckers
4cb214f3ab - int_vel stuff with constants. 2022-10-18 19:36:17 +02:00
Christoph Oelckers
901728d88f - int_vel stuff with constants. 2022-10-18 19:31:11 +02:00
Christoph Oelckers
d34a423272 - int_vel stuff with constants. 2022-10-18 19:31:11 +02:00
Christoph Oelckers
eaf8a8ccca - some minor random changes. 2022-10-18 19:31:11 +02:00
Christoph Oelckers
f7fdbcaa59 - handle the only two occurences of add_int_ang in Blood. 2022-10-18 19:01:45 +02:00
Christoph Oelckers
72dc3d5da9 - use mapangle in more places, mainly constants and random values using special formula 2022-10-18 19:01:45 +02:00
Christoph Oelckers
0e1a566d62 - added mapangle function for converting angles from map data.
This is just a wrapper around DAngle::fromBuild, its purpose is to clearly highlight data that cannot be refactored and needs to be converted
2022-10-18 19:01:45 +02:00
Christoph Oelckers
fdeb060ccd - got rid of lPlayerVel 2022-10-18 19:01:45 +02:00
Christoph Oelckers
f16f9b302f - floatified player input velocity. 2022-10-18 19:01:45 +02:00
Christoph Oelckers
b14ab1bde3 - use a lower value range for the xy factor in movespritevel. 2022-10-18 19:01:45 +02:00
Christoph Oelckers
59950062b7 - removed useless utility function 2022-10-18 19:01:44 +02:00
Christoph Oelckers
42389133d3 - function separators.
Also removing some dead code.
2022-10-18 19:01:44 +02:00
Christoph Oelckers
e2a6353182 - eliminated AngleDiff. 2022-10-18 19:01:44 +02:00
Christoph Oelckers
e3e11300ac - floatify nPlayerD 2022-10-18 19:01:44 +02:00
Christoph Oelckers
3709b61fd1 - floatified PlotCourseToSprite's return 2022-10-18 18:55:22 +02:00
Christoph Oelckers
7b8b4a48f7 - floatified all of movesprite. 2022-10-18 18:34:30 +02:00
Christoph Oelckers
6854e8030d - floatify half the movesprite calls. 2022-10-18 18:34:30 +02:00
Christoph Oelckers
ab3184eed8 - set up proper scaling of the grenade's movement vector. 2022-10-18 18:34:29 +02:00
Christoph Oelckers
1dff710a23 - floatified ThrowGrenade 2022-10-18 18:34:29 +02:00
Christoph Oelckers
a043c7fa4d floatified body of movesprite and prepared the calls for adjustment. 2022-10-18 18:34:29 +02:00
Christoph Oelckers
98eb4a169d - renamed movesprite functions as preparation 2022-10-18 18:34:29 +02:00
Christoph Oelckers
c41af213b4 - another set of simple changes. 2022-10-18 18:34:29 +02:00
Christoph Oelckers
efb538ba69 - floatify AISnake::Tick 2022-10-18 18:34:29 +02:00
Christoph Oelckers
f393b7e917 - floatified GetAngleToSprite 2022-10-18 18:34:29 +02:00
Christoph Oelckers
b5c315978c - rename GetActorHeightF
(no edits here, just one replace.)
2022-10-18 18:34:28 +02:00
Christoph Oelckers
c65c317665 - eliminate GetActorHeight 2022-10-18 18:34:28 +02:00
Christoph Oelckers
55d01509fa - handle most of move.cpp. 2022-10-18 18:34:28 +02:00
Christoph Oelckers
dd152f6406 - floatified BuildLavaLimb 2022-10-18 18:34:28 +02:00
Christoph Oelckers
58c2af168f - floatified most of gun.cpp. 2022-10-18 18:34:28 +02:00
Christoph Oelckers
dc6745b935 - Set's movesprite. 2022-10-18 18:34:28 +02:00
Christoph Oelckers
31fcdd9e41 - sprite rotation angle math 2022-10-18 18:34:28 +02:00
Christoph Oelckers
18ade5e9bd - extremely trivial angle stuff 2022-10-18 18:34:27 +02:00
Christoph Oelckers
c7d7ecb692 - floatified grenade vector. 2022-10-18 18:34:27 +02:00
Christoph Oelckers
d381b51fac - trivial int_ang removals. 2022-10-18 18:34:27 +02:00
Christoph Oelckers
489f45ef99 - floatified AddFlow 2022-10-18 18:34:27 +02:00
Christoph Oelckers
029e0f6fa4 - floatified most of the grenade code and GetWallNormal 2022-10-18 18:34:27 +02:00
Christoph Oelckers
54a55b3d09 - floatified bobbing and a few other minor checks. 2022-10-18 18:34:27 +02:00
Christoph Oelckers
0fbddd8a2b - floatified standHeight 2022-10-18 18:34:27 +02:00
Christoph Oelckers
8aec43a915 - bugfix for floor movement builder 2022-10-18 18:34:26 +02:00
Christoph Oelckers
1eb1eabb75 - floatified SnapSectors 2022-10-18 18:34:26 +02:00
Christoph Oelckers
a7965b1d98 - floatified LongSeek and all calling code. 2022-10-18 18:34:26 +02:00
Christoph Oelckers
01624bf340 - renamed two variables 2022-10-18 18:34:26 +02:00
Christoph Oelckers
51733df1d7 - int_pos is all gone from Exhumed. 2022-10-18 18:34:26 +02:00
Christoph Oelckers
1a7671a2b7 - snake cleanup 2022-10-18 18:34:26 +02:00
Christoph Oelckers
bbabe298ba - floatified analyzeSprites 2022-10-18 18:34:26 +02:00
Christoph Oelckers
1e87ff8699 - floatified QueenAngleChase.
This was mostly copy/paste from AngleChase.
2022-10-18 18:34:26 +02:00
Christoph Oelckers
4e3c2d98d4 - angular stuff 2022-10-18 18:34:25 +02:00
Christoph Oelckers
e7f581a4fd - floatified AngleChase. 2022-10-18 18:34:25 +02:00
Christoph Oelckers
f8c789fdcb - floatified DExhumedActor::angle2 2022-10-18 18:34:25 +02:00
Christoph Oelckers
b777517789 - floatified MoveSector's API. 2022-10-18 18:34:25 +02:00
Christoph Oelckers
03c183d827 - clean up DoMovingSects. 2022-10-18 18:34:25 +02:00
Christoph Oelckers
52b2d1cd7d - split out CheckMovingBlocks from AIPlayer::Tick. 2022-10-18 18:34:25 +02:00
Christoph Oelckers
9d8f06612f - floatified MoveSector 2022-10-18 18:34:25 +02:00
Christoph Oelckers
c4a8cda95f - decrypted some leftover raw disassembly code in MoveSector 2022-10-18 18:34:24 +02:00
Christoph Oelckers
559fe495fb - floatified movesprite and the thrust vector. 2022-10-18 18:34:24 +02:00
Christoph Oelckers
5365066c05 - renamed variable to match its main purpose. 2022-10-18 18:34:24 +02:00
Christoph Oelckers
8137718133 - floatified movespritez 2022-10-18 18:34:24 +02:00
Christoph Oelckers
a62dcac514 - floatified BelowNear and deleted unused GetActorExtents. 2022-10-18 18:34:24 +02:00
Christoph Oelckers
48b34ad84d - floatified BuildBullet 2022-10-18 18:34:24 +02:00
Christoph Oelckers
f4df9a25da - pass index and angle to movesector as arguments.
This allows refactoring the multiple SEs using this function individually.
2022-10-18 18:30:38 +02:00
Mitchell Richters
8f0e020e21 - Blood: Floatify POSTURE::eyeAboveZ and POSTURE::weaponAboveZ. 2022-10-18 18:30:38 +02:00
Mitchell Richters
954b394baa - Blood: Floatify PLAYER::zWeaponVel. 2022-10-18 18:30:38 +02:00
Mitchell Richters
0019b5ee02 - Blood: Floatify PLAYER::zWeapon. 2022-10-18 18:30:38 +02:00
Mitchell Richters
2d98c532eb - Blood: Floatify PLAYER::zViewVel. 2022-10-18 18:30:38 +02:00
Mitchell Richters
f35fffdf3d - Blood: Floatify PLAYER::zView. 2022-10-18 18:30:37 +02:00
Mitchell Richters
9eec69d810 - Blood: Floatify position drawing code and clean up now-unused wrappers.
* Still work to be done on bob/sway/zView variables.
2022-10-18 18:29:09 +02:00
Mitchell Richters
dd23b60810 - Blood: Clean up as much Q16.16 smoothratio usage as possible. 2022-10-18 18:29:09 +02:00
Christoph Oelckers
96a5954c80 - fixed: gView references gViewIndex, not myconnectindex. 2022-10-18 18:29:09 +02:00
Mitchell Richters
59bee2f9f6 - Blood: Eliminate gView extern'd pointer. 2022-10-18 18:29:09 +02:00
Christoph Oelckers
560bf3e8df - add missing null pointer checks 2022-10-18 18:29:08 +02:00
Mitchell Richters
6356aeafc2 - Blood: Eliminate gMe extern'd pointer. 2022-10-18 18:29:08 +02:00
Mitchell Richters
3c39174a22 - Blood: Eliminate VIEW structure entirely. 2022-10-18 18:29:08 +02:00
Mitchell Richters
b4af1a4600 - Blood: Eliminate VIEW::look_ang and VIEW::rotscrnang. 2022-10-18 18:29:08 +02:00
Mitchell Richters
d7b91df06e - Blood: Eliminate VIEW bobbing/swaying members. 2022-10-18 18:29:08 +02:00
Mitchell Richters
9a41145a8a - Blood: Eliminate VIEW::slope. 2022-10-18 18:29:08 +02:00
Mitchell Richters
326da6d495 - Blood: Eliminate VIEW::horiz and VIEW::horizoff. 2022-10-18 18:29:07 +02:00
Mitchell Richters
5b962e69ab - Blood: Eliminate VIEW::weaponZ. 2022-10-18 18:29:07 +02:00
Mitchell Richters
fc71b39d22 - Blood: Eliminate VIEW::viewz. 2022-10-18 18:29:07 +02:00
Mitchell Richters
85412a39e6 - Blood: Eliminate VIEW::pos. 2022-10-18 18:29:07 +02:00
Mitchell Richters
80121f6021 - Blood: Eliminate VIEW::angle. 2022-10-18 18:29:07 +02:00
Mitchell Richters
72e71cdc42 - Exhumed: Use minAngle in a place where -1 was previously.
* Setup I did in "- Exhumed: Change `inita` into a DAngle." was less than what we consider the epsilon value for angles.
2022-10-18 18:29:07 +02:00
Mitchell Richters
06d0d9b5fd - Blood: Floatify player inertia correction code. 2022-10-18 18:29:06 +02:00
Christoph Oelckers
32d49cf199 - Duke: fixed bad crusher speed in SE 25. 2022-10-18 07:10:43 +02:00
Christoph Oelckers
db810250c3 - full floatification of handle_se31. 2022-10-17 17:26:00 +02:00
Christoph Oelckers
eb0fbf4b34 - BuildElev 2022-10-17 17:26:00 +02:00
Christoph Oelckers
9850c791e3 - lots of set_int_vel. 2022-10-17 17:25:59 +02:00
Christoph Oelckers
cea437df98 - lots of set_int_vel. 2022-10-17 17:25:59 +02:00
Christoph Oelckers
c811a4a6dc - all of add_int_ang 2022-10-17 17:25:59 +02:00
Christoph Oelckers
fdc6a49a97 - another movesprite wrapper to get rid of int_yvel and int_xvel 2022-10-17 17:25:59 +02:00