Commit graph

13198 commits

Author SHA1 Message Date
Mitchell Richters
968d0ae0d2 - Implement new scaled angle change setup and remove enforcement of synchronised input. 2022-12-11 19:43:55 +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
Mitchell Richters
15b101870d - Completely remove current scaled angle change setup.
* During this transition, temporarily enforce synchronised input at all times.
2022-12-11 19:43:55 +01:00
Christoph Oelckers
4078c6d6bd - converted several of RR's static init sprite types to the class system. 2022-12-11 19:43:55 +01:00
Christoph Oelckers
5b34917f62 - split the sprite animation code for CON-based actors into a separate function.
Like the shadow code this is virtually identical for Duke and RR.
2022-12-11 19:43:55 +01:00
Christoph Oelckers
0d7288c543 - moved the shadow creation code out of animatesprites into a common subfunction.
Also removing several checks for non-enemy actors for which shadows are generally not being created.
2022-12-11 19:43:55 +01:00
Christoph Oelckers
6fb263d61b - converted the two last non-CON-based active items - RRRA's empty bike and boat. 2022-12-11 19:43:54 +01:00
Christoph Oelckers
fd26f7fd2d - set some more flags. 2022-12-11 19:43:54 +01:00
Christoph Oelckers
9641d3f712 - scriptified two of RRRA's special effects. 2022-12-11 19:43:54 +01:00
Christoph Oelckers
3ee28eb600 - use tickstat for all thinker loops that have no more special cases. 2022-12-11 19:43:54 +01:00
Christoph Oelckers
6de147b77f - moved the CON execute call to DDukeActor::Tick and removed a large portion of the special handling for scriptified actors. 2022-12-11 19:43:54 +01:00
Christoph Oelckers
1cfba8e989 - cleaned up the main thinker loops, using a flag to denote actors that are not on STAT_ACTOR but need to run CON code.
This should not be automatic as it may cause problems with mods not expecting this.
2022-12-11 19:43:54 +01:00
Christoph Oelckers
23640988db - define several of RR's fullbright decorative sprites via spawnclasses remapping. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
bdc474d04f - scriptified all remaining Duke actors with specific init code and no CON part. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
c9628db264 - scriptified the toilet. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
cbb3b0ebfb - preparations for the next script exports. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
10e4c90d37 - minor cleanup. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
d83e203b8d - renamed a few RR sprites plus one associated global variable. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
e5ac32e329 - scriptified the remaining RR destructibles. 2022-12-11 19:43:53 +01:00
Christoph Oelckers
15bee4ca6a - scriptified the remaining Duke destructibles, except the toilets. 2022-12-11 19:43:52 +01:00
Christoph Oelckers
e6c466fcba - scriptified several of Duke's destructible items. 2022-12-11 19:43:52 +01:00
Christoph Oelckers
066c4c88b2 - scriptified the two final special stat items from RRRA. 2022-12-11 19:43:52 +01:00
Christoph Oelckers
7cbc713b4e - scriptified stat121 special effect. 2022-12-11 19:43:52 +01:00
Christoph Oelckers
dc06a93a4f - scriptified RR's UFO teleporter. 2022-12-11 19:43:52 +01:00
Christoph Oelckers
5a155730b4 - scriptified RR's bowling stuff. 2022-12-11 19:43:52 +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
Christoph Oelckers
be6ead173a - scriptified several smaller actors 2022-12-11 19:43:51 +01:00
Christoph Oelckers
0dc526899b - scriptified FrameEffect 2022-12-11 19:43:51 +01:00
Christoph Oelckers
44d4e7a20a - scriptified the mortar projectiles.
This was split off heavyhbomb for clarity and to avoid interference with the pickup code.
2022-12-11 19:43:51 +01:00
Christoph Oelckers
0bc9023e17 - scriptified the pipe bomb and RR's dynamite, which is mostly the same thing.
The mortars were split off because they made the code too convoluted.
2022-12-11 19:43:51 +01:00
Christoph Oelckers
b9caa23357 - gave proper names to ST_160 and ST_161. 2022-12-11 19:43:51 +01:00
Christoph Oelckers
ff6a9b89ac - scriptified the green slimer. 2022-12-11 19:43:51 +01:00
Christoph Oelckers
bc34746227 - scriptified transport vehicles. 2022-12-11 19:43:50 +01:00
Christoph Oelckers
f1d6e0e6bb - scriptified Duke's shooting gallery targets. 2022-12-11 19:43:50 +01:00
Christoph Oelckers
e69772637c - define Duke's skies by name. 2022-12-11 19:43:50 +01:00
Christoph Oelckers
5358b3d98c - added a new sprite flag for those types which can trigger respawn actions. 2022-12-11 19:43:50 +01:00
Christoph Oelckers
4397e65443 - cleaned up the generic destructible code and used it for several more things. 2022-12-11 19:43:50 +01:00
Christoph Oelckers
f89ccec829 - scriptified Duke's reactor. 2022-12-11 19:43:50 +01:00
Christoph Oelckers
f6fe639233 - avoid propagating owner flags where easily doable.
This particular case is done a lot better by setting a special flag.
2022-12-11 19:43:50 +01:00
Christoph Oelckers
59659bc284 - scriptified the last two RR projectiles.
These are particularly messy - they have different looks depending on the shooter...
2022-12-11 19:43:49 +01:00
Christoph Oelckers
403141807f - scriptified all simple and explosive RR projectiles. 2022-12-11 19:43:49 +01:00
Christoph Oelckers
82515e1d76 - scriptified the World Tour's flamethrower#s fireball.
Also using a better method to mark the trailing balls than checking the owner.
2022-12-11 19:43:49 +01:00
Christoph Oelckers
26d9511087 - scriptified the octabrain projectile. 2022-12-11 19:43:49 +01:00
Christoph Oelckers
6a83a72f71 - removed some leftover debug code. 2022-12-11 19:43:49 +01:00
Christoph Oelckers
f2df8a162f - scriptified Duke's spit projectile. 2022-12-11 19:43:49 +01:00
Christoph Oelckers
fcd05e38c9 - scriptified the freezer projectile. 2022-12-11 19:43:49 +01:00
Christoph Oelckers
83080beed4 - added SMALLSMOKE to the spawn list for ZScript. 2022-12-11 19:43:49 +01:00
Christoph Oelckers
f4bc5d6df8 - scriptified Duke's RPG. 2022-12-11 19:43:48 +01:00
Christoph Oelckers
c1545a1eaa - scriptified the shrink spark. 2022-12-11 19:43:48 +01:00
Christoph Oelckers
a756b71647 - scriptified the firelaser projectile.
This also fixes the animation of the RR variant, which used a bad value with '&'.
2022-12-11 19:43:48 +01:00