Christoph Oelckers
fa48b740c0
-proper owner storage for Duke.
2021-12-25 21:28:38 +01:00
Christoph Oelckers
b9602bbb05
- store owner outside the sprite.
2021-12-25 21:28:38 +01:00
Christoph Oelckers
10e6486744
- fixed typo in GenDudeExtra save check.
2021-12-25 21:28:38 +01:00
Christoph Oelckers
771f5e3338
- removed all old savegame handling
2021-12-25 21:28:38 +01:00
Christoph Oelckers
77a23e39c5
- Blood: added closing EndObject() call to DUDEEXTRA serializer.
2021-12-25 21:28:38 +01:00
Christoph Oelckers
6705e8e51e
- moved xsprite into DBloodActor and save all relevant parts of DBloodActor.
...
This completes Blood's transition.
2021-12-25 21:28:37 +01:00
Christoph Oelckers
766d87106a
- we do not need XSPRITE::reference anymore.
2021-12-25 21:28:37 +01:00
Christoph Oelckers
3d22bfa362
- do not crunch condition info to an int.
...
Once the global sprite array is gone we need full actor info here.
2021-12-25 21:28:37 +01:00
Mitch Richters
c6f2aaf1b7
- Miscellaneous fixes to commit to change sector checks over to validSectorIndex()
.
...
* Fix missed changeover in Blood's `actSpawnSprite()`.
* Fix non-negated check on a `validSectorIndex()` call in Blood's `debrisMove()`.
* Removed a superfluous terminator in Duke's `actor.cpp`.
* Fixed bad call to `validSectorIndex()` in Exhumed's `AIAnim::Tick()`.
2021-12-25 21:28:37 +01:00
Christoph Oelckers
999ec3c95a
use validSectorIndex checks where appropriate.
...
Let’s hope that this sloppiness doesn’t have negative effects with broken maps.
# Conflicts:
# source/games/sw/src/sprite.cpp
# Conflicts:
# source/games/duke/src/prediction.cpp
# source/games/duke/src/render.cpp
2021-12-25 21:28:37 +01:00
Christoph Oelckers
2d7c085617
- SW: fixed bad user in SpawnSplash
2021-12-25 21:27:36 +01:00
Christoph Oelckers
d1c6c783a6
- SW: fixed user spawned for wrong actor.
2021-12-25 20:35:53 +01:00
Christoph Oelckers
3ec904d5c0
- SW: fixed several bad User references in missile seeking code.
2021-12-25 20:11:40 +01:00
Christoph Oelckers
1c5fc16fa5
- SW: fixed two bad user assignments
2021-12-25 19:54:45 +01:00
Christoph Oelckers
a94f298600
- print new errors in red.
2021-12-16 11:56:26 +01:00
Christoph Oelckers
d011f3c201
- Blood: validate upper/lower sector links before starting a level.
...
Originally this just performed an OOB memory access, but with Raze's setup it would dereference a null pointer so these must be eliminated.
2021-12-16 11:54:55 +01:00
Christoph Oelckers
7f1a3431ca
- SW: fixed accidentally inverted colliision check in DoMirvMissile.
2021-12-15 20:51:31 +01:00
Christoph Oelckers
4daad25e5c
- use WORDS_BIGENDIAN directly in place of B_BIG_ENDIAN
2021-12-14 12:27:41 +01:00
Christoph Oelckers
7c4233bcf7
- replaced fallthrough__ with [[fallthrough]] as we are requiring C++17 and don't need workarounds for that.
2021-12-14 12:27:28 +01:00
Christoph Oelckers
7daa501a4d
- removed all #include "compat.h" except the one in build.h
...
Still all compiles fine.
2021-12-14 12:24:10 +01:00
Christoph Oelckers
6e43f1a15a
- Blood: refine picnum 0 filter to apply to face sprites only.
2021-12-13 17:58:11 +01:00
Mitchell Richters
6aecc18c35
- SW: Use floating point radians instead of converting integer Build angle into radians for when updating a sound's angle.
2021-12-13 23:37:11 +11:00
Christoph Oelckers
8abd67a3b1
- fixed sound listener angle for the remote control case.
...
It was taking the angle of the rotating sector object instead of the angle from the listener's position to it.
2021-12-13 13:24:33 +01:00
Christoph Oelckers
498abf25f3
- Blood: make sure that invalid sprites don't get rendered at all.
...
Seems the game may have depended on them being clipped by the floor or ceiling.
2021-12-13 11:45:28 +01:00
Christoph Oelckers
e104316e75
- fixed bad parameter to getzrange.
...
This originated from 1d39bb371e
where the getzrange_old function was removed
2021-12-13 09:39:57 +01:00
Christoph Oelckers
507dc10e4f
- Duke/RR: Fixed sprite validation checks in animatesprites.
2021-12-11 09:57:02 +01:00
Mitchell Richters
3269d6a398
- Duke: Ensure all weapon variables used for interpolation have the o
values set when CON updates them.
...
* Hasn't been an issue to date but could become one should a mod set these.
* Can't simply back the variable up and set the main one because unless the mod knows we're interpolating, it could have undesirable effects.
2021-12-10 17:31:51 +11:00
Mitchell Richters
ee1ffd2347
- Duke: Fix lotag signedness issue affecting SE10 (door auto-close).
...
* Originated in 01abe7b2ac
while removing a casting to short.
* Fixes #594 .
2021-12-10 17:26:56 +11:00
Mitch Richters
5aa4243327
- Duke: Test tsprite's sector in animatesprites_d()
following crash while noclipping in Duke WT's E5L1. Apply same fix to animatesprites_r()
as well.
2021-12-07 22:55:08 +11:00
Mitch Richters
6aba76cfe5
- Duke/RR: Fix RR crash while operating weapon outside of a sector (noclipping, etc).
2021-12-07 21:42:21 +11:00
Mitchell Richters
af96180123
- Duke/RR; Don't lose the precision of p->MotoSpeed
when calculating p->VBumpTarget
.
2021-12-07 20:02:30 +11:00
Mitch Richters
63a19bbb15
- Port spritetype::insector()
over from develop and use with sector nullptr checks in 6539d72663
.
2021-12-07 19:56:50 +11:00
Mitch Richters
6539d72663
- Duke/RR: Add three sector nullptr checks after receiving crash in Redneck Rampage Route 66 while noclipping.
2021-12-07 19:44:35 +11:00
Mitch Richters
85a2e3bd06
- Duke/RR: Do nullptr test in floorspace_d()
/floorspace_r()
functions to match ceilingspace_*()
functions.
2021-12-07 19:41:25 +11:00
Mitch Richters
a7e99a3bd1
- Duke/RR: Do nullptr test in ceilingspace_r()
after receiving crash in Redneck Rampage Route 66 (do Duke for parity).
2021-12-07 19:41:22 +11:00
Mitch Richters
96867e15d5
- Duke: Apply same nullptr fix in 2e7496888a
to prelevel_r()
, and rename sect
to sectp
for 1:1 match between _d.cpp and _r.cpp files.
2021-12-07 19:41:18 +11:00
Mitch Richters
2e7496888a
- Duke: Re-add lost nullptr check in prelevel_d()
that was causing a crash while loading Duke Nukem's Penthouse Paradise.
2021-12-03 10:14:41 +01:00
Christoph Oelckers
81268cb9b6
partial Revert of "- optimized vector math."
...
This reverts commit 826fd7ddb2
.
Looks like there's dependencies on the intermediate variables. The optimized code gave the same result but did not work anymore.
2021-12-02 23:32:20 +01:00
Christoph Oelckers
c2baa68160
- fixed camera textures breaking in SW when restarting a level.
...
This was caused by attempting to delete the camera textures when cleaning up the mirror array.
The Build tile manager was not prepared for such a use case and left a broken texture behind.
To allow this to function it now resets the texture replacement type when deleting a tile and to avoid creating new camera textures these will now be stored in a cache and recycled later.
2021-12-02 21:40:43 +01:00
Christoph Oelckers
60630f5b84
- do not init pointers to 0xffffffffffffffff.
...
These will most certainly crash when used in any way.
2021-12-02 18:42:02 +01:00
Christoph Oelckers
cb099b1b66
- added two missing semicolons.
...
Unbelievable that this was legal C++ and didn't even get a warning!
2021-12-01 23:30:02 +01:00
Christoph Oelckers
57aca0ed07
- SW: fixed sector object setup with vator effect.
...
This used some weird initialization logic that was missed when first modifying this code.
2021-12-01 21:00:00 +01:00
Christoph Oelckers
324e35e776
- SW: fixed use of uninitialized variable in WallSetup
2021-12-01 19:55:18 +01:00
Christoph Oelckers
5bb114ba6e
- fixed two bad actor references in Exhumed's radial damage code.
...
The radial source is passed through pRadialActor, not pObjActor.
2021-11-30 22:44:54 +01:00
Christoph Oelckers
690994ea1e
- Duke: fix missing sectp update in processinput_d.
...
RR version had this correct
2021-11-30 00:20:16 +01:00
Christoph Oelckers
64cad55d73
- fixed updatesector and changed updatesectorz to use the same search algorithm.
...
The initial distance check in updatesectorneighbor had a far too low threshold which would skip the breadth-first search for relatively small distances already.
Exhumed's LEV1 and Duke's Lunatic Fringe were the most obvious candidates where this could cause problems.
Changed to use a mixture of the original updatesector with the revised algorithm so that all immediate neighbors of the start sector will get visited unconditionally.
updatesectorz was still the original function from Shadow Warrior, this also was changed to use the same algorithm as uodatesector.
2021-11-30 00:15:25 +01:00
Christoph Oelckers
71dfe7ecfe
- fixed handling for cl_capfps and cl_nointerpolate to never use any smoothratio value other than 1.0.
2021-11-29 00:57:11 +01:00
Christoph Oelckers
b54e52330c
- Blood: don't play the same looped sound multiple times on the same actor.
...
This caused some strong echoing on E4M6.
2021-11-29 00:57:11 +01:00
Christoph Oelckers
1de9c63d45
- fixed center aligned rendering of 2D content.
...
This calculates the centered pivot point in integer texel coordinate space so for odd numbers it must round down instead of using a fractional position.
2021-11-29 00:57:10 +01:00
Christoph Oelckers
ec63dd4cb3
- SW: precacheMap cleanup
2021-11-29 00:57:09 +01:00
Christoph Oelckers
b73ea76c18
- cleaned out Bunny_Count declarations.
...
One is enough.
2021-11-29 00:57:09 +01:00
Mitch Richters
73c5bef580
- Blood: Remove duplicated code from render3DViewPolymost()
that's already performed in viewDrawScreen()
.
2021-11-29 00:56:33 +01:00
carnivoroussociety
61cafc7d57
[Blood] Fix self collisions for lifeleech projectiles
2021-11-29 00:56:33 +01:00
carnivoroussociety
958d004119
[Blood] Match view height clamping behavior to 1.21
2021-11-29 00:56:32 +01:00
Christoph Oelckers
cd3288860a
- fixed automap player drawing for follpw mode off in all games.
2021-11-29 00:56:32 +01:00
Christoph Oelckers
2949361c82
- Duke/RR: added null checks to all spawn() calls
2021-11-29 00:56:32 +01:00
Christoph Oelckers
d5a6be3d96
- cleaned up Duke's spawn code.
...
The paths for initializing a map placed sprite and spawning a new actor at run time are now fully separate aside from the actual initialization of the actor.
2021-11-29 00:56:31 +01:00
Christoph Oelckers
4c7662b4ea
- Duke/RR: guard all calls to EGS with a null pointer check.
...
Spawning sprites into the void will crash the engine so these must be blocked which requires a failure check here.
With this pressing fire while in the void no longer crashes the game - it won't fire anything, either, though.
2021-11-29 00:56:31 +01:00
Christoph Oelckers
fcbb7320a8
- Duke/RR: added all checks needed for not letting Duke crash with noclip when not accepting -1 as a valid sector pointer.
...
All places that were causing a crash are now guared by calling 'insector()'.
2021-11-29 00:56:31 +01:00
Christoph Oelckers
8972dbe5da
- actorstayput
2021-11-29 00:56:31 +01:00
Christoph Oelckers
4a81d45630
- the remaining sector[] stuff in Duke/RR.
...
What remains is either engine interface code or not easily replaced.
2021-11-29 00:56:31 +01:00
Christoph Oelckers
5e66a3331d
- getanimationgoal.
2021-11-29 00:56:30 +01:00
Christoph Oelckers
baf36a321b
- inside, haskey and removed unused processmove functions.
2021-11-29 00:56:30 +01:00
Christoph Oelckers
3970c9a757
- use sector pointers in actors_lava.cpp
2021-11-29 00:56:30 +01:00
Christoph Oelckers
9b6d6eb7f9
- sector[] in render interface
2021-11-29 00:56:30 +01:00
Christoph Oelckers
db96e93adc
- animatesect, setanimation and related stuff.
2021-11-29 00:56:30 +01:00
Christoph Oelckers
b0ced98d5e
- changed main EGS function.
2021-11-29 00:56:29 +01:00
Christoph Oelckers
09c2677fe7
- lots of EGS calls.
2021-11-29 00:56:29 +01:00
Christoph Oelckers
876d1dbe1f
- operatesectors and activatebysector.
2021-11-29 00:56:29 +01:00
Christoph Oelckers
c57c007010
- do the remaining st handlers.
2021-11-29 00:56:29 +01:00
Christoph Oelckers
2aec8f47d3
- more st functions.
2021-11-29 00:56:29 +01:00
Christoph Oelckers
2a290dec48
- handle_st15 / handle_st16.
2021-11-29 00:56:29 +01:00
Christoph Oelckers
da4df04e7d
- sector[] in handle_st09.
2021-11-29 00:56:28 +01:00
Christoph Oelckers
45519f67c1
- Duke: let neartag return pointers
2021-11-29 00:56:28 +01:00
Christoph Oelckers
a9aadfd63d
- neartag cleanup in checksectors.
2021-11-29 00:56:28 +01:00
Christoph Oelckers
3d05020f4c
- checkhitceiling + ceilingglass are sector[] free.
2021-11-29 00:56:28 +01:00
Christoph Oelckers
747fc11eb7
- Duke: use sector pointer in movement code
2021-11-29 00:56:28 +01:00
Christoph Oelckers
931c71a78c
- use sector iterator for cheatUnlock
2021-11-29 00:56:27 +01:00
Christoph Oelckers
a7634c4cad
- Duke: use pointers in interpolation interface.
2021-11-29 00:56:27 +01:00
Christoph Oelckers
0d8b380b05
- use wallsofsector for all remaining iterations over a sector's walls.
2021-11-29 00:56:27 +01:00
Christoph Oelckers
ac5425a545
- extended player_orig.os to full int.
...
This was the last remaining short variable in Duke/RR that holds a sector index.
2021-11-29 00:56:27 +01:00
Christoph Oelckers
a0950081ad
- fixed bad sector use in handle_st18
2021-11-29 00:56:27 +01:00
Christoph Oelckers
5c9327a788
- use pointer variant of nextsectorneighborz.
2021-11-29 00:56:27 +01:00
Christoph Oelckers
0f2f46ec35
- made one_parallax_sectnum a pointer
2021-11-29 00:56:26 +01:00
Christoph Oelckers
bc199d00c7
- made 'clouds' a pointer array.
2021-11-29 00:56:26 +01:00
Christoph Oelckers
7a9e39a96b
- delete some inactive code.
2021-11-29 00:56:26 +01:00
Christoph Oelckers
adf3133fdc
- use sectnum and wallnum to get an index from pointers instead of subtracting the array base.
2021-11-29 00:56:26 +01:00
Christoph Oelckers
4e31360fe4
- cleaned up dragpoint
...
This still contained some code for EDuke32's TROR and used a shared static global array.
It now uses the BFSSearch class to manage its bit array to unlimit the size of its working set and to avoid reallocation.
2021-11-29 00:56:25 +01:00
Christoph Oelckers
7126aa22f4
- preparations in the map loader for dynamically sized data storage.
...
This also consolidates these parts for Blood with the other games.
2021-11-29 00:56:25 +01:00
Christoph Oelckers
33a3e0d8bf
- deleted some unused global variables, code simplification plus extended wall index field in Trap
...
Todo: give fields more meaningful names!
2021-11-29 00:56:25 +01:00
Christoph Oelckers
c1c59006bc
- Exhumed: cleaned up disassembly-like code in SnapSectors
2021-11-29 00:56:25 +01:00
Christoph Oelckers
e6682f4489
- Exhumed: some simple wall stuff
2021-11-29 00:56:25 +01:00
Christoph Oelckers
7b1345d3e5
- Exhumed: wall stuff in AddFlash
2021-11-29 00:56:24 +01:00
Christoph Oelckers
c31d8a93fd
- a few more
...
Enough of this - Duke is clearly clean of bad storage now
2021-11-29 00:56:24 +01:00
Christoph Oelckers
53122355fe
- more sectors in spawn.cpp
2021-11-29 00:56:24 +01:00
Christoph Oelckers
c79dace730
- eliminated sector[] in position checkers
2021-11-29 00:56:24 +01:00
Christoph Oelckers
27af8a52e9
- the final walls
...
What is left now of wall[] and wallnum() needs to remain.
2021-11-29 00:56:24 +01:00
Christoph Oelckers
a26dc25e97
- lotsofpopcorn
2021-11-29 00:56:24 +01:00
Christoph Oelckers
35eb94b89a
- lotsofcolourglass
2021-11-29 00:56:23 +01:00
Christoph Oelckers
344041167e
- add setanimation variant taking a wall pointer
...
Mainly to get rid of wallnum()calls elsewhere.
2021-11-29 00:56:23 +01:00
Christoph Oelckers
83344818fd
- pass wall pointer to breakwall
2021-11-29 00:56:23 +01:00
Christoph Oelckers
567a360092
- store wall pointers in animwall
2021-11-29 00:56:23 +01:00
Christoph Oelckers
6b73a37b56
- made mirrorsector a pointer array
2021-11-29 00:56:23 +01:00
Christoph Oelckers
58cd8bd6b9
- make mirrorwall a pointer array
2021-11-29 00:56:23 +01:00
Christoph Oelckers
caa9ef6dd3
- make access_wallnum a pointer
2021-11-29 00:56:22 +01:00
Christoph Oelckers
e7369a2796
- use pointers for checkhitswitch and took separated clearcameras to a new functions to make this free of gotos.
2021-11-29 00:56:22 +01:00
Christoph Oelckers
9d8e7ea759
- crane cleanup
...
This now uses its own struct where it can store the needed actor pointer directly.
2021-11-29 00:56:22 +01:00
Christoph Oelckers
d405da9195
- changed furthestcanseepoint return value
...
This does not need to return a sector - the caller merely expects success or failure.
2021-11-29 00:56:22 +01:00
Christoph Oelckers
4823152107
- hitawall
2021-11-29 00:56:22 +01:00
Christoph Oelckers
d45ab528e6
- hitscan in player_r.cpp
2021-11-29 00:56:21 +01:00
Christoph Oelckers
1a11e445c3
- remaining hitscans in player_d.cpp
2021-11-29 00:56:21 +01:00
Christoph Oelckers
b68c66dae6
-Duke/RR: started migrating hitscan to pointer usage.
2021-11-29 00:56:21 +01:00
Christoph Oelckers
09e75ddca2
- change wall parameter of checkhitwall.
2021-11-29 00:56:21 +01:00
Christoph Oelckers
c410b1be45
- glass stuff
2021-11-29 00:56:21 +01:00
Christoph Oelckers
200daacd3c
- checksectors*
2021-11-29 00:56:20 +01:00
Christoph Oelckers
a38fdd2890
-more in spawneffectors
2021-11-29 00:56:20 +01:00
Christoph Oelckers
94d0e9775f
- spawneffectors
2021-11-29 00:56:20 +01:00
Christoph Oelckers
cccc577c2e
- lotsofpopcorn + dofurniture
2021-11-29 00:56:20 +01:00
Christoph Oelckers
8c4cb75d8c
- checkhitswitch_r
2021-11-29 00:56:20 +01:00
Christoph Oelckers
6d4365f3a2
- animatewalls_r
2021-11-29 00:56:20 +01:00
Christoph Oelckers
530c29973e
- more walls in sectors_d.cpp
2021-11-29 00:56:20 +01:00
Christoph Oelckers
7268e779a7
- checkhitswitch_d
2021-11-29 00:56:19 +01:00
Christoph Oelckers
8cf3963901
- animatewalls_d
2021-11-29 00:56:19 +01:00
Christoph Oelckers
7615a52126
-operatesectors + operateforcefields.
2021-11-29 00:56:19 +01:00
Christoph Oelckers
60f16e8fb8
- handle_st09
2021-11-29 00:56:19 +01:00
Christoph Oelckers
463ce55d0b
- premap
2021-11-29 00:56:19 +01:00
Christoph Oelckers
7a504e27d2
- premap_d
2021-11-29 00:56:19 +01:00
Christoph Oelckers
6b8e7b3fbc
- RR: movement code
2021-11-29 00:56:18 +01:00
Christoph Oelckers
1953f0f599
- delete unused variables.
2021-11-29 00:56:18 +01:00
Christoph Oelckers
aee2668088
- RR shootWeapon
2021-11-29 00:56:18 +01:00
Christoph Oelckers
b97f8706ad
- operateTripBomb
2021-11-29 00:56:18 +01:00
Christoph Oelckers
e88047fc45
- wall[] in shootknee, shootweapon and shootlaser.
2021-11-29 00:56:18 +01:00
Christoph Oelckers
81894fd831
- Duke: shootbloodsplat
2021-11-29 00:56:18 +01:00
Christoph Oelckers
2fa027a686
- RR: deal with wall[] in actor_lava.cpp
2021-11-29 00:56:17 +01:00
Christoph Oelckers
399f254629
- the definitely last bit: There was still a spritenum reference in NEAR_TAG_INFO
...
SW done!
2021-11-29 00:56:17 +01:00
Christoph Oelckers
b97760db29
- forgotten cleanup.
2021-11-29 00:56:17 +01:00
Christoph Oelckers
ed2d8373fc
- final cleanup.
2021-11-29 00:56:17 +01:00
Christoph Oelckers
e12ae040de
- collision code cleanup.
...
# Conflicts:
# source/games/sw/src/game.h
# source/games/sw/src/sprite.cpp
# Conflicts:
# source/games/sw/src/game.h
2021-11-29 00:56:17 +01:00
Christoph Oelckers
898f56dd86
- User[] is mostly gone.
...
All access is now through the actor.
2021-11-29 00:56:16 +01:00
Christoph Oelckers
cd73cd616e
- ActorDrop.
2021-11-29 00:56:16 +01:00
Christoph Oelckers
56760d1824
- CanGetWeapon
2021-11-29 00:56:16 +01:00
Christoph Oelckers
88a5a95cde
- SpriteNum cleanup.
2021-11-29 00:56:16 +01:00
Christoph Oelckers
03c9ef6d20
- SetGunQuake
2021-11-29 00:56:16 +01:00
Christoph Oelckers
2f1e23a654
- replaced PLAYER::PlayerSprite with PLAYER::actor
...
# Conflicts:
# source/games/sw/src/save.cpp
2021-11-29 00:56:15 +01:00
Christoph Oelckers
5b10e9f2d5
- got rid of SpriteP pointers in PLAYER and USER.
2021-11-29 00:56:15 +01:00
Christoph Oelckers
8d95b9cb98
- got rid of the PlaySound variant taking a sprite pointer.
2021-11-29 00:56:15 +01:00
Christoph Oelckers
580b7002fb
- PlaySound calls in DoGet.
2021-11-29 00:56:15 +01:00
Christoph Oelckers
6f8480ebc3
- KillGet... functions.
2021-11-29 00:56:15 +01:00
Christoph Oelckers
95b7949f7d
- minor sprite.cpp cleanup.
2021-11-29 00:56:14 +01:00
Christoph Oelckers
cb477d4ab7
- ActorSpawn cleanup.
2021-11-29 00:56:14 +01:00
Christoph Oelckers
d8ea4db5b2
- Got rid of SpawnSprite.
2021-11-29 00:56:14 +01:00
Christoph Oelckers
a57af58d4c
- get rid of KillSprite.
2021-11-29 00:56:14 +01:00
Christoph Oelckers
431103032f
- SpriteOverlapZ
2021-11-29 00:56:14 +01:00
Christoph Oelckers
66e61d799d
- handle the remaining SectIterators.
2021-11-29 00:56:14 +01:00
Christoph Oelckers
df5d980f79
- handle all remaining StatIterators.
2021-11-29 00:56:13 +01:00
Christoph Oelckers
69223af7b0
- SpriteControl and subfunctions.
2021-11-29 00:56:13 +01:00
Christoph Oelckers
591a3f623d
- dead code removal.
2021-11-29 00:56:13 +01:00
Christoph Oelckers
79dcd2c178
- iterators in CollectPortals
2021-11-29 00:56:13 +01:00
Christoph Oelckers
8df851c3e3
- unsaved bits.
2021-11-29 00:56:13 +01:00
Christoph Oelckers
f8105dc92b
- track.cpp complete.
2021-11-29 00:56:12 +01:00
Christoph Oelckers
4796ebc73c
- track setup code
2021-11-29 00:56:12 +01:00
Christoph Oelckers
92c497ac29
- TrackSetup
2021-11-29 00:56:12 +01:00
Christoph Oelckers
c34f0ab210
- SectorObjectSetupBounds
...
Note: Do proper checks on crashing mapping errors. Asserts are insufficient for these!
2021-11-29 00:56:12 +01:00
Christoph Oelckers
41f8c6f4af
- owner fixes in weapons.cpp.
...
# Conflicts:
# source/games/sw/src/game.h
# Conflicts:
# source/games/sw/src/game.h
# source/games/sw/src/weapon.cpp
2021-11-29 00:56:12 +01:00
Christoph Oelckers
e908e4ff44
- final bit of weapon.cpp cleanup.
2021-11-29 00:56:12 +01:00
Christoph Oelckers
31f4a7464a
- finishing up with DoDamage.
2021-11-29 00:56:11 +01:00
Christoph Oelckers
487e2b7a1e
- ActorHealth + ActorPain
2021-11-29 00:56:11 +01:00
Christoph Oelckers
93ad08a167
- ActorStdMissile + ActorDamageSlide
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:56:11 +01:00
Christoph Oelckers
2c39177c07
- ActorChooseDeath
2021-11-29 00:56:11 +01:00
Christoph Oelckers
604731bc08
- GetDamage
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:56:11 +01:00
Christoph Oelckers
2b4ed0eaf3
- PlayerCheckDeath
2021-11-29 00:56:10 +01:00
Christoph Oelckers
14b3a68e8c
- DoDamage API.
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:56:10 +01:00
Christoph Oelckers
f8eac8c8eb
- SpriteOverlap
2021-11-29 00:56:10 +01:00
Christoph Oelckers
2c4862b220
- DoDamageTest + DoHitscanDamage + DoFlamesDamageTest
2021-11-29 00:56:10 +01:00
Christoph Oelckers
ddd6f881f0
- DoExpDamageTest + DoMineExpMine
2021-11-29 00:56:10 +01:00
Christoph Oelckers
15e7e784c5
- did the internal movement helpers.
2021-11-29 00:56:09 +01:00
Christoph Oelckers
a073ef65e7
- low level move functions now return a Collision struct.
...
# Conflicts:
# source/games/sw/src/sprite.cpp
2021-11-29 00:56:09 +01:00
Christoph Oelckers
606ce997ac
- cleanup of collision maintenance.
...
u->ret is gone, and for clearing the collision info the proper utilities are being called now.
2021-11-29 00:56:09 +01:00
Christoph Oelckers
5f32bc17ef
- WeaponMoveHit
2021-11-29 00:56:09 +01:00
Christoph Oelckers
edf84c6fbc
- DoStar, DoCrossBolt, DoPlasmaDone
2021-11-29 00:56:09 +01:00
Christoph Oelckers
f516a538d4
- Seekers + BlurExtend.
2021-11-29 00:56:08 +01:00
Christoph Oelckers
7d99745cd6
- DoPlasmaFountain + InitPlasmaFountain
2021-11-29 00:56:08 +01:00
Christoph Oelckers
f888375e2a
- several u->ret replaced.
2021-11-29 00:56:08 +01:00
Christoph Oelckers
05a812f066
- DoPlasma, DoCoolgFire, DoEelFire.
2021-11-29 00:56:08 +01:00
Christoph Oelckers
0377f3348c
- DoGrenade
2021-11-29 00:56:08 +01:00
Christoph Oelckers
45c2129ac4
- DoVulcanBoulder
2021-11-29 00:56:07 +01:00
Christoph Oelckers
c015e6691a
- DoMineStuck + subfunctions.
2021-11-29 00:56:07 +01:00
Christoph Oelckers
01609b8e9f
- DoMine
2021-11-29 00:56:07 +01:00
Christoph Oelckers
4d5569d785
- several very simple functions.
2021-11-29 00:56:07 +01:00
Christoph Oelckers
a0fd5bef66
- DoLaserStart, DoRail, DoRailStart, DoRocket
2021-11-29 00:56:07 +01:00
Christoph Oelckers
35579a9f08
- SpawnExoZAdjust arguments.
2021-11-29 00:56:06 +01:00
Christoph Oelckers
dd528c5eab
- DoMicroMini, SpawnExtraMicroMini, DoMicro, DoUziBullet, DoBoltSeeker
2021-11-29 00:56:06 +01:00
Christoph Oelckers
acc9a09db9
- DoElectro, DoLavaBoulder, DoSpear, SpawnCoolieExp.
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:56:06 +01:00
Christoph Oelckers
151306d763
- SpawnFireballFlames
...
# Conflicts:
# source/games/sw/src/weapon.cpp
# source/games/sw/src/weapon.h
2021-11-29 00:56:06 +01:00
Christoph Oelckers
b863901037
- Spawn*flames
2021-11-29 00:56:06 +01:00
Christoph Oelckers
e56b055e2e
- Spawn(Goro)FireballExp
2021-11-29 00:56:06 +01:00
Christoph Oelckers
818bdc3b03
- WeaponMoveHit plus some smaller functions.
2021-11-29 00:56:05 +01:00
Christoph Oelckers
8af0455f92
- VehicleMoveHit
2021-11-29 00:56:05 +01:00
Christoph Oelckers
57fc6ce53a
- several smaller Shrap functions.
2021-11-29 00:56:05 +01:00
Christoph Oelckers
10b18d8a9b
- SpawnShrap
2021-11-29 00:56:05 +01:00
Christoph Oelckers
e523c78269
- MissileHitMatch
2021-11-29 00:56:04 +01:00
Christoph Oelckers
4568564150
- SpawnTankShellExp, SpawnBunnyExp, SpawnBoltExp
2021-11-29 00:56:04 +01:00
Christoph Oelckers
3a16ac673c
- SpawnNuclearExp
2021-11-29 00:56:04 +01:00
Christoph Oelckers
2480beebcf
- owner checks in PlayerTakeDamage
2021-11-29 00:56:04 +01:00
Christoph Oelckers
f0c670603e
- DoNapalm, DoBloodWorm
2021-11-29 00:56:04 +01:00
Christoph Oelckers
a96cffc4ef
- SpawnTracerExp + SpawnMicroExp.
2021-11-29 00:56:03 +01:00
Christoph Oelckers
a40fca5398
- SpawnBigGunFlames
2021-11-29 00:56:03 +01:00
Christoph Oelckers
120a14a9a7
- SpawnGrenadeSecondaryExp
2021-11-29 00:56:03 +01:00
Christoph Oelckers
f3037a0b0c
- SpawnGrenadeExp
...
# Conflicts:
# source/games/sw/src/weapon.h
2021-11-29 00:56:03 +01:00
Christoph Oelckers
28c07b6b3c
- more explosions.
2021-11-29 00:56:03 +01:00
Christoph Oelckers
aa8b217f07
- SpawnMeteorExp
2021-11-29 00:56:02 +01:00
Christoph Oelckers
28e10656b2
- DoFireball + SpawnLittleExp
2021-11-29 00:56:02 +01:00
Christoph Oelckers
cbf8d2324a
- DoFindGround(Point)
2021-11-29 00:56:02 +01:00
Christoph Oelckers
6a25b4a560
- getzrange wrappers.
...
# Conflicts:
# source/games/sw/src/game.h
2021-11-29 00:56:02 +01:00
Christoph Oelckers
057de89b9b
- u->ret cleanup.
2021-11-29 00:56:02 +01:00
Christoph Oelckers
f8a74df87e
- Mirvs and Meteors.
2021-11-29 00:56:01 +01:00
Christoph Oelckers
6f0c477e85
- getting rid of COVERinsertsprite, plus cleanup.
2021-11-29 00:56:01 +01:00
Christoph Oelckers
e2c5b33ae1
- MissileSetPos
...
This removes a lot of GetSpriteIndex references. :)
2021-11-29 00:56:01 +01:00
Christoph Oelckers
6a31b93434
- ring stuff
2021-11-29 00:56:01 +01:00
Christoph Oelckers
512bc7ddbb
- InitLavaThrow + InitVulcanBoulder + InitSerpRing.
2021-11-29 00:56:01 +01:00
Christoph Oelckers
79ff267391
- Napalm stuff
2021-11-29 00:56:00 +01:00
Christoph Oelckers
ac277a8ecc
- MIRVs.
2021-11-29 00:56:00 +01:00
Christoph Oelckers
78e45e889a
- InitSwordAttack
2021-11-29 00:56:00 +01:00
Christoph Oelckers
74b94f4bf3
- InitFistAttack.
2021-11-29 00:56:00 +01:00
Christoph Oelckers
d72bcfec97
- WeaponAutoAimZvel
2021-11-29 00:56:00 +01:00
Christoph Oelckers
674e4b9499
- AimHitscanToTarget, WeaponHitscanShootFeet, InitStar
2021-11-29 00:56:00 +01:00
Christoph Oelckers
d94ed87e43
- WeaponAutoAim
2021-11-29 00:55:59 +01:00
Christoph Oelckers
ee8eb238d2
- TestMissileSetPos
2021-11-29 00:55:59 +01:00
Christoph Oelckers
7f031f06ef
- HelpMissileLateral.
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:55:59 +01:00
Christoph Oelckers
514baa9a8f
- InitHeartAttack plus some cleanup.
2021-11-29 00:55:59 +01:00
Christoph Oelckers
aec3b40e7b
- ContinueHitscan
2021-11-29 00:55:59 +01:00
Christoph Oelckers
105ef08384
- Init(Bunny)Rocket
2021-11-29 00:55:58 +01:00
Christoph Oelckers
0690a5c035
- InitShotgun + InitLaser
...
InitLaser is unused but fully functional, so let's keep it for modding.
2021-11-29 00:55:58 +01:00
Christoph Oelckers
3b49b053d7
- Init(Zilla)Rail
2021-11-29 00:55:58 +01:00
Christoph Oelckers
35d6f7efd5
- Init(Enemy)Nuke
2021-11-29 00:55:58 +01:00
Christoph Oelckers
7436c17469
- InitMicro
2021-11-29 00:55:58 +01:00
Christoph Oelckers
ecc2da58d5
- 4 more damage functions.
2021-11-29 00:55:57 +01:00
Christoph Oelckers
290482ffb1
- several damage functions.
2021-11-29 00:55:57 +01:00
Christoph Oelckers
a662f8b076
- InitSerpSpell + SpawnDemonFist
2021-11-29 00:55:57 +01:00
Christoph Oelckers
3cd05147e5
- InitEnemyRocket + InitSerpMonstSpell
2021-11-29 00:55:57 +01:00
Christoph Oelckers
63870b6077
- InitEnemyRail, InitZillaRocket, InitEnemyStar
2021-11-29 00:55:57 +01:00
Christoph Oelckers
289856a1fc
- InitEnemyCrossbow, InitSkelSpell, InitCoolgFire
2021-11-29 00:55:56 +01:00
Christoph Oelckers
f66dcd8d53
- fixed deletion of FAF_COPY actors.
...
This called the wrong function.
2021-11-29 00:55:56 +01:00
Christoph Oelckers
845cf124e1
- drips and eels.
2021-11-29 00:55:56 +01:00
Christoph Oelckers
84e99a377d
- Init*Trap.
2021-11-29 00:55:56 +01:00
Christoph Oelckers
6e922b2851
- InitTracerUzi
2021-11-29 00:55:56 +01:00
Christoph Oelckers
e8791001e4
- InitTracerTurret + InitTracerAutoTurret
2021-11-29 00:55:55 +01:00
Christoph Oelckers
70adfe43bf
- BulletHitSprite
2021-11-29 00:55:55 +01:00
Christoph Oelckers
ff60bf0430
- MissileWaterAdjust
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:55:55 +01:00
Christoph Oelckers
81131f7a71
- HitscanSpriteAdjust
2021-11-29 00:55:55 +01:00
Christoph Oelckers
9c0a5312eb
- InitUzi
2021-11-29 00:55:55 +01:00
Christoph Oelckers
c053b46a6d
- removed the disabled and mostly non-functional code for the EMP gun (secondary fire of railgun)
2021-11-29 00:55:54 +01:00
Christoph Oelckers
5900ac7db4
- InitTankShell + InitEMP.
2021-11-29 00:55:54 +01:00
Christoph Oelckers
a25bdf2354
- InitTurretMicro
2021-11-29 00:55:54 +01:00
Christoph Oelckers
4141b5d609
- InitTurretRocket + InitTurretFireball
2021-11-29 00:55:54 +01:00
Christoph Oelckers
6e7892c326
- InitTurretRail + InitTurretLaser
2021-11-29 00:55:54 +01:00
Christoph Oelckers
9eb1f9963a
- InitSobjMachineGun
2021-11-29 00:55:53 +01:00
Christoph Oelckers
60d5490654
- Init SobjGun
2021-11-29 00:55:53 +01:00
Christoph Oelckers
2c0a597f06
- WeaponAutoAimHitscan
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:55:53 +01:00
Christoph Oelckers
9d0056f8c7
- Spawn*Sparks functions.
2021-11-29 00:55:53 +01:00
Christoph Oelckers
ddd682aee6
- InitTurretMgun
2021-11-29 00:55:53 +01:00
Christoph Oelckers
da1e97469e
- FAFhitscan migration to HITINFO.
2021-11-29 00:55:52 +01:00
Christoph Oelckers
63f9330f53
- InitEnemyUzi
2021-11-29 00:55:52 +01:00
Christoph Oelckers
614757cda4
- InitGrenade
2021-11-29 00:55:52 +01:00
Christoph Oelckers
2515a663cd
- InitSpriteGrenade
2021-11-29 00:55:52 +01:00
Christoph Oelckers
7d352d2387
- InitMine
2021-11-29 00:55:52 +01:00
Christoph Oelckers
1491b9ef95
- InitEnemyMine
2021-11-29 00:55:51 +01:00
Christoph Oelckers
f9ea4874ed
- InitFireball
2021-11-29 00:55:51 +01:00
Christoph Oelckers
a42e44d662
- InitEnemyFireball
2021-11-29 00:55:51 +01:00
Christoph Oelckers
1b02c9e533
- WarpToUnderwater + WarpToSurface
2021-11-29 00:55:51 +01:00
Christoph Oelckers
5264c6540c
- SpriteWarpToUnderwater + SpriteWarpToSurface
2021-11-29 00:55:51 +01:00
Christoph Oelckers
130028fa82
- SpawnSplash(XY)
...
# Conflicts:
# source/games/sw/src/weapon.cpp
2021-11-29 00:55:50 +01:00
Christoph Oelckers
7411e7e9ba
- MissileHitDiveArea
2021-11-29 00:55:50 +01:00
Christoph Oelckers
f438773af9
- internal cleanup of some spawn functions.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
96ebfe808c
- turned some macros into functions.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
64e812bd33
- TestDontStick.
2021-11-29 00:55:50 +01:00
Christoph Oelckers
dfb5d07459
- QueueHole
2021-11-29 00:55:49 +01:00
Christoph Oelckers
83d0930a2e
- QueueFootPrint + QueuefloorBlood.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
01d2967378
- QueueWallBlood.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
deddd7d514
- it is not necessary to clear the owner of a freshly spawned actor.
...
They are always spawned owner-less.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
9cefc351a1
- bloody stuff.
2021-11-29 00:55:49 +01:00
Christoph Oelckers
2455c197bf
- DoShrapVelocity + SlopeBounce.
2021-11-29 00:55:48 +01:00
Christoph Oelckers
0d45e50ea6
- QueueGeneric + ShrapKillSprite.
2021-11-29 00:55:48 +01:00
Christoph Oelckers
95d3095f8d
- DoItemFly
2021-11-29 00:55:48 +01:00
Christoph Oelckers
c14fb9e93f
- QueueLoWangs
2021-11-29 00:55:48 +01:00
Christoph Oelckers
58749b2770
- NewStateGroup wrappers replaced.
2021-11-29 00:55:48 +01:00
Christoph Oelckers
a85a1e497f
- ActorCoughItem.
2021-11-29 00:55:47 +01:00
Christoph Oelckers
cd8e8e4f67
- removed index based version of SpawnUser.
2021-11-29 00:55:47 +01:00
Christoph Oelckers
3a3c6a4395
- IconDefault
2021-11-29 00:55:47 +01:00
Christoph Oelckers
947f5f1d78
- ItemSpotClear.
2021-11-29 00:55:47 +01:00
Christoph Oelckers
374d0524d2
- first pass over SpawnItemsMatch.
...
This was purely search & replace.
2021-11-29 00:55:47 +01:00
Christoph Oelckers
6489c60905
- lots of search & replace, plus a few fixes on ActorSpawn.
2021-11-29 00:55:46 +01:00
Christoph Oelckers
d49ae699f8
- ChangeSpriteState + change_sprite_stat.
2021-11-29 00:55:46 +01:00
Christoph Oelckers
e41f49d46d
KillSprite internals.
2021-11-29 00:55:46 +01:00
Christoph Oelckers
b705ff3b97
- WallBounce
2021-11-29 00:55:46 +01:00
Christoph Oelckers
300e6df6c3
- MissileHitDiveArea calls.
2021-11-29 00:55:46 +01:00
Christoph Oelckers
0b3b30170c
- DoActorZRange parameters.
2021-11-29 00:55:45 +01:00
Christoph Oelckers
7111b2470c
- SW: use BFSSearch in TraverseBreakableWalls
2021-11-29 00:55:45 +01:00
Christoph Oelckers
3e558c2295
- use BFSSearch for PreMapCombineFloors.
2021-11-29 00:55:44 +01:00
Christoph Oelckers
1b3b8ab7cc
- use wallsofsector in PreMapCombineFloors
2021-11-29 00:55:44 +01:00