Commit graph

14595 commits

Author SHA1 Message Date
Mitchell Richters
41a42e5a6d - Fix some warnings in MSVC. 2023-10-08 08:52:11 +11:00
Mitchell Richters
6b35be636a - Bump MAXVOXELS from 1024 to 2048. 2023-10-08 08:18:05 +11:00
Mitchell Richters
961770ea31 - Add getTicrateAngle() to reduce the amount of times DAngle::fromDeg() needs to be called in input code. 2023-10-08 08:17:40 +11:00
Christoph Oelckers
aa54d3af10 backend update from GZDoom
LZMA update plus several ZScript improvements.
2023-10-07 18:44:31 +02:00
Mitchell Richters
83d3784007 - Duke: Repair crash when calling OnEvent(EVENT_ENTERLEVEL). 2023-10-06 15:16:02 +11:00
Mitchell Richters
b7702afacf - SW: No need to mark off PlayerArray for saving game-side. 2023-10-05 19:23:33 +11:00
Mitchell Richters
a179527209 - Slight clean-up in gameinput.cpp. 2023-10-05 19:23:33 +11:00
Mitchell Richters
35aa81d912 - Re-add lost paused check in GameInput::GetInput(). 2023-10-05 15:08:24 +11:00
Mitchell Richters
ab239b0899 - Exhumed: A little bit more cleanup. 2023-10-05 14:07:04 +11:00
Mitchell Richters
aca2302878 - Exhumed: Remove static copy of last yaw input from draw code. 2023-10-05 13:26:38 +11:00
Mitchell Richters
483ebad96a - Duke: Interpolate getavel() since we now have the last packet available to do so. 2023-10-05 13:25:38 +11:00
Mitchell Richters
29fc1240b4 - Remove unnecessary clamp in PlayerAngles::doViewPitch(). 2023-10-05 13:25:02 +11:00
Mitchell Richters
03a69c24b3 - Move syncinput mechanism into GameInput object. 2023-10-05 13:10:47 +11:00
Mitchell Richters
33bc4b08cb - Modernise function declarations in Cephis C math to address ongoing GCC and Clang warnings.
Examples:

/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c: In function ‘c_exp’:
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:171:48: warning: declaration of built-in function ‘floor’ without a prototype; expected ‘double(double)’ [-Wbuiltin-declaration-mismatch]
  171 | double polevl(double, void *, int), floor(), ldexp();
      |                                                ^~~~~
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:171:57: warning: declaration of built-in function ‘ldexp’ without a prototype; expected ‘double(double,  int)’ [-Wbuiltin-declaration-mismatch]
  171 | double polevl(double, void *, int), floor(), ldexp();

/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:200:16: warning: passing arguments to 'polevl' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
px = x * polevl( xx, P, 2 );
               ^
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:201:17: warning: passing arguments to 'polevl' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
x =  px/( polevl( xx, Q, 3 ) - px );
                ^
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:167:8: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
double c_exp(x)
       ^
3 warnings generated.
2023-10-05 10:32:44 +11:00
Mitchell Richters
026c9a44e9 - Fix most warnings in Clang under Linux. 2023-10-05 09:57:31 +11:00
Mitchell Richters
bd5fff4040 - Duke: Remove casts from setting RR vehicle velocities and consolidate setup into an inline. 2023-10-04 22:05:03 +11:00
Mitchell Richters
7498be6f5d - Duke: Change a few triple negations from the wrapper removal process. 2023-10-04 20:39:37 +11:00
Mitchell Richters
98e83fcc3a - Use DCorePlayer::GetActor() inside of CCMD(warptocoords). 2023-10-04 19:32:24 +11:00
Mitchell Richters
7e3a1dfb1e - Fix most GCC warnings in the backend/common code code.
* Most of them were just signedness issues. Hopefully I got everything right here.
* 3rd party stuff deliberately not touched.
2023-10-04 19:28:26 +11:00
Mitchell Richters
623e453d4d - Fix all GCC warnings in the game-side code.
* Most of these were due to mixed spaces/tabs playing nastiness with non-braced if/else statements.
2023-10-04 19:28:25 +11:00
Mitchell Richters
94e23343e1 - Store scaleAdjust directly inside the GameInput object. 2023-10-04 19:28:25 +11:00
Mitchell Richters
80dd01aef0 - Remove GameInput friendships inside PlayerAngles in lieu of a local inline function. 2023-10-04 19:28:25 +11:00
Mitchell Richters
eacc882096 - Exhumed: Manual sweep for last replacements of player index for pointer. 2023-10-04 19:28:25 +11:00
Mitchell Richters
69347e80e7 - Exhumed: Clean up player accesses in player.cpp. 2023-10-04 19:28:25 +11:00
Mitchell Richters
2ae3a5362e - Exhumed: Clean up player accesses in map.cpp and move.cpp. 2023-10-04 19:28:24 +11:00
Mitchell Richters
3d7b7f8a3e - Exhumed: Clean up player accesses in items.cpp and associated utilities. 2023-10-04 19:28:24 +11:00
Mitchell Richters
f3ef64b2ac - Exhumed: Clean up player accesses in gun.cpp and associated utilities. 2023-10-04 19:28:24 +11:00
Mitchell Richters
27a41121ec - Exhumed: Clean up player accesses in grenade code. 2023-10-04 19:28:24 +11:00
Mitchell Richters
0411598ee0 - Exhumed: Clean up player accesses in cheats.cpp. 2023-10-04 12:52:29 +11:00
Mitchell Richters
8e49d24ddc - Exhumed: Clean up player accesses in AddAmmo(). 2023-10-04 12:52:16 +11:00
Mitchell Richters
e1cbc4ffc6 - Exhumed: Convert most of Ra to pointers. 2023-10-04 12:45:02 +11:00
Mitchell Richters
2e83f46861 - Duke: Clean up player accesses in weapons code. 2023-10-04 12:41:11 +11:00
Mitchell Richters
e39002ddb3 - SW: Clean up player accesses in DoGet(). 2023-10-04 12:17:11 +11:00
Mitchell Richters
79995ba8ce - Duke: Manual sweep for last replacements of GetActor() calls for stack pointer. 2023-10-04 12:13:42 +11:00
Mitchell Richters
c67af979cb - Duke: Manual sweep for last replacements of player index for pointer. 2023-10-04 12:00:04 +11:00
Mitchell Richters
06a7118dcb - Duke: Clean up player/actor accesses in checksectors_*(). 2023-10-04 11:36:47 +11:00
Mitchell Richters
5ddd201b33 - Duke: Clean up player/actor accesses in checkhitswitch() and associated utilities. 2023-10-04 11:32:15 +11:00
Mitchell Richters
b36c6af6cd - Duke: Clean up player/actor accesses in moveclouds(). 2023-10-04 11:21:29 +11:00
Mitchell Richters
2fb1dea9e0 - Duke: Clean up player/actor accesses in checkhitdefault(). 2023-10-04 11:21:17 +11:00
Mitchell Richters
07466f6080 - Duke: Clean up player/actor accesses in doanimations(). 2023-10-04 11:17:56 +11:00
Mitchell Richters
9161d152de - Duke: Clean up player/actor accesses in findplayer utilities. 2023-10-04 11:15:22 +11:00
Mitchell Richters
a2c8066f78 - Duke: Clean up actor accesses in premap.cpp. 2023-10-04 11:07:52 +11:00
Mitchell Richters
89708731a3 - Duke: Clean up actor accesses in player_d.cpp. 2023-10-04 10:57:23 +11:00
Mitchell Richters
9c8b2abf07 - Duke: Clean up player/actor accesses in processinput_*(). 2023-10-04 10:53:56 +11:00
Mitchell Richters
df673952d9 - Duke: Clean up player/actor accesses in processweapon(). 2023-10-04 10:40:20 +11:00
Mitchell Richters
3ee76dee66 - Duke: Clean up player/actor accesses in player_w.cpp. 2023-10-04 10:38:02 +11:00
Mitchell Richters
2c78fba4a2 - Duke: Clean up player/actor accesses in operateweapon(). 2023-10-04 10:30:13 +11:00
Mitchell Richters
f14d7f3612 - Duke: Clean up player/actor accesses in fireweapon(). 2023-10-04 10:25:46 +11:00
Mitchell Richters
e025e0d2a1 - Duke: Clean up player/actor accesses in operateTripbomb(). 2023-10-04 10:22:20 +11:00
Mitchell Richters
c4792b1273 - Duke: Clean up player/actor accesses in movement(). 2023-10-04 10:20:07 +11:00
Mitchell Richters
2d4a1779a5 - Duke: Clean up player/actor accesses in operateJetpack(). 2023-10-04 10:16:15 +11:00
Mitchell Richters
cf38a7b1c1 - Add player's view angles to stat coord. 2023-10-04 09:51:20 +11:00
Mitchell Richters
686b121e45 - Duke: Repair SB_CENTERVIEW not re-applying on the first tic. 2023-10-04 09:27:15 +11:00
Mitchell Richters
fd07347bce - Centralise input clamping to occur centrally when the engine requests a packet. 2023-10-04 08:56:19 +11:00
Mitchell Richters
14ffc7ced7 - Make some utilities in vectors.h available as constexpr. 2023-10-04 08:32:47 +11:00
Mitchell Richters
8980f5592e - Make TRotator<T> available as constexpr. 2023-10-04 08:32:12 +11:00
Mitchell Richters
275d43cff6 - Make TMatrix3x3<T> available as constexpr. 2023-10-04 08:31:24 +11:00
Mitchell Richters
873287b9df - Make TVector4<T> available as constexpr. 2023-10-04 08:30:34 +11:00
Mitchell Richters
6afa8dcd2b - Make TVector3<T> available as constexpr. 2023-10-04 08:29:49 +11:00
Mitchell Richters
08b2bf5267 - Make TVector2<T> available as constexpr. 2023-10-04 08:29:01 +11:00
Christoph Oelckers
77f61004c3 fix Vectoe3 clamp for real. 2023-10-03 14:57:17 +02:00
Mitchell Richters
a8f03ed10d - Duke: Clean up actor accesses in player.cpp. 2023-10-03 23:07:50 +11:00
Mitchell Richters
a51521381f - Duke: Clean up player/actor accesses in underwater(). 2023-10-03 23:07:50 +11:00
Mitchell Richters
5d628d712c - Duke: Clean up player/actor accesses in checkp(). 2023-10-03 23:07:50 +11:00
Mitchell Richters
f80290d80e - Duke: Clean up player/actor accesses in haslock(). 2023-10-03 23:07:49 +11:00
Mitchell Richters
31a43cdd79 - Duke: Clean up player/actor accesses in shoot(). 2023-10-03 23:07:49 +11:00
Mitchell Richters
8b62cf63fb - Duke: Clean up player/actor accesses in all input look functions. 2023-10-03 23:07:49 +11:00
Mitchell Richters
2225fea10c - Duke: Clean up player/actor accesses in playerJump(). 2023-10-03 23:07:49 +11:00
Mitchell Richters
f135097193 - Duke: Clean up player/actor accesses in playerCrouch(). 2023-10-03 23:07:49 +11:00
Mitchell Richters
ce2487e18a - Duke: Clean up player/actor accesses in timedexit(). 2023-10-03 23:07:49 +11:00
Mitchell Richters
2e2efaea11 - Duke: Clean up player/actor accesses in endoflevel(). 2023-10-03 23:07:49 +11:00
Mitchell Richters
497d2d26dd - Duke: Clean up player/actor accesses in playerisdead(). 2023-10-03 23:07:48 +11:00
Mitchell Richters
7186c3e9f7 - Duke: Clean up player/actor accesses in footprints(). 2023-10-03 23:07:48 +11:00
Mitchell Richters
079df4dd8f - Duke: Clean up player/actor accesses in makepainsounds(). 2023-10-03 23:07:48 +11:00
Mitchell Richters
0749a65c81 - Duke: Clean up player/actor accesses in dokneeattack(). 2023-10-03 23:07:48 +11:00
Mitchell Richters
2ff4aaf6b8 - Duke: Clean up player/actor accesses in PlayerColorChanged(). 2023-10-03 23:07:48 +11:00
Mitchell Richters
50acc673c9 - Duke: Clean up player/actor accesses in noise.cpp. 2023-10-03 23:07:48 +11:00
Mitchell Richters
20ba784ab7 - Duke: Clean up player/actor accesses in hudweapon_*(). 2023-10-03 23:07:48 +11:00
Mitchell Richters
a508dfff31 - Duke: Clean up player/actor accesses in checkcursectnums(). 2023-10-03 23:07:47 +11:00
Mitchell Richters
454c1bfec0 - Duke: Clean up player/actor accesses in selectweapon_*(). 2023-10-03 23:07:47 +11:00
Mitchell Richters
6dbe43716a - Duke: Clean up player/actor accesses in hud_input(). 2023-10-03 23:07:47 +11:00
Mitchell Richters
f3bc7d9ce0 - Duke: Clean up player/actor accesses in displayweapon_*(). 2023-10-03 23:07:47 +11:00
Mitchell Richters
27d859229f - Duke: Clean up player/actor accesses in displaymasks_*(). 2023-10-03 23:07:47 +11:00
Mitchell Richters
d8b670276a - Duke: Convert all the aplWeapon* crap to work on player pointers. 2023-10-03 23:07:47 +11:00
Mitchell Richters
836ed7d931 - Duke: Pass player pointer through to alterang(). 2023-10-03 23:07:46 +11:00
Mitchell Richters
cd755a8336 - Duke: Move PlayerUseItem() wrapper into DDukePlayer. 2023-10-03 23:07:46 +11:00
Mitchell Richters
ab47cf185e - Duke: Move PlayerUseItem() wrapper into DDukePlayer.
* Regex used: `PlayerUseItem\(\w+\,\s?(\w+)\)` -> `p->itemUsed($1)`.
2023-10-03 23:07:46 +11:00
Mitchell Richters
0d25bbe84a - Duke: Remove PlayerInput() wrapper.
* Regex used: `PlayerInput\(\w+\,\s?(SB_\w+)\)` -> `!!(p->cmd.ucmd.actions & $1)`.
2023-10-03 23:07:46 +11:00
Mitchell Richters
68bf5f6997 - Duke: Remove PlayerInputBits() wrapper. 2023-10-03 23:07:46 +11:00
Mitchell Richters
ec5cc18470 - Duke: Remove PlayerSetInput() wrapper. 2023-10-03 23:07:46 +11:00
Mitchell Richters
7cd1780004 - Duke: Remove PlayerNewWeapon() wrapper. 2023-10-03 23:07:46 +11:00
Mitchell Richters
af99ba9ae2 - Duke: Got rid of two more InputPacket wrappers. 2023-10-03 23:07:45 +11:00
Mitchell Richters
984ae6b098 - SW: Shorten the setup in DoPlayerVehicleInputScaling(). 2023-10-03 23:07:45 +11:00
Mitchell Richters
d6de57095d - Take better advantage of InputPacket::ang's FRotator status.
* Change it to a DRotator as that's what the game is expecting. Too many narrowings against DAngle objects needed.
* Utilise object methods where possible.
* Do all math against the object where possible, not its members.
2023-10-03 23:07:45 +11:00
Mitchell Richters
1732cd2e83 - Change InputPacket angles to an FRotator. 2023-10-03 23:07:45 +11:00
Mitchell Richters
95fc2ac6f1 - Make the last commit compile. 2023-10-03 23:07:45 +11:00
Mitchell Richters
f88d435335 - Take better advantage of InputPacket::vel's FVector3 status.
* Change it to a DVector3 as that's what the game is expecting. Too many narrowings against DAngle objects needed.
* Utilise object methods where possible.
* Do all math against the object where possible, not its members.
2023-10-03 23:07:44 +11:00
Mitchell Richters
828e46a8da - Remove the TVector2 (const TVector3<vec_t> &other) constructor.
* This narrowing constructor was causing a problem with a `clamp()` overload in the next commit.
* Believe this is a product of a by-gone time before we had the `XY()` method on `TVector3<T>` objects.
2023-10-03 23:07:44 +11:00
Mitchell Richters
f570cb5d21 - Change InputPacket velocities to an FVector3. 2023-10-03 23:07:44 +11:00
Mitchell Richters
e45d485eb2 - Duke: Get rid of two InputPacket wrappers. 2023-10-03 23:07:43 +11:00