Christoph Oelckers
f78ecd22a4
- Exhumed: eliminated several set_int_pos calls
2022-10-08 16:11:01 +02:00
Christoph Oelckers
7d9406bf01
- AngleDiff
2022-10-08 10:06:04 +02:00
Christoph Oelckers
9d5acf8350
- getangle calls
2022-10-08 10:06:04 +02:00
Christoph Oelckers
d5bcc64206
- Exhumed: AddFlash floatified
2022-10-08 10:06:04 +02:00
Christoph Oelckers
f6c7a1c41d
- final BuildAnim calls
...
This was a bit more complex.
2022-10-08 10:06:04 +02:00
Christoph Oelckers
8ee10c5488
- Exhumed: use DVector3 in BuildAnim and some related code
2022-10-08 10:06:03 +02:00
Christoph Oelckers
416be99967
- fixed: SW's intro video must not stop playing music.
2022-10-08 10:04:31 +02:00
Mitchell Richters
ca521f8a1e
- Test whether texture filtering is allowed before unconditionally allowing anisotrophy in the GLES backend.
2022-10-08 10:04:31 +02:00
Christoph Oelckers
4d02cdcce9
- use explicit types in hitscan calls
2022-10-06 20:50:47 +02:00
Christoph Oelckers
5455ce42c0
-got rid of some simple int_ppos wrappers.
2022-10-06 20:50:47 +02:00
Christoph Oelckers
76569ffd9f
- fix constants
2022-10-06 20:50:47 +02:00
Christoph Oelckers
eedac509a2
- LadderPosition
2022-10-06 20:50:47 +02:00
Christoph Oelckers
c6af5ff9e1
- removed all quickly doable ppos wrapper calls.
2022-10-06 20:50:47 +02:00
Christoph Oelckers
280cd8970e
- floatify all 3 player position variables.
2022-10-06 20:50:47 +02:00
Christoph Oelckers
c5414bd29c
- map to final names.
2022-10-06 20:50:46 +02:00
Christoph Oelckers
6ced076812
- ladder stuff
2022-10-06 20:50:46 +02:00
Christoph Oelckers
72869304ea
- add_int_ppos_XY
2022-10-06 20:50:46 +02:00
Christoph Oelckers
8ff62c5a07
- sone remaining int_ppos.
2022-10-06 20:50:46 +02:00
Christoph Oelckers
f125d615c8
-more ppos setters.
2022-10-06 20:50:46 +02:00
Christoph Oelckers
55aa981f89
- ppos.Z assignments
2022-10-06 20:50:46 +02:00
Christoph Oelckers
5db79fecd7
- more int_ppos
2022-10-06 20:50:45 +02:00
Christoph Oelckers
8e966fc575
- int_ppos replacements
2022-10-06 20:50:45 +02:00
Christoph Oelckers
da73d2bba4
- renamed player position variables.
2022-10-06 20:50:45 +02:00
Christoph Oelckers
22dae296c6
- SW: SectorExp floatified
2022-10-06 20:50:45 +02:00
Christoph Oelckers
ed6adc33c4
- floatified SO rotations.
2022-10-06 20:50:45 +02:00
Christoph Oelckers
e71254dfa6
- floatified some parts of the SO interface for consistent use of MAXSO.
2022-10-06 20:50:45 +02:00
Christoph Oelckers
b9dbcebe2e
- floatified SECTOR_OBJECT::pmid
2022-10-06 20:50:44 +02:00
Christoph Oelckers
9393170408
- new utilities for SO floatification.
2022-10-06 20:50:44 +02:00
Christoph Oelckers
be2f61bce2
- optimized TVector3::XY() to return a writable reference.
2022-10-06 20:50:44 +02:00
Christoph Oelckers
48cbdeb697
- replaced all possible __int_pmid with access functions.
2022-10-06 20:50:44 +02:00
Christoph Oelckers
819297a409
- SW: renamed SECTOR_OBJECT::pmid
2022-10-06 20:50:44 +02:00
Christoph Oelckers
eef7802111
- SW: floatify some set_int_pos calls
2022-10-06 20:50:44 +02:00
Christoph Oelckers
049c6f948d
- deleted unused SpawnWallHole function.
2022-10-06 20:50:43 +02:00
Christoph Oelckers
e8d18e42d1
- SW: QueueHole
2022-10-06 20:50:43 +02:00
Christoph Oelckers
661655fb67
- SW: use a DVector3 in SpawnVis
2022-10-06 20:50:43 +02:00
Christoph Oelckers
89816f4582
- dumped broken and useless xyrand function.
...
Didn't work, wasn't used anywhere else, so a properly done local inline is preferable.
2022-10-06 20:44:52 +02:00
Christoph Oelckers
32e1f07b60
- eliminate all use of integer coordinates in the sector geometry creation code.
...
This eliminates the last small remnants of texture twitching in SW as well.
2022-10-05 18:31:46 +02:00
Christoph Oelckers
3a9f9988f4
- redid clipinsidebox* functions.
...
* Completely rewritten to be less obtuse.
* Consolidated the two variants.
* Renamed to be clearer about what they do.
2022-10-05 18:31:45 +02:00
Christoph Oelckers
b9d0c9d6ba
- simplified slope sprite code a bit and got rid of clipinsidebox overload.
2022-10-05 18:29:30 +02:00
Christoph Oelckers
0a3bd7a3a3
- walltype::fdelta
2022-10-05 18:29:04 +02:00
Christoph Oelckers
91f305125e
- floatified GetWallSpritePosition and redirected get_wallspr_points to use it.
2022-10-05 18:29:04 +02:00
Christoph Oelckers
129457044c
- redirect get_floorspr_points to the floating point variant.
2022-10-05 18:29:03 +02:00
Christoph Oelckers
c712d594e0
- fully floatified GetFlatSpritePosition
2022-10-05 18:29:03 +02:00
Christoph Oelckers
b9ea355e2e
- use math utilities to get closest point on wall in clip.cpp.
2022-10-05 18:29:03 +02:00
Christoph Oelckers
e6f1d92567
- use floats for spawning Exhumed actors
2022-10-05 18:25:57 +02:00
Christoph Oelckers
21944d5ac2
- updatesectorz with DVector3.
2022-10-05 18:22:07 +02:00
Christoph Oelckers
643d3e7eba
- SW’s BulletHitSprite
2022-10-05 18:19:56 +02:00
Christoph Oelckers
b3d9320d54
- Distance in SW
2022-10-05 18:18:27 +02:00
Christoph Oelckers
84f690654e
- hitpos replacements in spawn calls
2022-10-05 18:17:15 +02:00
Christoph Oelckers
5505c362e2
- floatified hitpos
2022-10-05 18:11:59 +02:00
Christoph Oelckers
1f96b4eac6
- Warp wrappers
2022-10-05 18:11:12 +02:00
Christoph Oelckers
55ade2eda4
- use int_hitpos() access function where applicable
2022-10-05 18:10:44 +02:00
Christoph Oelckers
296b5d7edd
- renamed HitInfo::hitpos
2022-10-05 18:03:41 +02:00
Christoph Oelckers
086c699df0
- use float coords for spawning some SW actors.
2022-10-05 18:01:57 +02:00
Christoph Oelckers
0c8ed75d54
- SW: SpawnActor with float vector
2022-10-05 18:01:21 +02:00
Christoph Oelckers
8f4c418a1b
- pos simplifications
2022-10-05 18:00:25 +02:00
Christoph Oelckers
46aa695b54
- add a float version of ActorZOfMiddle.
2022-10-05 17:59:32 +02:00
Christoph Oelckers
cdff2b12cc
- renamed ActorZOfMiddle
2022-10-05 17:58:37 +02:00
Christoph Oelckers
360e01a778
another batch of set_int_pos in Exhumed.
2022-10-05 17:38:44 +02:00
Christoph Oelckers
f485f9d42e
- batch of set_int_pos in Exhumed
2022-10-05 17:36:31 +02:00
Christoph Oelckers
64391c52f9
- large batch of set_int_pos, minus Exhumed
2022-10-05 17:33:01 +02:00
Mitchell Richters
5f586ee40c
- Tiny bit of abstraction in PlayerAngle
struct.
2022-10-05 00:36:32 +02:00
Mitchell Richters
2757140ad1
- Convert all remaining angle internals of PlayerAngle
into DAngle
units.
...
* With the old setup, we needed to use primitives to get the desired outcome, but since DAngle stores a proper angle in true degrees, we can use it all the way.
2022-10-05 00:36:32 +02:00
Mitchell Richters
bd7a004c4c
- Convert delta test in PlayerAngle::processhelpers()
to degrees, missed during cf2788b14b3d5c2e0533ad4cdc7912253848a5b9.
2022-10-05 00:36:32 +02:00
Mitchell Richters
69dff8658f
- Move getincangle()
from gameinput.h
to gamefuncs.h
.
...
* Should be eliminated fairly soon, anyway.
2022-10-05 00:36:32 +02:00
Mitchell Richters
3de1d2156d
- Rename binaryangle.h
to fixedhorizon.h
and sanitise places where previous header was included.
2022-10-05 00:36:31 +02:00
Mitchell Richters
442d1f3bd3
- Move Build interpolation helper inlines into new header file.
...
* Needed to be in new header to avoid some circular dependencies.
2022-10-05 00:36:31 +02:00
Mitchell Richters
1a0b8aff69
- Move Build vector angle functions from binaryangle.h
to gamefuncs.h
.
2022-10-05 00:36:31 +02:00
Mitchell Richters
7c7351db8d
- Move build sine functions from binaryangle.h
to gamefuncs.h
.
2022-10-05 00:36:31 +02:00
Mitchell Richters
478e7a6801
- Eliminate some TAngle floating point Build method usage.
2022-10-05 00:36:31 +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
5c84f93c08
- Use the static constexpr nullAngle
everywhere possible.
2022-10-05 00:36:30 +02:00
Mitchell Richters
02dfe2cb62
- Repair interpolation issues following change of sprite angles from integer to DAngle
types.
2022-10-05 00:36:30 +02:00
Mitchell Richters
47ed6cbd61
- Restore internals of spritetypebase::norm_ang()
.
2022-10-05 00:36:30 +02:00
Mitchell Richters
7600a77641
- Fix issues with spritetypebase
int angle methods.
2022-10-05 00:36:30 +02:00
Christoph Oelckers
fe6fcdff1f
- use DAngle for actors
...
Note that intangle needs to be kept - primarily for SW's ST tags.
2022-10-05 00:36:29 +02:00
Mitchell Richters
bd6b0eaac5
- Fix some constexpr issues with the latest DAngle works.
...
* We can't make `BAMs()` constexpr as we can't update to a C++20 compatible version of xs_Float where we use legal std::bit_cast instead of a union.
2022-10-05 00:36:29 +02:00
Mitchell Richters
0edc6024e6
- Remove superfluous use of Normalized180()
method on an angle.
2022-10-05 00:36:29 +02:00
Mitchell Richters
951734beae
- Eliminate last remaining uses of binangle
and the class itself.
...
* https://www.youtube.com/watch?v=RgKAFK5djSk
2022-10-05 00:36:29 +02:00
Christoph Oelckers
6aaee85875
- leftover binangle uses from the coordinate refactoring.
2022-10-05 00:36:29 +02:00
Christoph Oelckers
02ce593f06
-removed leftover binangles in Blood's animatesprites.cpp
2022-10-05 00:36:28 +02:00
Mitchell Richters
abb8b87be1
- Eliminate last remaining binangle
inline utilities.
2022-10-05 00:36:28 +02:00
Mitchell Richters
dd55569915
- Eliminate getincanglebam()
.
2022-10-05 00:36:28 +02:00
Mitchell Richters
c25493762b
- Eliminate bvectangbam()
.
2022-10-05 00:36:28 +02:00
Mitchell Richters
ad908719ec
- Remaining manual changes to replace player's ang
with DAngle
object.
2022-10-05 00:36:27 +02:00
Mitchell Richters
b23e77d9c7
- Replace player's ang
with DAngle
object.
...
* This commit does not build. Committed items are everything that's been done by find and replace.
* Next commit has hand-performed changes that are better separated out for clarity.
2022-10-05 00:36:27 +02:00
Mitchell Richters
7a6f5c0864
- Replace binangle
usage in PlayerHorizon::calcviewpitch()
with DAngle
object.
2022-10-05 00:36:27 +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
a090f31bc4
- Change out PlayerAngle::addadjustment()
's input from binangle
to DAngle
.
2022-10-05 00:36:26 +02:00
Mitchell Richters
782fb08209
- SW: Make better use of some TAngle backend utilities.
2022-10-05 00:36:26 +02:00
Mitchell Richters
13ea55b4cb
- Replace player's rotscrnang
and look_ang
angles with DAngle
objects.
...
* Went the el cheapo route and added some floating point Build angle methods. As these and the integer build methods are really just refactoring aids, we'll come back to this in due course.
2022-10-05 00:36:26 +02:00
Mitchell Richters
728edc182d
- Remove last main usage of binangle
outside of the game's input code.
2022-10-05 00:36:26 +02:00
Mitchell Richters
4f56138027
- Change all remaining BunchDrawer
properties from binangle
to angle_t
types.
2022-10-05 00:36:25 +02:00
Mitchell Richters
e6fe9b7031
- Change all binangle
members in Clipper
struct to angle_t
.
2022-10-05 00:36:25 +02:00
Mitchell Richters
914930ff9a
- Change BunchDrawer::ang1
, BunchDrawer::ang2
and BunchDrawer::angrange
from binangle
to angle_t
.
2022-10-05 00:36:25 +02:00
Mitchell Richters
e17d24ce0b
- Change FBunch::startangle
and FBunch::endangle
from binangle
to angle_t
.
2022-10-05 00:36:25 +02:00
Mitchell Richters
36d76a71ea
- Change walltype::clipangle
from binangle
to angle_t
.
2022-10-05 00:36:25 +02:00
Mitchell Richters
d3022947eb
- Replace use of binangle
in gi->processSprites()
with DAngle
object.
2022-10-05 00:36:24 +02:00
Mitchell Richters
d6f405c229
- Blood: Remove leftover Polymost draw code prototype.
2022-10-05 00:36:24 +02:00
Mitchell Richters
6167448f27
- Blood: Replace all uses of binangle
with DAngle
objects.
2022-10-05 00:36:24 +02:00
Mitchell Richters
0b33f39fcd
- Duke: Replace all uses of binangle
with DAngle
objects.
2022-10-05 00:36:24 +02:00
Mitchell Richters
aee102ba73
- Exhumed: Replace all uses of binangle
with DAngle
objects.
...
# Conflicts:
# source/games/exhumed/src/view.cpp
2022-10-05 00:36:23 +02:00
Mitchell Richters
8912d7d6cc
- SW: Change RevolveAng
, RevolveDeltaAng
and GlobSpeedSO
to DAngle
objects.
...
* For now, SW is as `binangle` free as it can be until other backend parts are changed.
2022-10-05 00:36:23 +02:00
Mitchell Richters
3242b8fd81
- SW: Remove leftover Polymost draw code prototype.
2022-10-05 00:36:23 +02:00
Mitchell Richters
2f76ca100f
- SW: Replace last uses of binangle
in game's draw code with DAngle
objects.
...
* Easiest done in one hit since we had pointers and things to deal with.
2022-10-05 00:36:23 +02:00
Mitchell Richters
ebac932efe
- Update render_drawrooms()
and render_camtex()
to work off DAngle
objects.
2022-10-05 00:36:23 +02:00
Mitchell Richters
c935fc2226
- Refactor chase cam positional code to use DAngle
input rather than binangle
.
...
* These changes still maintain Build's integer positional values in Q28.4/Q24.8, changing this will be done later on.
2022-10-05 00:36:22 +02:00
Mitchell Richters
54ef648936
- SW: Change limit_ang_center
and limit_ang_delta
to DAngle
objects.
2022-10-05 00:36:22 +02:00
Mitchell Richters
303e7ddf76
- Replace binangle
in ShadowWarrior::PREDICT
with DAngle
object(s).
2022-10-05 00:36:22 +02:00
Mitchell Richters
08b10a7320
- Replace binangle
in ShadowWarrior::UpdateSounds()
with DAngle
object(s).
2022-10-05 00:36:22 +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
6bdfa09dd1
- the remaining angle stuff.
2022-10-05 00:36:21 +02:00
Christoph Oelckers
2d51058de8
- add_int_ang
2022-10-05 00:35:14 +02:00
Christoph Oelckers
c2f4fa8bb5
- more angles
2022-10-04 23:56:44 +02:00
Christoph Oelckers
2533841541
- set_int_ang in SW.
2022-10-04 23:56:44 +02:00
Christoph Oelckers
6381015229
- set_int_ang in SW, part 1.
2022-10-04 23:56:44 +02:00
Christoph Oelckers
d55a84d7eb
- set_int_ang in Exhumed
2022-10-04 23:56:44 +02:00
Christoph Oelckers
150ab95a3a
- set_int_ang in Duke.
...
Also changed SOUNDFX actor to use a different variable for its index.
2022-10-04 23:56:43 +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
a860a21bde
- use floats in viewInsertTSprite
2022-10-04 18:44:17 +02:00
Christoph Oelckers
06b8a9139e
- handle most int_pos calls in common code.
2022-10-04 18:44:17 +02:00
Christoph Oelckers
87ef58c07e
- DVector3 version of EGS.
2022-10-04 18:44:17 +02:00
Christoph Oelckers
25a048c62f
- fully floatified the crane data.
2022-10-04 18:44:17 +02:00
Christoph Oelckers
9392e31b33
- remove C-style struct parameters.
2022-10-04 18:44:16 +02:00
Christoph Oelckers
ef9534d9fa
- deleted unused wrapper method.
2022-10-04 18:44:16 +02:00
Christoph Oelckers
022f22cd10
-replaced tspritetype::set_int_x/y.
2022-10-04 18:44:16 +02:00
Christoph Oelckers
d654f23613
- handle_se00 cleanup
2022-10-04 18:44:16 +02:00
Christoph Oelckers
838d28b934
- more simple replacements.
2022-10-04 18:44:16 +02:00
Christoph Oelckers
3edbec4f55
- use copyXY method where possible.
2022-10-04 18:44:16 +02:00
Christoph Oelckers
24c845f827
- remove float_pos wrapper.
2022-10-04 18:44:15 +02:00
Christoph Oelckers
b327f7f03a
- some simple replacements.
2022-10-04 18:44:15 +02:00
Christoph Oelckers
1ab1852af8
- do not use ovel to store a sound index.
2022-10-04 18:44:15 +02:00
Christoph Oelckers
05d8cee911
- more cleanup.
2022-10-04 18:44:15 +02:00
Christoph Oelckers
9d4e467268
- did some more.
2022-10-04 18:44:15 +02:00
Christoph Oelckers
95bc8a173f
- animatesprites clear of player_int_pos.
2022-10-04 18:44:15 +02:00
Christoph Oelckers
0bf60d53ee
- another batch
2022-10-04 18:43:40 +02:00
Christoph Oelckers
3b66cd4047
- more floatification cleanup.
2022-10-02 20:47:01 +02:00
Christoph Oelckers
8bba3b24b5
- floatification access method cleanup in actors_d.cpp.
2022-10-02 20:47:01 +02:00
Christoph Oelckers
f5abeb97e4
- floatification access method cleanup in actors.cpp.
2022-10-02 20:47:01 +02:00
Christoph Oelckers
3c4e89185d
- position cleanup in actor.cpp (mainly queball and recon)
2022-10-02 20:47:01 +02:00
Christoph Oelckers
29ae7f7a02
- floatified bobpos.
2022-10-02 20:47:00 +02:00
Christoph Oelckers
b8eb66cccf
- Duke: floatified the sector rotation code.
...
This gives a *massive* improvement to the precision of rotating sectors, most notably the main part of E2L10 "Spin Circle".
2022-10-02 20:47:00 +02:00
Christoph Oelckers
494653a724
- floatified rotation in handle_se00
2022-10-02 20:47:00 +02:00
Christoph Oelckers
1f49f62d75
- cleanup, part 3.
2022-10-02 20:47:00 +02:00
Christoph Oelckers
dd7544c7a6
- cleanup, part 2.
2022-10-02 20:47:00 +02:00
Christoph Oelckers
66acab2ca0
- cleanup, part 1.
2022-10-02 20:47:00 +02:00
Christoph Oelckers
e878ecb511
- floatified player_struct::pos.
2022-10-02 20:47:00 +02:00
Christoph Oelckers
86076b2871
- use player_add_int_xy and player_set_int_xy.
2022-10-02 20:47:00 +02:00
Christoph Oelckers
44dc2a692f
- wrapped player::pos z-assignments.
2022-10-02 20:46:59 +02:00
Christoph Oelckers
9cd57f4510
- pushmove wrapper and a few other replacements.
2022-10-02 20:46:59 +02:00
Christoph Oelckers
8482e66caa
- __int_opos is gone.
2022-10-02 20:46:59 +02:00
Christoph Oelckers
d6523c30f2
- one more
2022-10-02 20:46:59 +02:00
Christoph Oelckers
c5fb88e203
- another batch of utility use
2022-10-02 20:46:59 +02:00
Christoph Oelckers
8ba7cb0ddb
- use the player position utilities in actor*.cpp
2022-10-02 20:46:59 +02:00
Christoph Oelckers
3f33719c36
- added position utilities to player_struct.
2022-10-02 20:46:59 +02:00
Christoph Oelckers
fb4da6bbd4
- added some utilities.
...
This also had to use explicit types in a few places to clear ambiguities.
2022-10-02 20:46:58 +02:00
Christoph Oelckers
312ee075d2
- use wrapper functions for pos/opos where possible.
2022-10-02 20:46:58 +02:00
Christoph Oelckers
591dcc995a
- added a float version of gs.playerheight.
2022-10-02 20:46:58 +02:00
Christoph Oelckers
1e1188ae73
- use gs.playerheight consistently.
...
There were still several cases using the game specific constants.
2022-10-02 20:46:58 +02:00
Christoph Oelckers
564ec9e518
- renamed player_struct::opos
2022-10-02 20:46:58 +02:00
Christoph Oelckers
5f4c35e9aa
- renamed player_struct::pos
2022-10-02 20:46:58 +02:00
Christoph Oelckers
6bd854da88
- floatified player_struct::truecz/truefz.
2022-10-02 20:46:58 +02:00
Christoph Oelckers
7fce0ed7ae
- renamed truefz and truecz
2022-10-02 20:46:57 +02:00
Christoph Oelckers
8f64518637
- Duke: cleanup on z-checks, part 4.
2022-10-02 20:46:57 +02:00
Christoph Oelckers
665ee69eba
- Duke: cleanup on z-checks, part 3.
2022-10-02 20:46:57 +02:00
Christoph Oelckers
6eabe4e152
- Duke: cleanup on z-checks, part 2.
2022-10-02 20:46:57 +02:00
Christoph Oelckers
b853e9caa0
- Duke: cleanup on z-checks, part 1.
2022-10-02 20:46:57 +02:00
Christoph Oelckers
4506b5cb08
- cleaned up the remaining uses of the integer floorz/ceilingz variables.
...
This concerns two particularly ugly blocks of code in the move functions - these were fully redone with pure floating point math.
2022-10-02 20:46:57 +02:00
Christoph Oelckers
89c0e4234c
- remapped all copy assignments to DDukeActor::ceilingz/floorz.
...
This commit does not work! It was split for clarity.
2022-10-02 20:46:57 +02:00
Christoph Oelckers
e3d5397d7e
- floating point getslope functions.
...
# Conflicts:
# source/build/include/build.h
2022-10-02 20:46:57 +02:00
Christoph Oelckers
4787bddddd
- Duke: replaced most read access to DDukeActor::floorz/ceilingz with a wrapper function.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
793e9b7623
- renamed DDukeActor::floorz, ceilingz.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
4c80a19458
- removed unused __interpolatedvec3 function.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
6816e32d23
- call float 'interpolated' functions for setting tsprite's pos.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
7745701d4b
- floatified opos.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
5df4caa82f
- renamed interpolate functions as preparation for floatifying opos.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
403e1ad3b3
- Blood: floatified baseFloor and baseCeil.
2022-10-02 20:46:56 +02:00
Christoph Oelckers
41ba829665
- fixed compile
2022-10-02 20:45:53 +02:00
Christoph Oelckers
c1d603e1e9
- backend update from GZDoom.
2022-10-02 20:33:18 +02:00
Christoph Oelckers
5a27390eaf
- Blood: don't crash when trying to render from outside a sector.
2022-10-02 09:52:13 +02:00
Christoph Oelckers
631bea6a98
- v3df_follow cannot be disabled.
...
This caused the sound field to deteriorate. Fortunately the flag was already ignored for player sounds so hopefully it's ok like this.
2022-10-01 16:09:53 +02:00
Christoph Oelckers
f1bdee015d
- SW: fixed Bouncing Betty not spawning on Twin Dragon's $outpost.map
2022-10-01 15:57:40 +02:00
Christoph Oelckers
de81bb18c8
- Exhumed: fixed vertical aiming for hitscan weapons.
...
This code originally did some inept parameter merging which got broken in an earlier refactoring.
2022-10-01 14:35:20 +02:00
Christoph Oelckers
1482052c8a
- fixed: chickens in RRRA did not autoaim in hitscan-only mode.
...
since these are homing missiles they always need to acquire a target, regardless of autoaim mode.
2022-10-01 14:34:55 +02:00
Christoph Oelckers
f307e22f4b
- fixed SW's flash bomb.
2022-10-01 14:33:56 +02:00
Christoph Oelckers
9627f00f32
- Duke: added emulation for a sound system bug that prevents certain duplicate sounds from playing.
...
Since our sound system does not reject this case, the calling code must check for the relevant condition.
2022-10-01 12:59:43 +02:00
Christoph Oelckers
d1b4bef98d
- don't draw invalid shadow sprites.
2022-10-01 10:01:56 +02:00
Christoph Oelckers
e2a1190e32
- SW: disabled 'dontpan' and force 'follow' sound flag.
...
While these may theoretically be useful, their use in SW is so poor that we are better off playing everything except ambients as a positioned world sound.
2022-10-01 09:39:49 +02:00
Christoph Oelckers
64a96e1b94
- fixed: RR: save the current track for the "8-track player"
...
This way a saved game can properly resume the loop.
2022-10-01 09:16:47 +02:00
Christoph Oelckers
57228f12a3
- fixed: sv_cheats was set to true, essentially rendering the cheat blocker for high skill levels in Duke and RR ineffective.
2022-10-01 09:10:13 +02:00
Christoph Oelckers
fdb13ffdfd
- first simple batch of wrapper removal.
2022-08-27 10:50:11 +02:00
Christoph Oelckers
a59a771209
- use floats for ceilingz/floorz storage.
2022-08-27 10:49:59 +02:00
Christoph Oelckers
367a998b40
- removed the scripting wrappers for floorz and ceilingz.
...
These won't be needed anymore with floating point values
2022-08-27 10:16:57 +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
47a594a96c
- renamed setPosFromLoad to setPosFromMap.
2022-08-27 10:03:31 +02:00
Christoph Oelckers
109684c029
- renamed a few things to make searching easier.
2022-08-27 10:03:10 +02:00
Christoph Oelckers
8325e7369f
- removed floorzptr and ceilingzptr.
...
These were obstacles for further changes.
2022-08-27 10:01:01 +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
02ae6476de
- changed the pos vector of spritetype to floating point.
2022-08-27 09:26:13 +02:00
Christoph Oelckers
825d94f5a5
- SW: rewrote sound code to avoid using a position pointer-
2022-08-27 09:22:42 +02:00
Christoph Oelckers
9407fa549d
- SW: made ANIM value type independent.
2022-08-27 08:49:38 +02:00
Christoph Oelckers
fa53fcd085
- undid the fix that allocated one byte too many for loading a complete file into an FString.
...
Without this padding byte the voxel loader does not work.
2022-08-27 00:02:57 +02:00
Christoph Oelckers
2e63453cd0
- added missing range check to secret hack for WT.
2022-08-26 21:46:16 +02:00
Christoph Oelckers
b1cbecf268
- Duke/RR: do not spawn sprites with invalid picnums.
...
RRRA E1L7 has a respawner that will spawn an invalid sprite crashing the game.
2022-08-26 20:05:28 +02:00
Christoph Oelckers
07656251d9
- fixes bad assignments in the property parser.
...
They were added to the wrong flag word.
2022-08-26 19:53:11 +02:00
Christoph Oelckers
c15aeec9f7
- late __int_pos additions
2022-08-26 19:53:11 +02:00
Christoph Oelckers
4c6976baca
- looks I missed one last place...
2022-08-26 19:53:10 +02:00
Christoph Oelckers
1231f6025d
- handle the last remaining uses of __int_pos that can be done with the function interface.
2022-08-26 19:53:10 +02:00
Christoph Oelckers
8ccaa0ab8c
- more tsprite position stuff
2022-08-26 19:53:10 +02:00
Christoph Oelckers
810e722e5e
- tspritetype::pos access wrappers, part 2.
2022-08-26 19:53:10 +02:00
Christoph Oelckers
170387ab26
- tspritetype::pos access wrappers, part 1.
2022-08-26 19:53:10 +02:00
Christoph Oelckers
dc94dedc6b
- renaming spritetype::pos
2022-08-26 19:53:10 +02:00
Christoph Oelckers
ad9931081e
-fix some bugs, handle occurences in recently changed code
2022-08-26 19:53:10 +02:00
Christoph Oelckers
99188b52e9
- eliminated sprite pointers in clip.cpp.
2022-08-26 19:53:10 +02:00
Christoph Oelckers
3420032f02
- replace most spr.pos in the global code.
2022-08-26 19:53:09 +02:00
Christoph Oelckers
e732e2f947
- SW: replaced spr.pos globally (except two functions)
...
# Conflicts:
# source/games/sw/src/_polymost.cpp
2022-08-26 19:53:09 +02:00
Christoph Oelckers
d35b131dd5
- SW: handle pos in _PlaySound
2022-08-26 19:53:09 +02:00
Christoph Oelckers
b74355fcee
- SW: almost the last wraps.
2022-08-26 19:53:09 +02:00
Christoph Oelckers
b49aed6620
- SW: more spr.pos write wraps.
2022-08-26 19:53:09 +02:00
Christoph Oelckers
6a5384f39e
- SW: eighth batch of spr.pos wraps.
2022-08-26 19:53:09 +02:00
Christoph Oelckers
1101a8c9e8
- SW: seventh batch of spr.pos wraps.
2022-08-26 19:53:09 +02:00
Christoph Oelckers
9ace89ad53
- SW: sixth batch of spr.pos wraps.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
2d91ea29ce
- SW: fifth batch of spr.pos wraps.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
212b9e8bab
- SW: fourth batch of spr.pos wraps.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
53ce186e7b
- SW: third batch of spr.pos wraps.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
8ca4d85069
- SW: second batch of spr.pos wraps.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
871f0c4ec6
- SW: first batch of spr.pos wraps.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
43bd8acb31
- Exhumed: renamed all spr.pos.
2022-08-26 19:53:08 +02:00
Christoph Oelckers
78720f93b2
- Exhumed: refactored all write accesses to spr.pos
2022-08-26 19:53:07 +02:00
Christoph Oelckers
2e0c62a2c7
- Exhumed: fourth batch of refactoring writes to spr.pos.
2022-08-26 19:53:07 +02:00
Christoph Oelckers
255e12872c
- Exhumed: third batch of refactoring writes to spr.pos.
2022-08-26 19:53:07 +02:00
Christoph Oelckers
24101f8e92
- Exhumed: second batch of refactoring writes to spr.pos.
2022-08-26 19:53:07 +02:00
Christoph Oelckers
4131451a1a
- Exhumed: first batch of refactoring writes to spr.pos.
2022-08-26 19:53:07 +02:00
Christoph Oelckers
75ab0cf018
- handle a few leftovers in Blood.
2022-08-26 19:53:07 +02:00
Christoph Oelckers
204d6018f4
- Duke: renamed all spr.pos
...
This was pure search&replace with no other code edits.
2022-08-26 19:53:07 +02:00
Christoph Oelckers
f629ec1916
- Duke: full pos assignments
2022-08-26 19:53:06 +02:00
Christoph Oelckers
b9568aa372
- missed this in Blood
2022-08-26 19:53:06 +02:00
Christoph Oelckers
0ad571b72d
- Duke: wrapped remaining write access to spr.pos
2022-08-26 19:53:06 +02:00
Christoph Oelckers
f4ed59ccb7
- Duke: ninth batch.
2022-08-26 19:53:06 +02:00
Christoph Oelckers
9bf94cbc1c
- Duke: eighth batch
2022-08-26 19:53:06 +02:00
Christoph Oelckers
f97bae8d23
- Duke: refactored sound API to receive its position by reference.
2022-08-26 19:53:06 +02:00
Christoph Oelckers
b4e18e8255
- Duke: seventh batch of refactoring writes to spr.pos.
2022-08-26 19:53:06 +02:00
Christoph Oelckers
99b9b01d6a
- Duke: sixth batch of refactoring writes to spr.pos.
2022-08-26 19:53:05 +02:00
Christoph Oelckers
5c31568184
- Duke: fifth batch of refactoring writes to spr.pos.
2022-08-26 19:53:05 +02:00
Christoph Oelckers
82095b435f
- Duke: fourth batch of refactoring writes to spr.pos.
2022-08-26 19:53:05 +02:00
Christoph Oelckers
236b1cf4e0
- Duke: third batch of refactoring writes to spr.pos.
2022-08-26 19:53:05 +02:00
Christoph Oelckers
6d21552d6c
- Duke: second batch of refactoring writes to spr.pos.
2022-08-26 19:53:05 +02:00
Christoph Oelckers
378d126114
- Duke: first batch of refactoring writes to spr.pos.
2022-08-26 19:53:05 +02:00
Christoph Oelckers
58f573e578
- Blood: replaced the remaining spr.pos with int_pos() in nnexts
2022-08-26 19:53:05 +02:00
Christoph Oelckers
0c0a33da8e
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:05 +02:00
Christoph Oelckers
f291a943a4
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:04 +02:00
Christoph Oelckers
0f8bf5f743
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:04 +02:00
Christoph Oelckers
5296051fef
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:04 +02:00
Christoph Oelckers
6fe27b4fe5
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:04 +02:00
Christoph Oelckers
4a3e9f6df1
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:04 +02:00
Christoph Oelckers
458fc219ed
- Blood: replaced the remaining spr.pos with int_pos()
2022-08-26 19:53:04 +02:00
Christoph Oelckers
2642018bac
- 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
04c9422db8
- Blood: don't pass an actor's position directly to ClipMove
2022-08-26 19:53:03 +02:00
Christoph Oelckers
4f391e46ce
- added GetSoundPos variant taking a reference instead of pointer.
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
32dd061ab1
- Blood: wrapped write accesses to spr.pos in nnexts.cpp
2022-08-26 19:53:03 +02:00
Christoph Oelckers
70d5ba6abe
- Blood: first part of wrapping spr.pos write access.
2022-08-26 19:53:03 +02:00
Christoph Oelckers
29d0f86726
- utilities for wrapping actor coordinates.
2022-08-26 19:53:03 +02:00
Christoph Oelckers
111dbd7a7d
- backend update from GZDoom.
...
mainly TAngle overhaul and needed code adjustments.
2022-08-26 18:28:22 +02:00
Christoph Oelckers
ca1171187f
- hack to fix bad door definition in RR E2L7.
2022-08-25 21:45:03 +02:00
Mitchell Richters
03fd5c2ebe
- Repair frame timer in tileAnimateOfs()
following consolidation in 4f2170655c
.
...
* All games that aren't Blood depend on Build's original 120Hz timer for this, not the playsim's clock.
2022-08-25 21:44:14 +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
97b7f4b46a
- Exhumed: exported a handful of missed messages to the string table
2022-08-17 20:39:00 +02:00
Christoph Oelckers
4aee3bef47
- Exhumed: fixed coordinate bug with queen
...
# Conflicts:
# source/games/exhumed/src/queen.cpp
2022-08-17 20:38:55 +02:00
Christoph Oelckers
77bc5999ce
- Backend update from GZDoom.
...
* ZScript compiler fixes for type promotion
* FileSystem.FindLumpFullName
* Statusbar text scaling fixes.
* removed scalar addition operators from vectors.
2022-08-17 20:38:46 +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
Christoph Oelckers
864c0b71e0
-removed some xs_float casts that are not really necessary.
2022-08-07 10:54:52 +02:00
Christoph Oelckers
8aa96777b0
- allow FModel::FindFrame to not pick a default.
2022-08-07 10:42:07 +02:00
Christoph Oelckers
4d423004e9
- unlimited the displayable sprites.
...
Now with Polymost gone this can finally be done properly.
2022-08-07 10:25:15 +02:00
Christoph Oelckers
3ca9052b7a
- deleted updateanimation function for models.
...
It is currently unused and will certainly have to redone once model support is added for the new renderer.
Since this tries to guess game state from purely engine-side data it has its share of major problems, most importantly it is not compatible with games other than Duke.
2022-08-07 08:58:59 +02:00
Christoph Oelckers
4260d334e2
- do not overwrite a textures sky cap color.
2022-08-06 09:26:08 +02:00
Christoph Oelckers
10b9d41d57
-forgot to save this...
2022-08-06 09:15:47 +02:00
Christoph Oelckers
fddb4d2330
- fixed bad sector validation in DoUpdateSector.
2022-08-06 09:12:00 +02:00
Christoph Oelckers
738c133d05
- animation precaching cleanup.
...
No need to handle animations on the,game side. markTileForPrecache already handles this - now also for oscillating animations.
2022-08-05 23:48:43 +02:00
Christoph Oelckers
4f2170655c
- animateoffs cleanup and consolidation
...
This was rewritten based on specs alone - it still doesn’t look that different due to its simplicity.
2022-08-05 23:32:16 +02:00
Christoph Oelckers
83c0ad55f2
- rewrote nextsectorneighborzptr with a better parameter interface
2022-08-05 18:43:48 +02:00
Christoph Oelckers
ec66f39535
- replaced a few naked chars with better types.
2022-08-05 17:04:46 +02:00
Christoph Oelckers
48b6ce2f4d
- replaced spriteheightofsptr with a method in DCoreActor.
2022-08-05 17:04:46 +02:00
Christoph Oelckers
6b318c89b6
- removed unused engine_priv.h
2022-08-05 17:04:46 +02:00
Christoph Oelckers
dcb4e1e39b
- updatesector* cleanup.
...
got rid of all remaining Build code in here, stripped down the wrapper interface and moved everything into a separate header file.
2022-08-05 17:04:46 +02:00
Christoph Oelckers
e1eb54ecda
- replaced sectordist with a floating point variant with better precision.
2022-08-05 17:04:46 +02:00
Christoph Oelckers
b31e6c0bdf
- replaced getclosestpointonwall_internal with a floating point version based on NearestPointLine.
2022-08-05 17:04:46 +02:00
Christoph Oelckers
c2fc7577db
- cleanup of 3D viewport code.
...
Removes all the hackery that Polymost needed and now uses a sane struct to store the info.
2022-08-05 17:04:45 +02:00
Christoph Oelckers
4ec748a92b
- removed some unused variables and declarations.
2022-08-05 17:04:45 +02:00
Christoph Oelckers
c5ec2af020
- Exhumed: fix position init in BuildfRat
...
This is only the cheat case, which is why this wasn’t detected earlier.
2022-08-05 09:41:25 +02:00
Christoph Oelckers
7e36e57639
- fix dangerous pointer arithmetic in ParseCommandLine
...
Should be rewritten entirely to sanitize, though.
2022-08-05 09:40:37 +02:00
Christoph Oelckers
8d423fdc6f
- toned down the fov change a bit.
...
With real projection math it was a bit extreme.
2022-08-03 19:59:46 +02:00
Christoph Oelckers
e6ca0f4817
- made fov change for RRRA's drug mode work.
2022-08-03 19:41:30 +02:00
Christoph Oelckers
b60181eed5
- variable cleanup.
2022-08-03 15:58:18 +02:00
Christoph Oelckers
291726cc55
- removed the Polymost renderer.
2022-08-03 15:50:27 +02:00
Christoph Oelckers
7debab7ff4
- refined wall sprite check so that orthogonally aligned sprites are only aligned to orthogonal walls.
...
Here even the slightest deviation can create problems.
2022-08-03 14:13:42 +02:00
Christoph Oelckers
89e8d7ad58
- removed all remnants of the softpoly renderer which was never used in Raze.
2022-08-03 13:27:48 +02:00
Christoph Oelckers
1df66f4971
- clear all collision flags from generic controller sprites
...
Taken from EDuke32 - there seem to be a few maps which need this.
Also consolidate a bit of setup code between Duke and RR.
2022-07-26 00:13:11 +02:00
Mitchell Richters
8fb4549998
- Replicate GZDoom fix on POSIX systems to ensure GameConfig
global is initialised before trying to load the ENGINERES
file.
...
* Same fix as 0f0b4b7620
.
2022-07-24 20:11:00 +10:00
Rachael Alexanderson
00efeaa02a
- transition commit change from gzdoom 27d4fc28db
2022-07-23 19:13:49 -04:00
Christoph Oelckers
6591b3b090
- Backend update from GZDoom.
...
Mainly new features for 2D drawer and model renderer.
2022-07-23 12:05:27 +02:00
Mitchell Richters
79022e8afa
- Clean up and simplify getincangle()
/getincanglebam()
functions and inline them.
2022-07-23 12:57:45 +10:00
Mitchell Richters
5dce9c8ff2
- Simplify tosigned()
method inside of binangle
class.
2022-07-23 12:43:54 +10:00
Christoph Oelckers
abb7f87de3
- Backend update from GZDoom.
2022-07-23 12:10:08 +10:00
Mitchell Richters
b9ee6c327d
- Change internals of bsinf()
and bcosf()
to use BAM sine functions instead of coverting build angle into radians, then into BAM.
2022-07-23 10:37:33 +10:00
Mitchell Richters
4324f923bc
- Call updateTurnHeldAmt()
after doing the turn, not before it. This gives one tic more preamble.
2022-07-23 10:37:32 +10:00
Mitchell Richters
e016f65321
- Don't adjust joystick pitch/yaw speeds based on whether autorun is enabled or not.
...
* Only SW did this out of the box.
* Duke never did, NBlood has no working joystick setup to compare with, and GZDoom doesn't either.
* Fixes #693 .
2022-07-23 10:37:32 +10:00
Mitchell Richters
a423b93ad8
- Use turnscale
in controller pitch calculations, which is only used in SW when on a sector object, and is original behaviour.
2022-07-23 10:37:32 +10:00
Mitchell Richters
00e12ea031
- Remove some uses of xs_Float.h
functions in game-side code where overflow protection isn't needed.
...
* Went a little bit nuts and just used this everywhere back way back when.
2022-07-23 10:37:32 +10:00
Mitchell Richters
78fcf2b4f0
- Move invertmouse
and invertmousex
CVARs from gameinput.cpp
to inputstate.cpp
.
...
* Old setup was inverting the entire player's horz/avel, even for joystick input while not inverting `mousemovex` or `mousemovey` at all.
2022-07-23 10:37:32 +10:00
Mitchell Richters
c68e112867
- Remove some unnecessary branching and abs()
calls in processMovement()
.
...
* Since fvel/svel is clamped at the end of the function, these tests just aren't necessary.
* Reversed the logic in some if statements so the most likely outcome doesn't fall to the else branch.
2022-07-23 10:37:32 +10:00
Mitchell Richters
ea17352aea
- Do some small tidying up in gameinput.cpp
and change how some constants are stored.
2022-07-23 10:37:32 +10:00
Mitchell Richters
1906491129
- Move some PlayerHorizon
/PlayerAngle
class methods out into inlines in gameinput.cpp
.
...
* These class methods did nothing with the objects inside the class, they worked generically so they're better as inlines.
* Also tidied up some of the internals so they're easier to read.
2022-07-23 10:37:32 +10:00
Dale Whinham
7856d30957
Improve KDE/kdialog detection
...
If KDE is running but kdialog is not present on the system (e.g. as is
the case on SteamOS), allow falling back on the GTK dialogs instead.
2022-07-23 10:36:15 +10:00
Christoph Oelckers
6c915d7940
- Blood may not abort on a bogus start position.
...
There seem to be ways to override it elsewhere.
The initial position gets used by some code, so it still needs to be validated, though.
2022-07-12 09:52:30 +02:00
Dale Whinham
ed4e23f1ec
Fix crash when exiting with no game data
...
When shutting down with no game data, GameConfig is saved and the
pointer is nulled. If a joystick was present, a null dereference occurs
when the engine tries to save the joystick config later in the shutdown
sequence.
Add a check to avoid a crash in this scenario.
2022-07-10 22:30:18 +02:00
Christoph Oelckers
390cd2ca98
- fixed rendering of non-orthogonal wall sprites.
...
These cannot be done in a simple two-pass approach, for wall sprites attached to walls it requires doing the two passes per wall to ensure proper depth buffer coverage.
2022-07-04 09:11:24 +02:00
Christoph Oelckers
2c3fcbaf51
- glslang compiler and Vulkan backend update.
2022-07-02 10:20:11 +02:00
Christoph Oelckers
3ec8a96ddf
- partial backend update from GZDoom.
2022-07-02 09:30:37 +02:00
Christoph Oelckers
486da6922d
- fixed automap angle in unrotated mode.
2022-06-28 22:33:53 +02:00
Christoph Oelckers
9e6fe2cbaa
- added workaround to render the crane in WT's 'Docks' map correctly.
...
This one violates engine specifications by creating overlapping walls when the crane is rotated.
2022-06-26 09:36:01 +02:00
Christoph Oelckers
eb8fae761e
- backend update from GZDoom.
2022-06-26 09:35:21 +02:00
Christoph Oelckers
f8aacb3825
- fixed crash in Last Warrior map 9.
...
Really, asserts should not be used to test for errors that can actually happen!
2022-06-06 20:56:50 +02:00
Christoph Oelckers
998def2487
- another backend update from GZDoom.
2022-06-06 15:28:41 +02:00
Christoph Oelckers
f599040212
- GCC needs this commented out but really shouldn't.
2022-06-06 13:08:23 +02:00
Christoph Oelckers
d2eaaf7ac1
- for Raze hud_aspectscale needs to default to true
2022-06-06 12:42:45 +02:00
Christoph Oelckers
e5c7c4f680
- don't use longs.
2022-06-06 12:05:50 +02:00
Christoph Oelckers
84173ee09b
- backend update from GZDoom.
...
The main bulk of this is the new start screen code. To make this work in Raze some more work on the startup procedure is needed.
What this does provide is support for the DOS end-of-game text screens in Duke and SW on non-Windows systems.
2022-06-06 11:45:34 +02:00
Mitchell Richters
47aa110441
- Remove the ability to set a custom ticrate in calls to I_GetInputFrac()
. There's no real world need for this.
2022-06-06 18:41:48 +10:00
Mitchell Richters
20dde9fabc
- Force synchronised input when cl_capfps
is true.
2022-06-06 18:41:48 +10: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
0359d49df2
- Move repeated input code algorithm into an inline function.
2022-06-06 18:40:17 +10:00
Christoph Oelckers
e86899ed31
- fixed sky panning.
...
This picked the wrong overload - to make things robust one of the functions was renamed.
2022-06-06 10:12:26 +02:00
Mitchell Richters
c3981e06cb
- Duke: Remove one save interpolated weapon value that got away from me in 3948ec7a35
.
2022-06-06 11:31:42 +10:00
Mitchell Richters
a29bce9eda
- Duke: Interpolate loogcnt
when drawing onscreen.
2022-06-06 11:24:47 +10:00
Mitchell Richters
3948ec7a35
- Duke: Remove recently added interpolated weapon values from save code and add to player_struct::backupweapon()
instead.
2022-06-06 11:05:11 +10:00
Mitchell Richters
ee6abac699
- Duke: Apply same fistsign
fix from 4ee64df844
to RR code.
2022-06-06 11:04:59 +10:00
Mitchell Richters
b0f517736c
- Duke: Fix fistsign
smoothness.
2022-06-06 10:51:57 +10:00
Mitchell Richters
600776da2e
- Duke: Change a few return types from int to bool in HUD code.
2022-06-06 09:57:51 +10:00
Mitchell Richters
f4b78dc3c7
- Duke: Interpolate access_incs
when drawing onscreen (security card usage).
2022-06-06 09:47:30 +10:00
Mitchell Richters
3b2ef4d18b
- Duke: Interpolate tipincs
when drawing onscreen (tipping the dancers).
2022-06-06 09:40:47 +10:00
Mitchell Richters
d6549d6335
- Duke: Interpolate knee_incs
when drawing onscreen (stomping on shrunken enemies).
2022-06-06 09:19:55 +10:00
Mitchell Richters
ab95a8b890
- Duke: Interpolate fist_incs
when drawing onscreen (hitting the nuke detonator at the end of each level).
2022-06-05 21:00:44 +02:00
Richard Gobeille
55408e6e3c
- Duke3d: smooth movement of recons.
2022-06-05 21:00:36 +02:00
Richard Gobeille
1389413ca1
Duke3d: make actors set to move vertically in CON act as if SFLAG_SMOOTHMOVE was explicitly enabled
...
This smooths out stuff like octabrains and flying liztroops without making them look stupid when they move on the ground.
2022-06-05 22:40:06 +10:00
Mitchell Richters
dcf1c540e6
- Another amendment to 18541d1ab4
and 1ac58dc41c
to ensure input lock is only set when we're running unsynchronised input.
2022-06-05 21:31:02 +10:00
Christoph Oelckers
bc5c742930
- Duke: fixed some crashes with bad map setups
2022-06-05 09:40:10 +02:00
Christoph Oelckers
0a020e9cc1
- ported secret hack for WT's map 11 from SW Redux.
...
This is hideously awful and definitely needs a better approach. For now it'll do...
2022-06-01 12:22:59 +02:00
Christoph Oelckers
f245a70883
- removed redundant setting of black shadow color with incorrect data check.
...
SetLightAndFog already does this, but with correct checks.
2022-05-30 23:05:37 +02:00
Mitchell Richters
990c8287fc
- Amendment to 18541d1ab4
and 1ac58dc41c
to reset inputdisabled
once target is reached.
2022-05-30 22:13:42 +10:00
Mitchell Richters
612dd049f9
- Remove unused PlayerPosition
structure.
...
* There were some plans around this being in use for all the various player structs in each game, but it hasn't come to be.
* Code remains in the commit history, it can come back if it's of use in the future.
2022-05-30 21:33:14 +10:00
Mitchell Richters
1ac58dc41c
- Add bool lock
to PlayerAngle::settarget()
when setting target from the ticker without having to call setters and resetters.
2022-05-30 21:24:02 +10:00
Mitchell Richters
18541d1ab4
- Add bool lock
to PlayerHorizon::settarget()
when setting target from the ticker without having to call setters and resetters.
2022-05-30 21:22:24 +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
0416834d9d
- Simplify PlayerHorizon::settarget()
by adding a dedicated angle setter that resets interpolated value as well.
2022-05-30 21:21:52 +10:00
Mitchell Richters
70d2a8dc78
- Remove a seldom-used getTicrateScale()
overload.
2022-05-30 21:06:32 +10:00
Mitchell Richters
de88d4dc8b
- SW: Remove some unnecessary ternaries in some inline bools and fix a few return types.
2022-05-30 20:51:53 +10:00
Mitchell Richters
3d8bc3294f
- Slight cleanup to I_GetInputFrac()
.
2022-05-30 20:46:09 +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
Jordon Moss
5c65a9bab4
Interpolate FIRELASER trails.
2022-05-30 20:21:40 +10:00
Christoph Oelckers
bd023b0b1c
- fixed wall sprite clipping
2022-05-30 00:19:32 +02:00
Christoph Oelckers
6b720f5f6c
- fixed: FSkyVertexBuffer::RenderBox did not reset the object color after finishing.
2022-05-29 23:58:52 +02:00
Christoph Oelckers
22d6e3f2f6
- SW: added interpolation for sine wave floors.
2022-05-29 23:20:09 +02:00
Christoph Oelckers
d7c15d7153
- SW: fixed shadow positioning.
2022-05-29 23:04:36 +02:00
Mitchell Richters
79465ffc42
- Duke: Add CON support for Duke Nukem 3D 1.1 Shareware.
...
Based on EDuke32's parsing of the same commands.
2022-05-29 10:34:33 +10:00
Mitchell Richters
889baeff14
- Duke: Fix CON parser to detect shareware scripts.
2022-05-29 09:56:56 +10:00
Christoph Oelckers
1a788c9ba2
- helpers for wall sprite rendering improvement
2022-05-27 13:55:38 +02:00
Christoph Oelckers
5aabde1712
- fixed parsing issues in secret hint system.
2022-05-24 20:41:44 +02:00
Christoph Oelckers
aab13addb7
-renamed spritetype’s owner field to ‚intowner‘
...
Mainly for easier searching.
Also remove the duplicate ‚detail‘ field.
2022-05-24 00:30:41 +02:00
Christoph Oelckers
4278f0113b
- function for checking wall sprites’ need for recalculation
...
Preparation for overhauling their rendering
2022-05-24 00:10:36 +02:00
Christoph Oelckers
af89c25151
- RR: clear jaildoors array on map start.
...
this was leaving stale data behind which could cause nasty crashes.
2022-05-22 09:28:12 +02:00
Christoph Oelckers
c82e80d152
- extended the read buffer for the 'secret' CCMD.
2022-05-14 21:48:08 +02:00
Christoph Oelckers
84bafe6d02
- manual merge of latest nnext update.
2022-05-11 08:31:58 +02:00
Christoph Oelckers
acb244653c
- several more Blood fixes copied from NBlood
2022-05-06 01:40:27 +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
5c9730766d
- dd self check for burning cultist fix
...
Fix issue with spawned kDudeBurningCultist dudes entering water
Copied from NBlood ae80eef10fdd42224c7b6e782f259ba23c1069e7
2022-05-06 01:21:48 +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
67339d18ae
- use symbolic constants
...
Should be given real names, actually ;)
2022-05-06 01:14:58 +02:00
Christoph Oelckers
b26917f848
- Reset thinkTime for kDudeModernCustomDude
...
copied from NBlood commit a32f6d5f47f06ea3e97b66bdb4dcfafd319961ac
2022-05-06 01:11:44 +02:00
Christoph Oelckers
1e356741f9
- Set inittype on actSpawnDude()
...
copied from NBlood commit 3fefdfa85bb86b5e8e951e886a6d13c769666215
2022-05-06 01:10:22 +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
dd1178df91
- Initialize viewbob members for playerResetPosture()
...
copied from NBlood commit 1d72f1deba850cf616e443647064fddfa192f543
2022-05-06 00:59:53 +02:00
Christoph Oelckers
84834b0095
-Fix kDudeModernCustomDude may not morphing during specific events
...
copied from NBlood commit 0fbf9a1b2efef997e9ab8ba16e0405acd8d860b0
2022-05-06 00:55:50 +02:00
Christoph Oelckers
98c985de73
- Renamed dword_138BB0 -> gCultTeslaFireChance
...
copied from NBlood commit c253f4af105b0c588d585f199cfc20021f4f6d4e
2022-05-06 00:50:18 +02:00
Christoph Oelckers
b452f53ff2
- stretch HUD flames in widescreen
2022-05-06 00:34:47 +02:00
Christoph Oelckers
c6f799dfff
- shadow positioning improvements from NBlood
2022-05-06 00:22:39 +02:00
Christoph Oelckers
80f9ade43a
- Blood: fix delirium being twice as fast
...
Copied from NBlood commit cc3c2f7f55bd9a865daee1e72442ef7af4f7d779
2022-05-06 00:05:44 +02:00
Christoph Oelckers
377b0fa8c8
- Exhumed: pin death arms to the right side of the screen
2022-05-06 00:03:54 +02:00
Christoph Oelckers
f6ae967c52
- fix bad asserts.
2022-04-29 08:40:00 +02:00