Commit graph

57 commits

Author SHA1 Message Date
Christoph Oelckers
a070342f0c - floatified actFireThing 2022-10-25 07:06:48 +02:00
Christoph Oelckers
6c6fdaf332 - floatified actSpawnDude and removed its unused last parameter.
All callers left it at 0.
2022-10-22 20:41:26 +02:00
Christoph Oelckers
068feae64e - floatified actFireVector. 2022-10-22 20:41:25 +02:00
Mitchell Richters
633fb01487 - Blood: Rename some weapon function variables to give us half a chance of refactoring it. 2022-10-22 19:45:10 +02:00
Christoph Oelckers
84ce8b29f2 - handle another precision issue in MoveDude.
That mulscale16r function is broken enough to affect the values in an observable way that cannot be replicated with real floats.
2022-10-22 12:16:59 +02:00
Mitchell Richters
b45c95eec5 - Blood: Floatify MoveDude() and fixed incorrect velocity check. 2022-10-22 12:16:59 +02:00
Mitchell Richters
4788e26596 - Blood: Floatify actAirDrag() and some associated XSECTOR members.
* Left `XSECTOR::windVel` as an integer type for now.
2022-10-22 12:16:59 +02:00
Mitchell Richters
0019b5ee02 - Blood: Floatify PLAYER::zWeapon. 2022-10-18 18:30:38 +02:00
Christoph Oelckers
39109de22f - consolidation of Blood rotation code.
24x the same pattern merged into a subfunction.
2022-10-15 11:35:37 +02:00
Christoph Oelckers
f2d89b7609 - refactored actWallBounceVector as well
This completes the abstraction of velocity in Blood.
2022-10-15 10:15:20 +02:00
Christoph Oelckers
9f235b56f3 - rewrote actFloorBounceVector to avoid reference parameters 2022-10-14 23:55:32 +02:00
Christoph Oelckers
cb39a07580 - position in actSpawnSprite 2022-10-10 17:37:18 +02:00
Christoph Oelckers
64cf9a4ec6 - pass vector position to actRadiusDamage 2022-10-10 17:37:18 +02:00
Christoph Oelckers
e670cf2786 - re-tabified several files that got mangled by repeated merging 2021-12-30 09:58:47 +01:00
Christoph Oelckers
3bc337264a - flags in blood's actor.cpp
plus a few others caught by search&replace.
2021-12-30 09:56:50 +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
8ce34c7772 - use refactored Collision struct and clipmove in Blood, too. 2021-12-26 23:08:57 +01:00
Christoph Oelckers
96b9572905 - moved parts of the HitInfo subclasses into the backend.
All the game code now needs to do is a single 'using' statement.
2021-12-26 23:08:57 +01:00
Christoph Oelckers
129ce0aea8 - migrated Blood's hitscan calls and its global gHitInfo struct. 2021-12-26 23:08:56 +01:00
Christoph Oelckers
b8953849ee - secnum in fx.cpp 2021-12-25 21:29:17 +01:00
Christoph Oelckers
331a7654bf - actSpawnThing 2021-12-25 21:29:15 +01:00
Christoph Oelckers
443cfc991c - actSpawnSprite, ZONE, startsectnum and dbLoadMap 2021-12-25 21:29:15 +01:00
Christoph Oelckers
6ee9ae7ec6 - actFloorBounceVector 2021-12-25 21:29:12 +01:00
Christoph Oelckers
378bf40143 - got rid of the mostly redundant GetWallType function. 2021-12-25 21:29:05 +01:00
Christoph Oelckers
1fc99d4733 - Blood: use wall pointers in wall utilities exclusively. 2021-12-25 21:29:05 +01:00
Christoph Oelckers
d576e8f438 - removed a few of the remaining shorts. 2021-12-25 21:28:44 +01:00
Christoph Oelckers
ccd6af6272 - Blood: transitioned several functions in actor.cpp to the new method to acces the x() data. 2021-12-25 21:28:42 +01:00
Christoph Oelckers
5422bff683 ‚char‘ review in Blood - part 1 2021-11-29 00:55:42 +01:00
Christoph Oelckers
e9c79292ff - Blood: use wider integer types for a few more things
Mainly removing shorts from all function signatures, except the engine replace interface, replacing them either with int or bool, depending on the use case.
2021-11-29 00:55:41 +01:00
Christoph Oelckers
499dc9953b - reduction of 'short' noise in Blood.
Mainly using int16_t for deliberately sized struct fields, auto for temporary saves of global data and making several local variables full int.
This changes nothing substantial.
2021-11-29 00:55:41 +01:00
Christoph Oelckers
484d016172 - cleaned up burn code. 2021-11-29 00:53:50 +01:00
Christoph Oelckers
fb4fcef2c2 - cleanup 2021-11-29 00:53:48 +01:00
Christoph Oelckers
9714febaab - eliminated the actPostSprite wrapper with an index parameter. 2021-11-29 00:53:36 +01:00
Christoph Oelckers
351dabdb90 - actFireMissile. 2021-10-10 22:36:12 +02:00
Christoph Oelckers
f712a674ce - removed the few remaining uses of actDamageSprite_. 2021-10-09 23:09:08 +02:00
Christoph Oelckers
fbae41ee0a - renamed the sprite variant of aiDamageSprite. 2021-10-09 23:08:43 +02:00
Christoph Oelckers
00d0099333 - removed a few compatibility wrappers. 2021-09-17 20:49:26 +02:00
Christoph Oelckers
663ecc79d1 - actFireVector 2021-09-17 20:49:25 +02:00
Christoph Oelckers
d7078dda48 - actGetRespawnTime + actCheckRespawn. 2021-09-17 20:49:25 +02:00
Christoph Oelckers
4526f4149b - actSpawnThing and actFireThing. 2021-09-16 00:11:20 +02:00
Christoph Oelckers
c5d7455317 - actSpawnDude. 2021-09-16 00:01:16 +02:00
Christoph Oelckers
ac40e86ab2 - actSpawnSprite
# Conflicts:
#	source/games/blood/src/actor.cpp

# Conflicts:
#	source/games/blood/src/actor.cpp
2021-08-23 19:20:05 +02:00
Christoph Oelckers
ddcb12a8b2 - MoveMissile + actExplodeSprite.
# Conflicts:
#	source/games/blood/src/actor.cpp
2021-08-23 19:15:08 +02:00
Christoph Oelckers
3aa9d6f8be - MoveThing.
# Conflicts:
#	source/games/blood/src/actor.cpp
2021-08-23 19:12:58 +02:00
NoOneBlood
754554a493 Increase kMaxSuperXSprites from 128 to 512.
Fix mirror (ROR) intialization so it won't crash if more than 1024 sectors used.
Fix random item generator so items that inherits TX ID won't send command at respawn.
Fix for things (400 - 433) that affected by modern physics so it won't return to vanilla physics after getting damage.
Fix kTeleportTarget so teleported sprites won't stuck in floors or ceilings.
Corpses won't gib as gargoyles anymore (gModernMap).

kModernCondition:
 - remove bool comparison (condCmpb).
 - remove no extra comparison (condCmpne).
 - remove "else if" search at level start.
 - add global (game) conditions type.
 - add more conditions.
 - make error report a bit more informative.

Add more options and damage effects for kModernSpriteDamager.
Add more options for kModernMissileGen and allow to spawn projectile on TX ID sprites location.
Add more options and vertical wind processing for kModernWindGen.
Add more options and effects for kModernEffectGen.
Allow kMarkerDudeSpawn to spawn enemies on TX ID sprites location (gModernMap).
Allow kModernCustomDudeSpawn to spawn dude on TX ID sprites location.
Add Screen and Aim trigger flags for sprites that can be triggered with Sight (gModernMap).

Patrolling enemies:
 - add turn AI state.
 - add "return back" option for path markers.
 - add "turning while waiting" option for markers.
 - make enemies to hear some sounds assuming that player generates and hears it too.
 - add kModernStealthRegion type to affect current spot progress velocity.
 - replace AI's CanMove and aiChooseDirection to a better versions.
 - make flying enemies to not spin around the marker.
 - treat Phantasm as flying enemy!
 - allow to continue patrol when falling in water.

Fix compile warnings
Various minor fixes / cleanup.
2021-07-25 13:11:55 +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
f7668fc074 - first pass over ProcessTouchObject 2021-06-02 20:44:54 +02:00
Christoph Oelckers
a7572bca0a - actImpactMissile. 2021-06-02 20:43:14 +02:00
Christoph Oelckers
965939957e - split up actKillSprite into several smaller functions.
The biggest problem in here was tracking the lifetime of local variables.
2021-05-10 20:13:28 +02:00
Christoph Oelckers
9a5a32c826 - Blood: split out the 'modern dude' part of actKillDude. 2021-05-08 14:43:09 +02:00