Commit graph

153 commits

Author SHA1 Message Date
Christoph Oelckers
ace01d02bc - alignment flags and a few leftovers. 2021-12-30 09:56:48 +01:00
Christoph Oelckers
1883aad7c2 - flag names in SetupGibWallState and TranslateSector 2021-12-30 09:56:47 +01:00
Christoph Oelckers
4a5de6f56e - make sure that all changes of wall coordinates invalidate associated data.
walltype::move should be the preferred function to be used for this, otherwise walltype::moved needs to be called.
2021-12-30 09:53:11 +01:00
Christoph Oelckers
588f88c9cc - migrated the actors to DObjects.
No GC yet, only the classes have been altered and some GC-related features been added.
Full switchover will require adding GC support to all data in the game.
2021-12-26 23:09:57 +01:00
Christoph Oelckers
e543c70439 - replacement of BloodLinearSpriteIterator
Preparation for eliminating sprite[]. This array can later be created by the actual spawn function.
2021-12-26 23:09:51 +01:00
Christoph Oelckers
97b19a5cb1 - adapted Blood's sound engine to using actors.
Note: Savegames won't work on this commit for the other games!
2021-12-26 23:09:45 +01:00
Christoph Oelckers
5d78b228b7 - the final bits and pieces in Blood 2021-12-26 23:08:40 +01:00
Christoph Oelckers
9388f839b6 - main view render function and dependencies. 2021-12-26 23:08:40 +01:00
Christoph Oelckers
0797e7ac90 - trInit 2021-12-26 23:08:39 +01:00
Christoph Oelckers
7442edc59f - more trigger stuff 2021-12-26 23:08:39 +01:00
Christoph Oelckers
2967edf827 - triggers.cpp subfunctions. 2021-12-26 23:08:39 +01:00
Christoph Oelckers
8f3c97dde4 - SetSectorState 2021-12-26 23:08:39 +01:00
Christoph Oelckers
7f94eee9bb - busy interface + unlimiting. 2021-12-26 23:08:00 +01:00
Christoph Oelckers
28840b3afa - pass sectors to AddBusy and ReverseBusy. 2021-12-26 22:35:08 +01:00
Christoph Oelckers
9d423d19cd - partial transition of busy interface to sector pointers. 2021-12-26 22:25:59 +01:00
Christoph Oelckers
765ff7609d - all remaining ->sectnum in nnexts.cpp. 2021-12-25 21:29:16 +01:00
Christoph Oelckers
d0376e5485 - nnext sound functions. 2021-12-25 21:29:16 +01:00
Christoph Oelckers
331a7654bf - actSpawnThing 2021-12-25 21:29:15 +01:00
Christoph Oelckers
b063e19980 - gFX.fxSpawnActor and a few other simple replacements. 2021-12-25 21:29:14 +01:00
Christoph Oelckers
a7fc5d2193 - refactored most wall[] references.
What's left is in either setup code or the mirror setup.
2021-12-25 21:29:12 +01:00
Christoph Oelckers
96b6bb21ef - several smaller places.
This gets rid of the less frequent names to look for.
2021-12-25 21:29:11 +01:00
Christoph Oelckers
759a8428fa - dragPoint 2021-12-25 21:29:11 +01:00
Christoph Oelckers
7bffcad49f - trMessage* functions.
# Conflicts:
#	source/games/blood/src/eventq.cpp
2021-12-25 21:29:10 +01:00
Christoph Oelckers
45a8654fc2 - use EventObject in SEQINST 2021-12-25 21:29:10 +01:00
Christoph Oelckers
2721a59dc4 - use wall pointers in gib code. 2021-12-25 21:29:10 +01:00
Christoph Oelckers
5bec3be5e9 - abstracted access to event target objects. 2021-12-25 21:29:07 +01:00
Christoph Oelckers
32874414fd - evSendSector, too. 2021-12-25 21:29:07 +01:00
Christoph Oelckers
0472c78ddc - same for walls. 2021-12-25 21:29:07 +01:00
Christoph Oelckers
37f4843953 - changed evPostSector to receive a sector pointer instead of index. 2021-12-25 21:29:07 +01:00
Christoph Oelckers
2f6bd64746 - SetWallState parameters 2021-12-25 21:29:06 +01:00
Christoph Oelckers
79da890c6e - TranslateSector cleanup. 2021-12-25 21:29:06 +01:00
Christoph Oelckers
378bf40143 - got rid of the mostly redundant GetWallType function. 2021-12-25 21:29:05 +01:00
Christoph Oelckers
2247509a67 - Blood baseWall optimzation 2021-12-25 21:28:51 +01:00
Christoph Oelckers
d5c27e6239 - unlimited the bit arrays for the automap and the bunch drawer, removed some leftover constants/declarations. 2021-12-25 21:28:50 +01:00
Christoph Oelckers
993821b75f - migrated Blood's other non-X sector properties. 2021-12-25 21:28:48 +01:00
Christoph Oelckers
93f5a111bf - all direct references to xsector have been removed. 2021-12-25 21:28:44 +01:00
Christoph Oelckers
8f5b9d2f03 - nXSector is gone. 2021-12-25 21:28:43 +01:00
Christoph Oelckers
f06697ed29 - removed pX... parameter from from trTriggerSector. 2021-12-25 21:28:42 +01:00
Christoph Oelckers
c182900425 - cleanup of trTriggerWall's API. 2021-12-25 21:28:41 +01:00
Christoph Oelckers
9cad3196ed - getSourceBusy 2021-12-25 21:28:40 +01:00
Christoph Oelckers
4cfc1577e2 - some simple xwall[] replacements. 2021-12-25 21:28:40 +01:00
Christoph Oelckers
70da9e2526 - first xwall[] removal in Blood. 2021-12-25 21:28:40 +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
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
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
carnivoroussociety
61cafc7d57 [Blood] Fix self collisions for lifeleech projectiles 2021-11-29 00:56:33 +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
28eca1a023 ‚char‘ review in Blood - part 2 2021-11-29 00:55:42 +01:00
Christoph Oelckers
01abe7b2ac - addressed most unused/uninitialized variable warnings from MSVC. 2021-11-29 00:55:30 +01:00
Christoph Oelckers
433764fd91 - mark all places using a sprite index that needs addressing with a GetSpriteIndex function. 2021-11-29 00:55:00 +01:00
Christoph Oelckers
c40266625b - moved gInterpolateSprite into DBloodActor 2021-11-29 00:55:00 +01:00
Christoph Oelckers
bac40ddb05 - viewBackupSpriteLoc calls 2021-11-29 00:54:59 +01:00
Christoph Oelckers
21a208e59e - eliminated most references to spritetype::extra
This was all places that could have been done earlier but had been overlooked.
2021-11-29 00:54:59 +01:00
Christoph Oelckers
3d63c44aae - GCC warned about this. 2021-11-29 00:54:59 +01:00
Christoph Oelckers
5b9152abfd - eliminated the last access to playerActors in trigger.cpp and made AimTargets a pointer array. 2021-11-29 00:54:58 +01:00
Christoph Oelckers
6dd7cbe8fa - GetCrushedSpriteExtents and leftover bloodActors references. 2021-11-29 00:54:58 +01:00
Christoph Oelckers
d2bc254e03 - the rest of triggers.cpp. 2021-11-29 00:54:57 +01:00
Christoph Oelckers
9349e7bcb1 - several simple functions.
Also two fixes involving trTriggerSprite.
2021-11-29 00:54:57 +01:00
Christoph Oelckers
0ae664e9ca - SetSpriteState 2021-11-29 00:53:57 +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
4e1e9ca0c9 - proper actor managements in SEQINST. 2021-11-29 00:53:56 +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
54f70ec1bb - moved baseSprite into DBloodActor. 2021-11-29 00:53:51 +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
118b3e1d70 - all calls to CheckSpriteSect/Stat handled. 2021-11-29 00:53:44 +01:00
Christoph Oelckers
a4f7fabbfa - modernTypeOperateSprite 2021-11-29 00:53:39 +01:00
Christoph Oelckers
a449d97b86 - modernTypeTrigger 2021-11-29 00:53:37 +01:00
Christoph Oelckers
9714febaab - eliminated the actPostSprite wrapper with an index parameter. 2021-11-29 00:53:36 +01: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
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
71b144023d - renamed evPost to evPostActor and evKill to evKillActor for clarity. 2021-10-14 20:31:17 +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
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
351dabdb90 - actFireMissile. 2021-10-10 22:36:12 +02:00
Christoph Oelckers
b8d55feb1e - actor parameter substitution and a few bad constants. 2021-10-09 23:08:44 +02:00
Christoph Oelckers
fbae41ee0a - renamed the sprite variant of aiDamageSprite. 2021-10-09 23:08:43 +02:00
Christoph Oelckers
7a6629ce6a - renamed XSPRITE::target to target_i.
This is to make searching for it easier as 'target' is a very common word in the source.
2021-09-17 20:49:26 +02:00
Christoph Oelckers
663ecc79d1 - actFireVector 2021-09-17 20:49:25 +02:00
Christoph Oelckers
c5d7455317 - actSpawnDude. 2021-09-16 00:01:16 +02:00
carnivoroussociety
049665e03e Fixed bug collecting lifeleech with ignited tnt/spray 2021-08-28 16:46:01 +10:00
Christoph Oelckers
ddcb12a8b2 - MoveMissile + actExplodeSprite.
# Conflicts:
#	source/games/blood/src/actor.cpp
2021-08-23 19:15:08 +02:00
Mitchell Richters
ddc7b3d730
Merge branch 'master' into master 2021-08-23 11:40:05 +10:00
carnivoroussociety
cd53e4c966 Fix teleport triggers not updating player angle 2021-08-21 12:44:01 +10:00
Mitchell Richters
ba94614078 - Blood: Replace all numerical constants for player's curWeapon with enum values. 2021-08-18 20:02:20 +10:00
Christoph Oelckers
63bc36e3c4 - renamed some constants.
Manually copied from NBlood because the underlying code has changed too much already.
2021-06-24 14:14:16 +02:00
Christoph Oelckers
7fa690082e - fixed cherry picked commit.
# Conflicts:
#	source/core/gamecontrol.h
2021-06-02 20:52:47 +02:00
NoOneBlood
3a59243ea0 - Fixed getPlayeById() function in multiplayer.
- Fixed debris physics flags was not properly reset on level restart.
- Added new modern type "kModernSlopeChanger" that can manipulate sector and sprite slopes.
- Allow to drop items and keys for players in multiplayer (gModernMap only).
- Added event commands to manipulate dude flags.
- Patrol enemies (xsprite.dudeFlag4, gModernMap only):
  - Added path markers following.
  - Added stealth mechanics.
  - Added spot target progress bar.
  - Added alarm dude flag.
  - Added blind dude flag.
  - Added deaf dude flag.
  - Added conditions for kModernCondition related to patrol enemies.
- kModernDamager can work like generator and damage anyone in sectors or in map.
- kSectorDamage is not does the damage if in Off state (gModernMap only).
- Additional options kModernSeqSpawner.
- Effects that created with kModernEffectSpawner now inherits offset of the sprite.
- Added kCmdSectorMotionPause and kCmdSectorMotionContinue event commands that allows to pause or continue sector motion (gModernMap only, WIP).
- Various minor fixes.

# Conflicts:
#	source/blood/src/ai.cpp
#	source/blood/src/common_game.h
#	source/blood/src/eventq.cpp
#	source/blood/src/nnexts.cpp
#	source/blood/src/nnexts.h
#	source/blood/src/triggers.cpp
#	source/blood/src/triggers.h
#	source/blood/src/view.cpp

# Conflicts:
#	source/games/blood/src/ai.cpp
#	source/games/blood/src/nnexts.h

# Conflicts:
#	source/games/blood/src/actor.cpp
#	source/games/blood/src/ai.cpp
2021-06-02 20:51:47 +02:00
Christoph Oelckers
a7572bca0a - actImpactMissile. 2021-06-02 20:43:14 +02:00
Christoph Oelckers
3e2cacfaf6 - silenced warnings in Blood. 2021-05-12 21:49:06 +02:00
Christoph Oelckers
7d77b2315f - merged the few remaining contents of mmulti.h into d_net.h 2021-05-03 19:01:00 +02:00
Christoph Oelckers
798cf2f973 Merge branch 'newrenderer2' of https://github.com/coelckers/Raze-private into newrenderer2 2021-04-12 20:25:56 +02:00
Christoph Oelckers
10d0de8dbf Merge branch 'master' into newrenderer2 2021-04-12 15:06:12 +02:00
Christoph Oelckers
6142f9d795 - added CHANF_FORCE flag for forcing non-looped sounds to start, even when sound is paused.
Blood needs this for its PlayerSound controller, which is run right on map load - so without this it wouldn't start the sound when a map is initiated from the console.
2021-04-11 21:14:09 +02:00