Christoph Oelckers
7cffe6e3f0
a few Getchars
2023-12-05 22:39:26 +01:00
Mitchell Richters
7ba5d22d5d
- Bump MAXVOXELS
from 1024 to 2048.
2023-12-05 22:39:26 +01:00
Mitchell Richters
d3811c7816
- Add getTicrateAngle()
to reduce the amount of times DAngle::fromDeg()
needs to be called in input code.
2023-12-05 22:39:26 +01:00
Mitchell Richters
2ddd15b932
- Slight clean-up in gameinput.cpp.
2023-12-05 22:39:25 +01:00
Mitchell Richters
ddd39775e6
- Re-add lost paused
check in GameInput::GetInput()
.
2023-12-05 22:39:25 +01:00
Mitchell Richters
1e6ee7ee61
- Remove unnecessary clamp in PlayerAngles::doViewPitch()
.
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
0f1f3d804f
- Use DCorePlayer::GetActor()
inside of CCMD(warptocoords)
.
2023-12-05 22:39:23 +01:00
Mitchell Richters
0c13d4fe3a
- 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-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
18f362d68e
- Add player's view angles to stat coord
.
2023-12-05 22:39:19 +01:00
Mitchell Richters
561d756baa
- Duke: Repair SB_CENTERVIEW
not re-applying on the first tic.
2023-12-05 22:39:18 +01:00
Mitchell Richters
a6396cb491
- Centralise input clamping to occur centrally when the engine requests a packet.
2023-12-05 22:39:18 +01:00
Christoph Oelckers
60a36f4902
fix Vectoe3 clamp for real.
2023-12-05 22:39:17 +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
3eaf7d2b87
- Make the last commit compile.
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
19c64e55c4
- SW: Consistently apply SOP angle scaling to pitch as well as yaw.
2023-12-05 22:39:11 +01:00
Mitchell Richters
ae0de2d6aa
- Clean up serialisers in savegamehelp.cpp
.
2023-12-05 22:39:09 +01:00
Christoph Oelckers
a6467d2c9a
use a TArray for the screenshot buffer.
2023-12-05 22:39:09 +01:00
Christoph Oelckers
3e47edb677
Revert "fixed CollisionData export."
...
This reverts commit fe02190604
.
2023-12-05 22:39:09 +01:00
Mitchell Richters
8bed6c9241
- Centralise the saving of player actions within DCorePlayer
's serialiser.
2023-12-05 22:39:08 +01:00
Christoph Oelckers
c02cff1e48
fix saving.
2023-12-05 22:39:07 +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
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
Mitchell Richters
ac35e09d1c
- Move each game's stored nPlayer/pnum value to CorePlayer
.
2023-10-02 18:44:04 +11: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
02bd017d07
- Directly set CorePlayer::ucmd
rather than copying it to a temporary array.
2023-10-02 17:00:50 +11:00
Mitchell Richters
d90aca9640
- Directly store a ticcmd_t
object within CorePlayer
.
2023-10-02 17:00:50 +11:00
Mitchell Richters
7953fe7425
- Delete all players upon engine shutdown.
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
1604cf009c
- Move the actor pointer for each game's player structures into CorePlayer
.
...
* Something strange was going on here with Blood where the static_cast would not work... Moved the player structure into `bloodactor.h` for now to work around it.
2023-10-02 15:42:59 +11:00
Mitchell Richters
6beec5eed2
- Set up initial implementation of CorePlayer
struct and make game-side player structs inherit from it.
2023-10-02 15:42:59 +11:00
Mitchell Richters
eeb9f48436
- Fix uncommitted change missed from 7fa5df934b
.
2023-10-02 15:30:32 +11:00
Christoph Oelckers
ee07ae35aa
retrieve time in fillSummary.
2023-10-01 12:10:56 +02:00
Christoph Oelckers
4dcf0fd3c4
get rid of the GetStats interface function.
...
Now that all data it retrieves is available in shared code it is no longer needed.
2023-10-01 11:48:32 +02:00
Christoph Oelckers
19dfd84320
use global stat manager in SW
2023-10-01 10:33:07 +02:00
Christoph Oelckers
3e821c5849
use global stat manager in Duke
2023-10-01 10:07:54 +02:00
Christoph Oelckers
4af7a649b6
move kill/secret management into the shared code
...
Implemented for Blood so far, this gets rid of gKillMgr and gSecretMgr
2023-10-01 10:07:45 +02:00
Christoph Oelckers
26ba62dc62
Blood: cleanup of INI loading
...
* use snprintf instead of sprintf
* keep the IniFile object local
* get rid of the FreeGameData interface function, it only existed to free the global INI object.
2023-09-30 22:34:09 +02:00
Mitchell Richters
88939a9c60
- Do a memset()
in PlayerAngles::initialize()
instead of value initialisation.
2023-09-29 08:31:48 +10:00
Mitchell Richters
092d8e7937
Revert "- Favour value initialisation in GameInput::Clear()
instead of a memset()
."
...
This reverts commit 59acdde9c9
.
Apparently this can generate terrible code with MSVC for some reason.
2023-09-29 08:31:03 +10:00
Mitchell Richters
f8ee893529
- Move I_GetEvent()
call into GameInput::getInput()
.
2023-09-28 22:16:31 +10:00
Mitchell Richters
04ac4561a8
- Exhumed: Set up cl_viewbob
so its disabled by default since the game never had it.
2023-09-28 22:16:30 +10: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