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
74a5a7584e
- Duke: Clean up player/actor accesses in checkcursectnums()
.
2023-12-05 22:39:15 +01:00
Mitchell Richters
2720c6f8c6
- Duke: Move PlayerUseItem()
wrapper into DDukePlayer
.
2023-12-05 22:39:14 +01:00
Mitchell Richters
4aeb19df84
- Duke: Move PlayerUseItem()
wrapper into DDukePlayer
.
...
* Regex used: `PlayerUseItem\(\w+\,\s?(\w+)\)` -> `p->itemUsed($1)`.
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
14cf143739
- Duke: Remove PlayerInputBits()
wrapper.
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
d7fbd8b348
- Duke: Remove PlayerNewWeapon()
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
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
592d416485
- Change InputPacket
velocities to an FVector3
.
2023-12-05 22:39:12 +01:00
Mitchell Richters
4e9f2ef3f7
- Duke: Get rid of two InputPacket wrappers.
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
3e821c5849
use global stat manager in Duke
2023-10-01 10:07:54 +02:00
Christoph Oelckers
83eb4852f7
- do not use literal tile numbers for initializing WW2GI's weapon gamevars.
...
Instead use the type numbers of the items to be spawned so it is derived from configurable data.
2023-04-29 09:51:51 +02:00
Christoph Oelckers
5d4f137623
- migrated Duke's entire HUD weapon code to texture names.
2023-04-29 09:16:46 +02:00
Christoph Oelckers
4692cc55f7
- cleaned up checkhitdefault
...
Only required 4 new flags plus one property...
2023-04-23 17:33:36 +02:00
Christoph Oelckers
cd2cb8d60e
- minor cleanup
2023-04-23 12:15:36 +02:00
Christoph Oelckers
2f78a10ce1
- don't use picnum to address gs.actorinfo
2023-04-23 10:36:39 +02:00
Christoph Oelckers
b56aa1e1a3
- no more picnum in spawn CCMD
2023-04-23 10:36:38 +02:00
Christoph Oelckers
0249725ed8
- got rid of all TILE_* globals, except TILE_CROSSHAIR.
2023-04-23 09:42:28 +02:00
Christoph Oelckers
65e66a573d
- Duke: look up all internally used actor classes at game startup.
...
This allows early validation of the names but is also more efficient.
2023-04-22 12:08:46 +02:00
Christoph Oelckers
947d427a9d
- merged tileinfo and actorinfo.
2023-04-12 21:52:28 +02:00
Christoph Oelckers
a155a09f9f
- deleted the setflag inlines.
2023-04-12 20:07:12 +02:00
Christoph Oelckers
b9702fbb66
- moved 'move' data out of the ScriptCode array as well.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
94b676bd7c
- wrapped access to the current 'move' values read from CON.
2023-04-12 20:07:11 +02:00
Christoph Oelckers
da0b429751
- migrated attackertype to class objects.
2023-04-09 09:46:09 +02:00
Christoph Oelckers
ae4ef6401c
- use the actual actor flags.
...
Not fully working yet...
2023-04-09 09:45:42 +02:00
Christoph Oelckers
f4c176988a
- first round of flag additions.
2023-04-09 09:35:36 +02:00
Christoph Oelckers
60339a217c
- moved a lot of shareable code out of the CON interpreter.
2023-04-07 13:15:06 +02:00
Christoph Oelckers
7a699e032f
- cleaned up Duke's very broken kill count system.
...
This now uses a static flag to denote an actor as countable and an internal flag to track its killed state, because CON can toggle that at will.
2023-04-07 09:49:20 +02:00
Mitchell Richters
c4041affb1
- Duke: Reduce boilerplate from previous commit.
2023-03-16 22:24:34 +11:00
Mitchell Richters
18ef460a99
- Tidy up interface for PlayerAngles::doViewPitch()
since we have internal access to the player's actor.
2023-03-14 21:45:36 +11:00
Christoph Oelckers
4a306a21dc
- split several texture flags off into a surface type value.
...
Using the same field in the TexExtInfo struct as Blood's surfType.
This frees up a lot of flags for later use.
2022-12-18 13:56:54 +01:00
Christoph Oelckers
6848af9b6c
- use texture IDs in Duke's texture flag checkers.
2022-12-18 13:42:28 +01:00
Christoph Oelckers
8a789b9015
- voxel management cleanup.
...
Moving the voxel index into the texExtInfo array and removing most of Blood's and SW's special handling.
2022-12-18 13:18:43 +01:00
Christoph Oelckers
20edd800f9
- big texture system refactor.
...
Finally that quickly slapped together BuildTiles class is gone and replaced with something that better integrates with the underlying texture manager
2022-12-18 13:05:58 +01:00
Mitchell Richters
3eb3a29a7e
- Duke: Tidy up animateshrunken()
.
2022-12-11 19:46:26 +01:00
Christoph Oelckers
a63ee8079a
- implemented customizable breakable walls and ported all hard coded variants to use this.
2022-12-11 19:43:57 +01:00
Mitchell Richters
2c592405fa
- Separate pitch/yaw key input into separate functions and apply from the ticker.
2022-12-11 19:43:56 +01:00
Mitchell Richters
9437ea9622
- Move input vector rotation for Duke and SW into the playsim.
...
* The next commit needs this to ensure the vector is rotated using the most current angle.
2022-12-11 19:43:55 +01:00
Christoph Oelckers
9ad8f67ce9
- added isEffector inline and exported NATURALLIGHTNING which got a bit in the way.
2022-12-11 19:43:52 +01:00