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
8f4c418a1b
- pos simplifications
2022-10-05 18:00:25 +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
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
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
abb8b87be1
- Eliminate last remaining binangle
inline utilities.
2022-10-05 00:36:28 +02:00
Mitchell Richters
c25493762b
- Eliminate bvectangbam()
.
2022-10-05 00:36:28 +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
dbc46e2a75
- Change out PlayerAngle::settarget()
's input from binangle
to DAngle
.
2022-10-05 00:36:27 +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
d3022947eb
- Replace use of binangle
in gi->processSprites()
with DAngle
object.
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
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
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
d55a84d7eb
- set_int_ang in Exhumed
2022-10-04 23:56:44 +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
3edbec4f55
- use copyXY method where possible.
2022-10-04 18:44:16 +02:00
Christoph Oelckers
6816e32d23
- call float 'interpolated' functions for setting tsprite's pos.
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
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
109684c029
- renamed a few things to make searching easier.
2022-08-27 10:03:10 +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
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
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
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
4f391e46ce
- added GetSoundPos variant taking a reference instead of pointer.
2022-08-26 19:53:03 +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
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
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
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
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
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
291726cc55
- removed the Polymost renderer.
2022-08-03 15:50:27 +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
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
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
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
377b0fa8c8
- Exhumed: pin death arms to the right side of the screen
2022-05-06 00:03:54 +02:00
Christoph Oelckers
3114059145
- fixed sprite indices for map spawned sprites.
2022-03-20 12:08:47 +01:00
Rachael Alexanderson
735740e453
- add level names to title bar (and by proxy, to RPC)
2022-03-18 05:06:58 -04:00
Christoph Oelckers
a1339f014c
- store indices in sectionsPerSector.
2022-02-20 23:11:04 +01:00
Mitchell Richters
009c03f430
- Exhumed: Properly fix interpolation issues when at the end of the level instead of trying to back up everything.
...
Revert "- Exhumed: Don't force the framerate to reduce to ticrate at end of each level, instead interpolate player's position to prevent draw errors."
This reverts commit 57d54a2105
.
Revert "- Exhumed: Extend 57d54a2105
to back up the player's `bobangle` variable as well at the map's end."
This reverts commit 520c03b4f1
.
Revert "- Exhumed: Extend 520c03b4f1
to back up the player's `totalvel` variable as well at the map's end."
This reverts commit 1446486871
.
2022-02-20 20:35:35 +11:00
Christoph Oelckers
892c361449
- avoid pointer arithmetic in feebtag.
2022-02-19 10:11:12 +01:00
Christoph Oelckers
71943abed0
- changed math utilities to floating point coordinate system.
2022-02-15 22:18:26 +01:00
Christoph Oelckers
f44736a5b6
-use an access function for reading wall positions so that we have a non-modifiable value wherever this is possible.
2022-02-15 22:18:23 +01:00
Christoph Oelckers
89ef81da55
- renamed walltype::pos as preparation for refactoring.
...
no functional changes here
2022-02-15 22:18:22 +01:00
Christoph Oelckers
12b25df582
- Exhumed: handle unterminated strings in LoadSound without reading beyond their end.
2022-01-29 13:29:59 +01:00
Christoph Oelckers
ca9936a601
- Exhumed: fix issues with uninitialized buffer data in seq_ReadSequence.
2022-01-29 12:25:48 +01:00
Christoph Oelckers
0e89bffabd
- Exhumed: fixed surace collisions of projectiles.
...
There was some commented out undefined behavior here, we need to properly define this case.
2022-01-25 00:57:59 +01:00
Christoph Oelckers
30adac6e7f
- Exhumed: removed erroneous target assignment in Anubis AI.
2022-01-25 00:25:52 +01:00
Christoph Oelckers
f194fb6c90
- added a name to tilenum function so that we can define picnums by name in scripted actors.
2022-01-24 00:24:47 +01:00
Christoph Oelckers
a23124a201
- Exhumed: fixed check for bad ending cutscene.
2022-01-22 23:11:34 +01:00
Mitchell Richters
1446486871
- Exhumed: Extend 520c03b4f1
to back up the player's totalvel
variable as well at the map's end.
2022-01-19 23:00:04 +11:00
Christoph Oelckers
3aff12cf4c
- sky management rework.
2022-01-16 12:12:43 +01:00
Mitchell Richters
520c03b4f1
- Exhumed: Extend 57d54a2105
to back up the player's bobangle
variable as well at the map's end.
2022-01-16 08:32:22 +11:00
Christoph Oelckers
40cee808a1
- Exhumed: use proper distance calculations when spawning weapon flashes.
...
The cheap distance approximation here tended to fail on longer walls.
2022-01-15 18:33:37 +01:00
Christoph Oelckers
b1d3e8ee54
- Exhumed: Avoid playing the same pickup sound while another copy of it is already active.
...
The pickup code here is not robust enough to play the sound only once per pickup.
2022-01-15 16:11:42 +01:00
Christoph Oelckers
e892de21ec
- preparations for unlimited tsprites.
...
Right now it is a no-op because Polymost cannot deal with this properly.
2022-01-11 00:12:32 +01:00
Christoph Oelckers
70087ebc12
- fixed: The new renderer still called the Polymost screen finish function.
...
This led to a second, redundant postprocessing step with incorrect matrix values.
It now calls screen->Update() directly without the unneeded stuff, but this required a bit of reordering in the game code to ensure that the renderer receives the weapon data to display.
2022-01-08 13:50:47 +01:00
Christoph Oelckers
a3162f6ccf
- renamed testnewrenderer CVAR.
2022-01-07 12:49:41 +01:00
Christoph Oelckers
2f66377511
- Exhumed: use the loop flag when starting music.
2022-01-04 12:42:45 +01:00
Christoph Oelckers
9c07f05f0f
- Exhumed: clear all pointers in the player struct when starting a level.
2022-01-04 12:42:45 +01:00
Christoph Oelckers
78f02fbd55
- avoid larger time jumps in Ramses text scroll.
2022-01-04 12:42:45 +01:00
Christoph Oelckers
8267f327e3
- Exhumed: hide all screen overlays when Ramses is talking.
2022-01-04 12:42:45 +01:00
Christoph Oelckers
894f9a6b0a
- Exhumed: fix Ramses text overlay display.
2022-01-04 12:42:44 +01:00
Mitchell Richters
57d54a2105
- Exhumed: Don't force the framerate to reduce to ticrate at end of each level, instead interpolate player's position to prevent draw errors.
2022-01-04 21:43:08 +11:00
Christoph Oelckers
a9b162b8e9
- moved the tsprite flags from cstat2 to clipdist which was already holding other ones.
...
cstat2 should only hold flags for game-side sprites.
2021-12-30 19:00:35 +01:00
Christoph Oelckers
552668418a
- moved opos and oang to DCoreActor.
2021-12-30 18:21:02 +01:00
Christoph Oelckers
7f62df517d
- moved all interpolate* methods from spritetypebase to DCoreActor.
...
The places where it was used on tsprites were redone to use the actor's base coordinate, which at the point of the operation would always be the same.
2021-12-30 17:32:31 +01:00
Christoph Oelckers
c10fb1278a
- moved the backup... methods to DCoreActor.
2021-12-30 17:10:08 +01:00
Christoph Oelckers
6c381d4392
- removed sector() method from low level sprite type.
2021-12-30 16:58:48 +01:00
Christoph Oelckers
5498699faf
- use DCoreActor::sector() wherever possible.
2021-12-30 16:51:56 +01:00
Christoph Oelckers
f0b7fe4add
- use setsector from DCoreActor.
...
Also did a bit of cleanup
2021-12-30 16:36:04 +01:00
Mitchell Richters
8f468607ff
- Exhumed: Replace Player
velocity and damage variables with vectors.
2021-12-31 00:19:33 +11:00
Christoph Oelckers
9158796284
- partial replacement of tspriteptr_t.
2021-12-30 11:48:10 +01:00
Mitchell Richters
9bbb54fe2e
- Replace every line that just contains spaces or tabs with an empty line feed in all files except 3rd party libraries.
2021-12-30 20:30:21 +11:00
Christoph Oelckers
3fcecedf32
- deleted ClearContent functions from actor classes.
...
this is a leftover from pre-DObject times and no longer needed.
2021-12-30 09:58:47 +01:00
Christoph Oelckers
bf9defc062
- SW: moved some Polymost hack stuff to its proper place.
2021-12-30 09:58:46 +01:00