Christoph Oelckers
6111b11359
- trivial replacements in SW.
2022-10-09 08:21:53 +02:00
Christoph Oelckers
91acf93c7d
- SW: fixed viewpoint interpolation
2022-10-09 08:21:53 +02:00
Christoph Oelckers
df9f444d88
- SW: fixed bad actor parameter in SpawnShell.
...
cherry pick on master
2022-10-09 08:18:38 +02:00
Christoph Oelckers
0e38d5e52b
- SW: fixed sound owner issues with non-follow sounds.
...
These sounds were given the wrong type now.
cherry pick on master.
2022-10-08 19:28:57 +02:00
Christoph Oelckers
aa0080039f
- refactored coordinate display to have a single unified printing function.
...
The games will now only return the data, this has also been added for Exhumed.
Printing will now be in actual map units, not build's internal mixed format.
2022-10-08 19:28:57 +02:00
Christoph Oelckers
b32c4444c4
- replaced all add_int_z calls with constants.
2022-10-08 19:28:57 +02:00
Christoph Oelckers
4a6f9f316a
- one assignment
2022-10-08 19:28:57 +02:00
Christoph Oelckers
5df5520754
- one more
2022-10-08 16:11:23 +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
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
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
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
64391c52f9
- large batch of set_int_pos, minus Exhumed
2022-10-05 17:33:01 +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
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
d3022947eb
- Replace use of binangle
in gi->processSprites()
with DAngle
object.
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
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
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
022f22cd10
-replaced tspritetype::set_int_x/y.
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
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
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
f307e22f4b
- fixed SW's flash bomb.
2022-10-01 14:33:56 +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
a59a771209
- use floats for ceilingz/floorz storage.
2022-08-27 10:49:59 +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
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
2e63453cd0
- added missing range check to secret hack for WT.
2022-08-26 21:46:16 +02:00
Christoph Oelckers
c15aeec9f7
- late __int_pos additions
2022-08-26 19:53:11 +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
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
4f391e46ce
- added GetSoundPos variant taking a reference instead of pointer.
2022-08-26 19:53:03 +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
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
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
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
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
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
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
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
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
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
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
84bafe6d02
- manual merge of latest nnext update.
2022-05-11 08:31:58 +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
680a87085a
- SW: remap LIGHT_Tics to the otherwise unused spritetype::detail.
...
We should not hijack a coordinate for this due to access rights for scripting and potential value ranme issues. Since this value is never loaded from a map this is safe.
2022-02-15 22:34:03 +01:00
Christoph Oelckers
536c7e0c7b
- SW: floatify slidor.cpp
2022-02-15 22:18:27 +01:00
Christoph Oelckers
b8ea49ee0e
- SW: bumped two hard limits because there's maps out there that exceed them.
2022-02-15 22:18:25 +01:00
Christoph Oelckers
6fbecf2348
- RR: cleaned up and floatified the mine cart code
2022-02-15 22:18:25 +01:00
Christoph Oelckers
13d01bc98b
- lower the value of MAXSO.
...
This was causing overflow issues and resulted in bad int <-> float conversions.
2022-02-15 22:18:25 +01:00
Christoph Oelckers
6e96b1ee81
- floatify SW's sector object rotation.
2022-02-15 22:18:25 +01:00
Christoph Oelckers
02d508baef
- renamed floatified wall coordinate to 'pos'.
2022-02-15 22:18:24 +01:00
Christoph Oelckers
cd55658786
- use floats for vertices.
2022-02-15 22:18:23 +01:00
Christoph Oelckers
a9cf6feb60
- SW: changed sector object interpolation to be independent of the interpolated values' types.
2022-02-15 22:18:23 +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