Commit graph

1329 commits

Author SHA1 Message Date
Christoph Oelckers
1b6454dc5b renamed $conreserve to $resourceid.
This better matches its use, especially since it is not exclusive to CON supporting games.
2023-10-28 09:06:36 +02:00
Christoph Oelckers
6975b95402 Duke fixed two issues with displaying incorrect sprites
* We cannot check a projectiles owner because it may have been destroyed, so copy all info over
* CON changing an actor's type to one without class did not do anything at all.
2023-10-22 23:09:11 +02:00
Christoph Oelckers
401c260f9c cleanup of Blood sound playing interface 2023-10-13 23:07:17 +02:00
Christoph Oelckers
f61dc0467f Blood: route all state actions through the VM interface and renamed all states and functions with disassembly names 2023-10-08 10:07:05 +02:00
Christoph Oelckers
495e236764 allow Blood to compile with NOONE_EXTENSIONS disabled. 2023-10-08 10:07:05 +02:00
Christoph Oelckers
27a9def748 - fixed bunny 'run' sequence. 2023-10-08 09:41:17 +02:00
Christoph Oelckers
24a3d91d0d scriptified the things 2023-10-08 09:41:15 +02:00
Christoph Oelckers
6250906879 implemented proper handling of VM functions as identifiers. 2023-10-08 09:41:15 +02:00
Christoph Oelckers
2c08ee0c5d refactored SEQ callbacks as well. 2023-10-08 09:41:15 +02:00
Christoph Oelckers
11f094c7fb reference event callbacks by name, not by internal index.
This is needed to allow writing new callbacks.
2023-10-08 09:41:15 +02:00
Christoph Oelckers
47f09c61fc WIP for event callback refactor 2023-10-08 09:41:14 +02:00
Christoph Oelckers
cb443d443c Blood projectile scriptification. 2023-10-08 09:41:14 +02:00
Christoph Oelckers
93dde24ae1 added native script exports for all functions referenced b AISTATEs. 2023-10-08 09:41:13 +02:00
Christoph Oelckers
11caee7477 exported actGetRespawnTime as a first simple test case. 2023-10-08 09:41:13 +02:00
Christoph Oelckers
79ae66d5ec exported gGameOptions. 2023-10-08 09:41:12 +02:00
Christoph Oelckers
64d8fd6072 Blood: scriptified item spawning
This was merely a testbed with a limited amount of code, the biggest gain here is that the spawning no longer depends on item IDs but classes so new ones can be added later.
2023-10-08 09:41:11 +02:00
Christoph Oelckers
d83c9f51c3 added texture and class definitions for the 18 items that have no coded function 2023-10-08 09:39:46 +02: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
Christoph Oelckers
09754467ee Revert "fixed CollisionData export."
This reverts commit fe02190604.
2023-10-03 13:36:19 +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
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
762263671a exported the main structures in Blood that make up a BloodActor.
nnext stuff was omitted for now.
This also eliminates the DUDEEXTRA_STATS substructure and integrates its content directly into DUDEEXTRA.
2023-10-01 22:25:08 +02:00
Christoph Oelckers
fe02190604 fixed CollisionData export. 2023-10-01 21:06:53 +02:00
Christoph Oelckers
3aafcb94f1 exported XSECTOR and XWALL.
this required an extension to the ZScript front end to allow defining the bitfield flag variables which cannot have their address taken.
2023-10-01 20:39:40 +02:00
Christoph Oelckers
5a26989d06 exported the game specific sector/wall properties. 2023-10-01 18:54:10 +02:00
Christoph Oelckers
f71000fe6f wrapped all remaining access to type. 2023-10-01 14:06:59 +02:00
Christoph Oelckers
7379288f4b directory structure cleanup 2023-10-01 14:03:44 +02:00
Christoph Oelckers
7e225a65f1 Blood spawnclasses list 2023-10-01 14:03:23 +02:00
Christoph Oelckers
051aa14830 added skeleton classes for Blood's actors. 2023-10-01 14:03:23 +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
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
4a87003408 - backend update from GZDoom.
* Vulkan backend updated.
* zlib replaced with miniz.
* FileReader is now 64 bit capable.
* jpeg replaced with stb-image.
* CMake project warnings fixed.
2023-09-23 09:56:27 +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