Mitchell Richters
0d25bbe84a
- Duke: Remove PlayerInput()
wrapper.
...
* Regex used: `PlayerInput\(\w+\,\s?(SB_\w+)\)` -> `!!(p->cmd.ucmd.actions & $1)`.
2023-10-03 23:07:46 +11:00
Mitchell Richters
68bf5f6997
- Duke: Remove PlayerInputBits()
wrapper.
2023-10-03 23:07:46 +11:00
Mitchell Richters
ec5cc18470
- Duke: Remove PlayerSetInput()
wrapper.
2023-10-03 23:07:46 +11:00
Mitchell Richters
7cd1780004
- Duke: Remove PlayerNewWeapon()
wrapper.
2023-10-03 23:07:46 +11:00
Mitchell Richters
af99ba9ae2
- Duke: Got rid of two more InputPacket wrappers.
2023-10-03 23:07:45 +11:00
Mitchell Richters
984ae6b098
- SW: Shorten the setup in DoPlayerVehicleInputScaling()
.
2023-10-03 23:07:45 +11: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
828e46a8da
- 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-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
e45d485eb2
- Duke: Get rid of two InputPacket wrappers.
2023-10-03 23:07:43 +11:00
Mitchell Richters
82d029fe28
- Duke: Restore underwater input scaling to unsynchronised input which was lost back in March (b3c27a177e4787bf9341973039e73c1403e1b230
).
2023-10-03 23:07:43 +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
Mitchell Richters
3c4eb21484
- SW: Remove DSWPlayer::drive_avel
, we can just use DCoreActor::lastcmd
for this.
2023-10-03 23:07:43 +11:00
Mitchell Richters
4876a3145e
- Move doslopetilting()
into DDukePlayer
.
2023-10-03 23:07:43 +11:00
Mitchell Richters
c974e35a6b
- Duke: Clean up player/actor accesses in ParseState::parse()
.
2023-10-03 23:07:43 +11:00
Mitchell Richters
a1e94f8278
- Duke: Clean up player/actor accesses in game_misc.cpp
.
2023-10-03 23:07:43 +11:00
Mitchell Richters
411115304a
- Duke: Clean up player/actor accesses in game.cpp
.
2023-10-03 23:07:43 +11:00
Mitchell Richters
9086f90e75
- Duke: Clean up player/actor accesses in cheats.cpp
.
2023-10-03 23:07:42 +11:00
Mitchell Richters
51b0bd284d
- Duke: Remove unused angle rotation from ccmds()
.
2023-10-03 23:07:42 +11:00
Mitchell Richters
559ee2f3c6
- Duke: Remove unused angle rotation from animatesprites_r()
.
2023-10-03 23:07:42 +11:00
Mitchell Richters
3c51f03def
- Duke: Clean up player/actor accesses in animatesprites_r.cpp
.
2023-10-03 23:07:42 +11:00
Mitchell Richters
c2196374e8
- Duke: Clean up player/actor accesses in animatesprites_d.cpp
.
2023-10-03 23:07:42 +11:00
Mitchell Richters
bc66f2de5c
- Duke: Clean up player/actor accesses in actors_lava.cpp
.
2023-10-03 23:07:42 +11:00
Mitchell Richters
7493d0cdeb
- Duke: Tidy up resetplayerstats()
to avoid looping through the players three times.
2023-10-03 23:07:42 +11:00
Mitchell Richters
992a8b3899
- Duke: Fix resetplayerstats()
setup.
2023-10-03 23:07:41 +11:00
Mitchell Richters
a2185644e1
- Clean up serialisers in savegamehelp.cpp
.
2023-10-03 23:07:41 +11:00
Christoph Oelckers
3eeee794e5
use a TArray for the screenshot buffer.
2023-10-03 13:41:35 +02:00
Christoph Oelckers
09754467ee
Revert "fixed CollisionData export."
...
This reverts commit fe02190604
.
2023-10-03 13:36:19 +02:00
Christoph Oelckers
b068a19ed9
Duke: fixed bad loop index in gamevar init code.
2023-10-03 12:54:53 +02:00
Christoph Oelckers
8dc0505a65
made SW's panel sprites into actual DObjects
...
so that they can a) cleanly be exposed to scripting later and b) serialized for savegames without using gross hacks.
2023-10-03 12:27:15 +02:00
Christoph Oelckers
b10f50bf1d
fixed bad assumption about object destruction state in garbage collector.
...
The assumption was made that every object in the ToDestroy list wasn't destroyed yet.
This assumption is wrong in case one object destroys an owned one on its own destruction.
Instead this case must be properly dealt with and duplicate destruction be avoided.
This happened with the panel sprite sentinel in SW's player object.
2023-10-03 12:23:29 +02:00
Christoph Oelckers
a8f2af7257
SW: fix serialization of panel sprites
2023-10-03 09:21:08 +02:00
Christoph Oelckers
7d26d3b87c
do not copy players, it is not allowed for polymorphic classes.
2023-10-03 08:30:00 +02:00
Mitchell Richters
ec69e644f7
- Clean up a bunch of serialisers that were saving vector members, and not the whole vector.
2023-10-03 09:33:28 +11:00
Mitchell Richters
03d957ffdf
- Centralise the saving of player actions within DCorePlayer
's serialiser.
2023-10-03 09:28:01 +11:00
Mitchell Richters
27ae6a4c20
- Blood: Fix missing call to Super while saving.
2023-10-03 09:20:17 +11:00
Mitchell Richters
31e3048369
- Duke: Remove some duplicated save variables.
2023-10-03 09:20:16 +11:00
Mitchell Richters
559197a6d1
- Exhumed: Remove some duplicated save variables.
2023-10-03 09:20:16 +11:00
Mitchell Richters
656cafffb5
- SW: Remove some duplicated save variables.
2023-10-03 09:20:15 +11:00
Mitchell Richters
04ba6acd16
- Duke: Clean up player/actor accesses in resetpspritevars()
.
2023-10-03 07:51:34 +11:00
Mitchell Richters
c35fbc28db
- Duke: Ensure player's pnum
is updated during premap.
2023-10-03 07:48:33 +11:00
Christoph Oelckers
d815eff5d1
fix saving.
2023-10-02 21:38:58 +02:00
Christoph Oelckers
dd2ea96d6c
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-10-02 21:03:59 +02:00
Christoph Oelckers
d60834be3d
fixed GC handling of players.
...
These were missing null checks, the player pointers also weren't nulled after deleting the objects.
2023-10-02 19:03:27 +02:00
Christoph Oelckers
a941bbf89c
fixed warning
2023-10-02 18:54:12 +02:00
Christoph Oelckers
02c6b68581
Merge remote-tracking branch 'remotes/origin/playerArray' into blood-script-export
2023-10-02 18:51:51 +02:00
Christoph Oelckers
4336ea27bc
tewak .gitignore.
2023-10-02 18:46:38 +02:00