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
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
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
98e83fcc3a
- Use DCorePlayer::GetActor()
inside of CCMD(warptocoords)
.
2023-10-04 19:32:24 +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
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
Christoph Oelckers
77f61004c3
fix Vectoe3 clamp for real.
2023-10-03 14:57:17 +02: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
f570cb5d21
- Change InputPacket
velocities to an FVector3
.
2023-10-03 23:07:44 +11:00
Mitchell Richters
6cff02d33b
- SW: Consistently apply SOP angle scaling to pitch as well as yaw.
2023-10-03 23:07:43 +11:00
Christoph Oelckers
d815eff5d1
fix saving.
2023-10-02 21:38:58 +02:00
Mitchell Richters
16189ff7f9
- Remove GameInterface::getConsoleActor()
in place of direct access.
2023-10-02 18:11:53 +11:00
Mitchell Richters
6de8fc91d6
- Remove GameInterface::reapplyInputBits()
and directly perform operation in GameTicker()
.
2023-10-02 18:11:51 +11:00
Mitchell Richters
f8ee893529
- Move I_GetEvent()
call into GameInput::getInput()
.
2023-09-28 22:16:31 +10:00
Mitchell Richters
80da809e0c
- Apply cl_noturnscaling
CVAR from feaaf2c15a
to GameInput::processVehicle()
.
2023-09-28 22:16:29 +10:00
Mitchell Richters
e0e459216d
- Reduce GameInput::processVehicle()
interface by changing three bools to a bitfield.
2023-09-25 19:51:53 +10:00
Mitchell Richters
8d8c30d10e
- Reset the crouch toggle only when loading a new game, not every time we clear out the input.
...
* We need to preserve the crouch toggle when loading saves.
* Deliberately not resetting during level transitions as each level in an episode is interconnecting.
2023-09-24 17:51:22 +10:00
Mitchell Richters
22077c5b50
- Ensure crouch_toggle
is cleared when clearing all input.
2023-09-24 15:53:39 +10:00
Mitchell Richters
feaaf2c15a
- Allow disabling turn scaling (turbo turn).
2023-09-24 14:15:50 +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
Mitchell Richters
a3aa2e877e
- Exhumed: Repair use key clearing issue from ed2c557297
.
...
* It's important that the use button is cleared for Exhumed, just not in the game code like it was previously done.
* Fixes #971 .
2023-09-23 09:51:45 +10:00
Mitchell Richters
52ab0fae19
- Duke: Allow reversing while moving forwards to act as the brake.
...
* Much more intuitive for controllers.
2023-04-25 11:30:48 +10:00
Mitchell Richters
918789705f
- Duke: Use the player's angle when adjusting vehicle's HUD rotation.
2023-04-24 22:44:22 +10:00
Mitchell Richters
14629e7b2b
- Clamp vehicle input to 1.5x the calculated velocity.
2023-04-24 22:18:40 +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
a731db95ae
- Add initial support for up/down movement within the game, either by key or joystick axis.
...
* Started with Duke's jetpack, other games to follow for swimming, etc.
2023-04-23 19:53:45 +10:00
Mitchell Richters
e60e767232
- Break down some increasingly long lines in GameInput::processMovement()
.
2023-04-23 19:19:26 +10:00
Mitchell Richters
175f858047
- Make scaletozero()
static again within gameinput.cpp.
2023-04-23 09:06:31 +10:00
Mitchell Richters
0a90ed4802
- Remove some duplicated lines in PlayerAngles::doViewTilting()
.
2023-04-23 08:51:14 +10:00
Mitchell Richters
b179079168
- Move constant from previous commit into the class with the other constants.
2023-04-22 22:45:12 +10:00
Mitchell Richters
df30c01472
- Rework cl_viewtilting 1
to be consistent across games.
...
* Setup before from when it was Exhumed-only assumed a 30Hz clock. Needed adjusted variables and setup for Shadow Warrior.
2023-04-22 21:40:57 +10:00
Mitchell Richters
6ba227ab8b
- Spaces be damned!
2023-04-22 19:50:55 +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
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
70dd565c50
- Slightly tune mouse formula in GameInput::processVehicle()
.
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
2658af9fd0
- Use weapon enums when determining max slot numbers.
2023-04-05 10:22:18 +10:00
Mitchell Richters
0eba341ac1
- Remove GameInput::prepareHidInput()
and GameInput::resetHidInput()
.
...
* Also reverts 23bff9f701
, but changes the loop into a `memset()` call instead.
2023-04-04 20:07:06 +10:00
Mitchell Richters
d454455d22
- Move invertmouse
CVARs into common code.
...
* Removes duplication of CVAR definitions between Raze and GZDoom.
2023-04-04 20:01:21 +10:00
Mitchell Richters
133c8fa80b
- Only scale the mouse input in GameInput::processMovement()
, where it's needed.
...
* Also fixes a potential signedness issue for `processVehicle()` if `m_yaw` is negatively set.
2023-04-04 09:53:43 +10:00
Mitchell Richters
a68fcfc71c
- Remove GameInterface::getConsoleAngles()
, it's not needed anymore.
2023-04-04 07:02:39 +10:00
Mitchell Richters
3ef431a428
- Make scaleAdjust
a float since it's what's needed anyway.
2023-04-03 19:38:00 +10:00
Mitchell Richters
69c65dfe7e
- Internalise InputPacket
used in movement functions.
2023-04-03 19:35:35 +10:00