Christoph Oelckers
1ce8ceac5d
fixed GC handling of players.
...
These were missing null checks, the player pointers also weren't nulled after deleting the objects.
2023-12-05 22:03:57 +01:00
Christoph Oelckers
049bd41efe
fixed warning
2023-12-05 22:03:57 +01:00
Mitchell Richters
ac35e09d1c
- Move each game's stored nPlayer/pnum value to CorePlayer
.
2023-10-02 18:44:04 +11: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
f9c3a64f35
- Exhumed: Initial setup to convert PlayerArray
array to array of ExhumedPlayer
pointers.
2023-10-02 15:43:00 +11:00
Mitchell Richters
d107b6a1fa
- Exhumed: Rename PlayerList[]
array to PlayerArray[]
and wrap its access.
2023-10-02 15:42:09 +11:00
Mitchell Richters
5008ac08ac
- Exhumed: Rename Player
struct to ExhumedPlayer
.
2023-10-02 15:41:15 +11:00
Mitchell Richters
61bc8c23cf
- Exhumed: Wrap access to player's actor pointer.
2023-10-02 15:30:35 +11:00
Mitchell Richters
8f9b413d38
- Always clear object in PlayerAngles::initialize()
rather than expecting the caller to do it.
2023-09-28 22:16:30 +10:00
Mitchell Richters
32480dde16
- Ensure all games preserve SB_CENTERVIEW
and SB_CROUCH
bits upon loading.
2023-09-24 17:22:38 +10:00
Mitchell Richters
29e021b5bf
- Move crouch toggling back into the backend so the toggle key can be used as a swim key.
...
* Reverts 272dfa762d
, but is a fresh implementation.
* I doubted anyone was doing this but apparently not.
* Exhumed needed a bit more work as it has very specific underwater checks.
2023-09-24 14:15:49 +10:00
Christoph Oelckers
01b6d9f27f
- eliminated all remaining uses of picnum in Exhumed.
2023-04-29 11:32:03 +02:00
Christoph Oelckers
44e9a66319
- handle 3 more of Exhumed's picnums that were quick to refactor
2023-04-29 11:32:03 +02:00
Mitchell Richters
4c5339274d
- Exhumed: Fix bad velocity zeroing from ece41ac84c
.
2023-04-27 21:32:36 +10:00
Mitchell Richters
3edc1a5a5a
- Exhumed: Make getSequence()
return a pointer instead of a reference.
...
* Gets rid of the awkward `operator[]()` calls.
* Gets rid of `std::ref()` setup in gun.cpp.
* Ensures a copy isn't made if the caller accidentally leaves off an ampersand.
* Allows us to use a consistent getter for native code and VM exports.
2023-04-27 20:16:14 +10:00
Mitchell Richters
ece41ac84c
- Exhumed: Move player's velocity back into the actor, again.
...
* Was done in 67c7dd65f9
but caused issues.
* Reverted in 3d6f1e1a04
to ensure the game worked as expected.
* Actual problem identified and isolated to remove this duplication.
2023-04-25 19:36:46 +10:00
Mitchell Richters
6004a9fb5a
- Exhumed: Fix bad jump setup from c252b19e9a
.
2023-04-24 23:27:02 +10:00
Mitchell Richters
11181f51f8
- Allow roll input through the packet system, giving us 6DOF for VR usage, etc.
2023-04-24 21:31:21 +10:00
Mitchell Richters
c252b19e9a
- Exhumed: Hook up InputPacket::uvel
to relevant code.
2023-04-24 19:06:48 +10:00
Mitchell Richters
80f2afd6a4
- Exhumed: Slightly tidy up updatePlayerWeapon()
.
2023-04-24 19:06:46 +10:00
Mitchell Richters
e29726370c
- Exhumed: Tidy up two if statements in AIPlayer::Damage()
.
2023-04-24 19:03:04 +10:00
Mitchell Richters
19501f3ed0
- Exhumed: Fix some typos in comments.
2023-04-23 19:19:47 +10:00
Mitchell Richters
83365a9a14
- Fix typo in menu and clean up leftover variable in Exhumed's doPlayerCameraEffects()
.
2023-04-23 10:20:10 +10:00
Mitchell Richters
71d833f9ea
- Make Exhumed's new view tilting features accessible for all games.
2023-04-22 19:34:53 +10:00
Mitchell Richters
faaffa0d40
- Exhumed: Change formula for cl_exviewtilting 2
.
...
* Makes this proper strafe rolling based on the actual strafe velocity.
* Implement movement rolling as `cl_exviewtilting 3` as well.
2023-04-22 14:10:10 +10:00
Mitchell Richters
b958ae2340
- Exhumed: Move bobangle
global into Player struct.
2023-04-21 21:13:19 +10:00
Mitchell Richters
6799322544
- Exhumed: Add view bobbing, with defaults matching intensity of Powerslave Exhumed.
...
* `cl_viewbob` extended from bool to int, and allowing two modes: 1 == Powerslave Exhumed bobbing, 2 == Duke 3D-style bobbing.
* Height and speed of bobbing customisable.
2023-04-21 21:13:19 +10:00
Mitchell Richters
8283895828
- Exhumed: Increase precision of Player::totalvel
.
2023-04-21 21:13:18 +10:00
Mitchell Richters
e0964eef7a
- Exhumed: Add toggle-able jump rebounding.
2023-04-21 21:13:18 +10:00
Mitchell Richters
8255a23833
- Exhumed: Move bTouchFloor
into Player
struct.
...
* No need to save this out either, it's reset at the start of every tic.
2023-04-21 21:13:18 +10:00
Mitchell Richters
bb19997a2c
- Apply pitch/yaw input along-side the key inputs.
...
* Removes a lot of duplicated code.
2023-04-21 21:13:18 +10:00
Mitchell Richters
f9b9345e01
- Exhumed: Tidy up a long ternary in updatePlayerAction()
.
2023-04-21 21:13:17 +10:00
Mitchell Richters
258ab0db89
- Exhumed: Initial setup of view rolling effects.
...
* `cl_exviewtilting 1` enables a console-like view rolling upon yaw input.
* `cl_exviewtilting 2` enables a Quake-like view rolling upon strafe input.
2023-04-21 21:13:17 +10:00
Mitchell Richters
83a371e23d
- Exhumed: Remove Player::nPlayerD
, since we have the player actor's opos.
2023-04-21 21:13:16 +10:00
Mitchell Richters
29bf5e4cce
- Exhumed: Move updatePlayerTarget()
call back to main ticker loop.
...
* While it's cleaner in the AIPlayer ticker, AIRa requires its target set (which is done in this func also) and I don't know whether AIPlayer is ticked before AIRa is.
2023-04-21 21:13:16 +10:00
Mitchell Richters
d309406473
- Exhumed: Rename sequence texture getters to separate frame/chunks.
...
* This will make it easier to compare against the source if there's a mistake, etc.
2023-04-21 21:13:15 +10:00
Mitchell Richters
27b9b0d2f8
- Exhumed: Reduce repeated hashtable lookups when building chunks.
2023-04-21 21:13:14 +10:00
Mitchell Richters
4a37453765
- Exhumed: Convert sequence system to FTextureIDs.
2023-04-21 21:13:13 +10:00
Mitchell Richters
fcfee9addc
- Exhumed: Convert remainder of statusbar code and delete old system.
2023-04-21 21:13:13 +10:00
Mitchell Richters
95e84ba1f8
- Exhumed: Make playFrameSound()
a method of SeqFrame
.
2023-04-21 21:13:12 +10:00
Mitchell Richters
32cc320195
- Exhumed: Refactor new sequence setup to not use naked TArray of frames.
...
* Also gives access to the previously discarded sequence flags that are currently not in any kind of use.
2023-04-21 21:13:12 +10:00
Mitchell Richters
4b223ab26d
- Exhumed: Tidy up DExhumedActor
variables for clarity.
2023-04-21 21:13:11 +10:00
Mitchell Richters
5efc14411a
- Exhumed: Use actor variables for sequences, not player ones.
2023-04-21 21:11:55 +10:00
Mitchell Richters
5c0b6858b1
- Exhumed: Remove seq_GetSeqPicnum()
.
2023-04-21 21:11:55 +10:00
Mitchell Richters
d7161a7368
- Exhumed: Convert the weapon code.
2023-04-21 21:11:54 +10:00
Mitchell Richters
d8441f712e
- Exhumed: Converted out most remaining files.
2023-04-21 21:11:54 +10:00
Mitchell Richters
6f242b901d
- Exhumed: Convert out anim system to new backend hashtable.
2023-04-21 21:11:53 +10:00
Mitchell Richters
f404708f51
- Exhumed: Initial conversion of seq_PlotSequence()
to new backend hashtable.
2023-04-21 21:11:52 +10:00
Mitchell Richters
80125e11f3
- Exhumed: Separate out seq variables within DExhumedActor
.
2023-04-21 21:10:45 +10:00