Commit graph

2278 commits

Author SHA1 Message Date
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
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
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
8bd2b960ee - Blood: Consolidate duplicated code in viewUpdateShake() into a lambda. 2021-11-06 15:14:25 +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
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
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
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
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
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
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
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