Commit graph

637 commits

Author SHA1 Message Date
Christoph Oelckers
4133c4602c use symbolic constant in two places close to the last commit. 2023-12-05 22:40:58 +01:00
Christoph Oelckers
712ea95203 Duke/RR: fixed player dying when falling from great heights while god mode being on. 2023-12-05 22:40:58 +01:00
Mitchell Richters
bd915763c2 - Duke: Remove incur_damage() from dispatcher.
* Only used locally within `processinput()` for each game.
2023-12-05 22:40:58 +01:00
Mitchell Richters
834fed369b Revert "- clamp player sprite's xvel between 0 and 512 to stop it going into the negative with rapid posx/posy changes due to teleporting."
This reverts commit cf548e055e.

* Shouldn't be necessary now with doubles instead of integers for coordinates.
* Affected spot in commit message appears fine upon testing.
2023-12-05 22:40:57 +01:00
Mitchell Richters
1c725377ea - Interalise slope tilting checks for DCorePlayer::doViewPitch(). 2023-12-05 22:39:31 +01:00
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
Mitchell Richters
52b20e1f59 - Move syncinput mechanism into GameInput object. 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
66a77ea860 - Duke: Manual sweep for last replacements of player index for pointer. 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
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
3293d2337b - Duke: Clean up player/actor accesses in underwater(). 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
9e56237f99 - Duke: Clean up player/actor accesses in selectweapon_*(). 2023-12-05 22:39:15 +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
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
97504df124 - Duke: Remove PlayerSetInput() 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
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
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
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
54d307a7e6 - Move doslopetilting() into DDukePlayer. 2023-12-05 22:39:11 +01:00
Christoph Oelckers
5448f6ec2c turn players into DObjects and fix several bugs with bad memory access.
* DObjects may not be memset to 0.
* There was still code trying to retrieve the player index with pointer artithmetic. With an array of pointers this does not work.
2023-12-05 22:38:34 +01:00
Mitchell Richters
d90aca9640 - Directly store a ticcmd_t object within CorePlayer. 2023-10-02 17:00:50 +11:00
Mitchell Richters
23d4cbc3bd - Remove all game-side PlayerArray[] objects and store within common code. 2023-10-02 15:43:00 +11:00
Mitchell Richters
6d2124dd01 - Duke: Initial setup to convert PlayerArray array to array of DukePlayer pointers. 2023-10-02 15:43:00 +11:00
Mitchell Richters
6a367c6184 - Duke: Rename ps[] array to PlayerArray[] and wrap its access. 2023-10-02 15:41:15 +11:00
Mitchell Richters
bd9e42bb40 - Duke: Rename player_struct struct to DukePlayer. 2023-10-02 15:41:13 +11:00
Mitchell Richters
719cc75fd2 - Duke: Rename player_struct::sync to player_struct::input to match the other games. 2023-10-02 15:30:32 +11:00
Christoph Oelckers
44f4104eda - got rid of the last tilenum uses in Duke.
This meant refactoring the crosshair drawer to work on a named texture called "CROSSHAIR" and hard coding the magic numbers for spawndebris.
2023-04-29 09:54:15 +02:00