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
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
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
345d9c87b6
- RR: no more wall[] in actors_r.cpp
2021-11-29 00:55:41 +01:00
Christoph Oelckers
00edd16834
- Duke: get rid of the remaining wall[] references in actors_d.cpp
2021-11-29 00:55:41 +01:00
Christoph Oelckers
e0260bc709
- Duke/RR: weaponhitwall cleaned up (both variants)
2021-11-29 00:55:40 +01:00
Christoph Oelckers
5bb805663e
- Duke/RR: cleaned up the rest of hitradius* as well
...
Using wallsofsector iterator plus defining local variables more locally.
2021-11-29 00:55:40 +01:00
Christoph Oelckers
63985ce6be
- Duke/RR: redo the supremely ugly code to access the third point in hitradius*
2021-11-29 00:55:40 +01:00
Christoph Oelckers
68d653efe9
- made the same changes to hitradius_r
...
Also had to do some reformatting to get rid of the goto in there.
2021-11-29 00:55:40 +01:00
Christoph Oelckers
821f341e03
- use BFSSearch in hitradius_d
2021-11-29 00:55:39 +01:00
Christoph Oelckers
ad030d7e23
- Duke: SE20 + SE128 are wall-free
...
Also use symbolic constantfor SE_128 to make it easier to find.
2021-11-29 00:55:39 +01:00
Christoph Oelckers
010162261e
- Duke: use utilities in handle_se19
2021-11-29 00:55:39 +01:00
Christoph Oelckers
312bf5bf95
- Duke: use wall utilities in bounce and queball
2021-11-29 00:55:39 +01:00
Christoph Oelckers
58a091067f
- use provided sector/wall iterators in cacheit functions
2021-11-29 00:55:39 +01:00
Christoph Oelckers
2fe71a65a8
- added a few fallthrough annotations that were missed last time.
2021-11-29 00:55:31 +01:00
Mitch Richters
2a7d0e6fe3
- gi->AddExcludedEpisode()
: Pass FString variable through as reference instead of by value.
2021-11-29 00:55:31 +01:00
Christoph Oelckers
01abe7b2ac
- addressed most unused/uninitialized variable warnings from MSVC.
2021-11-29 00:55:30 +01:00
Christoph Oelckers
c6bd5c04c7
- fixed most warnings GCC pointed out in game code.
2021-11-29 00:55:29 +01:00
Christoph Oelckers
f7fdc5af41
- address several warnings reported by GCC 11.
2021-11-29 00:55:29 +01:00
Christoph Oelckers
dcccb0d653
- Duke: added [[fallthrough]] annotations wherever needed.
2021-11-29 00:55:29 +01:00
Mitch Richters
ec0203b89b
- Duke: Don't truncate fistzoom
to integer in animatefist()
.
2021-11-29 00:55:16 +01:00
Mitch Richters
e491d15ff9
- Move InputScale()
out of inputstate.cpp and into i_time.cpp
as I_GetInputFrac()
to make it available to GZDoom for potential future requirements.
...
* As part of this, feed the output of `I_GetInputFrac()` to `gi->GetInput()` instead of having each game's virtual override calling it locally.
2021-11-29 00:55:01 +01:00
Christoph Oelckers
5cda9d0858
- tabified two files in Duke that were missed somehow, plus some comment cleanup elsewhere.
2021-11-29 00:53:35 +01:00
Christoph Oelckers
aac02d52db
- Duke/RR: fixed hitradius
...
The recent optimization did not update the sector pointer inside the loop
2021-11-15 00:18:52 +01:00
Christoph Oelckers
9b21233c98
- little bit of cleanup
2021-11-11 23:47:26 +01:00
Christoph Oelckers
2e3c212444
- Duke: moved the temtempsector* arrays into the only function using them
2021-11-11 23:32:49 +01:00
Christoph Oelckers
f109f6c857
- Duke/RR: fixed two bad assignments to wall 0.
2021-11-11 21:58:15 +01:00
Christoph Oelckers
f2e344a235
- removed magic flags added to sector indices in Polymost.
...
These are better done as separate function arguments.
2021-11-11 21:28:53 +01:00
Christoph Oelckers
94b2b0af31
- widen sector index in engineLoadBoard to 32 bit
2021-11-09 00:07:00 +01:00