Christoph Oelckers
b53e4b824e
- handle the portals in Duke and Blood.
2022-10-16 09:40:29 +02:00
Christoph Oelckers
cd4d3ee2d2
- a handful more calls cleaned up
2022-10-15 18:22:09 +02:00
Mitchell Richters
c9e33b92cc
- Ensure all games consistently scale out for chase cam mode.
2022-10-15 13:32:04 +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
5e410ff738
- Eliminate most uses of DAngle::Buildfang()
.
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
1a9e255265
- the angle in aiChooseDirection must be precisely what it was in Build.
...
60° may only be 1/3 Build angle unit off, but it is already too much.
2022-10-15 13:32:00 +02:00
Mitchell Richters
a739928d29
- Blood: Fix lost accounting of target sprite angle in actCheckFlares()
.
2022-10-15 13:32:00 +02:00
Mitchell Richters
a8f7b3f6fe
- Blood: Fix bad angle direction in aiChooseDirection()
.
2022-10-15 13:32:00 +02:00
Christoph Oelckers
2b5422cc53
- floatified USER::goalAng
2022-10-15 13:32:00 +02:00
Christoph Oelckers
9df7c55040
- rename USER::goalAng
2022-10-15 13:32:00 +02:00
Christoph Oelckers
057d2a565a
- floatified Blood's velFloor and velCeil
2022-10-15 13:31:59 +02:00
Christoph Oelckers
38bb103cdd
- renamed velFloor and velCeil.
2022-10-15 13:31:59 +02:00
Christoph Oelckers
4f9ffc9437
- mainly handling angle literals.
2022-10-15 12:42:30 +02:00
Christoph Oelckers
a85bcebd09
- floatified Blood's asound.cpp
2022-10-15 12:42:30 +02:00
Mitchell Richters
f69e977411
- Blood: Fix velocity issues in MoveThing()
, such as explosive bundles not sliding along the ground.
...
* Merge with or above `- parts of Blood's MoveThing`.
2022-10-15 12:42:30 +02:00
Christoph Oelckers
a6eec404db
- parts of Blood's MoveThing
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
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
1dcb03e530
- got rid of set_int_bvel
2022-10-15 11:35:38 +02:00
Christoph Oelckers
96297c95aa
vel assignment with fixed point constants
2022-10-15 11:35:37 +02:00
Christoph Oelckers
010fedd049
- 10 more AdjustVelocity calls.
2022-10-15 11:35:37 +02:00
Christoph Oelckers
39109de22f
- consolidation of Blood rotation code.
...
24x the same pattern merged into a subfunction.
2022-10-15 11:35:37 +02:00
Christoph Oelckers
b5c679f228
- got a few more
2022-10-15 11:35:37 +02:00
Christoph Oelckers
4af3f6e731
- comparison with zero replacements
2022-10-15 11:35:37 +02:00
Christoph Oelckers
ac84e3f045
- some simple replacements
2022-10-15 11:35:37 +02:00
Christoph Oelckers
18cc450889
- more easy to replace vel assignments
2022-10-15 11:35:36 +02:00
Christoph Oelckers
5cde04fee7
- cleaned up assignments of random values to vel
2022-10-15 10:33:03 +02:00
Christoph Oelckers
eed7f0806c
- more quick replacements
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
b924569755
- started removing trivial vel wrappers
2022-10-15 10:15:20 +02:00
Christoph Oelckers
f2d89b7609
- refactored actWallBounceVector as well
...
This completes the abstraction of velocity in Blood.
2022-10-15 10:15:20 +02:00
Christoph Oelckers
92532bb007
- eliminated actFloorBounceVector wrapper
2022-10-15 10:14:54 +02:00
Christoph Oelckers
9f235b56f3
- rewrote actFloorBounceVector to avoid reference parameters
2022-10-14 23:55:32 +02:00
Christoph Oelckers
fce956f83e
- move stuff around
2022-10-14 23:55:31 +02:00
Christoph Oelckers
a69bdb3370
- eliminated Blood’s RotatePoint function
2022-10-14 23:55:31 +02:00
Christoph Oelckers
3bac7af313
- simple stuff in blood/actor.cpp
2022-10-14 23:55:31 +02:00
Christoph Oelckers
c45ecdae73
- wrapped all velocity access in Blood, except the places where an address of vel is taken
2022-10-14 23:55:30 +02:00
Christoph Oelckers
7a7a2cdb39
- various replacements of vel
2022-10-14 23:55:30 +02:00
Christoph Oelckers
f1d3126435
- vel assignments
2022-10-14 23:55:30 +02:00
Christoph Oelckers
994cb47d36
- set_int_bvel_z
2022-10-14 23:52:44 +02:00
Christoph Oelckers
9cbffc998e
- set_int_bvel_y
2022-10-14 23:52:44 +02:00
Christoph Oelckers
761da2b06e
- set_int_bvel_x
2022-10-14 23:52:43 +02:00
Christoph Oelckers
b78d5a95ac
- more add_int_bvel_
2022-10-14 23:52:43 +02:00
Christoph Oelckers
1999340c8a
- add_int_bvel_z
2022-10-14 23:52:43 +02:00
Christoph Oelckers
49d280c665
- add_int_bvel_y
2022-10-14 23:52:43 +02:00
Christoph Oelckers
12e5fd133c
- add_int_bvel_x
2022-10-14 23:52:43 +02:00
Christoph Oelckers
49f0e9c57d
- batch 3 of vel.
2022-10-14 23:52:43 +02:00
Christoph Oelckers
193d20bb4d
- wrapped more xvels
2022-10-14 23:52:43 +02:00
Christoph Oelckers
e3758d6adc
- started wrapping vel
2022-10-14 23:52:42 +02:00
Christoph Oelckers
e7b09dbaac
- renamed vel.
2022-10-14 23:52:42 +02:00
Christoph Oelckers
a5a04b1123
- moved Blood's velocity vector to DCoreActor.
2022-10-14 23:52:42 +02:00
Christoph Oelckers
f8ba5bb660
- final xvel cleanup.
2022-10-14 23:13:33 +02:00
Mitchell Richters
9e93b417b7
- Blood: Some missed MaxSmoothRatio
changes.
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
0baaad7c23
- Blood: Add seemingly forgotten call to MarkSectorSeen()
.
...
* Automap wasn't updating upon movement into new sectors unless the automap was toggled on and off.
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
Mitchell Richters
56b0661f81
- Blood: Floatify automap draw code.
2022-10-14 18:13:50 +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
05a7fe8f36
- renamed walltype::fdelta and fcenter
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
f4d8ccf7b9
- floatified WarpToCoords
2022-10-13 20:58:12 +02:00
Christoph Oelckers
55455ea4fa
- use floating point for the last remaining rotation in TranslateSector
2022-10-13 20:58:11 +02:00
Christoph Oelckers
decaff78dc
- floatified parts of useSeqSpawnerGen.
...
Also fixing a sprite size bug in here.
2022-10-13 20:58:11 +02:00
Christoph Oelckers
5fba68ffe1
- floatified Blood’s kViewEffectTrail
2022-10-13 20:58:11 +02:00
Christoph Oelckers
b73314579a
- floatified Blood’s kViewEffectAtom
...
This also gets rid of the rather pointless rotation functions that were just added for this.
2022-10-13 20:58:11 +02:00
Christoph Oelckers
ea9c88d952
- floatified Blood’s MoveMissile function
2022-10-13 20:56:38 +02:00
Christoph Oelckers
978c35fda1
- mess reduction in Blood’s TranslateSector
...
We can also get rid of set_int_xy now.
2022-10-13 20:42:29 +02:00
Christoph Oelckers
cceecb4ab6
- use ToVector where appropriate
2022-10-13 20:41:54 +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
d133839e2e
- Fix a few uses of interpolatedvalue()
with floating point numbers.
2022-10-13 00:59:03 +02:00
Mitchell Richters
92b16907d2
- Use getincangle()
in more places so it can be refactored easier later on.
2022-10-13 00:59:02 +02:00
Mitchell Richters
a22300fe01
- Blood: Replace some set_int_ang()
usage.
...
* A lot of this repeated code should be factored out into repeated blocks when all of this floatification is done.
2022-10-13 00:59:02 +02:00
Christoph Oelckers
d573ba4cad
- pass map start as DVector3
2022-10-13 00:59:01 +02:00
Christoph Oelckers
40312d64c8
-coordinates
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
478672879e
- partial HitScan parameter change
...
The really easy stuff…
2022-10-13 00:59:00 +02:00
Christoph Oelckers
54cf1aea6f
- got rid of CGibPosition
2022-10-13 00:59:00 +02:00
Christoph Oelckers
f80b228a83
- deal with int positions in approxdist calls
2022-10-13 00:58:59 +02:00
Christoph Oelckers
c53a2ac93a
- one final batch of AI stuff
2022-10-13 00:58:59 +02:00
Christoph Oelckers
230913bad3
- another large AI cleanup batch
2022-10-13 00:58:59 +02:00
Christoph Oelckers
ea04f5f800
- more vector stuff in Blood AI
...
all the same pattern
2022-10-12 22:18:11 +02:00
Christoph Oelckers
67d0e51919
- migrate Blood AI to floating point vectors, part 1
...
Velocity is still left untouched.
2022-10-12 22:18:11 +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
97e93004b1
- quick’n easy replacements
2022-10-12 22:10:37 +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
18a445aee5
- added ZeroVelocity function to DBloodActor.
2022-10-12 22:10:36 +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
00436bfdac
- eliminated one UpdateActor pverload.
2022-10-12 22:10:36 +02:00
Christoph Oelckers
f0769048ed
- yet another bunch of SpawnActor calls in weapon.cpp
2022-10-12 22:10:35 +02:00
Christoph Oelckers
a0c0894e41
- aiSetTarget calls
2022-10-12 22:10:34 +02:00
Christoph Oelckers
db0ce36143
- use engine's updatesector in Blood instead of the limited homegrown FindSector variant.
2022-10-11 18:09:48 +02:00
Christoph Oelckers
085839af32
- CheckPickUp floatification
2022-10-10 17:37:20 +02:00
Christoph Oelckers
a808f04415
- cansee refactoring part 4
2022-10-10 17:37:20 +02:00
Christoph Oelckers
3da68ab038
- cansee refactoring, part 3
2022-10-10 17:37:20 +02:00
Christoph Oelckers
80412bdc51
- cansee refactoring, part 2
2022-10-10 17:37:20 +02:00
Christoph Oelckers
781ffc9a43
- cansee refactoring, part 1.
2022-10-10 17:37:20 +02:00
Christoph Oelckers
1c154a984d
- floatified XSPRITE::TargetPos
2022-10-10 17:37:19 +02:00
Christoph Oelckers
d26a4e70c3
- wrapped XSPRITE::TargetPos
2022-10-10 17:37:19 +02:00
Christoph Oelckers
4888b363e8
- added vector variant of gFX.fxSpawnActor
2022-10-10 17:37:19 +02:00
Christoph Oelckers
139969d017
- FindSector variants with vectors
2022-10-10 17:37:19 +02:00
Christoph Oelckers
f41c78d622
- actDropObject
2022-10-10 17:37:19 +02:00
Christoph Oelckers
e7ec2c072a
- floatified Blood’s startpos
2022-10-10 17:37:19 +02:00
Christoph Oelckers
cb39a07580
- position in actSpawnSprite
2022-10-10 17:37:18 +02:00
Christoph Oelckers
08c19cd2a4
- floatified CheckProximity position parameter
2022-10-10 17:37:18 +02:00
Christoph Oelckers
12d54a8b5c
- use vector math for distances in actRadiusDamage
2022-10-10 17:37:18 +02:00
Christoph Oelckers
9460239417
- pass a vector to GetClosestSpriteSectors
2022-10-10 17:37:18 +02:00
Christoph Oelckers
64cf9a4ec6
- pass vector position to actRadiusDamage
2022-10-10 17:37:18 +02:00
Christoph Oelckers
645c606e39
- floatified ConcussSprite
2022-10-10 17:37:18 +02:00
Christoph Oelckers
45f37525e0
- minor angle stuff in Blood
2022-10-10 17:31:30 +02:00
Christoph Oelckers
209867e036
- cleaned out some unnecessary inlines.
2022-10-09 22:00:43 +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
f13d9892dc
- trivial wrapper replacements in Duke
2022-10-09 08:21:53 +02:00
Christoph Oelckers
4db457f3b0
- stuff in animatesprite.cpp
2022-10-09 08:21:53 +02:00
Christoph Oelckers
96e6424772
- floatified damage logic in aibeast.StompSeqCallback
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
424a58f91b
- Blood: sfxPlay3DSound
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
5505c362e2
- floatified hitpos
2022-10-05 18:11:59 +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
64391c52f9
- large batch of set_int_pos, minus Exhumed
2022-10-05 17:33:01 +02:00
Mitchell Richters
478e7a6801
- Eliminate some TAngle floating point Build method usage.
2022-10-05 00:36:31 +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
Christoph Oelckers
02ce593f06
-removed leftover binangles in Blood's animatesprites.cpp
2022-10-05 00:36:28 +02:00
Mitchell Richters
abb8b87be1
- Eliminate last remaining binangle
inline utilities.
2022-10-05 00:36:28 +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