Commit graph

7450 commits

Author SHA1 Message Date
Mitchell Richters
59366d3ffc - Internalise player velocity setup for DCorePlayer::doRollInput().
* Would have been nice to have this constexpr, but can only do that when we switch to C++20.
2023-12-05 22:39:30 +01:00
Mitchell Richters
ce75f7d7ef - Internalise player InputPacket access. 2023-12-05 22:39:30 +01:00
Mitchell Richters
531c95c7ca - Move PlayerAngles class directly into DCorePlayer.
* No refactoring around it yet.
* The #includes could use some cleaning up...
2023-12-05 22:39:30 +01:00
Christoph Oelckers
62c471e225 Duke: fixed breakable ceilings. 2023-12-05 22:39:30 +01:00
Christoph Oelckers
b67f2cb727 added some awful hackery to handle the different offsetting of Blood's native voxels vs. those imported via .DEF. 2023-12-05 22:39:29 +01:00
Christoph Oelckers
375ef31304 removed voxel offsetting in Blood's animateSprites function
Since offsetting is being done in the backend now, this one is redundant.
2023-12-05 22:39:29 +01:00
Christoph Oelckers
9f2808df1f Duke fixed two issues with displaying incorrect sprites
* We cannot check a projectiles owner because it may have been destroyed, so copy all info over
* CON changing an actor's type to one without class did not do anything at all.
2023-12-05 22:39:28 +01:00
Christoph Oelckers
272f44786c added some more symbolic constants. 2023-12-05 22:39:28 +01:00
Christoph Oelckers
e8dd2d5b89 did some flag naming 2023-12-05 22:39:28 +01:00
Christoph Oelckers
1573e6fb49 fix some bad English 2023-12-05 22:39:28 +01:00
Christoph Oelckers
b68e79e4bc use symbolic constants for explosion types. 2023-12-05 22:39:28 +01:00
Christoph Oelckers
54035f9396 replace sprintf with snprintf. 2023-12-05 22:39:27 +01:00
Christoph Oelckers
74f6ff0c03 we really do not need to pack the GAMEOPTIONS struct... 2023-12-05 22:39:27 +01:00
Christoph Oelckers
0c397033f1 added the remaining needed GetChars calls. 2023-12-05 22:39:27 +01:00
Mitchell Richters
31bb7d3348 - Duke: Repair crash when calling OnEvent(EVENT_ENTERLEVEL). 2023-12-05 22:39:25 +01:00
Mitchell Richters
a8ec00d7ce - SW: No need to mark off PlayerArray for saving game-side. 2023-12-05 22:39:25 +01:00
Mitchell Richters
b83f062037 - Exhumed: A little bit more cleanup. 2023-12-05 22:39:25 +01:00
Mitchell Richters
83cd140d75 - Exhumed: Remove static copy of last yaw input from draw code. 2023-12-05 22:39:25 +01:00
Mitchell Richters
11d9739707 - Duke: Interpolate getavel() since we now have the last packet available to do so. 2023-12-05 22:39:24 +01:00
Mitchell Richters
52b20e1f59 - Move syncinput mechanism into GameInput object. 2023-12-05 22:39:24 +01:00
Mitchell Richters
790fc0b28a - Fix most warnings in Clang under Linux. 2023-12-05 22:39:24 +01:00
Mitchell Richters
7e393e04a5 - Duke: Remove casts from setting RR vehicle velocities and consolidate setup into an inline. 2023-12-05 22:39:24 +01:00
Mitchell Richters
6a06df0e45 - Duke: Change a few triple negations from the wrapper removal process. 2023-12-05 22:39:24 +01:00
Mitchell Richters
526db7f8b0 - 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-12-05 22:39:23 +01:00
Mitchell Richters
084be1a45c - Store scaleAdjust directly inside the GameInput object. 2023-12-05 22:39:23 +01:00
Mitchell Richters
bdf566b348 - Remove GameInput friendships inside PlayerAngles in lieu of a local inline function. 2023-12-05 22:39:23 +01:00
Mitchell Richters
23dd0bab87 - Exhumed: Manual sweep for last replacements of player index for pointer. 2023-12-05 22:39:23 +01:00
Mitchell Richters
9871bb4a73 - Exhumed: Clean up player accesses in player.cpp. 2023-12-05 22:39:22 +01:00
Mitchell Richters
33296e61fb - Exhumed: Clean up player accesses in map.cpp and move.cpp. 2023-12-05 22:39:22 +01:00
Mitchell Richters
51b5393a23 - Exhumed: Clean up player accesses in items.cpp and associated utilities. 2023-12-05 22:39:22 +01:00
Mitchell Richters
692d995257 - Exhumed: Clean up player accesses in gun.cpp and associated utilities. 2023-12-05 22:39:22 +01:00
Mitchell Richters
a9ca3d7375 - Exhumed: Clean up player accesses in grenade code. 2023-12-05 22:39:22 +01:00
Mitchell Richters
856b6630f1 - Exhumed: Clean up player accesses in cheats.cpp. 2023-12-05 22:39:22 +01:00
Mitchell Richters
ad5f1d9f7d - Exhumed: Clean up player accesses in AddAmmo(). 2023-12-05 22:39:22 +01:00
Mitchell Richters
d4b0cb14b4 - Exhumed: Convert most of Ra to pointers. 2023-12-05 22:39:22 +01:00
Mitchell Richters
02f8ac3bb3 - Duke: Clean up player accesses in weapons code. 2023-12-05 22:39:21 +01:00
Mitchell Richters
2d6930fddc - SW: Clean up player accesses in DoGet(). 2023-12-05 22:39:21 +01:00
Mitchell Richters
63605f034d - Duke: Manual sweep for last replacements of GetActor() calls for stack pointer. 2023-12-05 22:39:21 +01:00
Mitchell Richters
66a77ea860 - Duke: Manual sweep for last replacements of player index for pointer. 2023-12-05 22:39:21 +01:00
Mitchell Richters
0615eba516 - Duke: Clean up player/actor accesses in checksectors_*(). 2023-12-05 22:39:21 +01:00
Mitchell Richters
48f1be7e0c - Duke: Clean up player/actor accesses in checkhitswitch() and associated utilities. 2023-12-05 22:39:21 +01:00
Mitchell Richters
b5f2357949 - Duke: Clean up player/actor accesses in moveclouds(). 2023-12-05 22:39:21 +01:00
Mitchell Richters
2de143214b - Duke: Clean up player/actor accesses in checkhitdefault(). 2023-12-05 22:39:20 +01:00
Mitchell Richters
4b410d48ba - Duke: Clean up player/actor accesses in doanimations(). 2023-12-05 22:39:20 +01:00
Mitchell Richters
5f132f5cda - Duke: Clean up player/actor accesses in findplayer utilities. 2023-12-05 22:39:20 +01:00
Mitchell Richters
60228e10c6 - Duke: Clean up actor accesses in premap.cpp. 2023-12-05 22:39:20 +01:00
Mitchell Richters
7401bf4c6f - Duke: Clean up actor accesses in player_d.cpp. 2023-12-05 22:39:20 +01:00
Mitchell Richters
4464497c28 - Duke: Clean up player/actor accesses in processinput_*(). 2023-12-05 22:39:20 +01:00
Mitchell Richters
32d294fed0 - Duke: Clean up player/actor accesses in processweapon(). 2023-12-05 22:39:20 +01:00
Mitchell Richters
0c7450bdb7 - Duke: Clean up player/actor accesses in player_w.cpp. 2023-12-05 22:39:19 +01:00
Mitchell Richters
3cefaf9030 - Duke: Clean up player/actor accesses in operateweapon(). 2023-12-05 22:39:19 +01:00
Mitchell Richters
9836925258 - Duke: Clean up player/actor accesses in fireweapon(). 2023-12-05 22:39:19 +01:00
Mitchell Richters
caa7d50505 - Duke: Clean up player/actor accesses in operateTripbomb(). 2023-12-05 22:39:19 +01:00
Mitchell Richters
58a87b658c - Duke: Clean up player/actor accesses in movement(). 2023-12-05 22:39:19 +01:00
Mitchell Richters
7dc0bde2be - Duke: Clean up player/actor accesses in operateJetpack(). 2023-12-05 22:39:19 +01:00
Mitchell Richters
d32961ca01 - Duke: Clean up actor accesses in player.cpp. 2023-12-05 22:39:17 +01:00
Mitchell Richters
3293d2337b - Duke: Clean up player/actor accesses in underwater(). 2023-12-05 22:39:17 +01:00
Mitchell Richters
6bb5958a93 - Duke: Clean up player/actor accesses in checkp(). 2023-12-05 22:39:17 +01:00
Mitchell Richters
be417e324b - Duke: Clean up player/actor accesses in haslock(). 2023-12-05 22:39:17 +01:00
Mitchell Richters
175b856406 - Duke: Clean up player/actor accesses in shoot(). 2023-12-05 22:39:17 +01:00
Mitchell Richters
0e1520ab1f - Duke: Clean up player/actor accesses in all input look functions. 2023-12-05 22:39:16 +01:00
Mitchell Richters
8e2d4a3f52 - Duke: Clean up player/actor accesses in playerJump(). 2023-12-05 22:39:16 +01:00
Mitchell Richters
443b66ea9d - Duke: Clean up player/actor accesses in playerCrouch(). 2023-12-05 22:39:16 +01:00
Mitchell Richters
2197128dc4 - Duke: Clean up player/actor accesses in timedexit(). 2023-12-05 22:39:16 +01:00
Mitchell Richters
c7c63413ce - Duke: Clean up player/actor accesses in endoflevel(). 2023-12-05 22:39:16 +01:00
Mitchell Richters
55c150845c - Duke: Clean up player/actor accesses in playerisdead(). 2023-12-05 22:39:16 +01:00
Mitchell Richters
4865fc7d8e - Duke: Clean up player/actor accesses in footprints(). 2023-12-05 22:39:16 +01:00
Mitchell Richters
d44d14a770 - Duke: Clean up player/actor accesses in makepainsounds(). 2023-12-05 22:39:15 +01:00
Mitchell Richters
6c067d4c38 - Duke: Clean up player/actor accesses in dokneeattack(). 2023-12-05 22:39:15 +01:00
Mitchell Richters
387ed6ceac - Duke: Clean up player/actor accesses in PlayerColorChanged(). 2023-12-05 22:39:15 +01:00
Mitchell Richters
0425cc82fa - Duke: Clean up player/actor accesses in noise.cpp. 2023-12-05 22:39:15 +01:00
Mitchell Richters
dbf7872243 - Duke: Clean up player/actor accesses in hudweapon_*(). 2023-12-05 22:39:15 +01:00
Mitchell Richters
74a5a7584e - Duke: Clean up player/actor accesses in checkcursectnums(). 2023-12-05 22:39:15 +01:00
Mitchell Richters
9e56237f99 - Duke: Clean up player/actor accesses in selectweapon_*(). 2023-12-05 22:39:15 +01:00
Mitchell Richters
287df1c18a - Duke: Clean up player/actor accesses in hud_input(). 2023-12-05 22:39:14 +01:00
Mitchell Richters
823e032c9a - Duke: Clean up player/actor accesses in displayweapon_*(). 2023-12-05 22:39:14 +01:00
Mitchell Richters
8f64af1f04 - Duke: Clean up player/actor accesses in displaymasks_*(). 2023-12-05 22:39:14 +01:00
Mitchell Richters
1e55b12e61 - Duke: Convert all the aplWeapon* crap to work on player pointers. 2023-12-05 22:39:14 +01:00
Mitchell Richters
b8ffcf3799 - Duke: Pass player pointer through to alterang(). 2023-12-05 22:39:14 +01:00
Mitchell Richters
2720c6f8c6 - Duke: Move PlayerUseItem() wrapper into DDukePlayer. 2023-12-05 22:39:14 +01:00
Mitchell Richters
4aeb19df84 - Duke: Move PlayerUseItem() wrapper into DDukePlayer.
* Regex used: `PlayerUseItem\(\w+\,\s?(\w+)\)` -> `p->itemUsed($1)`.
2023-12-05 22:39:14 +01:00
Mitchell Richters
487459afd7 - Duke: Remove PlayerInput() wrapper.
* Regex used: `PlayerInput\(\w+\,\s?(SB_\w+)\)` -> `!!(p->cmd.ucmd.actions & $1)`.
2023-12-05 22:39:13 +01:00
Mitchell Richters
14cf143739 - Duke: Remove PlayerInputBits() wrapper. 2023-12-05 22:39:13 +01:00
Mitchell Richters
97504df124 - Duke: Remove PlayerSetInput() wrapper. 2023-12-05 22:39:13 +01:00
Mitchell Richters
d7fbd8b348 - Duke: Remove PlayerNewWeapon() wrapper. 2023-12-05 22:39:13 +01:00
Mitchell Richters
beb083e471 - Duke: Got rid of two more InputPacket wrappers. 2023-12-05 22:39:13 +01:00
Mitchell Richters
2b0b98a49c - SW: Shorten the setup in DoPlayerVehicleInputScaling(). 2023-12-05 22:39:13 +01:00
Mitchell Richters
e8451d3ddb - 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-12-05 22:39:13 +01:00
Mitchell Richters
af8f3139ed - Change InputPacket angles to an FRotator. 2023-12-05 22:39:12 +01:00
Mitchell Richters
e2a949949c - 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-12-05 22:39:12 +01:00
Mitchell Richters
8c1e392afc - 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-12-05 22:39:12 +01:00
Mitchell Richters
592d416485 - Change InputPacket velocities to an FVector3. 2023-12-05 22:39:12 +01:00
Mitchell Richters
4e9f2ef3f7 - Duke: Get rid of two InputPacket wrappers. 2023-12-05 22:39:11 +01:00
Mitchell Richters
0087f8e092 - Duke: Restore underwater input scaling to unsynchronised input which was lost back in March (b3c27a177e4787bf9341973039e73c1403e1b230). 2023-12-05 22:39:11 +01:00
Mitchell Richters
19c64e55c4 - SW: Consistently apply SOP angle scaling to pitch as well as yaw. 2023-12-05 22:39:11 +01:00
Mitchell Richters
d683a6900a - SW: Remove DSWPlayer::drive_avel, we can just use DCoreActor::lastcmd for this. 2023-12-05 22:39:11 +01:00
Mitchell Richters
54d307a7e6 - Move doslopetilting() into DDukePlayer. 2023-12-05 22:39:11 +01:00
Mitchell Richters
c029273e19 - Duke: Clean up player/actor accesses in ParseState::parse(). 2023-12-05 22:39:11 +01:00
Mitchell Richters
cec1893852 - Duke: Clean up player/actor accesses in game_misc.cpp. 2023-12-05 22:39:10 +01:00
Mitchell Richters
9529e8fa67 - Duke: Clean up player/actor accesses in game.cpp. 2023-12-05 22:39:10 +01:00