Commit graph

198 commits

Author SHA1 Message Date
Christoph Oelckers
05edd22f67 remove set_int_pos from TranslateSector 2022-10-22 12:16:53 +02:00
Mitchell Richters
dd23b60810 - Blood: Clean up as much Q16.16 smoothratio usage as possible. 2022-10-18 18:29:09 +02:00
Mitchell Richters
6356aeafc2 - Blood: Eliminate gMe extern'd pointer. 2022-10-18 18:29:08 +02:00
Mitchell Richters
45d4d3e41a - Eliminate __interpvalue() and clean up Q16.16 smoothratio values where it made sense to do so.
* Also eliminates a now empty header.
2022-10-15 13:32:02 +02:00
Mitchell Richters
06e772b44b - Rename interpolatedvalue() in preparation for replacement. 2022-10-15 13:32:01 +02:00
Christoph Oelckers
057d2a565a - floatified Blood's velFloor and velCeil 2022-10-15 13:31:59 +02:00
Christoph Oelckers
38bb103cdd - renamed velFloor and velCeil. 2022-10-15 13:31:59 +02:00
Christoph Oelckers
49f0e9c57d - batch 3 of vel. 2022-10-14 23:52:43 +02:00
Christoph Oelckers
e7b09dbaac - renamed vel. 2022-10-14 23:52:42 +02:00
Christoph Oelckers
55455ea4fa - use floating point for the last remaining rotation in TranslateSector 2022-10-13 20:58:11 +02:00
Christoph Oelckers
978c35fda1 - mess reduction in Blood’s TranslateSector
We can also get rid of set_int_xy now.
2022-10-13 20:42:29 +02:00
Christoph Oelckers
0edd12bc11 - set_int_ang(getangle 2022-10-13 00:59:01 +02:00
Christoph Oelckers
f80b228a83 - deal with int positions in approxdist calls 2022-10-13 00:58:59 +02:00
Christoph Oelckers
2f896b859b - made the code mostly signed-char safe.
This eliminates all char function parameters that are not really ASCII characters and casts all char argument to the ctype is... functions.
2022-10-12 22:12:30 +02:00
Christoph Oelckers
f269ceff64 slope functions with position vectors 2022-10-12 22:10:37 +02:00
Christoph Oelckers
18a445aee5 - added ZeroVelocity function to DBloodActor. 2022-10-12 22:10:36 +02:00
Christoph Oelckers
4888b363e8 - added vector variant of gFX.fxSpawnActor 2022-10-10 17:37:19 +02:00
Christoph Oelckers
f13d9892dc - trivial wrapper replacements in Duke 2022-10-09 08:21:53 +02:00
Mitchell Richters
d28d6cd4cf - Utilise actor sprite's full precision in instances where angle was converted to Build and back again. 2022-10-05 00:36:30 +02:00
Mitchell Richters
dbc46e2a75 - Change out PlayerAngle::settarget()'s input from binangle to DAngle. 2022-10-05 00:36:27 +02:00
Mitchell Richters
6167448f27 - Blood: Replace all uses of binangle with DAngle objects. 2022-10-05 00:36:24 +02:00
Christoph Oelckers
9a27dc2020 - handle all leftover __int_angles.
Most were in comments but were changed anyway.
2022-10-05 00:36:21 +02:00
Christoph Oelckers
8f904c2256 - angle assignments in Blood. 2022-10-04 23:56:43 +02:00
Christoph Oelckers
f54e4b8a9a - more int_ang() 2022-10-04 23:56:43 +02:00
Christoph Oelckers
33d5b54ce0 - use int_ang(). 2022-10-04 23:56:43 +02:00
Christoph Oelckers
735b9a8fed - renamed ang to __int_angle 2022-10-04 23:56:42 +02:00
Christoph Oelckers
9bac3b8857 - floatified DBloodActor::basePoint. 2022-10-04 23:56:24 +02:00
Christoph Oelckers
403e1ad3b3 - Blood: floatified baseFloor and baseCeil. 2022-10-02 20:46:56 +02:00
Christoph Oelckers
044929ad06 - replaced all remaining read access to __int_floorz and __int_ceilingz with wrappers. 2022-08-27 10:13:15 +02:00
Christoph Oelckers
c84d75b8bf - use inline access functions to read floorz/ceilingz. 2022-08-27 09:58:16 +02:00
Christoph Oelckers
0672572e63 - renamed sectortype::floorz and ceilingz as preparation for floatification 2022-08-27 09:47:48 +02:00
Christoph Oelckers
75ab0cf018 - handle a few leftovers in Blood. 2022-08-26 19:53:07 +02:00
Christoph Oelckers
f291a943a4 - Blood: replaced the remaining spr.pos with int_pos() 2022-08-26 19:53:04 +02:00
Christoph Oelckers
702a73ff6c - Blood: handled the remaining write accesses to 'pos' 2022-08-26 19:53:03 +02:00
Christoph Oelckers
efc832ca5c - Blood: wrapped most write accesses to spr.pos 2022-08-26 19:53:03 +02:00
Christoph Oelckers
b196e67f40 ported SHA-1: 82e3f6af9367200853fe2af1b9665dd0c53b4f05 from NBlood
* - Change gBusyCount limit to a higher value since xsector limit raised.

gModernMap:
- The return of the event causer (kChannelEventCauser, TXID 50).
- Fix flags for kModernPropertiesChanger type.
- Add new modern type kModernVelocityChanger.
- New features for kMarkerWarpDest type.
- New features for kModernSectorFXChanger type.
- Fix sector condition 58.
- Fix sprite hitscan conditions (35 - 38).
- Add new command (kCmdEventKillFull).
- Misc changes.

# Conflicts:
#	source/games/blood/src/actor.cpp
#	source/games/blood/src/nnexts.cpp
2022-08-17 20:45:51 +02:00
Christoph Oelckers
0139ac5e4a ported NBlood commit e3d7ab8b919c230b2b4a825137d607b03b363796
- (gModernMap) Add a way to move sprites that are close to outside walls of sector
- (gModernMap) Add loadsave construct
- (gModernMap) Fix movement direction for reverse moving sprites in TranslateSector
2022-08-17 20:45:43 +02:00
Christoph Oelckers
9c107049fd Revert "- blood: fix velCeil calculation"
This reverts commit d85a8b6507.

This broke player view height on elevators.
2022-08-17 20:19:58 +02:00
Mitchell Richters
71fb91940d Revert "- Simplify PlayerHorizon::settarget() by adding a dedicated angle setter that resets interpolated value as well."
This reverts commit 0416834d9d.

Revert "- Simplify `PlayerAngle::settarget()` by adding a dedicated angle setter that resets interpolated value as well."

This reverts commit 5a550613f3.

Revert "- Add bool `lock` to `PlayerHorizon::settarget()` when setting target from the ticker without having to call setters and resetters."

This reverts commit 18541d1ab4.

Revert "- Add bool `lock` to `PlayerAngle::settarget()` when setting target from the ticker without having to call setters and resetters."

This reverts commit 1ac58dc41c.

* We need to ensure only the ticker can unlock the player's input if it's telling us to lock the input.
2022-06-06 18:41:45 +10:00
Mitchell Richters
5a550613f3 - Simplify PlayerAngle::settarget() by adding a dedicated angle setter that resets interpolated value as well. 2022-05-30 21:22:10 +10:00
Mitchell Richters
7282e0d8bf - Remove multiple addadjustment()/settarget() overloads in favour of native binangle/fixedhoriz versions only.
* Simplifies these classes a bit.
* Better shows intent in actual game code.
* Removes unnecessary int to double conversions.
2022-05-30 20:35:41 +10:00
Christoph Oelckers
84bafe6d02 - manual merge of latest nnext update. 2022-05-11 08:31:58 +02:00
Christoph Oelckers
83499740c3 - blood: GetHighestSprite fix
copied from NBlood f984eb8f5cb52653c301e015e34e8471d9ed8b7c
2022-05-06 01:28:21 +02:00
Christoph Oelckers
d85a8b6507 - blood: fix velCeil calculation
copied from NBlood 397992b6d5acd9c839db78dafde3a9a718b2503f
2022-05-06 01:26:38 +02:00
Christoph Oelckers
219970f626 - blood: SetupGibWallState fix
copied from NBlood f53f40ee79750aaadf1eeb4adc72a2cca034d8a2
2022-05-06 01:25:17 +02:00
Christoph Oelckers
4c139a2609 - blood: add missing case in OperateSprite
copied from NBlood 87315860a45dc16942f8e3c36290a856c886d619
2022-05-06 01:23:14 +02:00
Christoph Oelckers
aab0a4f129 - renamed a variable 2022-05-06 01:17:18 +02:00
Christoph Oelckers
2576de04b8 - Renamed checkFired6or7->checkLitSprayOrTNT
replicates NBlood 285ad39455556ede31a0a94796a324ac43d1e3ef
2022-05-06 01:16:10 +02:00
Christoph Oelckers
ca423e15f0 - Check enemy type when adding to enemy level count
Fixes count issues with respawning enemies

copied from NBlood commit a6bbac4a213f6fb76a7c20b80da6b30c9ffc3064
2022-05-06 01:08:09 +02:00
Christoph Oelckers
2f55d2a1c7 - Blood: fixed bad marker check in OperatePath 2022-02-20 23:28:20 +01:00