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
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
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
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
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
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
72dc3d5da9
- use mapangle in more places, mainly constants and random values using special formula
2022-10-18 19:01:45 +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
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
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
8e48911723
- very simple replacements
2022-10-17 17:25:58 +02:00
Christoph Oelckers
1ba20c7dce
- wrapped most clipdist assignments
2022-10-17 17:03:53 +02:00
Christoph Oelckers
ef47040630
- renaming stuff for search purposes
2022-10-17 17:03:53 +02:00
Christoph Oelckers
9721d80f44
- more assignment wraps
2022-10-17 17:03:53 +02:00
Christoph Oelckers
3fc592c505
- wrap clipdist copy
2022-10-17 17:03:53 +02:00
Christoph Oelckers
3c498e715d
- wrapped all literal assignments to clipdist - part 3
2022-10-17 17:03:53 +02:00
Christoph Oelckers
a14c37f596
- wrapped all literal assignments to clipdist - part 2
2022-10-17 17:03:53 +02:00
Christoph Oelckers
28a3a8e314
- wrapped all literal assignments to clipdist - part 1
2022-10-17 17:03:52 +02:00
Christoph Oelckers
6b5cbac96a
- consolidate common formula
2022-10-17 17:03:52 +02:00
Christoph Oelckers
3e36b5627b
- wrap clipdist << 2
2022-10-17 17:03:52 +02:00
Mitchell Richters
acd3304b7e
- Duke: Give displayrooms()
a slight tidy-up.
2022-10-16 10:59:05 +02:00
Mitchell Richters
2c6435377a
- Duke: Change clamping of ceilz/floorz in draw code.
...
* Also repair potential bug between actor's cz/fz vs. player's truecz/truecz introduced in "- Duke: Floatify `displayrooms()` and flatten smoothratio back out to float.".
2022-10-16 10:59:04 +02:00
Mitchell Richters
ecd880ad6c
- Duke: Floatify displayrooms()
and flatten smoothratio back out to float.
2022-10-16 10:59:04 +02:00
Mitchell Richters
ea3ca4a4ea
- Duke: Tidy up old multiplayer variables to modern standards.
2022-10-16 10:59:04 +02:00
Christoph Oelckers
b53e4b824e
- handle the portals in Duke and Blood.
2022-10-16 09:40:29 +02:00
Christoph Oelckers
5cda92b629
- partial floatification of FAFgetzrange/point
2022-10-16 09:40:28 +02:00
Christoph Oelckers
64e915868e
- use setfloorz
2022-10-15 17:16:57 +02:00
Mitchell Richters
3019f9effc
- Floatify smoothratio
for GameInterface::processSprites()
.
...
* Exhumed is now completely free of any Q16.16 interpolation scaling.
2022-10-15 13:32:03 +02:00
Mitchell Richters
01d185dc6b
- Floatify smoothratio
for DrawOverheadMap()
.
2022-10-15 13:32:03 +02:00
Mitchell Richters
45d4d3e41a
- Eliminate __interpvalue()
and clean up Q16.16 smoothratio values where it made sense to do so.
...
* Also eliminates a now empty header.
2022-10-15 13:32:02 +02:00
Mitchell Richters
f02035b15a
- Eliminate __interpvaluef()
and clean up Q16.16 smoothratio values where it made sense to do so.
2022-10-15 13:32:01 +02:00
Mitchell Richters
2c8cb8f052
- Rename DCoreActor
method interpolatedvec3()
to interpolatedpos()
.
2022-10-15 13:32:01 +02:00
Mitchell Richters
39ac3b44b0
- Add scaler operators to fixedhorizon
class and eliminate class-specific interpolatedhorizon()
inlines.
2022-10-15 13:32:01 +02:00
Mitchell Richters
74167e1a7c
- Remove interpolators for TVector and TAngle objects, replacing with single generic version.
2022-10-15 13:32:01 +02:00
Mitchell Richters
06e772b44b
- Rename interpolatedvalue()
in preparation for replacement.
2022-10-15 13:32:01 +02:00
Mitchell Richters
8fd6452baf
- Rename interpolatedvaluef()
in preparation for replacement.
2022-10-15 13:32:01 +02:00
Christoph Oelckers
92379863f1
- don't use DAngle for calculating bobbing amplitudes.
...
It makes more sense here to have a dedicated function since this is not really angular math.
2022-10-15 13:31:59 +02:00
Christoph Oelckers
7dab26f04d
- handle several movesprite_ex calls.
2022-10-15 12:42:30 +02:00
Christoph Oelckers
4f9ffc9437
- mainly handling angle literals.
2022-10-15 12:42:30 +02:00
Christoph Oelckers
a6eec404db
- parts of Blood's MoveThing
2022-10-15 12:42:30 +02:00
Christoph Oelckers
e5219382f2
- added some Sector Effector symbolic names.
2022-10-15 12:42:30 +02:00
Christoph Oelckers
4df1578064
- a few random wrapper removals in Duke
2022-10-15 12:42:30 +02:00
Christoph Oelckers
6b0b8f944c
- floatified the height parameter of nextsectorneighborptr
2022-10-15 12:42:30 +02:00
Mitchell Richters
7d5040f560
- Fix all calls to interpolatedangle()
that didn't revert smoothratio back to a float.
2022-10-15 12:16:53 +02:00
Mitchell Richters
f72d42bb8e
- Uplift renderer entry point to DVector3
and provide wrappers for old setups.
2022-10-15 12:16:53 +02:00
Mitchell Richters
977d8f8109
- Convert gi->chaseCamPos()
to return a floating point DVector3
object.
2022-10-15 12:16:53 +02:00
Mitchell Richters
ab77d77a53
- Optimise automap sector loops in Duke/SW automap code.
2022-10-15 12:16:53 +02:00
Mitchell Richters
18f97c3d7e
- SW: Move player sprite loop out of sector loop, and eliminate goto crap.
2022-10-15 12:16:52 +02:00
Mitchell Richters
f236cc8728
- Consolidate some duplicated automap code between Duke and SW.
2022-10-15 12:16:52 +02:00
Mitchell Richters
ef56d00d78
- Pass automap angle vector as an actual vector.
...
* Also reconfigure setup so that angle requires zero pre-processing or setup in the automap code, have it all handled in `OutAutomapVector()`.
2022-10-15 12:16:52 +02:00
Christoph Oelckers
712d28ff40
- clean out some stuff
2022-10-15 11:35:38 +02:00
Christoph Oelckers
eed7f0806c
- more quick replacements
2022-10-15 10:15:21 +02:00
Christoph Oelckers
3e76d49b6e
- removed the mul vel wrappers
2022-10-15 10:15:21 +02:00
Christoph Oelckers
6fd8dae380
- removed the non-Blood float_* access wrappers
2022-10-15 10:15:21 +02:00
Christoph Oelckers
62ba753585
- remove vel clear wrappers
2022-10-15 10:15:21 +02:00
Christoph Oelckers
fca2f8c683
- replace all ‚labs‘ with ‚abs‘
2022-10-14 23:55:31 +02:00
Mitchell Richters
4acce612cd
- Take advantage of TVector2<>::Rotated90CW()
in some automap code.
2022-10-14 23:55:31 +02:00
Christoph Oelckers
58642c4d2f
- cleaned up the distance checks in operatetripbomb
2022-10-14 23:55:31 +02:00
Christoph Oelckers
9ba03ac53f
- renamed yvel to yint in Duke.
...
It's never used as velocity, but as an auxiliary parameter so name it appropriately.
2022-10-14 23:17:45 +02:00
Christoph Oelckers
5f4a0cf208
- removed bogus velocity code for RRRA's empty bike and boat.
2022-10-14 23:17:45 +02:00
Christoph Oelckers
9621cd08d2
- use PlayerIndex plus a bit of cleanup.
2022-10-14 23:17:45 +02:00
Christoph Oelckers
9600face4a
- the rest.
2022-10-14 23:13:33 +02:00
Christoph Oelckers
567b20f9ef
- almost the rest.
2022-10-14 23:13:33 +02:00
Christoph Oelckers
ce20bd9c56
- more wraps
2022-10-14 23:13:33 +02:00
Christoph Oelckers
643dda6085
-add_int_xvel(-
2022-10-14 23:13:33 +02:00
Christoph Oelckers
d19e99481d
- add_int_xvel
2022-10-14 23:13:33 +02:00
Christoph Oelckers
33eeb8d9c2
- right shifts
2022-10-14 23:13:33 +02:00
Christoph Oelckers
ec88d1ea6c
- set_int_xvel
2022-10-14 23:13:32 +02:00
Christoph Oelckers
fb1a9881e3
- half done with xvel
2022-10-14 23:13:32 +02:00
Christoph Oelckers
434548a5aa
- more xvel wraps.
2022-10-14 23:13:32 +02:00
Christoph Oelckers
cf90970121
- float_vel wraps
2022-10-14 23:13:32 +02:00
Christoph Oelckers
0aad018796
- second batch of xvel wraps.
2022-10-14 23:13:32 +02:00
Christoph Oelckers
ba044ac2f4
- first bunch of wrapping xvel.
2022-10-14 23:02:11 +02:00
Christoph Oelckers
0740ccbef1
- use PlayerIndex where appropriate.
2022-10-14 23:02:11 +02:00
Christoph Oelckers
36f109502d
- use clear_xvel wrapper.
2022-10-14 23:02:11 +02:00
Christoph Oelckers
a006482c07
- this concludes all trivial int_zvel replacements.
2022-10-14 22:57:37 +02:00
Christoph Oelckers
a98e37b345
- handle int_zvel() == 0
2022-10-14 22:57:36 +02:00
Christoph Oelckers
9f9858d8f4
- handle remaining zvel comparisons.
2022-10-14 22:57:36 +02:00
Christoph Oelckers
56e5388150
- handle 'zvel >' comparisons with constants.
2022-10-14 22:55:27 +02:00
Christoph Oelckers
7e8afd58da
- handle 'zvel <' comparisons with constants.
2022-10-14 22:53:22 +02:00
Christoph Oelckers
07bac24234
- quickly got rid of a significant bunch of int_zvel calls.
...
Mapping to float_zvel what could be done with search and replace.
2022-10-14 20:31:57 +02:00
Christoph Oelckers
bd520e63dd
- use float_zvel in a few places.
2022-10-14 20:31:57 +02:00
Christoph Oelckers
999cd16b24
- use clear_zvel
2022-10-14 20:31:57 +02:00
Christoph Oelckers
8946a66350
- handle zvel multiplications with a wrapper.
...
This completes wrapping of zvel.
2022-10-14 20:31:56 +02:00
Christoph Oelckers
231107921e
- handle a few more operators
2022-10-14 20:31:56 +02:00
Christoph Oelckers
588af5aa71
- add_int_zvel with -
2022-10-14 20:31:56 +02:00
Christoph Oelckers
8bfedc327f
- add_int_zvel
2022-10-14 20:31:56 +02:00
Christoph Oelckers
6ddfd8e97a
- set_int_zvel
2022-10-14 20:31:55 +02:00
Christoph Oelckers
70d0d0622b
- wrapped 0 assignments to zvel
2022-10-14 20:31:55 +02:00
Christoph Oelckers
a9d96864d3
- more zvel wrapping
2022-10-14 20:31:55 +02:00
Christoph Oelckers
3f7b423a4a
- zvel wrapping, part 1.
2022-10-14 20:31:55 +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
04d20a52c3
- Duke: Set both orotscrnang
and rotscrnang
when being called from a script, since the former is an addition.
2022-10-14 18:19:03 +02:00
Mitchell Richters
d427fc3e02
- Duke: Slightly tidy up CSTAT_SPRITE_ALIGNMENT_FACING
automap code.
2022-10-14 18:19:02 +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
Christoph Oelckers
5e2d3f5c46
- deleted unused variables from Duke's DrawAutomapPlayer
2022-10-14 18:13:51 +02:00
Mitchell Richters
c2e9e06d2a
- Duke: Floatify last part of automap draw code.
2022-10-14 18:13:50 +02:00