Christoph Oelckers
330e2af217
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-12-05 22:39:09 +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
Christoph Oelckers
6dd27f2262
directory structure cleanup
2023-12-05 21:58:36 +01: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
b05b409695
Blood: removed 3 unused members in PLAYER
2023-09-28 11:45:16 +02: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
0480a5e992
- fixed language menu selection.
2023-09-23 14:10:42 +02:00
Christoph Oelckers
aa63e39fa5
- fixed broken gamedef for the fixed DukeDC.
2023-09-23 14:03:46 +02:00
Christoph Oelckers
696a587dc3
- RR: fixed inheritance of two items.
2023-09-23 11:59:33 +02:00
Christoph Oelckers
a41ebfeb73
- Duke: fixed the explosion's lighting hackery.
...
The animatesprites handler in the old code got called on the already animated sprite, meaning it will only activate for the first frame.
To do this right the code had to be moved to applyanimations and be guarded by a flag.
2023-09-10 20:42:26 +02:00
Christoph Oelckers
b9eced0d11
- fix animate for some explosion FX.
2023-09-10 19:56:35 +02:00
Christoph Oelckers
0c0395043e
- added one more variant each of DukeDC and Vacation add ons.
2023-09-09 09:08:30 +02:00
Christoph Oelckers
96901d1638
- added missing cyrillic у (small U) for Blood's SmallFont
2023-09-06 00:12:24 +02:00
Christoph Oelckers
5eee7b80b1
- backend update from GZDoom.
...
* controller handling improvements
* use stb_sprintf.
* various smaller fixes.
2023-08-09 12:17:17 +02:00
Christoph Oelckers
85b6c19442
- RR: fix movement direction of bowling ball.
2023-08-06 10:27:41 +02:00
Christoph Oelckers
c19653262e
- Duke: fix management of killit_flag.
...
This cannot be in the actor because event scripts can be called without a valid actor.
It is now part of the parse state, but execute allows returning it to the caller, which is needed in one place.
2023-07-22 10:24:20 +02:00
Christoph Oelckers
89dfac62a9
- Duke fix bad type in shrinker.
...
We cannot use 'let' here because IsWW2GI is a compiler intrinsic which results in a nullpointer type if true.
2023-07-22 10:21:35 +02:00
Christoph Oelckers
f932f30e6e
- removed all new actors for NWinter and Vacation.
...
These only make sense if CON gets replaced, that, however, is not doable.
2023-07-15 21:53:33 +02:00
Christoph Oelckers
428425b6dc
- RRRA: Mama Jackalope's poison cloud did no damage
...
This needs an active statnum to work.
2023-06-19 20:57:27 +02:00
Christoph Oelckers
51b7bbc77d
- RRRA: added missing texture names for the barrels.
2023-06-19 20:09:42 +02:00
Christoph Oelckers
83dd9f4e1d
- RRRA: fixed inheritance for sheriff actor
2023-06-19 20:05:36 +02:00
Christoph Oelckers
5ac05971d2
- Duke: WEATHERWARN needs a statnum change on init so that it teleports.
2023-06-07 23:11:43 +02:00
Christoph Oelckers
d8e852fe10
- RR: fixed damage type handling for the dynamite arrows
2023-06-06 22:58:10 +02:00
Christoph Oelckers
3f630c5cb6
- fixed some item issues in RR.
...
* RedneckPowderKeg was missing its Initialize function and did not clamp its movement velocity.
* RedneckTikiLamp inherited from the wrong base class.
2023-06-04 11:37:10 +02:00
Christoph Oelckers
fcb8e7614f
- new names and SWActor properties.
...
Not used yet
2023-06-03 10:16:48 +02:00
Christoph Oelckers
b2af4c0957
- Duke: fixed handling for when a slimer's target gets destroyed after eating it.
...
temp_data[0] was renamed to counter some time ago, but this place seems to have missed this somehow so the slimer got stuck in the 'eating' state.
2023-06-03 10:16:18 +02:00
Christoph Oelckers
b31e8dd8b4
- some initial preparations for exporting SW's actors.
2023-06-01 22:07:47 +02:00
Christoph Oelckers
d7a00b76f1
- added extensions to texnames parser to handle fully rotated sprite animations in one line
...
Also define all sprites for Shadow Warrior.
2023-05-30 22:32:58 +02:00
Christoph Oelckers
0d3e5e68d1
- RR: fixed bad texture names for HUD pistol
2023-05-30 18:13:59 +02:00
Christoph Oelckers
8850f4caa2
- RR: the sawblade projectile was missing its shootThis function.
...
This is mostly a stripped down version of the RPG's - this stuff really needs to be cleaned up later.
2023-05-30 17:31:23 +02:00
Christoph Oelckers
4bf0029c32
- remove lots of unneeded SAVE_CODE and SAVE_DATA declarations.
...
Everything ported to VMFunctions can now be saved natively and the DECISIONs never get stored in serialized pointers.
2023-05-28 11:19:35 +02:00
Christoph Oelckers
ddfb485424
- added a serializer for VMFunction pointers.
2023-05-28 11:19:34 +02:00
Christoph Oelckers
1cb86af5f9
- give SW's sounds proper names and move their definition out of the EXE.
...
Also handle custom rolloff by the sound engine
2023-05-26 23:27:46 +02:00
Christoph Oelckers
de6b5fec7b
- got rid of some 'picnum's that don't reference spritetype.
2023-05-20 10:59:03 +02:00
Christoph Oelckers
1d0b763844
- fixed bad sprite name.
2023-05-20 07:21:28 +02:00
Christoph Oelckers
8069c85ca1
- fixed bad inheritance in RedneckVixenShot
2023-05-20 07:19:35 +02:00
Christoph Oelckers
8da775aaf1
- fix RedneckDestructo
2023-05-20 07:19:18 +02:00
Christoph Oelckers
a8e03723ef
- NOSHADOW flag.
2023-05-19 23:03:20 +02:00
Christoph Oelckers
b993f05c8f
- fixed missing handling for BADGUYSTAYPUT flag.
2023-05-19 23:00:27 +02:00
Christoph Oelckers
10d88ecf1e
- fixed: Duke's Freezer projectile needs the CANHURTSHOOTER flag.
2023-05-19 22:59:47 +02:00
Christoph Oelckers
c5ee7cf338
- Duke: add a proper override for Initialize to the player base class
2023-05-19 22:59:47 +02:00
Christoph Oelckers
3f9f1be3a8
fixed Vacation's beach ball.
2023-05-19 22:59:21 +02:00
Christoph Oelckers
513de38723
- pass the spawner to Initialize as an explicit parameter.
...
Using ownerActor is not robust, for some actors this will have unwanted side effects.
2023-05-19 22:57:26 +02:00
Christoph Oelckers
fc30f76f50
- Duke: fix some weirdness with item spawning.
2023-05-19 22:53:17 +02:00
Christoph Oelckers
bab432ed72
- refinement of aiming fix.
2023-05-19 22:53:15 +02:00
Christoph Oelckers
fa1e667140
- Duke/RR: Use the exact same trajectory for autoaiming and the actual attack hitscan for the pistol.
...
These were not identical so the pistol was likely to miss small targets the autoaim acquired. This was particularly bad for Duke's ceiling turret and RR's mosquito.
2023-05-19 22:52:36 +02:00
Christoph Oelckers
94a80dda11
- initialize the angle of script spawned actors.
2023-05-19 22:52:00 +02:00
Christoph Oelckers
d6a7721802
- hotfix for compiler bug with optimized out if statement.
...
This needs to be investigated, this hotfix is merely to get it running again for now.
2023-05-19 22:51:31 +02:00