Christoph Oelckers
7e8fc3fe65
- target in UpdateAimVector, teslaHit.
2021-11-29 00:53:56 +01:00
Christoph Oelckers
7d1c81626e
- changed all naked Stat/SectIterator loops to use the Blood... variants.
2021-11-29 00:53:56 +01:00
Christoph Oelckers
9016256ac2
- savegame hackery for sequences.
2021-11-29 00:53:56 +01:00
Christoph Oelckers
4e1e9ca0c9
- proper actor managements in SEQINST.
2021-11-29 00:53:56 +01:00
Christoph Oelckers
7204b8e026
- deal with QAV::nIndex.
...
This was totally redundant. Since the player already gets passed as 'Data', we can just make that pointer a PLAYER type and use it instead to retrieve the playing actor for sound purposes.
2021-11-29 00:53:56 +01:00
Christoph Oelckers
70cd4d9466
- minor sprite[] stuff.
2021-11-29 00:53:55 +01:00
Christoph Oelckers
8f974dc1d8
- the remaining functions of player.cpp.
2021-11-29 00:53:55 +01:00
Christoph Oelckers
fddc213fa8
- made PLAYER::fragger an actor pointer.
2021-11-29 00:53:55 +01:00
Christoph Oelckers
abee5c5eaa
- parameters in Pickup functions, getting rid of all (x)sprite[] references in player.cpp.
2021-11-29 00:53:55 +01:00
Christoph Oelckers
07e88e36f6
- ActionScan cleanup plus smaller bits in player.cpp
...
# Conflicts:
# source/games/blood/src/player.cpp
2021-11-29 00:53:55 +01:00
Christoph Oelckers
e95936efd6
- made PLAYER::used2 an actor array and renamed it to match its purpose.
...
Note: Renaming this for savegames is fine, as it's not relevant in singleplayer.
2021-11-29 00:53:54 +01:00
Christoph Oelckers
165b2f29ff
- removed last remaining accesses to sprite[] and xsprite[] from nnexts.cpp.
2021-11-29 00:53:54 +01:00
Christoph Oelckers
85c4b96177
- removed all access to sprite[] from mirrors.cpp.
2021-11-29 00:53:54 +01:00
Christoph Oelckers
826fd7ddb2
- optimized vector math.
2021-11-29 00:53:54 +01:00
Christoph Oelckers
50f9b67598
- removed all sprite[] references from gameutil.cpp.
2021-11-29 00:53:54 +01:00
Christoph Oelckers
7a2c661ff9
- GetZRange
2021-11-29 00:53:54 +01:00
Christoph Oelckers
626deed960
- VectorScan
2021-11-29 00:53:53 +01:00
Christoph Oelckers
0466186440
- HitScan
2021-11-29 00:53:53 +01:00
Christoph Oelckers
c2916259d7
- CheckProximity
...
# Conflicts:
# source/games/blood/src/aibeast.cpp
2021-11-29 00:53:53 +01:00
Christoph Oelckers
db75e4d2bf
- moved basePath into XSECTOR.
...
# Conflicts:
# source/games/blood/src/nnexts.cpp
2021-11-29 00:53:53 +01:00
Christoph Oelckers
0d2da892e8
- made marker0 and marker1 actor pointers.
2021-11-29 00:53:52 +01:00
Christoph Oelckers
f4b900c540
- moved velocity data into DBloodActor.
2021-11-29 00:53:52 +01:00
Christoph Oelckers
6a8f59e991
- removed remaining direct access to the velocity arrays.
2021-11-29 00:53:52 +01:00
Christoph Oelckers
ff9a86b7b4
- proper way to get player actor.
2021-11-29 00:53:52 +01:00
Christoph Oelckers
1cb98593f1
- removed compatible savegame handling for SPRITEHIT.
...
This does not need to be preserved, unlike the other refactored global arrays.
2021-11-29 00:53:51 +01:00
Christoph Oelckers
54f70ec1bb
- moved baseSprite into DBloodActor.
2021-11-29 00:53:51 +01:00
Christoph Oelckers
14ace49c3e
- owner stuff.
...
This reduces the number of direct references to spritetype.owner by half in the Blood code.
2021-11-29 00:53:51 +01:00
Christoph Oelckers
3b1ba88a41
- gib stuff.
2021-11-29 00:53:51 +01:00
Christoph Oelckers
344e7e840e
- remove leftover index dependencies for sprite events.
2021-11-29 00:53:51 +01:00
Christoph Oelckers
245581e00d
- cleanup
2021-11-29 00:53:50 +01:00
Christoph Oelckers
b2de1e5209
- added BloodSpriteIterator and BloodLinearSpriteIterator to get rid of explicit loops over the sprite array.
2021-11-29 00:53:50 +01:00
Christoph Oelckers
484d016172
- cleaned up burn code.
2021-11-29 00:53:50 +01:00
Christoph Oelckers
c0b013ac0c
- moved gSpriteHit into DBloodActor.
2021-11-29 00:53:50 +01:00
Christoph Oelckers
c34c9deb4e
- deleted old condPush variant.
2021-11-29 00:53:50 +01:00
Christoph Oelckers
be0e2a9b93
- todo markers
2021-11-29 00:53:49 +01:00
Christoph Oelckers
3e9bcacc22
- condUpdateObjectIndex + nnExtTriggerObject
2021-11-29 00:53:49 +01:00
Christoph Oelckers
9965245449
- condCheckSprite
2021-11-29 00:53:49 +01:00
Christoph Oelckers
0ff9afde61
- condCheckPlayer + condCheckDude
2021-11-29 00:53:49 +01:00
Christoph Oelckers
9205556b4e
- condCheckSector + condCheckWall
2021-11-29 00:53:49 +01:00
Christoph Oelckers
f6e7c5f440
- condCheckMixed + condCheckGame.
2021-11-29 00:53:48 +01:00
Christoph Oelckers
69395383a4
- fix condPush
...
- better abstraction of the condition storage.
Hiding targetX/Y as much as possible for easier refactoring later.
2021-11-29 00:53:48 +01:00
Christoph Oelckers
f84e2343ca
- formatting only.
2021-11-29 00:53:48 +01:00
Christoph Oelckers
9062eb5996
- condError
2021-11-29 00:53:48 +01:00
Christoph Oelckers
fb4fcef2c2
- cleanup
2021-11-29 00:53:48 +01:00
Christoph Oelckers
aef95b52bc
- the remaining functions in nnexts.cpp
2021-11-29 00:53:47 +01:00
Christoph Oelckers
ca13a35ccf
- formatting
...
# Conflicts:
# source/games/blood/src/nnexts.cpp
2021-11-29 00:53:47 +01:00
Christoph Oelckers
cc4309f7eb
- aiPatrolThink + aiPatrolFlagsMgr
2021-11-29 00:53:47 +01:00
Christoph Oelckers
9004b102fe
- formatting
2021-11-29 00:53:47 +01:00
Christoph Oelckers
a67da5003a
- made voodooTarget a pointer and removed most direct references to target_i.
2021-11-29 00:53:47 +01:00
Christoph Oelckers
bf424b6439
- aiPatrolSearchTargets
2021-11-29 00:53:46 +01:00
Christoph Oelckers
c2ff8b0941
- formatting
2021-11-29 00:53:46 +01:00
Christoph Oelckers
a1d01d5419
- spritesTouching, readyForCrit
2021-11-29 00:53:46 +01:00
Christoph Oelckers
5ff17fec35
- patrolalarm
2021-11-29 00:53:46 +01:00
Christoph Oelckers
ffdb976f5b
- marker stuff.
2021-11-29 00:53:46 +01:00
Christoph Oelckers
af7164c91d
- partial rework of aiPatrolSetMarker
2021-11-29 00:53:45 +01:00
Christoph Oelckers
f8a4ecc90f
- findNextMarker + markerIsNode
2021-11-29 00:53:45 +01:00
Christoph Oelckers
a76f2feb63
- aiPatrolStop API changed to actors.
2021-11-29 00:53:45 +01:00
Christoph Oelckers
7175439496
- aiPatrolStop cleaned up.
2021-11-29 00:53:45 +01:00
Christoph Oelckers
5c1b2bee37
- minor cleanup.
2021-11-29 00:53:45 +01:00
Christoph Oelckers
e11f118d3c
- formatting
2021-11-29 00:53:45 +01:00
Christoph Oelckers
2f5be23171
- validate actors before processing them in the event queue.
2021-11-29 00:53:44 +01:00
Christoph Oelckers
118b3e1d70
- all calls to CheckSpriteSect/Stat handled.
2021-11-29 00:53:44 +01:00
Christoph Oelckers
48073a2cd6
- sanitized the abuse of using XSPRITE's target field to pass along some info with explosions.
...
This is neither safe nor future proof, so now it uses a separate variable.
2021-11-29 00:53:44 +01:00
Christoph Oelckers
146de69169
- some more patrol code.
2021-11-29 00:53:44 +01:00
Christoph Oelckers
4ae32fb223
- first part of patrol code.
2021-11-29 00:53:44 +01:00
Christoph Oelckers
2044f591f2
- formatting and cleanup.
2021-11-29 00:53:43 +01:00
Christoph Oelckers
3928407eae
- several is...() functions.
2021-11-29 00:53:43 +01:00
Christoph Oelckers
49879af921
- usePictureChanger
2021-11-29 00:53:43 +01:00
Christoph Oelckers
088fa6690c
- reformatting only.
2021-11-29 00:53:43 +01:00
Christoph Oelckers
94ae3c22d5
- final part and cleanup of useTargetChanger.
2021-11-29 00:53:43 +01:00
Christoph Oelckers
6c465dff3c
- the fourth block
2021-11-29 00:53:42 +01:00
Christoph Oelckers
dc4c632b08
- the third block.
2021-11-29 00:53:42 +01:00
Christoph Oelckers
ff29570675
- second block.
2021-11-29 00:53:42 +01:00
Christoph Oelckers
c3a1e8f46b
- targetactor in the first block of useTargetChanger
2021-11-29 00:53:42 +01:00
Christoph Oelckers
17bd466801
- first pass over useTargetChanger
...
using 'actor' wherever easily doable.
2021-11-29 00:53:42 +01:00
Christoph Oelckers
d59f78a5f0
- formatting only
2021-11-29 00:53:41 +01:00
Christoph Oelckers
a60617c688
- more use* functions.
2021-11-29 00:53:41 +01:00
Christoph Oelckers
c54dd079fb
- formatting only.
2021-11-29 00:53:41 +01:00
Christoph Oelckers
e3b8980ecd
- sprite2sectorSlope + useSlopeChanger
2021-11-29 00:53:41 +01:00
Christoph Oelckers
b7465ab67b
- spriteGetSlope/spriteSetSlope take spritetype pointer arguments.
2021-11-29 00:53:41 +01:00
Christoph Oelckers
c32ff483a9
- formatting only
2021-11-29 00:53:41 +01:00
Christoph Oelckers
ca131f2dcf
- fixed a few oversights.
2021-11-29 00:53:40 +01:00
Christoph Oelckers
c2f6084988
- merged genDudeExtra into DBloodActor.
2021-11-29 00:53:40 +01:00
Christoph Oelckers
017bcb056f
- useIncDecGen + setDataValueOfObject
2021-11-29 00:53:40 +01:00
Christoph Oelckers
ab41ac9e05
- formatting only.
2021-11-29 00:53:40 +01:00
Christoph Oelckers
239faad4c5
- useSoundGen
2021-11-29 00:53:39 +01:00
Christoph Oelckers
a8ee9b3969
- useUniMissileGen
2021-11-29 00:53:39 +01:00
Christoph Oelckers
c65c936d27
- useCondition +
2021-11-29 00:53:39 +01:00
Christoph Oelckers
24a11b3f2f
- txIsRanged and several of its callers.
2021-11-29 00:53:39 +01:00
Christoph Oelckers
174783e57b
- formatting only
2021-11-29 00:53:39 +01:00
Christoph Oelckers
a4f7fabbfa
- modernTypeOperateSprite
2021-11-29 00:53:39 +01:00
Christoph Oelckers
fe3da5eaab
- split off formatting
2021-11-29 00:53:38 +01:00
Christoph Oelckers
766999118c
- sectorKillSounds + useDudeSpawn
2021-11-29 00:53:38 +01:00
Christoph Oelckers
3761424501
- the remaining AIFight stuff.
2021-11-29 00:53:38 +01:00
Christoph Oelckers
a5471b1079
- aiFightDudeIsAffected + aiFightGetDudesForBattle
2021-11-29 00:53:38 +01:00
Christoph Oelckers
55716c9409
- aiFightGet(Fine)TargetDist
2021-11-29 00:53:38 +01:00
Christoph Oelckers
baf4bb0785
- formatting only.
2021-11-29 00:53:37 +01:00
Christoph Oelckers
57c3571555
- several aiFight functions.
2021-11-29 00:53:37 +01:00
Christoph Oelckers
ca3d7c9bdf
- formatting only
2021-11-29 00:53:37 +01:00
Christoph Oelckers
78cbb4ed0a
- aiFightGetTargetInRange
2021-11-29 00:53:37 +01:00
Christoph Oelckers
a449d97b86
- modernTypeTrigger
2021-11-29 00:53:37 +01:00
Christoph Oelckers
ea8166871a
- formatting only.
2021-11-29 00:53:36 +01:00
Christoph Oelckers
43e9e07910
- 2 modernType functions.
2021-11-29 00:53:36 +01:00
Christoph Oelckers
1ff6dc7c69
- useSeqSpawnerGen
2021-11-29 00:53:36 +01:00
Christoph Oelckers
c59a6bbb86
- clean up some loops
2021-11-29 00:53:36 +01:00
Christoph Oelckers
9714febaab
- eliminated the actPostSprite wrapper with an index parameter.
2021-11-29 00:53:36 +01:00
Christoph Oelckers
e0f1948ccc
- wrapped all setsprite calls in Blood and adapted a few leftover uses of the index version of actPostSprite.
2021-11-29 00:53:35 +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
b54d3f3567
- useSpriteDamager + damageSprite
2021-11-29 00:53:35 +01:00
Christoph Oelckers
1689efe698
- useEffectGen + useSectorWindGen
2021-11-29 00:53:35 +01:00
Christoph Oelckers
1847b905ba
- useTeleportTarget
2021-11-29 00:53:35 +01:00
Christoph Oelckers
f21dc51207
- usePropertiesChanger
2021-11-29 00:53:34 +01:00
Christoph Oelckers
cd98e940aa
- useObjResizer
2021-11-29 00:53:34 +01:00
Christoph Oelckers
63ae861765
- DropVoodooCb
2021-11-29 00:53:34 +01:00
Christoph Oelckers
be9e423d7c
- trPlayer* functions.
2021-11-29 00:53:34 +01:00
Christoph Oelckers
470f82bc26
- Blood: fixed loading of actors with extended AI states.
2021-11-29 00:51:35 +01:00
Christoph Oelckers
b7c7328cdd
- backend update fromGZDoom.
...
most importantly this addresses issues with key down/key up events being sent in the same tic not having an effect on game actions that require a key being held down.
2021-11-21 10:19:52 +01:00
Mitch Richters
1228cb6044
- InputState::AddEvent()
: Partially revert changes performed in 4d629e7de8
that were believed not necessary. This functionality is still needed in some of Exhumed's cutscenes that are performed in-engine and not as a screenjob.
2021-11-19 08:11:32 +11:00
Mitch Richters
4d629e7de8
- Make screenjob valid keys for skipping ignore the Alt key as its used for modifiers, and special keys like the screenshot bind.
...
* Partially revert 8bb13bc4c2
as its changes are no longer needed.
* Partially revert 9e40e49c2c
as its changes are no longer needed.
* Fixes #577 .
2021-11-18 20:59:07 +11:00
Mitch Richters
719724da53
- Ensure g_nextskill
is re-initialised everytime a save is loaded.
...
* Fixes #582 .
2021-11-18 20:06:33 +11: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
dc1d97b6bd
- SW: fix bad return value in QueueWallBlood.
...
Had been known for some time, it just wasn't unclear if this is bad.
Now I was able to confirm that this is indeed bad and can cause crashes.
2021-11-13 19:30:16 +01:00
Christoph Oelckers
5732bb2db3
- Blood: fixed loading of maps with tracking conditions.
...
These use a pointer in the DBloodActor structure, but this part wasn't cleared for sprites loaded with the map.
# Conflicts:
# source/games/blood/src/nnexts.cpp
2021-11-13 13:55:25 +01:00
Christoph Oelckers
01deb13694
- SW: fixed NORM_xxx macros
...
kHitIndexMask already has the -1 considered, it is 0x3fff.
2021-11-12 11:09:24 +01:00
Christoph Oelckers
401f3cf1d7
- Blood: removed unused CSectorListMgr class.
2021-11-11 23:48:19 +01:00
Christoph Oelckers
9b21233c98
- little bit of cleanup
2021-11-11 23:47:26 +01:00
Christoph Oelckers
5a6d4f88d5
- Exhumed: eliminate all remaining MAXSECTORS references
2021-11-11 23:46:50 +01:00
Christoph Oelckers
794c4483ca
-Exhumed: better handling of BuildNear/BelowNear.
...
BuildNear was only called right before calling BelowNear - now both functions are merged and use the global GlobalSectorList array for storage.
Since the data in this is local to this function it is also unnecessary to write it out to a savegame as it will get recereate each time before it is used.
2021-11-11 23:45:59 +01:00
Christoph Oelckers
d70e76e5c6
- Exhumed: use dynamic arrays for the palette backup in DrawView.
2021-11-11 23:34:03 +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
8f19dc12d8
- SW: code/data pointer saving cleanup.
...
* a large number of code pointer records were removed because none of these functions ever gets assigned to a pointer
* instead of looking up entries by index, do it by name. This is far less fragile and will survive deeper refactoring. The old storage by table index will break as soon as a single entry gets removed.
Since the old savegames got broken due to this problem recently it was a good time to change the setup.
2021-11-11 23:28:28 +01:00
Christoph Oelckers
f109f6c857
- Duke/RR: fixed two bad assignments to wall 0.
2021-11-11 21:58:15 +01:00
Christoph Oelckers
2164d244d2
- SW: removed 3 unused global arrays.
2021-11-11 21:58:14 +01:00
Christoph Oelckers
25a6774540
- SW: got rid of MAXWALLS.
...
Only places left are declarations of global arrays.
2021-11-11 21:58:14 +01:00
Christoph Oelckers
b6579809ad
- SW: eliminated all remaining MAXSECTORS references, except static array declarations.
2021-11-11 21:58:14 +01:00
Christoph Oelckers
75e2d801a7
- SW: only check valid sectors for SecUser entries.
2021-11-11 21:58:14 +01:00
Christoph Oelckers
6bd239c5b7
- SW: use the global sector list in PreMapCombineFloors
2021-11-11 21:58:14 +01:00
Christoph Oelckers
a79f7a3784
- SW: use a dynamic array to track already visited sectors in TraverseBreakableWalls.
2021-11-11 21:57:55 +01:00
Christoph Oelckers
cc16c02baa
- fixed BitArray constructor.
2021-11-11 21:55:46 +01:00
Christoph Oelckers
642088ed80
- let ValidateSprite print better messages when developer mode is set to warning and also call it for Blood.
2021-11-11 21:28:53 +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
Mitch Richters
6581d9d709
- InputScale()
: Tidy up some math I just put in.
...
* Time for bed... *yarns*.
2021-11-10 22:23:59 +11:00
Mitch Richters
3c4afaa6ee
- InputScale()
: Add enabled-by-default scaler to returned value from function to correct drift that occurs as the frame-rate increases, taking into account different scaling ratios needed for differing ticrates.
2021-11-10 20:27:19 +11:00
Mitch Richters
5a33caa635
- InputScale()
: Add enabled-by-default scaler to returned value from function to correct drift that occurs as the frame-rate increases, taking into account different scaling ratios needed for differing ticrates.
2021-11-10 20:13:06 +11:00
Christoph Oelckers
9433e9bdb1
- trPlayerCtrlStartScene + changing index to initiator pointer in QAVSCENE.
...
- clear QAVSCENE's initiator pointer at the start of a level or when it holds an actor that's about to be deleted.
Seems there is no proper bookkeeping here, so until we can GC actors it needs to be done manually.
2021-11-09 23:16:16 +01:00
Christoph Oelckers
ad36916fd3
- formatting again and fallthrough annotations.
2021-11-09 23:11:54 +01:00
Christoph Oelckers
bb094fd003
- 3 smaller functions.
2021-11-09 23:10:34 +01:00
Christoph Oelckers
733d9b2e2b
- debrisMove
2021-11-09 23:10:03 +01:00
Christoph Oelckers
942e93b2e7
- debris functions.
2021-11-09 22:51:01 +01:00
Christoph Oelckers
6e2f8ec47f
- vel replacements.
2021-11-09 22:49:43 +01:00
Christoph Oelckers
7430a630bd
- yet another commit with extracted formatting stuff and minor cleanup.
...
# Conflicts:
# source/games/blood/src/nnexts.cpp
2021-11-09 22:49:28 +01:00
Christoph Oelckers
5558c3e896
- debrisGetIndex and some related code.
2021-11-09 22:18:38 +01:00
Christoph Oelckers
ce622c9c88
- two missed lines
2021-11-09 21:51:51 +01:00
Christoph Oelckers
5b057415da
- sanitized tileGetSurfType.
2021-11-09 21:42:51 +01:00
Christoph Oelckers
9221262dfc
- refactoring of all getzrange code to use the Collision struct.
2021-11-09 21:39:59 +01:00
Christoph Oelckers
55362edce4
- cleanup and formatting in getSpriteMassBySize
2021-11-09 21:00:27 +01:00
Christoph Oelckers
6f8fe44bb0
- getSpriteMassBySize
2021-11-09 20:59:52 +01:00
Christoph Oelckers
81c3443af9
- nnExtProcessSuperSprites, plus replacing xindex with actor in TRCONDITION.
2021-11-09 20:58:27 +01:00
Christoph Oelckers
a898dfc4ec
- some cleanup in nnExtProcessSuperSprites before refactoring.
2021-11-09 20:46:54 +01:00
Christoph Oelckers
754042e10a
- windGenDoVerticalWind
2021-11-09 20:45:10 +01:00
Christoph Oelckers
06be31daea
- pure formatting stuff split out of following commit.
2021-11-09 20:43:11 +01:00
Christoph Oelckers
18b608df1a
- randomDropPickupObject + randomSpawnDude
2021-11-09 20:40:39 +01:00
Christoph Oelckers
c427669595
- randomGetDataValue
2021-11-09 20:37:10 +01:00
Christoph Oelckers
1cc5dbccb9
- GetDataVal
2021-11-09 20:33:16 +01:00
Christoph Oelckers
5465c9976c
- replaced a few chars in Exhumed
2021-11-09 17:46:39 +01:00
Christoph Oelckers
baa3e531d4
- Exhumed: more ints for shorts
2021-11-09 17:32:50 +01:00
Christoph Oelckers
c46c8a68cd
- fixed nextsectorneighborzptr
2021-11-09 17:29:03 +01:00
Christoph Oelckers
9b52b3b451
- made all nSector variables full ints.
...
This already takes care of most sector[] accesses in Exhumed
2021-11-09 17:27:54 +01:00
Christoph Oelckers
366df9d4b6
- Exhumed: use the sprite's sector() member where possible.
2021-11-09 00:26:46 +01:00
Christoph Oelckers
ef241acda2
- Exhumed: some quick sector[] substitution
2021-11-09 00:12:18 +01:00
Christoph Oelckers
a35900362e
- only use un-deprecated variants of updatesector(z) in SW.
2021-11-09 00:09:48 +01:00
Christoph Oelckers
94b2b0af31
- widen sector index in engineLoadBoard to 32 bit
2021-11-09 00:07:00 +01:00
Christoph Oelckers
762ebafc2a
- made clipmoveboxtracenum a function argument of clipmove
...
There’e zero need for hackery here.
2021-11-08 23:22:48 +01:00
Christoph Oelckers
0ffe52791e
- delete deprecated pushmove variants
2021-11-08 23:22:06 +01:00
Christoph Oelckers
2d91786516
- changed all sector variables being passed to pushmove to full ints
2021-11-08 23:18:40 +01:00
Christoph Oelckers
4aa0477574
- make internal pushmove use a 32 bit sector index.
2021-11-08 23:17:40 +01:00
Christoph Oelckers
52a2862963
- removed the deprecated clipmove wrappers.
2021-11-08 23:15:05 +01:00
Christoph Oelckers
a5f51cfd88
- SW: migrate everything to the main clipmove function
2021-11-08 23:11:30 +01:00
Christoph Oelckers
16f9d4ec36
- got rid of COVERupdatesector
...
Not needed as it just forwards to the engine’s updatesector - and it gets in the way of other changes
2021-11-08 23:11:30 +01:00
Christoph Oelckers
3811147f70
- use proper clipmove variant in Blood and Exhumed
...
This merely extends some shorts to full ints to match the desired parameter's size.
2021-11-08 23:11:30 +01:00
Christoph Oelckers
2e1ff313b0
- Duke: only use the main clipmove function and match clipmove_ex’s interface
2021-11-08 23:11:29 +01:00
Christoph Oelckers
567d054d42
- remove unused clipmovex function, extend clipmove sector return to 32bit, mark obsolete clipmove variants deprecated
2021-11-08 23:11:29 +01:00
Christoph Oelckers
5510efd920
- removed TROR specific parts of updatesectorz
...
None of this is ever called, in particular the parts that muck around with the sectorindex and add magic bits to it.
2021-11-08 23:11:29 +01:00
Christoph Oelckers
5ba005276f
Revert "- redid the 'inside' function."
...
This reverts commit c034c2a299
.
While the function works, it is subtly different for points exactly on a line - enough to cause problems with Shadow Warrior's waypoint implementation.
2021-11-08 23:11:20 +01:00
Christoph Oelckers
c034c2a299
- redid the 'inside' function.
...
This is based on external information and does not use any of the original Build code.
Despite being a lot clearer than Build's bit masking voodoo and using 64 bit math to avoid overflows it is roughly 10% faster. :)
Code was moved to gamefuncs.cpp because this no longer falls under the Build license.
2021-11-08 21:29:21 +01:00
Christoph Oelckers
5cfc418c5f
- did some tests with the inside function and decided to only retain the 'old' one.
...
The one from EDuke32 is ambiguous - it considers any point on a wall to be part of both sectors touching that wall. This wasn't used anyway with the current engine compatibility settings.
I was not able to get different values out of the 'ps' version - this seems to only be important for demo playback concerns, for regular playback the differences appear to be totally irrelevant.
Ultimately this should be replaced anyway with a license-unencumbered variant of the same basic common algorithm.
2021-11-08 19:46:22 +01:00
Christoph Oelckers
eeaa7f98f0
- inlines for validating sector and wall indices.
2021-11-08 18:56:10 +01:00
Christoph Oelckers
2840b5f25d
- added reverse iterators to tarray.h
2021-11-08 18:55:46 +01:00
Christoph Oelckers
94f40d11ae
- SparseArrayView class
...
We need this to merge the game specific sector/wall extensions with the base but still allow the engine to access such arrays. For that they need a runtime settable stride.
2021-11-08 18:55:35 +01:00
Christoph Oelckers
477a2a23e6
- nextSector in runlist
2021-11-08 18:37:21 +01:00
Christoph Oelckers
52389ae02e
- sectp in osdcmd_spawn
2021-11-08 18:37:21 +01:00
Christoph Oelckers
066896db8e
- warnings fix
2021-11-08 18:37:20 +01:00
Christoph Oelckers
f51cbf31ba
- sectp in runlist_ProcessSectorTag
2021-11-08 18:37:20 +01:00
Christoph Oelckers
afec39aded
- reworked non-functional anim detection when picking up an item.
...
This would not unregister the item's run list entries because the logic was insufficient.
2021-11-08 01:13:54 +01:00
Christoph Oelckers
43fdc1bb56
- Exhumed: fixed uninitialized variable in bullet code.
2021-11-07 23:33:39 +01:00
Christoph Oelckers
5d0c9a9fc8
- flush the network timer righr after loading and before starting a level.
...
Without this the entire load time may get registered as skipped frames-
2021-11-07 22:51:02 +01:00
Christoph Oelckers
0da2250efe
- Exhumed: try to improve timing of the menu plasma.
2021-11-07 22:14:58 +01:00
Christoph Oelckers
60faceaf59
- Exhumed: fixed serialization.
...
The exhumedActors array was not written out, resulting in all kinds of strange effects.
2021-11-07 21:45:51 +01:00
Christoph Oelckers
6b6c3f26a5
- use wallsofsector in a few more places.
2021-11-07 18:08:22 +01:00
Christoph Oelckers
59df3b0e19
- added a little utility that allows iterating over the walls of a sector with C++ for's.
2021-11-07 17:27:05 +01:00
Christoph Oelckers
4b0ffe5443
- looks I missed a few shorts.
...
Now all local short variables are gone, except for 2 lotags arrays.
2021-11-07 16:58:48 +01:00
Christoph Oelckers
ae08ae1d8d
- some leftover shorts plus utilities that ended up unused but may be useful later.
2021-11-07 16:46:23 +01:00
Christoph Oelckers
35b9318580
- Duke/RR: checked the rest of the code for shorts and replaced most local ones with ints.
2021-11-07 16:33:13 +01:00
Christoph Oelckers
3a73a9f8ed
- Duke/RR: replaced more local short variables with ints.
2021-11-07 16:30:56 +01:00
Christoph Oelckers
98f57a7ad4
- use explicitly sized types for static const arrays.
2021-11-07 16:30:56 +01:00
Christoph Oelckers
fd2764dc6e
- Duke: eliminated all local short variables in actors*.cpp.
2021-11-07 16:30:55 +01:00
Christoph Oelckers
9b2b34a026
- removed a few unneeded type casts.
2021-11-07 16:30:55 +01:00
Christoph Oelckers
15be44a931
- use explicitly sized types for static const arrays.
2021-11-07 16:30:55 +01:00
Christoph Oelckers
1eeb8864a4
- Duke/RR: eliminated all uses of 'char' outside of text management
2021-11-07 16:30:55 +01:00
Christoph Oelckers
e2faeec2ce
renamed all signed and unsigned chars to int8_t/uint8_t.
2021-11-07 16:30:55 +01:00
Christoph Oelckers
0eba3335c6
- eliminated some leftover 16 bit values used for storing indices.
2021-11-07 16:30:44 +01:00
Christoph Oelckers
977d668bef
- extended animatetarget to 32 bit.
2021-11-07 16:21:44 +01:00
Christoph Oelckers
f95af3368b
- use ints in hitscan wrapper as well.
2021-11-07 16:20:59 +01:00
Christoph Oelckers
de7a06bea4
- Duke: extended neartag wrapper to use 32 bit integers as return values.
2021-11-07 16:20:59 +01:00
Christoph Oelckers
887279f8a5
- RR: Use int instead of short in bowling functions.
2021-11-07 16:20:59 +01:00
Christoph Oelckers
b13398c268
- quick global wall[] replacements.
2021-11-07 15:57:29 +01:00
Christoph Oelckers
a594e6465c
- added nextSector access function to walltype and used it to eliminate a few more sector[] references.
2021-11-07 15:56:29 +01:00
Christoph Oelckers
0c64560fd8
- Duke: wall[] replacement in script code.
2021-11-07 15:00:08 +01:00
Christoph Oelckers
c8c8ca05d3
- Duke: sector[] handled in one more premap loop.
2021-11-07 15:00:08 +01:00
Christoph Oelckers
5eed73f7af
- Duke/RR: sector[] replacement in spawn code.
2021-11-07 15:00:08 +01:00
Christoph Oelckers
ca5a014a2d
- Duke: a few more sector[] replacements in precaching code.
2021-11-07 15:00:08 +01:00
Christoph Oelckers
2c1881530a
- Duke: use a sector pointer in spawneffector.
2021-11-07 15:00:07 +01:00
Christoph Oelckers
c068054fa0
- RR: most sector[] accesses replaced by pointers in actors_r.cpp.
2021-11-07 15:00:07 +01:00
Christoph Oelckers
7749bcbedf
- Duke: clean up actors_lava.cpp.
...
Use sector pointer variables and extend all arrays holding sector indices to 32 bit.
2021-11-07 15:00:07 +01:00
Christoph Oelckers
e0f3fa2aa0
-Duke: replaced sector array accesses in actors_d.cpp.
2021-11-07 15:00:07 +01:00
Christoph Oelckers
8c5e4a7fa9
- Duke: a large batch of quick'n easy sector[] replacements with pointers.
2021-11-07 15:00:07 +01:00
Christoph Oelckers
d45f687d4b
- pass a sector pointer to floorspace/ceilingspace.
2021-11-07 15:00:06 +01:00
Christoph Oelckers
060da8ec1d
- Duke: replaced most sector array accesses with pointers in actors.cpp.
...
This already helped to find one 16 bit value that stored a sector index.
2021-11-07 15:00:06 +01:00
Mitch Richters
bc9ea38aba
- Duke: Fix issue where calculated value for old player variable return_to_center
could have been negative, causing undefined behaviour.
2021-11-07 21:14:29 +11:00
Mitch Richters
bb20827027
- processMovement()
: Fix prescaling for Exhumed when using mouse or controller.
...
* Controller input before was too fast compared to other games, now it's 1:1.
* Mouse input when used without mouse look was too slow, now it's also 1:1 with the other games.
* `hid` in the context of `hidprescale` refers to 'Human Interface Device'.
2021-11-07 18:32:02 +11:00
Mitch Richters
b27f5e3be0
- gameinput.cpp/h: Internalise if statements used before calling PlayerHorizon
and PlayerAngle
class method scaletozero()
into method itself.
2021-11-07 18:25:37 +11:00
Mitch Richters
72531e61db
- gameinput.cpp/h: Consolidate all the return to zero code for angles and horizons into class members, using technique from horizoff
as basis.
2021-11-07 11:37:12 +11:00
Christoph Oelckers
9a1c80c464
- Duke: added a wrapper for player_struct::cursectnum to directly return the sector pointer.
...
This eliminates more than 10% of the existing direct references to the sector[] array.
2021-11-06 21:59:42 +01:00
Christoph Oelckers
c3cbd1b1eb
- Duke: cleanup of cycler code.
...
Now uses a struct instead of an array with magic indices.
2021-11-06 21:53:15 +01:00
Christoph Oelckers
1c0e3d849b
- addressed the updatesector related deprecation warnings with Duke.
2021-11-06 20:46:08 +01:00
Christoph Oelckers
d20aa47adf
- made sector parameter of updatesectorz an int and deprecated the short version.
2021-11-06 19:27:51 +01:00
Christoph Oelckers
13306e900d
- silence some warnings.
2021-11-06 18:26:47 +01:00
Christoph Oelckers
e69e1b9908
- some ?vel replacements.
2021-11-06 18:16:18 +01:00
Christoph Oelckers
cce3d8f440
- some minor stuff
2021-11-06 18:14:39 +01:00
Christoph Oelckers
41316f7f8f
- evSend
2021-11-06 18:14:08 +01:00
Christoph Oelckers
b8f8c0fe04
- more changesprite* renaming.
2021-11-06 18:13:16 +01:00
Christoph Oelckers
1bbcca5f28
- nnExtInitModernStuff
2021-11-06 17:21:08 +01:00
Christoph Oelckers
a184d919b8
- brace placement part taken out of following commit.
2021-11-06 17:19:24 +01:00
Christoph Oelckers
5f56423e88
- nnExtEraseModernStuff
2021-11-06 17:19:24 +01:00
Christoph Oelckers
9a1bcdbc84
- let's hope this works better.
...
CI complained about the iterator but the messages were very unclear about the problem.
2021-11-06 17:18:07 +01:00
Christoph Oelckers
6a96d6c354
- nnExtIsImmune
2021-11-06 17:00:52 +01:00
Christoph Oelckers
6846b50a21
- nnExtSpawnDude
2021-11-06 16:57:24 +01:00
Christoph Oelckers
5ee7505d11
- proper handling of actors in TRCONDITION.
2021-11-06 16:55:27 +01:00
Christoph Oelckers
19363ac23e
- project contortions to make MSVC print our own deprecations but silence the ones from the compiler.
...
Since everything uses the same warning number, the old setup resulted in [[deprecated]] being silenced.
So this explicitly adds the needed #defines to silence the very noisy warning from the MSVC headers but leaves warning 4996 active otherwise.
In particlular this does:
* silence all warnings in the subprojects
* do not derive TIterator from std::iterator anymore as C++17 deprecates this.
* silence the above for RapidJSON because altering that code is not desirable.
* explicitly disable warning 4996 in some Windows files that call the deprecated (but still needed) GetVersionEx function.
* define _CRT_SECURE_NO_DEPRECATE, _CRT_SECURE_NO_WARNINGS and _CRT_NONSTDC_NO_WARNINGS through CMake to disable the CRT's deprecation and security warnings.
Currently this will print several (intended) deprecation warnings about 'updatesector' that point to code that needs to be changed but cannot yet without other refactorings being done first.
2021-11-06 16:48:31 +01:00
Christoph Oelckers
83fe41e71e
- made updatesector receive a 32 bit int pointer and deprecated the 16 bit variant.
2021-11-06 15:53:16 +01:00
Christoph Oelckers
f2adeff8c1
- Duke: extended 3 arrays holding sector and wall indices to full ints.
...
Just to be prepared for the future.
2021-11-06 14:22:16 +01:00
Christoph Oelckers
f4cc5b5b89
- Duke: const-ify SE24 tile lists
2021-11-06 14:19:55 +01:00
Christoph Oelckers
c8d65a1f06
- use sector wrappers where easily doable with search and replace.
2021-11-06 14:19:55 +01:00
Christoph Oelckers
ba2d4acc18
- added a sector() method to spritetype.
...
For making game code working with sectors a bit easier to read.
2021-11-06 14:19:55 +01:00
Christoph Oelckers
9e4afd543c
- Duke/RR: Some quick wall[] replacements.
2021-11-06 14:19:55 +01:00
Christoph Oelckers
b548d9eca2
- a few more quick sector[] replacements.
2021-11-06 14:19:55 +01:00
Christoph Oelckers
bc56b5a28f
- RR: cleaned up STAT_DESTRUCT init code a bit
2021-11-06 14:19:54 +01:00
Christoph Oelckers
8818a3f1cb
- Duke: added a getSector method to DDukeActor.
2021-11-06 14:19:54 +01:00
Mitch Richters
a2a75fccc2
- Add support for Duke Nukem's Penthouse Paradise as shipped with the Zoom release of Duke Nukem 3D Atomic.
2021-11-06 23:26:56 +11:00
Mitch Richters
8cf115c444
- searchpaths.cpp: Patch in registry detection for Duke 3D Atomic + Expansions from Zoom on Windows.
...
* Fixes #567 .
2021-11-06 22:59:56 +11:00
Mitch Richters
8f37097e1b
- Exhumed: Revert change from edf54b4b0a
that wasn't meant to be committed.
2021-11-06 19:54:12 +11:00
Mitch Richters
edf54b4b0a
- Exhumed: Remove some dead input code that isn't in any usage.
2021-11-06 19:44:59 +11:00
Mitch Richters
3778327818
- Duke: Back up rotscrnang
if script sets target to new value so we can interpolate the changes.
2021-11-06 17:57:37 +11:00
Mitch Richters
5050947dca
- PlayerAngle::applyinput()
: Consolidate some mostly duplicated code into a lambda.
2021-11-06 17:57:00 +11:00
Mitch Richters
1bb0c04e61
Revert "- Blood: Add mechanism to be able to force QAV interpolation based on picnum for testing purposes and not for end-user usage."
...
This reverts commit 276c000f9f
.
* This was added for testing/debugging etc but it really doesn't work unless the QAV is built for it. As such, just get rid of it.
2021-11-06 17:32:55 +11:00
Mitch Richters
ed67d5d395
- PlayerHorizon::applyinput()
: Only run through all the horizon to pitch and back code if we have input to process.
2021-11-06 15:34:10 +11:00
Mitch Richters
8bd2b960ee
- Blood: Consolidate duplicated code in viewUpdateShake()
into a lambda.
2021-11-06 15:14:25 +11:00
Mitch Richters
5f8c8fe0a4
- PlayerHorizon::applyinput()
: Consolidate some mostly duplicated code into a lambda.
2021-11-06 15:07:28 +11:00
Mitch Richters
7499c84d0b
- Add interpolatedhorizon()
inlines to handle interpolating fixedhoriz
objects without having to convert old and new values back to Q16.16 first.
2021-11-06 14:07:58 +11:00
Mitch Richters
5ec5321034
- gameinput.h/cpp: Abstract the angle/horizon adjustment math into a few inlines to avoid repetition and having to cast enums as doubles for C++20 compliance.
2021-11-06 14:07:53 +11:00
Mitch Richters
4c02663842
- PlayerAngle::applyinput()
: Re-add addition of +/- 1. when returning rotscrnang to 0 lost long, long ago.
2021-11-06 14:07:36 +11:00
Mitch Richters
ab99b6b29d
- PlayerHorizon::calcviewpitch()
: Make returning horizoff
to 0 speed uniform across all games.
2021-11-06 13:31:29 +11:00
Mitch Richters
91f6b2954c
- binangle
class: Tidy up missed C++20 warning fixed about enum used in floating-point arithmetic.
2021-11-06 10:27:04 +11:00
Mitch Richters
0eb4ff4ad2
- PlayerHorizon::calcviewpitch()
: Provide commentary on how numeric literals used in function came to be and place into an enum for clarity.
2021-11-06 10:27:00 +11:00
Mitch Richters
1df2ba80ed
- PlayerAngle::applyinput()
: Provide commentary on how numeric literals used in rotscrnang/look_ang/spin math came to be and place into an enum for clarity.
2021-11-06 10:26:54 +11:00
Mitch Richters
8e8dfa9f9a
- PlayerHorizon::applyinput()
: Provide commentary on how numeric literals used in aim/look up/down and return to centre math came to be and place into an enum for clarity.
2021-11-06 09:30:03 +11:00
Mitch Richters
c424f7c8dd
- processMovement()
. Remove cl_exhumedoldturn
CVAR and tidy up numeric literals in use.
...
* In our older codebase before the input code was refactored, Exhumed's turning was broken and was only applying the base factor of 12, significantly slower than the other games.
* Upon doing some testing in PCExhumed, I noticed their turning was faster as when the counter meets its target, the turn value is shifted left by 2, effectively making it 48: b90417ed8e/source/exhumed/src/player.cpp (L336-L337)
* Removed this CVAR because of this.
* Reworked turning code so that pressing left+right together cancel each other out and that pressing both doesn't call `updateTurnHeldAmt(scaleAdjust)` twice.
* Redid turn averages factoring in Exhumed's speeds, rounded off values and stored in an enum for clarity.
2021-11-06 09:28:47 +11:00
Christoph Oelckers
389f760d45
- address C++20 deprecation warnings with enums in floating point arithmetic.
2021-11-02 23:32:31 +01:00
Mitch Richters
59850fa768
- SW: When adjusting horizon in DoPlayerDeathHoriz()
, just use integer horizon values and not Q16.16.
2021-11-02 10:29:31 +11:00
Mitch Richters
523285b9b0
- Duke (RR): Clean up some unnecessary FixedToFloat()
usage with the fixedhoriz
asbuildf()
method.
2021-11-02 10:29:26 +11:00
Christoph Oelckers
86166f5e67
Revert "- xs_Float.h
: Make all inlines return an unsigned value, and change previous unsigned inlines to signed."
...
Revert "- `xs_Float.h`: Add `getint()` getter to `_xs_doubleints` struct."
Revert "- SW: When adjusting horizon in `DoPlayerDeathHoriz()`, just use integer horizon values and not Q16.16."
Revert "- Duke (RR): Clean up some unnecessary `FixedToFloat()` usage with the `fixedhoriz` `asbuildf()` method."
Revert "- `binaryangle.h`: Use `constexpr` on inline functions where it was previously not possible to do so."
Revert "- `m_fixed.h`: Use `constexpr` on inline functions where it was previously not possible to do so."
Revert "- `xs_Float.h`: Convert header to `constexpr`."
This does nor work as it violates the constexpr rules for unions. The code will error out on compilation for accessing an inactive member of a union.
2021-11-01 20:25:38 +01:00
Mitch Richters
d9bbe1fa61
- xs_Float.h
: Make all inlines return an unsigned value, and change previous unsigned inlines to signed.
...
* Removes situations where calling `xs_CRoundToUInt()` and other unsigned inlines would go through extra casts (`uint32_t` > `int32_t` > `uint32_t`).
* Because the native data in the `_xs_doubleints` struct is a union of a double and `uint32_t`, it makes sense to do everything unsigned and convert to `int32_t` if needed instead.
2021-11-01 23:57:40 +11:00
Mitch Richters
d1274e76dc
- xs_Float.h
: Add getint()
getter to _xs_doubleints
struct.
2021-11-01 23:42:49 +11:00
Mitch Richters
3e25637385
- SW: When adjusting horizon in DoPlayerDeathHoriz()
, just use integer horizon values and not Q16.16.
2021-11-01 23:37:32 +11:00
Mitch Richters
1363ed654c
- Duke (RR): Clean up some unnecessary FixedToFloat()
usage with the fixedhoriz
asbuildf()
method.
2021-11-01 23:37:32 +11:00
Mitch Richters
f3a2de92a4
- binaryangle.h
: Use constexpr
on inline functions where it was previously not possible to do so.
2021-11-01 23:37:31 +11:00
Mitch Richters
306c0a3ebb
- m_fixed.h
: Use constexpr
on inline functions where it was previously not possible to do so.
2021-11-01 23:37:31 +11:00
Mitch Richters
a84aa84838
- xs_Float.h
: Convert header to constexpr
.
...
* Allow use of this library in static initialisers.
* Required re-arranging a little bit to order everything so inlines could be used without prototypes.
2021-11-01 23:37:31 +11:00
Mitch Richters
eb8b075727
- binaryangle.h
: Change binangle
bitshift operators to operate on signed value to properly handle angles > 1024.
2021-11-01 22:13:39 +11:00
Mitch Richters
a1570c185f
- Duke: Remove posx
/posy
/posz
variables and replace with points in the previously unionised pos
vec3_t
variable.
2021-10-31 17:52:52 +11:00
Mitch Richters
6ca6d5639b
- SW: Fix horizon of camera screens originating from changes in 09a05f354c
.
2021-10-31 11:06:13 +11:00
Mitch Richters
9495b9e6d0
- SW: Interpolate the player's weapon recoil.
...
* Reported as missing by @nashmuhandes.
2021-10-31 08:53:26 +11:00
Christoph Oelckers
e8f9afb174
- DoScaleSprite.
2021-10-30 17:30:03 +02:00
Christoph Oelckers
e84d61e80a
- redid the iterators in _polymost.cpp.
2021-10-30 17:30:03 +02:00
Christoph Oelckers
d6bdc735d6
- patch up Blood's GetZRange to compile with getzrange_old being gone.
2021-10-30 17:30:03 +02:00
Mitch Richters
f0a347263a
- SW: Replace use of getzrange_old()
inline wrapper with getzrange()
and remove inline wrappers.
2021-10-30 17:30:02 +02:00
Mitch Richters
1d39bb371e
- Exhumed: Replace use of getzrange_old()
inline wrapper with getzrange()
.
2021-10-30 17:30:02 +02:00
Mitch Richters
add3481e40
- SW: Replace use of pushmove_old()
inline wrapper with pushmove()
and remove inline wrappers.
2021-10-30 17:30:02 +02:00
Mitch Richters
bdbe57a6b6
- Exhumed: Replace use of pushmove_old()
inline wrapper with pushmove()
.
2021-10-30 17:30:02 +02:00
Mitch Richters
0ee3b5af1c
- Blood: Replace use of pushmove_old()
inline wrapper with pushmove()
.
2021-10-30 17:30:02 +02:00
Mitch Richters
adcdbdc931
- SW: Replace use of clipmove_old()
inline wrapper with clipmove()
and remove inline wrappers.
2021-10-30 17:30:02 +02:00
Mitch Richters
0ac63fd663
- Exhumed: Replace use of clipmove_old()
inline wrapper with clipmove()
.
2021-10-30 17:30:01 +02:00
Mitch Richters
b793bc8327
- Blood: Replace use of clipmove_old()
inline wrapper with clipmove()
.
2021-10-30 17:30:01 +02:00
Mitch Richters
0fe5ac6a56
- gameinput.h: Correctly use targetset()
in PlayerHorizon
and PlayerAngle
structs.
2021-10-30 17:30:01 +02:00
Mitch Richters
15c4d38694
- gameinput.h: Add initial structure for PlayerPosition
as companion to PlayerAngle
and PlayerHorizon
structs.
2021-10-30 17:30:01 +02:00
Mitch Richters
7ee4f49649
- gameinput.h: Remove some of the verticality from the PlayerHorizon
and PlayerAngle
structs.
2021-10-30 17:30:01 +02:00
alexey.lysiuk
9d310c7d6a
- fixed compilation on Linux with glibc
...
source/glbackend/glbackend.h:201:22: error: use of undeclared identifier 'SHRT_MIN'
source/glbackend/pm_renderstate.h:93:15: error: use of undeclared identifier 'SHRT_MIN'
2021-10-30 16:26:16 +03:00
Christoph Oelckers
c7da8ca9d4
- fixed compilation on non-Windows.
...
In this header we must explicitly use the std:: namespace for min/max.
2021-10-30 11:38:55 +02:00
Christoph Oelckers
6e0fbb2043
- removed templates.h includes.
2021-10-30 10:51:03 +02:00
Mitch Richters
b02a6a3ec9
- Replace MIN()
from templates.h
with version provided in STL.
2021-10-30 10:36:15 +02:00
Mitch Richters
9894729fc2
- Replace MAX()
from templates.h
with version provided in STL.
...
# Conflicts:
# source/common/textures/hw_ihwtexture.cpp
# source/common/utility/templates.h
2021-10-30 10:36:02 +02:00
Christoph Oelckers
57b638f26f
- use std::clamp instead of our homegrown version.
2021-10-30 10:35:00 +02:00
Mitch Richters
059a99f7c8
- Blood: Remove costable[]
.
2021-10-30 10:24:16 +02:00
Mitch Richters
5a57beb343
- Blood: Replace remaining uses of costable[]
with Sin()
inlines.
2021-10-30 10:24:16 +02:00
Mitch Richters
ad183b5a3e
- Blood: Replace internals of Cos()
to use sintable[]
array instead of costable[]
array.
2021-10-30 10:24:16 +02:00
Mitch Richters
79b3e10f2a
- Blood: Replace internals of Sin()
to use sintable[]
array instead of costable[]
array.
2021-10-30 10:24:15 +02:00
Mitch Richters
ead877450d
- Blood: Replace CosScale16()
with bsin()
from backend.
2021-10-30 10:24:15 +02:00
Mitch Richters
3ec1767791
- Blood: Replace SinScale16()
with bsin()
from backend.
2021-10-30 10:24:15 +02:00
Mitch Richters
879e2f3ce4
- Build: Promote sintable[]
array values to precision Blood uses in prep for replacing Blood's costable[]
.
2021-10-30 10:24:15 +02:00
Mitch Richters
e699c264f0
- Blood: Fix missed change integer to enum change for StartQAV()
call missed from 77704d54d9
.
2021-10-30 10:24:15 +02:00
Mitch Richters
98d3850b95
- Blood: Fix horizon adjustment for death camera to avoid Fixed > Float > Fixed conversion.
2021-10-30 10:24:14 +02:00
Mitch Richters
20d958e0a9
- Exhumed: Don't run through the slopetilting math if the view is locked.
2021-10-30 10:24:14 +02:00
Mitch Richters
738491d9e5
- Exhumed: Repair player look/aim code.
2021-10-30 10:24:14 +02:00
Mitch Richters
8f679ecf61
- Exhumed: Repair math for chase camp gi
functions.
2021-10-30 10:24:14 +02:00
Mitch Richters
3663c4c742
- Split out sine/cosine scaling from bsinf()
and bcosf()
into its own inline.
2021-10-30 10:24:14 +02:00
Mitch Richters
07fc3b77b1
- Privatise tosigned()
method in binangle
class.
2021-10-30 10:24:14 +02:00
Mitch Richters
156b796e0b
- Cleanup header duplicates in g_pch.h
.
2021-10-30 10:24:14 +02:00
Christoph Oelckers
9071949a46
- backend upate from GZDoom
...
* Vulkan SDK and dependencies updated.
* better interface for buffers in the render backend.
2021-10-30 09:34:38 +02:00
Christoph Oelckers
509124c1dd
- redid SW action interface to use a separate wrapper class from USER.
...
Turned out that not all sprites in the world have a USER, so we need something different to wrap the game's sprite data.
2021-10-29 20:55:31 +02:00
Christoph Oelckers
8bad95c7c6
- reinstated deleted saveable_code entries with dummy pointers.
...
This is to preserve savegame compatibility for now.
Later the code pointer saving needs a thorough cleanup.
2021-10-29 09:16:07 +02:00
Christoph Oelckers
e241e7dc52
- SW: changed Animator interface to use USERp parameters.
2021-10-28 23:37:07 +02:00
Christoph Oelckers
bb3a141c42
- fixed last commit.
2021-10-28 23:16:03 +02:00
Christoph Oelckers
7e191fb29b
- fixed damage amount in the runlist dispatcher.
2021-10-28 23:04:50 +02:00
Christoph Oelckers
f1b40b7878
- bumped savegame version for Exhumed.
2021-10-28 18:59:40 +02:00
Christoph Oelckers
91ecda2fcb
- cleaned up the run list interface.
...
Due to serialization concerns it still isn't optimal, though, because we cannot get rid of the index table yet.
2021-10-28 18:57:50 +02:00
Christoph Oelckers
791240786d
- use a wrapper function to check for the radial damage event.
2021-10-28 18:43:54 +02:00
Christoph Oelckers
7a65cc46d0
- moved AI wrappers out of the main sources.
...
This is mainly to reduce commit noise for what follows. These functions will soon be deleted.
2021-10-28 18:39:49 +02:00
Christoph Oelckers
3842936012
- feebtag.
2021-10-28 14:25:28 +02:00
Christoph Oelckers
07ad50d97c
- sound API
2021-10-28 14:23:31 +02:00
Christoph Oelckers
97b4116f28
- run list API
2021-10-28 14:23:15 +02:00
Christoph Oelckers
4197a7ed84
- BlockInfo
2021-10-28 14:08:53 +02:00
Christoph Oelckers
3a5ea07951
- some smaller changes.
2021-10-28 14:06:36 +02:00
Christoph Oelckers
ee03eb1b3d
- movement and elevators.
2021-10-28 13:54:36 +02:00
Christoph Oelckers
9cfd682c9e
- eliminated Player::nSprite.
2021-10-28 13:54:09 +02:00
Christoph Oelckers
076a995c6e
- besttarget and Player::nTarget.
2021-10-28 13:51:32 +02:00
Christoph Oelckers
8e13bb6e35
- RestartPlayer, plus wrapper removal.
2021-10-28 13:43:39 +02:00
Christoph Oelckers
2195bc0b76
- got rid of several inline wrappers.
2021-10-28 10:51:12 +02:00
Christoph Oelckers
2b8893762c
- movesprite family mostly done.
2021-10-28 10:46:16 +02:00
Christoph Oelckers
30541b09a4
- PlotCourseToSprite, FindPlayer and GetUpAngle.
2021-10-28 09:57:35 +02:00
Christoph Oelckers
49c1163a33
- eliminated AngleChase inline.
2021-10-28 09:54:10 +02:00
Christoph Oelckers
be19dbb2ce
- nDoppleSprite
2021-10-28 09:47:29 +02:00
Christoph Oelckers
eae1d589ec
- playerFloorSprite
2021-10-28 09:25:13 +02:00
Christoph Oelckers
1e10cef556
- PostProcess
2021-10-28 09:21:49 +02:00
Christoph Oelckers
9d642e18e7
- BuildDrip / ProcessTrailSprite
2021-10-28 08:51:50 +02:00
Christoph Oelckers
e6c7e5bc18
- radial stuff.
2021-10-28 08:32:08 +02:00
Christoph Oelckers
df9d1b1ceb
- the rest of object.cpp
2021-10-27 23:04:33 +02:00
Christoph Oelckers
b59cb67f05
- Object, part 1.
2021-10-27 23:03:59 +02:00
Christoph Oelckers
d3e55739c7
- energy blocks.
2021-10-27 23:02:56 +02:00
Christoph Oelckers
51202cba78
- nFinaleSpr.
2021-10-27 20:58:13 +02:00
Christoph Oelckers
b480bb3634
- BuildSpark
2021-10-27 20:56:43 +02:00
Christoph Oelckers
56d0f41a36
- BuildTrap
2021-10-27 20:56:43 +02:00
Christoph Oelckers
11912486de
- moved all loose player related arrays into the Player struct.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
c01c9122de
- slideData cleanup.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
73d415369d
- AddFlow API cleanup.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
6bf6ac5b34
- Flashes
2021-10-27 20:56:42 +02:00
Christoph Oelckers
a4306d9bab
- renamed some fields.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
ca6724a3f5
- make nNetStartSprite an actor array.
2021-10-27 20:56:42 +02:00
Christoph Oelckers
1591d6fbdb
- Regenerates.
...
MP only so not really relevant - the code looked broken anyway.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
2f511b3cff
- UseItem + subfunctions.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
d04d92fd49
- destroyItemAnim, other replacements in AIPlayer::Tick
2021-10-27 20:56:41 +02:00
Christoph Oelckers
587cd09e8e
- BuildItemAnim
2021-10-27 20:56:41 +02:00
Christoph Oelckers
6a1423d92f
- sprite[] in gun.cpp.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
9ef4f0fa99
- Gravity function.
2021-10-27 20:56:41 +02:00
Christoph Oelckers
5234481370
- fixed bad actor conversion.
2021-10-27 20:56:30 +02:00
Christoph Oelckers
14ccb74aac
- for radial damage the 'other' actor is always undefined.
2021-10-27 16:12:56 +02:00
Christoph Oelckers
f60d20b50a
- handle the grenade.
2021-10-27 15:46:18 +02:00
Christoph Oelckers
525ea72bfa
- use pointers for grenades.
2021-10-27 00:37:17 +02:00
Christoph Oelckers
6b3aa44211
- first pass over grenade.cpp.
...
Mainly field renaming.
2021-10-27 00:37:17 +02:00
Christoph Oelckers
c9d391634d
- some missing queen bits.
2021-10-27 00:37:17 +02:00
Christoph Oelckers
2a28908b1a
- pass radial damage inflictor through event struct
2021-10-27 00:30:57 +02:00
Christoph Oelckers
a09f2d8a51
- migrated deletesprite calls in spawn function.
2021-10-27 00:25:00 +02:00
Christoph Oelckers
6d3f9ca0d6
- migrated a few functions to use actors.
2021-10-27 00:24:28 +02:00
Christoph Oelckers
345667f945
- handle the remaining old-style iterators.
2021-10-27 00:18:23 +02:00
Christoph Oelckers
2397bf48f2
- fixed uninitialized ObjectList.
...
This needs to clear each entry each time it is allocated for use.
The object where this frequently caused problems is the drum being spawned by the Anubis drummers.
2021-10-26 23:52:21 +02:00
Christoph Oelckers
75b8a0579e
- elevator stuff.
2021-10-26 22:08:26 +02:00
Christoph Oelckers
c59ec14ba4
- fixed wasp event dispatcher to pass along the damage amount.
2021-10-26 21:55:59 +02:00
Christoph Oelckers
331ba71473
- BuildCreatureChunk wrapper.
2021-10-26 21:15:07 +02:00
Christoph Oelckers
70a7656619
- handle the queen itself.
2021-10-26 21:10:51 +02:00
Christoph Oelckers
52ab800548
- QueenAngleChase.
2021-10-26 20:52:25 +02:00
Christoph Oelckers
ae271b272a
- made QueenEgg use actor pointers.
2021-10-26 20:13:03 +02:00
Christoph Oelckers
47929972c0
- replaced sprite indices in QueenHead.
2021-10-26 19:55:20 +02:00
Christoph Oelckers
c7d4779b7e
- fixed some warnings.
2021-10-26 18:54:43 +02:00
Christoph Oelckers
839292ac91
- renamed fields in the queen structs to match DExhumedActor.
2021-10-26 18:50:46 +02:00
Christoph Oelckers
c4ea5cf336
- restore original krand formula.
...
Note: The only game module actually using this is Duke/RR.
2021-10-26 18:48:54 +02:00
Christoph Oelckers
3971c8ffd2
- fixed compilation
2021-10-26 08:13:23 +02:00
Christoph Oelckers
ae786bff98
- removed the last references to sprite[] in bullet.cpp.
2021-10-25 23:16:35 +02:00
Christoph Oelckers
99e189fa2b
- IgniteSprite
2021-10-25 23:15:59 +02:00
Christoph Oelckers
c1598185f7
- parameter cleanup of BuildBullet.
2021-10-25 23:09:01 +02:00
Christoph Oelckers
eece69fbbd
- renamed variables in BuildBullet and removed unused parameters.
2021-10-25 23:07:58 +02:00
Christoph Oelckers
fa657e23a3
- bullet.cpp, enemy pointer.
2021-10-25 23:07:42 +02:00
Christoph Oelckers
3d35ceecb0
- bullet.cpp, first part.
2021-10-25 22:24:20 +02:00
Christoph Oelckers
bf1f87eff9
- converted Ra.
2021-10-25 21:19:32 +02:00
Christoph Oelckers
d023f9633a
- converted the snake
2021-10-25 21:09:33 +02:00
Christoph Oelckers
4980e0ea41
- refactor Set to use actors.
2021-10-25 19:02:44 +02:00
Christoph Oelckers
48a5448f94
- access SetList through a pointer.
2021-10-25 18:57:10 +02:00
Christoph Oelckers
0b37c9afec
- did the bubbles.
2021-10-25 17:52:31 +02:00
Emile Belanger
14ebe23f0d
Fix compilation with USE_GLES2 = 1
2021-10-25 17:50:48 +02:00
Christoph Oelckers
5cc1a8934e
- refactored Anim to use actors.
2021-10-24 21:50:03 +02:00
Christoph Oelckers
3b0df0e9b4
- renamed fields in Anim to match DExhumedActor.
2021-10-24 20:14:36 +02:00
Christoph Oelckers
e8e0294929
- access AnimList through a pointer.
2021-10-24 20:06:46 +02:00
Christoph Oelckers
43e849ca40
- BuildSplash and BuildExplosion.
2021-10-24 19:18:11 +02:00
Christoph Oelckers
a7b71c724e
- use the actor variant of BuildAnim wherever trivially doable.
2021-10-24 19:12:06 +02:00
Christoph Oelckers
5ff8852d12
- refactor the wasp to use actors.
2021-10-24 18:35:13 +02:00
Christoph Oelckers
a46a8c21a3
- access WaspList through a pointer.
2021-10-24 13:15:40 +02:00
Christoph Oelckers
2c8da6fe72
- refactor the spider to use actors.
2021-10-24 13:06:41 +02:00
Christoph Oelckers
6821fef5e1
- refactor scorpion to use actors.
2021-10-24 12:22:32 +02:00
Christoph Oelckers
6903404718
- access scorpion through a pointer.
2021-10-24 12:20:26 +02:00
Christoph Oelckers
937e71cfbb
- refactor Roach to use actors.
2021-10-24 12:11:33 +02:00
Christoph Oelckers
3a051b8acb
- access RoachList through a pointer.
2021-10-24 12:10:18 +02:00
Emile Belanger
ff009cbf7a
Re-enable depth clamping
2021-10-24 12:06:54 +02:00
Christoph Oelckers
f0f0ca020b
- refactor rex to use actors.
2021-10-24 10:59:45 +02:00
Christoph Oelckers
1cf616c7ba
- access RexList through a pointer.
2021-10-24 10:58:27 +02:00
Christoph Oelckers
821f3d356b
- renamed DDukeActor::GetIndex to GetSpriteIndex to bring it in line with the other games.
2021-10-24 09:22:35 +02:00
Christoph Oelckers
7ebe492e94
- fixed map-spawned actor indexing in Blood.
...
This is needed for error reporting and the secret hint system.
2021-10-24 09:11:43 +02:00
Christoph Oelckers
d101a2b51f
- removed pointless address check.
...
This array was once a pointer but the check was forgotten.
2021-10-24 08:26:10 +02:00
Christoph Oelckers
54fc724b25
- fixed bad initialization of local variable.
...
Probably went unnoticed because it is in an unlikely code path.
2021-10-24 08:24:02 +02:00
Christoph Oelckers
5d0ee1478c
- fixed bad pointer comparison.
...
MSVC did not catch this, only GCC 11 and Clang errored out on this one. :(
2021-10-24 08:21:54 +02:00
Christoph Oelckers
da817a234b
- fixed bad actor use in actCheckDudes.
2021-10-24 00:06:02 +02:00
Christoph Oelckers
e88627b72a
- refactor the rat to use actors.
2021-10-23 21:57:13 +02:00
Christoph Oelckers
9c8fda9a4d
- access RatList through a pointer.
2021-10-23 21:50:57 +02:00
Christoph Oelckers
cd97fdaa30
- refactor the mummy to use actors.
2021-10-23 20:49:03 +02:00
Christoph Oelckers
fab0fff1fe
- access LionList through a pointer.
2021-10-23 20:06:48 +02:00
Christoph Oelckers
cd2c796574
- refactor the lion to use actors.
2021-10-23 19:37:04 +02:00
Christoph Oelckers
3de4bc29c1
- access LionList through a pointer.
2021-10-23 19:31:53 +02:00
Christoph Oelckers
77525cecf0
- refactor the lava dude to use actors.
2021-10-23 18:51:52 +02:00
Christoph Oelckers
f12faa9279
- access LavaList through a pointer.
2021-10-23 18:41:05 +02:00
Christoph Oelckers
657e5ef6be
- refactor the fish to use actors.
2021-10-23 13:02:43 +02:00
Christoph Oelckers
f8cab790d4
- access FishList through a pointer.
...
To make the following commmit more readably.
2021-10-23 12:33:33 +02:00
Christoph Oelckers
5d7d4ce496
- fixed radial damage for actors.
2021-10-22 23:57:46 +02:00
Christoph Oelckers
0ac449ab95
- refactored Anubis.
...
This now stores its data in the actor, not a static array.
2021-10-22 22:09:02 +02:00
Christoph Oelckers
fa8edc7493
- quick replacement of some sprite[] accesses.
2021-10-22 22:05:02 +02:00
Christoph Oelckers
944b7b8776
- DeleteActor implementation.
2021-10-22 22:04:44 +02:00
Christoph Oelckers
491c27caa6
- fixed runlist handling for actor targets.
2021-10-22 22:04:04 +02:00
Christoph Oelckers
51ee9cf6c6
- fixed bad interpolation setup in AddFlow, plus some variable renaming.
2021-10-22 21:55:51 +02:00
Christoph Oelckers
4ee3505dde
- Exhumed: fixed return value of BuildTrap
2021-10-22 08:06:24 +02:00
Mitch Richters
d30c94c709
- Blood: Re-fix lighter when changing from TNT to aerosol.
...
* Fixes #564 .
2021-10-20 20:58:10 +11:00
Mitch Richters
fc73c67bb1
- Blood: Fix TNT pickup accidentally equipping player with voodoo doll.
...
* Fixes #544 .
* Thanks to @carnivoroussociety for pointing me in the right direction.
2021-10-20 19:58:07 +11:00
Christoph Oelckers
1214f8ba00
- properly macro-fy parsed strings from Blood's INI.
2021-10-19 21:49:03 +02:00
Christoph Oelckers
4d94fa9b03
- Duke/RR: strip trailing spaces off strings parsed in CON.
2021-10-19 21:49:02 +02:00
Christoph Oelckers
6e919f2364
- Exhumed: fixed handling of torch messages for localization
2021-10-19 21:49:02 +02:00
Christoph Oelckers
2cece35902
Replaced sprite[] in some smaller functions
2021-10-19 21:49:02 +02:00
Mitch Richters
df88b23f63
- Blood: Backport GDX fix for lighter just appearing when switching to the aerosol.
...
* Fixes #564 .
* Thanks to @carnivoroussociety for the heads up.
2021-10-19 11:20:44 +11:00
Christoph Oelckers
5a9978a27b
- extended the run list to handle actor targets.
...
Also renamed fields to be more descriptive.
2021-10-17 16:22:25 +02:00
Christoph Oelckers
1b8d3f9a89
- Exhumed: some inlines for upcoming actor refactoring.
2021-10-17 15:21:29 +02:00
Emile Belanger
2a905e8026
Fix palette mode for GLES
2021-10-16 18:42:02 +02:00
Christoph Oelckers
86c58649ba
- fixed black rendered sectors in Exhumed/Polymost.
...
More a hack than a fix, thanks to Polymost's poor state handling
2021-10-16 15:36:34 +02:00
Christoph Oelckers
33261db902
- some quick sprite[] replacements.
2021-10-16 15:36:34 +02:00
Christoph Oelckers
3419d6a901
- fixed compilation.
2021-10-16 15:36:34 +02:00
Christoph Oelckers
1839634d79
- small stuff
2021-10-16 15:36:33 +02:00
Christoph Oelckers
b1d15811c5
- make nBodygunSprite an actor array.
2021-10-16 15:36:33 +02:00
Christoph Oelckers
fe9ddabd35
- made nChunkSprite an actor array
...
# Conflicts:
# source/games/exhumed/src/move.cpp
2021-10-16 15:36:33 +02:00
Christoph Oelckers
c2467dc47b
- made nBodySprite an actor array.
...
# Conflicts:
# source/games/exhumed/src/aistuff.h
# source/games/exhumed/src/player.cpp
# Conflicts:
# source/games/exhumed/src/aistuff.h
# source/games/exhumed/src/player.cpp
2021-10-16 15:36:33 +02:00
Christoph Oelckers
dbe4aa3515
- renamed disassembly variables in bubbles.cpp.
...
# Conflicts:
# source/games/exhumed/src/bubbles.cpp
# source/games/exhumed/src/exhumedactor.h
2021-10-16 15:36:33 +02:00
Christoph Oelckers
0d0326f8c1
- argument of BelowNear
2021-10-16 15:36:32 +02:00
Christoph Oelckers
9badd2e78b
- converted switches to classes.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
601d358b49
- converted FuncWasp to a class.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
8d7f37066f
- converted FuncSpider to a class
2021-10-16 15:36:32 +02:00
Christoph Oelckers
5a424bdd06
- converted FuncSnake to a class.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
61df236588
- converted FuncSet/FuncSoul to a class.
2021-10-16 15:36:32 +02:00
Christoph Oelckers
d77a5208f3
- converted FuncScorp to a class.
2021-10-16 15:36:31 +02:00
Christoph Oelckers
5418c4326f
- converted FuncRoach to a class.
2021-10-16 15:36:31 +02:00
Christoph Oelckers
25de6fe4c5
- converted FuncRex to a class.
2021-10-16 15:36:31 +02:00
Christoph Oelckers
89d98ddf34
- fixed the rat.
...
- converted FuncRat to a class.
2021-10-16 15:36:11 +02:00
Christoph Oelckers
39ca524185
- converted FuncRa to a class.
2021-10-15 22:57:53 +02:00
Christoph Oelckers
335ebe9272
- converted queen funcs to classes
2021-10-15 22:55:03 +02:00
Christoph Oelckers
93b0a35927
- converted FuncPlayer into a class
2021-10-15 22:19:07 +02:00
Christoph Oelckers
f13e1f2127
- converted all FuncObjects to classes.
2021-10-15 22:14:14 +02:00
Christoph Oelckers
3bda4d5b07
- converted FuncMummy into a class
2021-10-15 22:02:06 +02:00
Christoph Oelckers
008825fe32
- converted FuncCreatureChunk into a class.
2021-10-15 21:58:07 +02:00
Christoph Oelckers
b772200dd4
- converted FuncLion into a class
2021-10-15 21:29:24 +02:00
Christoph Oelckers
45e7b7c4d5
- converted FuncLavaDude(Limb) into classes
2021-10-15 21:25:53 +02:00
Christoph Oelckers
e73725a40e
- converted FuncGrenade into a class.
2021-10-15 21:20:28 +02:00
Christoph Oelckers
cdc7fba8a0
- converted AIFish(Limb) into classes
2021-10-15 21:17:25 +02:00
Christoph Oelckers
8f9e9de4b4
- converted FuncBullets into a class.
2021-10-15 21:11:01 +02:00
Christoph Oelckers
832b394561
- converted FuncBubble into a class.
2021-10-15 21:07:58 +02:00
Christoph Oelckers
0fc490bf40
- converted FuncAnubis into a class.
2021-10-15 21:07:33 +02:00
Christoph Oelckers
ce78b23fb6
- converted FuncAnim into a class
2021-10-15 21:06:53 +02:00
Christoph Oelckers
d130a43aa0
- preparations for cleaning up Exhumed's event dispatcher.
2021-10-15 18:51:22 +02:00
Christoph Oelckers
b725adc426
- Exhumed: split up the message word for event messages.
2021-10-15 18:49:35 +02:00
Christoph Oelckers
2ee7be0382
- Exhumed: split up the value parameter of the run list.
2021-10-15 18:37:39 +02:00
Christoph Oelckers
719081824a
- exhumedactor.h added.
2021-10-15 00:18:37 +02:00
Christoph Oelckers
d2beee587d
- updated version.h.
2021-10-14 22:50:12 +02:00
Christoph Oelckers
2396c89fb9
- migrated EVENT to use its actor pointer.
2021-10-14 21:59:49 +02:00
Christoph Oelckers
f430c28f88
- split up evSend
...
# Conflicts:
# source/games/blood/src/nnexts.cpp
2021-10-14 21:59:49 +02:00
Christoph Oelckers
efc791ee00
- route all remaining calls to evPost and evKill through type specific variants.
2021-10-14 21:59:41 +02:00
Christoph Oelckers
b64aede68e
- made patrolBonkles local to the only function using this array.
2021-10-14 20:31:45 +02:00
Christoph Oelckers
71b144023d
- renamed evPost to evPostActor and evKill to evKillActor for clarity.
2021-10-14 20:31:17 +02:00
Christoph Oelckers
0ab33b7ffe
- need to pass the actor separately to getDataFieldOfObject.
...
We cannot use rxindex anymore.
2021-10-14 20:28:56 +02:00
Christoph Oelckers
e32ac93d96
- use the actor pointer in rxBuckets.
2021-10-14 20:27:36 +02:00
Christoph Oelckers
b449e0a43b
- event redirectors for rxBuckets.
2021-10-14 20:26:42 +02:00
Christoph Oelckers
40a8cd7fa3
- playerQavSceneProcess handled for rxBuckets
2021-10-14 20:25:10 +02:00
Christoph Oelckers
db9d4efdc9
- handled 4 aiFight functions for rxBuckets.
2021-10-14 19:53:08 +02:00
Christoph Oelckers
0ef388538d
- refactored 'mate' function for rxBucket.
2021-10-14 19:51:49 +02:00
Christoph Oelckers
1d04ce90e4
- first batch of rxBucket refactoring.
2021-10-14 19:49:18 +02:00
Christoph Oelckers
5d0086cb49
- renamed RXBUCKET.index to rxindex.
...
This will be needed for refactoring for easier lookup.
2021-10-14 19:41:22 +02:00
Christoph Oelckers
93e909dd58
- use actors in the CFX interface.
2021-10-14 19:41:01 +02:00
Christoph Oelckers
77c827e817
- renamed evKill and added an actor pointer to EVENT struct.
2021-10-14 19:37:53 +02:00
Christoph Oelckers
1e1764eda6
- got rid of fxSpawn.
2021-10-14 19:36:25 +02:00
Christoph Oelckers
085bd3a165
- replaced all fxSpawn calls with fxSpawnActor.
2021-10-14 19:35:05 +02:00
Christoph Oelckers
fbe2373972
- started cleanup of evPost calls by renaming the internal functions.
...
This just renames things - no changes in functionality.
2021-10-14 19:07:51 +02:00
Christoph Oelckers
2a1f31581c
- added null pointer checks to all event callback functions.
2021-10-14 19:07:24 +02:00
Christoph Oelckers
add368433e
- sanitized callback interface.
2021-10-14 19:07:00 +02:00
Christoph Oelckers
143e947839
- renamed variable for consistency.
2021-10-14 19:02:48 +02:00
Christoph Oelckers
562968262c
- moved spriteMass into DBloodActor
2021-10-14 19:01:10 +02:00
Christoph Oelckers
5519596a94
- refactored global sprite index arrays into pointer arrays.
2021-10-14 18:43:56 +02:00
Christoph Oelckers
b60caa362e
- fixed bad merge
2021-10-14 01:15:05 +02:00
Christoph Oelckers
62d0d3712e
- use a sprite flag to mark mapped sprites.
...
This avoids another global array which needs to be addressed by sprite index.
2021-10-14 15:09:43 +02:00
Christoph Oelckers
88e86b4248
- added 0 checks to all divisions for calculating dudeSlope.
...
I had it happen once that an actor was targeting itself here which resulted in zero distance and a division by zero exception.
2021-10-14 00:06:34 +02:00
Christoph Oelckers
46d2c52b19
- use correct math to access a texel's center for rendering voxels.
...
No idea if this was causing problem, but it surely wasn't 100% correct.
2021-10-13 00:12:58 +02:00
Christoph Oelckers
8d9d3d5f8f
- disabled palette emulation for the GLES backend.
...
Right now the shader does not support it and will require significant redesign to work well with the target hardware.
2021-10-13 00:09:18 +02:00
Christoph Oelckers
a358cf8516
- SW: eliminated all SPRITE_TAG# macros.
2021-10-12 22:21:08 +02:00
Christoph Oelckers
b1ac1ad585
- more changesprite* renaming.
2021-10-12 21:36:42 +02:00
Christoph Oelckers
2e37cc627c
- function renaming for clarity and easier lookup.
2021-10-12 21:36:42 +02:00
Christoph Oelckers
895ecc81bc
- const-ified some static arrays.
...
# Conflicts:
# source/games/blood/src/nnexts.cpp
2021-10-12 21:36:42 +02:00
Christoph Oelckers
3ea4c94266
- removed a few static array references.
2021-10-12 21:36:42 +02:00
Christoph Oelckers
a318129ff3
- iterators in ambient sound code.
2021-10-12 21:36:41 +02:00
Christoph Oelckers
3454fc397e
- a few target_i removed.
...
# Conflicts:
# source/games/blood/src/ai.cpp
2021-10-12 21:36:41 +02:00
Christoph Oelckers
dc5d32f510
- two missed iterators.
2021-10-12 21:36:41 +02:00
Christoph Oelckers
13348ca428
- a tiny bit of code cleanup.
2021-10-12 21:36:41 +02:00
Christoph Oelckers
b240d2b5bd
- aiunicult.cpp is done.
2021-10-12 21:36:41 +02:00
Christoph Oelckers
013eadfd9f
- genDudePrepare
2021-10-12 21:36:18 +02:00
Christoph Oelckers
fb5916a3dd
- canSwim et.al.
2021-10-12 21:29:12 +02:00
Christoph Oelckers
acec23e034
- ensure the 'slave' array in genDudeExtra is always free of gaps.
...
This will ensure that adding entries won't accidentally overwrite things.
2021-10-12 21:29:11 +02:00
Christoph Oelckers
6bee3b5ba0
- updateTargetOfSlaves, also storing the slave data as pointers and major cleanup of this function.
2021-10-12 21:29:11 +02:00
Christoph Oelckers
c42e26351e
- genDudeSpawn, genDudeTransform and updateTargetOfLeech.
2021-10-12 21:29:11 +02:00
Christoph Oelckers
e41fcb92ab
- cleanup and formatting noise again.
2021-10-12 21:29:11 +02:00
Christoph Oelckers
f4fd2a770b
- dudeLeechOperate
2021-10-12 21:29:11 +02:00
Christoph Oelckers
e415d93283
- doexplosion
2021-10-12 19:23:25 +02:00
Christoph Oelckers
b1f55434a2
- getRecoilChance + getDodgeChance
2021-10-12 19:23:25 +02:00
Christoph Oelckers
b70368050a
- getDispersionModifier and getRangeAttackDist.
2021-10-12 19:23:25 +02:00
Christoph Oelckers
9801ce25dd
- scaleDamage
2021-10-12 19:23:24 +02:00
Christoph Oelckers
544145fe4b
- reformatting noise split from a larger commit.
2021-10-12 19:23:24 +02:00
Christoph Oelckers
c715ded287
- dudeIsMelee
2021-10-12 19:23:24 +02:00
Christoph Oelckers
eb478ba580
- getNextIncarnation
...
Event queue handling not refactored yet.
2021-10-12 19:23:24 +02:00
Christoph Oelckers
d892efb78a
- killDudeLeech
2021-10-12 19:23:24 +02:00
Christoph Oelckers
040049f83e
- more leech stuff.
...
# Conflicts:
# source/games/blood/src/ai.cpp
2021-10-12 19:23:23 +02:00
Christoph Oelckers
d2f16ec8ab
- leechIsDropped, pLifeLeech
2021-10-12 19:23:23 +02:00
Christoph Oelckers
d907627156
- spriteIsUnderwater
2021-10-12 19:23:23 +02:00
Christoph Oelckers
75258c8b29
- playGenDudeSound.
2021-10-12 19:23:23 +02:00
Christoph Oelckers
ea63229251
- some minor cleanup in aiunicult.cpp.
...
# Conflicts:
# source/games/blood/src/aiunicult.cpp
2021-10-12 19:23:22 +02:00