Commit graph

12810 commits

Author SHA1 Message Date
Christoph Oelckers
3c2e4a9c59 - deleted integer GetActorExtents version 2022-10-25 07:07:11 +02:00
Christoph Oelckers
5ab75f45e9 - floatified and consolidated throwPower handling. 2022-10-25 07:07:11 +02:00
Christoph Oelckers
a87c4809f5 - deleted unused mulscale30r functions. 2022-10-25 07:07:11 +02:00
Christoph Oelckers
b176ceda38 - floatified playerFireThing 2022-10-25 07:07:11 +02:00
Christoph Oelckers
cab00d05dc - got rid of the int version of playerFireMissile 2022-10-25 07:07:11 +02:00
Christoph Oelckers
8673d692f0 - floatified genDudeAdjustSlope's dist. 2022-10-25 07:07:11 +02:00
Christoph Oelckers
77d712dbc4 - got rid of the int aiSetTarget variant. 2022-10-25 07:07:11 +02:00
Christoph Oelckers
fbed29e6ca - bubbletime has no relation to world size so it should not use worldtoint. 2022-10-25 07:07:10 +02:00
Christoph Oelckers
310eff6e71 - clean out many wrappers. 2022-10-25 07:07:10 +02:00
Christoph Oelckers
d013e6fbd9 - eliminate the last 5 Sin calls 2022-10-25 07:07:10 +02:00
Christoph Oelckers
312b96fedc - floatified aim and relAim 2022-10-25 07:07:10 +02:00
Christoph Oelckers
a9095a5a1e - floatified all FireSpread functions. 2022-10-25 07:07:10 +02:00
Christoph Oelckers
bd011c69a6 - wrapped most of aim 2022-10-25 07:07:10 +02:00
Christoph Oelckers
1283c4d757 - renamed aim and relAim 2022-10-25 07:07:10 +02:00
Christoph Oelckers
b2dc69ad5d - floatified dudeSlope. 2022-10-25 07:07:10 +02:00
Christoph Oelckers
27c0a00df6 - use dudeslope wrappers. 2022-10-25 07:07:10 +02:00
Christoph Oelckers
e44759d2ea - renamed dudeSlope 2022-10-25 07:07:09 +02:00
Christoph Oelckers
f286565abc - floatifying player::slope, part 2 2022-10-25 07:07:09 +02:00
Christoph Oelckers
1a03c56eec - floatifying player::slope, part 1 2022-10-25 07:07:09 +02:00
Christoph Oelckers
22cf0ea2ad -deleted approxDist 2022-10-25 07:07:09 +02:00
Christoph Oelckers
f1b5bba035 - length calculation in teslaHit. 2022-10-25 07:07:09 +02:00
Christoph Oelckers
3814dfcf0e - floatified distance in AltFireVoodoo 2022-10-25 07:07:09 +02:00
Christoph Oelckers
b2bf137d72 - floatified UpdateAimVector
the biggest mess of all.
2022-10-25 07:07:09 +02:00
Christoph Oelckers
a843c0bdb6 - removed some unnecessary factors. 2022-10-25 07:07:09 +02:00
Christoph Oelckers
8ac5884232 - the first HitScan_ variant is gone. 2022-10-25 07:07:08 +02:00
Christoph Oelckers
fcc0d3bfea - deprecating HitScan_. 2022-10-25 07:07:08 +02:00
Christoph Oelckers
702553d65e - floatified HitScan call in nnextCanMove. 2022-10-25 07:07:08 +02:00
Christoph Oelckers
7f5ae54f93 - 3x use proper HitScan call. 2022-10-25 07:07:08 +02:00
Christoph Oelckers
e793b878c1 3 HitScan fixes 2022-10-25 07:07:08 +02:00
Christoph Oelckers
b7c63e08ec - floatified DoSectorPanning 2022-10-25 07:07:08 +02:00
Christoph Oelckers
580bbccdf5 - handle angles in voodooTarget 2022-10-25 07:07:08 +02:00
Christoph Oelckers
56429ebbba - floatified MGunFireSeqCallback 2022-10-25 07:07:08 +02:00
Christoph Oelckers
32ed2dd596 - some trivial things. 2022-10-25 07:07:08 +02:00
Christoph Oelckers
0577b678d2 - all of int_ang in aizombf.cpp
Note that the z-offset in ThrowSeqCallback was not correct - eyeHeight is in pixels, but this was passed as a Build-z-parameter which is scaled by 256, effectively rendering the offset almost ineffective.
2022-10-25 07:07:07 +02:00
Christoph Oelckers
e4f8178947 - all int_ang() in aiunicult.cpp 2022-10-25 07:07:07 +02:00
Christoph Oelckers
049220239c - get rid of vel wrappers for nnext conditions.
The fixed point conversion here is unavoidable, so make it explcit.
2022-10-25 07:07:07 +02:00
Christoph Oelckers
5dc2d467ee - the last remaining approxDist calls in nnexts. 2022-10-25 07:07:07 +02:00
Christoph Oelckers
cf2d29e921 - floatified aiFightGetFineTargetDist 2022-10-25 07:07:07 +02:00
Christoph Oelckers
139f68c804 - deleted unused GetDistToLine 2022-10-25 07:07:07 +02:00
Christoph Oelckers
2692684e73 - floatified distance checks in unicultThinkChase 2022-10-25 07:07:07 +02:00
Christoph Oelckers
2eb068e4a6 - deleted unused CheckProximityPoint and cleaned up earthquake calculations. 2022-10-25 07:07:07 +02:00
Christoph Oelckers
d99ed7676b - reroute player firing functions directly to the floating point variants of the actor versions. 2022-10-25 07:07:06 +02:00
Christoph Oelckers
607f119bad - floatified aiPatrolAlarmFull 2022-10-25 07:07:06 +02:00
Christoph Oelckers
99da5d78ab - floatified GetZRangeAtXYZ 2022-10-25 07:07:06 +02:00
Christoph Oelckers
9b9116986b - removed redundant function call. 2022-10-25 07:07:06 +02:00
Christoph Oelckers
6e03f87671 - floatified GetZRange 2022-10-25 07:07:06 +02:00
Christoph Oelckers
60e9e4d93a - floatified EnemyBubble 2022-10-25 07:07:06 +02:00
Christoph Oelckers
caf6dacbb5 - floatified PlayerBubble 2022-10-25 07:07:06 +02:00
Christoph Oelckers
a63527c892 - floatified fxDynPuff 2022-10-25 07:07:06 +02:00
Christoph Oelckers
24f4e1894c - floatified fxFlameLick 2022-10-25 07:07:05 +02:00
Christoph Oelckers
d349eabcbc - floatified dudeLeechOperate 2022-10-25 07:07:05 +02:00
Christoph Oelckers
e54719e6f5 - floatified coordinate stuff in ThrowThing 2022-10-25 07:07:05 +02:00
Christoph Oelckers
e8718826ba - renamed Heardist to HearDist.
This had to wait until the variable was refactored out.
2022-10-25 07:07:05 +02:00
Christoph Oelckers
94403684b2 - changed 2 seeDist references to the SeeDist() wrapper.
Although not necessary this makes it easier later to refactor DUDEINFO.
2022-10-25 07:07:05 +02:00
Christoph Oelckers
f0dc95597b - deleted several unused wrappers and overloads. 2022-10-25 07:07:05 +02:00
Christoph Oelckers
0bfc57e68a - got rid of the only getangle call in the backend 2022-10-25 07:07:05 +02:00
Christoph Oelckers
9cd5766cd0 - deleted unused GetWallAngle function and comment cleanup 2022-10-25 07:07:05 +02:00
Christoph Oelckers
89cdd17cc2 - floatified PukeSeqCallback 2022-10-25 07:07:05 +02:00
Christoph Oelckers
8dd646a24f - floatified HackSeqCallback 2022-10-25 07:07:04 +02:00
Christoph Oelckers
8edd0530cb - renamed two functions. 2022-10-25 07:07:04 +02:00
Christoph Oelckers
7ae1d6fdc1 - floatified another Tchernobog callback. 2022-10-25 07:07:04 +02:00
Christoph Oelckers
65d696c2bb - floatified sub_71BD4 2022-10-25 07:07:04 +02:00
Christoph Oelckers
dcde92d629 - floatified cerberusThinkGoto 2022-10-25 07:07:04 +02:00
Christoph Oelckers
fd3ca33aea - deleted set_int_bvel inlines 2022-10-25 07:07:04 +02:00
Christoph Oelckers
8c00af40d0 - eliminated the last set_int_bvel call in fxZombieBloodSpurt 2022-10-25 07:07:04 +02:00
Christoph Oelckers
d213f7c92f - floatified useUniMissileGen 2022-10-25 07:07:04 +02:00
Christoph Oelckers
0999ffd5c0 - floatified fxSpawnEjectingBrass/Shell and got rid of the inlines. 2022-10-25 07:07:03 +02:00
Christoph Oelckers
ee255b533d - floatified SpidBirthSeqCallback 2022-10-25 07:07:03 +02:00
Christoph Oelckers
4376bd6581 - floatified SpidBiteSeqCallback and SpidJumpSeqCallback 2022-10-25 07:07:03 +02:00
Christoph Oelckers
3abd6aa996 - floatified ratBiteSeqCallback 2022-10-25 07:07:03 +02:00
Christoph Oelckers
c58e0d84ad - floatified podAttack 2022-10-25 07:07:03 +02:00
Christoph Oelckers
c2fbbfbefe - floatified the remaining parts of aihound.cpp. 2022-10-25 07:07:03 +02:00
Christoph Oelckers
0a2274a41d - the remaining bits in aigilbst.cpp 2022-10-25 07:07:03 +02:00
Mitchell Richters
bb6e12a2b1 - Eliminate remaining calls to TAngle<T>::fromBuildf(). 2022-10-25 07:07:03 +02:00
Mitchell Richters
789fa71a14 - Use g_atan2() within maphoriz() so consistent math is used throughout engine. 2022-10-25 07:07:03 +02:00
Mitchell Richters
5d8cc1b4fc - Store all input speed constants as DAngle to avoid calling DAngle::fromDeg() all the time. 2022-10-25 07:07:02 +02:00
Christoph Oelckers
3c3af06413 - deleted getincangle. 2022-10-25 07:07:02 +02:00
Christoph Oelckers
b7afaf3ed5 - floatified most of aiPatrolSearchTargets 2022-10-25 07:07:02 +02:00
Christoph Oelckers
769565997f - floatified zombfThinkChase 2022-10-25 07:07:02 +02:00
Christoph Oelckers
5ba2eb4f64 - floatified myThinkTarget 2022-10-25 07:07:02 +02:00
Christoph Oelckers
211c77138b - floatified most of unicultThinkChase 2022-10-25 07:07:02 +02:00
Christoph Oelckers
8382f12af2 - floatified sub_725A4 2022-10-25 07:07:02 +02:00
Christoph Oelckers
2620a8f644 - floatified ratThinkChase 2022-10-25 07:07:02 +02:00
Christoph Oelckers
edf6c69159 - floatified gillThinkChase 2022-10-25 07:07:02 +02:00
Christoph Oelckers
523400772e - floatified zombaThinkChase and zombaThinkPonder 2022-10-25 07:07:01 +02:00
Christoph Oelckers
4388401e6e - floatified unicultThinkGoto 2022-10-25 07:07:01 +02:00
Christoph Oelckers
6b72414038 - floatified tchernobogThinkChase 2022-10-25 07:07:01 +02:00
Christoph Oelckers
0385897be4 - floatified spidThinkChase 2022-10-25 07:07:01 +02:00
Christoph Oelckers
9586a2f16d - floatified aiPodChase 2022-10-25 07:07:01 +02:00
Christoph Oelckers
6b6ab4e81e - floatified innocThinkChase. 2022-10-25 07:07:01 +02:00
Christoph Oelckers
648ff00caf - floatified houndThinkChase. 2022-10-25 07:07:01 +02:00
Christoph Oelckers
71c1840566 - floatified handThinkChase 2022-10-25 07:07:01 +02:00
Christoph Oelckers
21afef19e9 - floatified gillBeastSwimChase. 2022-10-25 07:07:00 +02:00
Christoph Oelckers
5d78c81acb - 11x replacing the same pattern. 2022-10-25 07:07:00 +02:00
Christoph Oelckers
e3cc9879eb - floatified ghostThinkGoto 2022-10-25 07:07:00 +02:00
Christoph Oelckers
d3e8db8861 - floatified ghostThinkTarget 2022-10-25 07:07:00 +02:00
Christoph Oelckers
babb45318f - floatified ghostBlastSeqCallback 2022-10-25 07:07:00 +02:00
Christoph Oelckers
491c5628ff - floatified ghostThrowSeqCallback 2022-10-25 07:07:00 +02:00
Christoph Oelckers
fbf49bc247 - floatified ghostSlashSeqCallback 2022-10-25 07:07:00 +02:00
Christoph Oelckers
2ba68df27f - eliminate int_floorz / int_ceilingz in the backend. 2022-10-25 07:07:00 +02:00
Christoph Oelckers
0655db77b9 - delete set_int_floorz and set_int_ceilingz. 2022-10-25 07:07:00 +02:00
Christoph Oelckers
81456e4d33 - floatified wave parameters for TranslateSector 2022-10-25 07:06:59 +02:00
Christoph Oelckers
12bfd830c9 - removed the wrappers. 2022-10-25 07:06:59 +02:00
Christoph Oelckers
4eeeb00c1b - floatified VDoorBusy 2022-10-25 07:06:59 +02:00
Christoph Oelckers
55dea1d348 - floatified VSpriteBusy 2022-10-25 07:06:59 +02:00
Christoph Oelckers
d96c7c64c7 - floatified VCrushBusy 2022-10-25 07:06:59 +02:00
Christoph Oelckers
b9f192d6ee - floatified plane stuff in ZTranslateSector 2022-10-25 07:06:59 +02:00
Christoph Oelckers
23f2e5a7b2 - use floats for floor/ceiling conditions. 2022-10-25 07:06:59 +02:00
Christoph Oelckers
3b88f7db3e - floatified the variables. 2022-10-25 07:06:58 +02:00
Christoph Oelckers
4114f21323 - added wrapper function for these variables. 2022-10-25 07:06:58 +02:00
Christoph Oelckers
6dbb5a0b8c - renamed 4 fields in XSECTOR 2022-10-25 07:06:58 +02:00
Christoph Oelckers
9c698c6044 - 3 minor changes. 2022-10-25 07:06:58 +02:00
Christoph Oelckers
89cfb87072 - floatified 2 functions in aigarg.cpp 2022-10-25 07:06:58 +02:00
Christoph Oelckers
9d19b61cf9 - 4 functions in aicult.cpp 2022-10-25 07:06:58 +02:00
Christoph Oelckers
64619478fa - floatified 2 functions in aicaleb.cpp 2022-10-25 07:06:58 +02:00
Christoph Oelckers
1c23a2aa32 - floatified SeqAttackCallback 2022-10-25 07:06:58 +02:00
Christoph Oelckers
37ca106417 - floatified gargThinkTarget 2022-10-25 07:06:58 +02:00
Christoph Oelckers
8d18c005de - floatified ThrowSSeqCallback 2022-10-25 07:06:57 +02:00
Christoph Oelckers
a7b23fe9ea - floatified BlastSSeqCallback 2022-10-25 07:06:57 +02:00
Christoph Oelckers
8b2ddfadf6 - restore code as it was, buggy as it may be. 2022-10-25 07:06:57 +02:00
Christoph Oelckers
0399cf17fe - floatified cerberusBurnSeqCallback2 2022-10-25 07:06:57 +02:00
Christoph Oelckers
6c77d1d5d3 - floatified cerberusBiteSeqCallback 2022-10-25 07:06:57 +02:00
Christoph Oelckers
ca1e9efbea - 2 functions in aicaleb.cpp. 2022-10-25 07:06:57 +02:00
Christoph Oelckers
5e2e53d684 - more CanMove fixes, plus salvaging the rest of the old commit.
CanMove twice uses the texel-based nRange as a Build-unit value, this caused strange problems with the initial floatification.
2022-10-25 07:06:57 +02:00
Christoph Oelckers
138ba53ace - fix the HitScan call in CanMove.
This was picking an unexpected overload because the second parameter was a float but with an integer-range value.
2022-10-25 07:06:57 +02:00
Mitchell Richters
180d020620 - Blood: Floatified CanMove(). 2022-10-25 07:06:56 +02:00
Christoph Oelckers
2af18ec277 - remap all easy HitScan calls with zero range to the new base function. 2022-10-25 07:06:56 +02:00
Christoph Oelckers
6b579156aa - Blood HitScan fixes
- changed target parameter of hitscan to a double to simplify its handling.
- HitScan's nRange parameter may be an int, but it is in texel units, not Build units.
2022-10-25 07:06:56 +02:00
Christoph Oelckers
1d8dccca04 - floatified HitScan and use a proper vector calculation for hitscangoal.
This should be on the trace, not use a totally different direction.
2022-10-25 07:06:56 +02:00
Christoph Oelckers
2fe5655394 - added 'Resized()' to TVector2 and fixed its const state for all vectors. 2022-10-25 07:06:56 +02:00
Christoph Oelckers
a4ec938526 - renamed HitScan to HitScan_ as a refactoring aid. 2022-10-25 07:06:56 +02:00
Christoph Oelckers
049ced83f6 - floatified cerberusBurnSeqCallback 2022-10-25 07:06:56 +02:00
Mitchell Richters
2baf35ed2d - Slightly tidy up PlayerHorizon::applyinput(). 2022-10-25 07:06:55 +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
1e19b32b59 - Add CVAR to allow unclamping the player's view pitch. 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
0d8b2ba59d - Tidy up all constants in gameinput.cpp and convert to native degrees/pitch where appropriate. 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
a952c35669 - SW: Convert DoPlayerDeathHoriz() to work on pitch and remove now-unused buildhoriz(). 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
eedcfb46c6 - Convert calcviewpitch() to work with a temporary DAngle so we can eliminate the temporary tanhoriz() friend. 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
06a9a7b1a7 - SW: Change all weapon recoils to work on pitch. 2022-10-25 07:06:54 +02:00
Mitchell Richters
5bf23f0642 - Develop new scaled horizon return to centre with initial return from full articulation scaled by the pitch's sine.
* When coming back from a full view pitch using the original algorithm, the initial snap-back from 90 degrees is very aggressive.
* Return to centre speed retuned to be 1:1 to the ms with the tangent at Duke/SW's clamped pitch.
2022-10-25 07:06:54 +02:00
Mitchell Richters
d923ef9a8c - Perform horizon's return to centre using pitch instead of tangent.
* Return to centre speed tuned to be 1:1 to the ms with the tangent at Duke/SW's clamped pitch.
2022-10-25 07:06:53 +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
Mitchell Richters
f6f88f587d - SW: Consolidate random range applied to weapon vel.Z into an inline. 2022-10-25 07:06:53 +02:00
Mitchell Richters
fcdb360b92 - Add fixedhoriz::Sgn(). 2022-10-25 07:06:53 +02:00
Mitchell Richters
e4ae726015 - Rename fixedhoriz::aspitch() to Degrees() to match DAngle objects. 2022-10-25 07:06:53 +02:00
Mitchell Richters
5e11fc1a15 - Remove unused fixedhoriz methods and friends. 2022-10-25 07:06:52 +02:00
Mitchell Richters
d00108b9cf - Blood: Repair life leach turret mode where target's position and not velocity was used. 2022-10-25 07:06:52 +02:00
Mitchell Richters
ef4b72d18e - Blood: Floatify LifeLeechOperate().
* These divscales hurt my soul...
2022-10-25 07:06:52 +02:00
Christoph Oelckers
1255fda4c1 - two more functions in aibeast.cpp.
Note that the eyeHeight adjustment was removed because it was applied incorrectly and essentially non-functional.
eyeHeight is in world coordinates but was used as if it was Q24.8, resulting in a value too small to be significant.
2022-10-25 07:06:52 +02:00
Christoph Oelckers
e9fc0d09a9 - renaming things in StompSeqCallback 2022-10-25 07:06:52 +02:00
Christoph Oelckers
0ed4b8b01a - Blood: floatified SlashSeqCallback 2022-10-25 07:06:52 +02:00
Christoph Oelckers
c1da02de8a - Blood: floatified calebThinkSwimChase 2022-10-25 07:06:52 +02:00
Christoph Oelckers
c85a95ca03 - Blood: floatified cultThinkChase
Welcome to spaghetti-land, this is one 400 line monstrosity. :(
2022-10-25 07:06:52 +02:00
Christoph Oelckers
3055a1e5a7 - Blood: renamed functions and floatified cultThrowSeqCallback3 2022-10-25 07:06:52 +02:00
Christoph Oelckers
fd7c47ce2b - Blood: floatified cultThrowSeqCallback 2022-10-25 07:06:51 +02:00
Christoph Oelckers
c1e0e04016 - Blood: floatified cerberusThinkChase 2022-10-25 07:06:51 +02:00
Christoph Oelckers
79d17dc645 - floatified cerberusThinkTarget 2022-10-25 07:06:51 +02:00
Christoph Oelckers
d3c3363e92 - Blood: floatified calebThinkChase 2022-10-25 07:06:51 +02:00
Christoph Oelckers
9394691601 - Blood: floatified burnThinkGoto 2022-10-25 07:06:51 +02:00
Christoph Oelckers
3c2239533b - Blood: floatified burnThinkChase 2022-10-25 07:06:51 +02:00
Christoph Oelckers
f2f74fc239 - Blood: floatified eelThinkChase 2022-10-25 07:06:51 +02:00
Christoph Oelckers
beefa700b7 - Blood: floatified eelThinkPonder 2022-10-25 07:06:51 +02:00
Christoph Oelckers
0672a1a958 - replaced mapangle(85) with DAngle15. 2022-10-25 07:06:50 +02:00
Christoph Oelckers
2c46d66c1e - Blood: floatified beastThinkChase 2022-10-25 07:06:50 +02:00
Christoph Oelckers
105e20a32d - eliminated lots of approxDist calls.
Only the really simple ones.
2022-10-25 07:06:50 +02:00
Christoph Oelckers
dcfac1c930 - handle a few nAccel values that do not match the generic pattern 2022-10-25 07:06:50 +02:00
Christoph Oelckers
9927d5e25d - always use FrontSpeed() access function for nAccel.
This gets rid of a large amount of FixedToFloat calls.
2022-10-25 07:06:50 +02:00
Christoph Oelckers
8b96a93e80 - turned TurnRange calculation into a subfunction.
This formula was used in 36 places
2022-10-25 07:06:50 +02:00
Christoph Oelckers
e309d05161 - use literal constant for this. 2022-10-25 07:06:50 +02:00
Christoph Oelckers
6a0b552352 - floatified first half of aibat.cpp.
Note: The scale factor for actFireVector calls with XY set per ToVector is 64. The vector being passed to it uses the same scale for Z as for XY.
This means that XY is 1/16384 of the fixed point vector and Z is 1/256, meaning the scale for XY must be 64x higher.
2022-10-25 07:06:50 +02:00
Christoph Oelckers
ca58e3fc6b - the rest of ai.cpp. 2022-10-25 07:06:49 +02:00
Christoph Oelckers
48cadbd392 remaining floatification on aiLookForTarget 2022-10-25 07:06:49 +02:00
Christoph Oelckers
fafb4cfc29 - remaining floatification on aiThinkTarget 2022-10-25 07:06:49 +02:00
Christoph Oelckers
298d029d55 - found one last place where an integer wrapper was called in actor.cpp 2022-10-25 07:06:49 +02:00
Christoph Oelckers
6c98a07a60 - elininated the actSpawnThing wrapper. 2022-10-25 07:06:49 +02:00
Christoph Oelckers
f7fe24b19e - some remaining cleanup on actor.cpp 2022-10-25 07:06:49 +02:00
Christoph Oelckers
b0160bb87c - removed the int vector in actCheckExplosion. 2022-10-25 07:06:49 +02:00
Christoph Oelckers
080d6969ec - Blood: floatified some smaller parts in actor.cpp 2022-10-25 07:06:49 +02:00
Christoph Oelckers
b29000c9e1 - this wasn't really a fixed point value - just some scaling factor, so it shouldn't use FixedToFloat. 2022-10-25 07:06:48 +02:00
Christoph Oelckers
c94a361788 - deleted int_hitpos. 2022-10-25 07:06:48 +02:00
Christoph Oelckers
0ef9527209 - eliminated the last uses of int_hitpos. 2022-10-25 07:06:48 +02:00
Christoph Oelckers
a655b3835f - like actFireVector, the direction vector needs to have unit length in 2D for actFireMissile as well.
May later be turned into a 3D unit vector for pitch correct missile movement.
2022-10-25 07:06:48 +02:00
Christoph Oelckers
5e4d45f6b8 - floatified actFireMissile 2022-10-25 07:06:48 +02:00
Christoph Oelckers
a070342f0c - floatified actFireThing 2022-10-25 07:06:48 +02:00
Christoph Oelckers
861423248f - Backend update from GZDoom.
Mainly fixing CVar setup.
2022-10-25 07:03:25 +02:00
Christoph Oelckers
427e41d388 - allow 'sw...' cheats from the chat in Shadow Warrior. 2022-10-24 23:30:16 +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
f9d8763ed5 - Exhumed: fixed wasp's death animation 2022-10-24 20:56:41 +02:00
Christoph Oelckers
c2e5bdbdce - Exhumed: fixed grenade bouncing. 2022-10-24 20:41:15 +02:00
alexey.lysiuk
2df33e7d8a - removed obsolete defaults from Cocoa backend
This legacy code from the time of exclusive fullscreen mode began to crash after changes in console variables handling
2022-10-24 10:26:57 +03:00
Christoph Oelckers
38998f36b5 - minor int_* replacements in the backend. 2022-10-23 18:47:17 +02:00
Christoph Oelckers
a409e03570 - deleted set_int_ang 2022-10-23 18:47:17 +02:00
Christoph Oelckers
5fa27c2a72 - replaced the last set_int_ang calls. 2022-10-23 18:47:17 +02:00
Christoph Oelckers
4500fe6325 - Blood: replaced all calls to randomAngle with RandomAngle 2022-10-23 18:47:17 +02:00
Christoph Oelckers
a8cc6c1189 - floatified angles in useSectorWindGen plus two other set_int_ang. 2022-10-23 18:47:17 +02:00
Christoph Oelckers
a618161387 - floatified nnExtSpawnDude. 2022-10-23 18:47:16 +02:00
Christoph Oelckers
0eacc8e68e - add_int_z is gone. 2022-10-23 18:47:16 +02:00
Christoph Oelckers
8505757d74 - floatified most of ProcessMotion. 2022-10-23 18:47:16 +02:00
Christoph Oelckers
a90eb853d5 - floatified fxBouncingSleeve and fxPodBloodSplat 2022-10-23 18:47:16 +02:00
Christoph Oelckers
e2d0cbf772 - allow entering cheats in the chat editor without using '#'. 2022-10-23 18:46:18 +02:00
Christoph Oelckers
de70e802ec - downgraded all LGPL3 license headers in the backend to LGPL2.
This had already been agreed by all involved authors, but apparently not all files were changed accordingly.
2022-10-23 18:46:17 +02:00
Christoph Oelckers
c23d23ea60 - Blood: floatified fxBloodBits 2022-10-22 20:41:27 +02:00
Christoph Oelckers
fdb31fc2cc - missing declaration. 2022-10-22 20:41:27 +02:00
Christoph Oelckers
f1514bbc52 - alternative math for slope planes in hitscan. 2022-10-22 20:41:27 +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
babbad83af - fixed FAFhitscan to not pass the hitpos back into hitscan.
This will overwrite the scan's start and cause the function to malfunction.
2022-10-22 20:41:27 +02:00
Christoph Oelckers
2991bc752b - split out the pure math stuff from gamefuncs.h into a utility header in 'common'.
Also did a bit of reshuffling on gamefuncs.h to group content better.
2022-10-22 20:41:26 +02:00
Christoph Oelckers
116ba340b2 - further hitscan overhaul.
* added floating point sprite intersect handlers for all sprite types. Hopefully this code is more understandable than Build's original variant.
* cleaned up intersectSprite a bit and moved the geometry math into the utility header.
* made some minor corrections to neartag.
* moved SW's testpointinquad to the backend because it was useful here.
2022-10-22 20:41:26 +02:00
Mitchell Richters
6ca42dc08c - Slightly clean up calcChaseCamPos(). 2022-10-22 20:41:26 +02:00
Christoph Oelckers
6c6fdaf332 - floatified actSpawnDude and removed its unused last parameter.
All callers left it at 0.
2022-10-22 20:41:26 +02:00
Christoph Oelckers
aa0b6bb077 - changed parameters in a few HitScan calls in condCheckSprite 2022-10-22 20:41:26 +02:00
Christoph Oelckers
fc011e847f - Blood: floatified actCheckTraps 2022-10-22 20:41:26 +02:00
Christoph Oelckers
8d1938b363 - Blood: cleaned up various angle and distance checks in AI code 2022-10-22 20:41:26 +02:00
Christoph Oelckers
e6cfb165f8 - converted all remaining add_int_bvel* calls. 2022-10-22 20:41:26 +02:00
Christoph Oelckers
068feae64e - floatified actFireVector. 2022-10-22 20:41:25 +02:00
Christoph Oelckers
5c6cac49c8 - changed a few vel setter calls. 2022-10-22 20:41:25 +02:00
Christoph Oelckers
e00eda6cb8 - Blood: floatified VectorScan.
The texture checks in here definitely need some more verification, though.
Doing a quick test looked ok, but I do not think this was enough.
2022-10-22 20:41:25 +02:00
Christoph Oelckers
3b76de7b7d - Blood: renamed actFireVector's arguments.
No way this can be refactored with names like a2, a3, a4 etc...
2022-10-22 20:41:25 +02:00
Christoph Oelckers
d1d68f1570 - handled the last remaining set_int_bvel* calls in nnexts.cpp. 2022-10-22 20:41:25 +02:00
Christoph Oelckers
88feac4272 - floatified useVelocityChanger 2022-10-22 20:41:25 +02:00
Christoph Oelckers
044b9e555b - floatified a bit more of nnExtProcessSuperSprites 2022-10-22 20:41:25 +02:00
Christoph Oelckers
fd5bbbedaf - floatified aiPatrolMove 2022-10-22 20:40:42 +02:00
Mitchell Richters
0993799967 - Blood: Use sprite angle radians in GameInterface::UpdateSounds(). 2022-10-22 19:45:10 +02:00
Mitchell Richters
633fb01487 - Blood: Rename some weapon function variables to give us half a chance of refactoring it. 2022-10-22 19:45:10 +02:00
Mitchell Richters
cea0e74299 - Blood: Floatified remaining bits of playerProcess(). 2022-10-22 19:45:10 +02:00
Mitchell Richters
32c784cd0f - Blood: Floatified remaining bits of ProcessInput(). 2022-10-22 19:45:10 +02:00
Christoph Oelckers
781c2492a9 - Blood: floatified aiFightDudeCanSeeTarget + aiPatrolMarkerReached 2022-10-22 19:45:10 +02:00
Christoph Oelckers
ead39cb010 - Blood: floatified parts of condCheckDude 2022-10-22 19:45:09 +02:00
Christoph Oelckers
92f958ded0 - Blood: floatified debrisBubble 2022-10-22 19:45:09 +02:00
Christoph Oelckers
39d100c970 - Blood: floatified debrisConcuss 2022-10-22 19:45:09 +02:00
Christoph Oelckers
549f062973 - Blood: floatified windGenDoVerticalWind 2022-10-22 19:45:09 +02:00
Christoph Oelckers
c995777ef7 - restored DYN_OPENAL which got accidentally deleted by the last backend update. 2022-10-22 19:43:55 +02:00
Christoph Oelckers
09d66914f4 - LinePlaneIntersect
This is for calculating intersections with slope sprites later.
2022-10-22 12:17:04 +02:00
Mitchell Richters
ef03e64025 - Blood: Floatified ActionScan(). 2022-10-22 12:17:04 +02:00
Mitchell Richters
b8b5fe9162 - Blood: Floatified playerStart() and ZONE::ang. 2022-10-22 12:17:04 +02:00
Christoph Oelckers
243c071834 - got rid of bsinf and bcosf. 2022-10-22 12:17:04 +02:00
Christoph Oelckers
6dd7fac902 - eliminated the sine table and moved tilehasmodelorvoxel to a different file to delete engine.cpp. 2022-10-22 12:17:04 +02:00
Christoph Oelckers
ef2f781e09 - rewrite from scratch of neartag. 2022-10-22 12:17:04 +02:00
Christoph Oelckers
600648939a - removed some unnecessary distance checks.
These are the same as the specified max distance and redundant.
2022-10-22 12:17:03 +02:00
Christoph Oelckers
aae468e2b2 - migrated all of SW's neartag calls to the fully floatified version 2022-10-22 12:17:03 +02:00
Christoph Oelckers
20043f6223 - use symbolic constants in neartag calls. 2022-10-22 12:17:03 +02:00
Christoph Oelckers
3f540c3201 - removed unused global variable. 2022-10-22 12:17:03 +02:00
Christoph Oelckers
0501482160 - added missing distance check for sprites to hitscan. 2022-10-22 12:17:03 +02:00
Christoph Oelckers
dcd4ee133b - use a simpler method to calculate the intersection point in intersectSprite and fixed the distance check. 2022-10-22 12:17:03 +02:00
Christoph Oelckers
9c564db015 - replaced try_facespr_intersect with something independently written. 2022-10-22 12:17:03 +02:00
Christoph Oelckers
9ce30d7963 - deleted the unused integer rotatepoint function. 2022-10-22 12:17:03 +02:00
Christoph Oelckers
28a169d02d - cansee floating point rewrite using backend utilities. 2022-10-22 12:17:02 +02:00
Christoph Oelckers
14a8dd451e - redid lintersect with backend utilities.
I left out EDuke32's new handling for collinear traces because it not only was never active but also makes really no sense with neartag which is lintersect's only caller.
2022-10-22 12:17:02 +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
9172ab27ca - move all deprecated functions to the bottom in gamefuncs.h. 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
e4ca397898 - corrected sector check output in validateSprite. 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
Christoph Oelckers
2cc81d0165 - floating point version of rintersect, based on GZDoom's P_InterceptVector. 2022-10-22 12:17:01 +02:00
Christoph Oelckers
b7ddd9e784 - added InterceptVector from GZDoom.
This will be useful for some backend stuff.
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
335df86213 - output floating point coordinates in validateSprite 2022-10-22 12:17:00 +02:00
Christoph Oelckers
a8ae8babe2 - cleanup of updatesector.h
Mainly not routing the float variants through the integer variants anymore and deprecating those.
FindSector was also moved into DoUpdateSector because both always need to be used together.
2022-10-22 12:17:00 +02:00
Mitchell Richters
85f716e49b - floatify calcviewpitch 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
bd9dfadf6d - use REPEAT_SCALE ih the wall/floorsprite getter functions. 2022-10-22 12:16:57 +02:00
Christoph Oelckers
e6807964ae - don't use Build utilities in the render backend. 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
b2d1988e50 - use engine utilities for the section builder’s inside check 2022-10-22 12:16:57 +02:00
Christoph Oelckers
f5e6503b26 - merge NearestPointLine into NearestPointOnWall 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
c87b4a581b - got rid of the WallStart/End macros
They never got much use and the places where they were used work just as well without them
2022-10-22 12:16:56 +02:00
Christoph Oelckers
cbfc9a8252 - added spriteGetZOfSlopeF for the backend 2022-10-22 12:16:56 +02:00
Christoph Oelckers
fd4f04b5fd - eliminated fixed point GetSoundPos variants 2022-10-22 12:16:56 +02:00
Christoph Oelckers
ab23f6b114 - floatify clipangle math in HWLineToLinePortal::Setup 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
bbf77c908b - pass a floating point view position to the bunch drawer 2022-10-22 12:16:56 +02:00
Christoph Oelckers
16f61800ef - simplified code a bit in clipmove 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
Christoph Oelckers
0b8f7f6a9f - deleted add_int_pos 2022-10-22 12:16:53 +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