Commit graph

2603 commits

Author SHA1 Message Date
Christoph Oelckers
dd3346cbc5 - mostly comparisons and code surrounding them 2022-10-30 16:51:26 +01:00
Christoph Oelckers
fb164450a7 - use MultScale 2022-10-30 16:51:25 +01:00
Christoph Oelckers
e749a0e9a4 - a bunch of repeats in actor_d.cpp 2022-10-30 16:51:25 +01:00
Christoph Oelckers
4c151ef15a - the remaining repeats in Duke’s actor.cpp 2022-10-30 16:51:25 +01:00
Christoph Oelckers
5700d25120 - minor cleanup on scaling code 2022-10-30 16:51:25 +01:00
Mitchell Richters
befa5a933c - Duke: Fix questionable setup in previous commit to interpolate SE_20_STRETCH_BRIDGE. 2022-10-30 16:51:25 +01:00
Mitchell Richters
05a05c6406 - Duke: Fix interpolation for SE_20_STRETCH_BRIDGE, such as curtains in E1L1/2/3.
* I'm not sure if there's a better way to handle this, but I had to do the nested `twoSided()` checks to ensure all walls of E1L3's curtains in the execution chair viewing room interpolated as expected.
2022-10-30 16:51:24 +01:00
Mitchell Richters
b3943a0c04 - Duke: Maintain x/y/z velocity when falling through a portal, such as E1L1's air duct. 2022-10-30 16:51:24 +01:00
Mitchell Richters
7e7c1b1179 - Duke: Fix hitching going up/down on SE17 elevators, and Z interpolation while jumping, etc. 2022-10-30 16:51:24 +01:00
Mitchell Richters
80f4124b17 - Duke: Fix integer division in shootrpg().
* Stems from initial floatification in `- floatified Duke's shootrpg`.
2022-10-30 16:51:23 +01:00
Christoph Oelckers
520d838a8c - use Scale wrappers in global code and parts of Duke. 2022-10-30 16:51:23 +01:00
Christoph Oelckers
1d48b0776e - cleanup in Blood plus repeats in aiunicult.cpp
* removed the picWidth/Height functions because their one use can be easily inlined
* deleted the unused initvals in GENDUDEEXTRA
2022-10-30 16:51:23 +01:00
Christoph Oelckers
8a8ef22e53 - mostly '>' comparisons with scale values. 2022-10-30 16:51:22 +01:00
Christoph Oelckers
a11a366697 - some automatic replacements. 2022-10-30 16:51:21 +01:00
Christoph Oelckers
730c0ef66d - lots of repeats in RR's spawn code. 2022-10-30 16:51:21 +01:00
Christoph Oelckers
91c318b708 - renamed most non-sprite xrepeat and yrepeat as refactpring aid.
These will be renamed back later but now they create too much search noise.
A few local variables have been permanently renamed to scale*.
2022-10-30 16:51:20 +01:00
Christoph Oelckers
cf5d787f40 - manual repeats in Duke. 2022-10-30 16:51:20 +01:00
Christoph Oelckers
2589e7030c - more repeats replaced by SetScale. 2022-10-30 16:51:19 +01:00
Mitchell Richters
b004de9fb0 - Remove leftover x/y repeats from - several manual replacements with SetScale.. 2022-10-30 16:51:19 +01:00
Christoph Oelckers
71d61b26df - 34 more uses of SetScale. 2022-10-30 16:51:19 +01:00
Christoph Oelckers
e60fafec52 - got rid of most REPEAT_SCALE factors. 2022-10-30 16:51:19 +01:00
Christoph Oelckers
8d1626de02 - yet more SetScale uses. 2022-10-30 16:51:18 +01:00
Christoph Oelckers
e6a97157d7 - several manual replacements with SetScale. 2022-10-30 16:51:18 +01:00
Christoph Oelckers
d8fac32459 - more simple SetScale replacements. 2022-10-30 16:51:17 +01:00
Christoph Oelckers
86d6ba43d4 - more automatic SetScale replacement, plus all of SetScale(0.5, 0.5); 2022-10-30 16:51:17 +01:00
Christoph Oelckers
c7c3b2a20c - added a SetScale method to spritetype and used it for all places setting x/yrepeat to 0. 2022-10-30 16:51:17 +01:00
Christoph Oelckers
9f19a1315b - replaced most native_clipdist() calls
Only those in nnext using internal int storage remain.
2022-10-30 16:51:16 +01:00
Christoph Oelckers
a6e35edc6c - replaced all set_native_clipdist
Note that truncation has to be preserved here to ensure the size stays the same as before so the MulScales were not resolved into their factors.
2022-10-30 16:51:16 +01:00
Christoph Oelckers
d22c473c31 - manual set_const_clipdist replacements 2022-10-30 16:51:15 +01:00
Christoph Oelckers
03d6826fce - first batch of set_const_clipdist replacements 2022-10-30 16:51:14 +01:00
Christoph Oelckers
4af4983d3e - floatified clipdist and replaced fClipdist wrapper.
This uses a new variable because a few things use clipdist as a flag byte
2022-10-30 16:51:14 +01:00
Mitchell Richters
94941adce8 - Duke: Fix sign on 4x tangent offsets. 2022-10-30 16:51:12 +01:00
Mitchell Richters
cea2b6b428 - Rename PlayerHorizon::__horiz back to horiz. 2022-10-30 16:51:12 +01:00
Mitchell Richters
ff1d51b4fe - Fix 4x horiz negation issues. 2022-10-30 16:51:11 +01:00
Mitchell Richters
0600bf5860 - Negate everything to do with PlayerHorizon::__horiz where appropriate, including some loose horizoff members. 2022-10-30 16:51:11 +01:00
Mitchell Richters
619b8005ac - Rename PlayerHorizon::horiz in prep for negating this angle throughout code. 2022-10-30 16:51:11 +01:00
Christoph Oelckers
94b91f6ec3 - build.h cleanup
* moved krand and krandf into the games/duke folder because no other game uses them
* moved CVARS to gamefuncs.h.
2022-10-30 16:51:09 +01:00
Mitchell Richters
29eb729cd3 - Fix multiple bad calls to pushmove(). 2022-10-30 16:51:09 +01:00
Christoph Oelckers
7d3babd678 - ported all pushmove calls to the float version. 2022-10-30 16:51:08 +01:00
Christoph Oelckers
600c2a0243 - map all clipmove calls to the version with a full float interface. 2022-10-30 16:50:48 +01:00
Christoph Oelckers
a4dd5bb4ce - rewrote the model storage code.
Using proper C++ containers now.
2022-10-27 16:55:54 +02:00
Mitchell Richters
8bc34f3dac - Handle all remaining VecToAngle() calls. 2022-10-27 16:55:53 +02:00
Mitchell Richters
e7dff22095 - Duke: Fix some badly negated angle setups. 2022-10-27 16:55:53 +02:00
Mitchell Richters
1e7cce28af - VecToAngle() with delta() inside to .Angle() replacements. 2022-10-27 16:55:53 +02:00
Mitchell Richters
9b98388215 - VecToAngle() with XY() inside to .Angle() replacements. 2022-10-27 16:55:53 +02:00
Mitchell Richters
c00c8d196e - Simple VecToAngle() > .Angle() replacements. 2022-10-27 16:55:52 +02:00
Mitchell Richters
13d643deb5 - Duke: Move Duke-exclusive code from PlayerHorizon struct into displayweapon_d() and clamp tangent to handle high pitches.
* Clamped range is slightly higher than original (200 vs. 256), however when tested with idle knuckle cracking, etc, hands were drawn not above the screen unlike unclamped tangent.
2022-10-25 07:07:15 +02:00
Mitchell Richters
fc8c0b80aa - Clean up chase cam backwards scaling since we're now using floats of the same scale. 2022-10-25 07:07:14 +02:00
Christoph Oelckers
22ccf33569 - floatified walldist parameter of getzrange 2022-10-25 07:07:14 +02:00
Mitchell Richters
bb6e12a2b1 - Eliminate remaining calls to TAngle<T>::fromBuildf(). 2022-10-25 07:07:03 +02:00
Mitchell Richters
1fb85b0a8d - Use deltaangle() in a few places with our DAngle horizon. 2022-10-25 07:06:55 +02:00
Mitchell Richters
8d3f3c6025 - Cut over to DAngle from fixedhoriz and remove the latter. 2022-10-25 07:06:55 +02:00
Mitchell Richters
41bbbd9df5 - Remove all remaining uses of fixedhoriz::asbuild(). 2022-10-25 07:06:55 +02:00
Mitchell Richters
92798b5a07 - Remove most buildhoriz() calls. 2022-10-25 07:06:55 +02:00
Mitchell Richters
293a71ed55 - Remove horizon from gi->WarpToCoords() since we don't even print the horizon in our stats. 2022-10-25 07:06:54 +02:00
Mitchell Richters
ca8f8d6d36 - Remove all remaining q16horiz() calls, also correcting a long-standing Duke bug. 2022-10-25 07:06:54 +02:00
Mitchell Richters
8697e5f054 - Replace all q16horiz(0) calls. 2022-10-25 07:06:54 +02:00
Mitchell Richters
22a9f89b64 - Remove all uses of fixedhoriz::asq16(). 2022-10-25 07:06:54 +02:00
Mitchell Richters
5851c0f2c6 - Clean up some q16horiz usage and how the view pitch is clamped. 2022-10-25 07:06:53 +02:00
Mitchell Richters
4ef9ec93ea - Remove fixedhoriz::asbuildf() and associated buildf friend.
* The new friend `tanhoriz()` is just for the input code for now.
2022-10-25 07:06:53 +02:00
Mitchell Richters
d8a6471680 - Add fixedhoriz::Tan() and replace most asbuildf() calls with it. 2022-10-25 07:06:53 +02:00
Christoph Oelckers
40cb2116e0 - restore Duke's cheats. 2022-10-24 23:30:09 +02:00
Christoph Oelckers
9342b7b1a4 - Duke/RR: fixed move_player smart action. 2022-10-24 22:09:34 +02:00
Christoph Oelckers
33002b37a9 - RR: fixed randomization for hitscan weapons. 2022-10-24 21:26:41 +02:00
Christoph Oelckers
e2d0cbf772 - allow entering cheats in the chat editor without using '#'. 2022-10-23 18:46:18 +02:00
Christoph Oelckers
74cf9a2ff2 - hitscan fully rewritten.
No traces of Build code left here! :)
2022-10-22 20:41:27 +02:00
Christoph Oelckers
20043f6223 - use symbolic constants in neartag calls. 2022-10-22 12:17:03 +02:00
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
Christoph Oelckers
c44fd07f37 - floatified the portal displacement 2022-10-22 12:16:57 +02:00
Christoph Oelckers
375d346ae8 - pass a vector to the processSprites interface. 2022-10-22 12:16:56 +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
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
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