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
ce325e6453
- disabled assert in FAFhitscan.
...
There's maps out there which trigger this - so it should better be silenced, despite being a mapping error.
2022-01-30 08:13:35 +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
04a380ce14
- added script exports for DCoreActor's member variables.
2022-01-24 00:24:46 +01:00
Christoph Oelckers
bd22aeb0d9
- SW: use correct sky scale in Polymost.
2022-01-23 12:44:22 +01:00
Christoph Oelckers
3aff12cf4c
- sky management rework.
2022-01-16 12:12:43 +01:00
Christoph Oelckers
c5b382907d
- SW: fixed velocity issue in InitEnemyFireball.
...
The value of the first shot was retrieved too early.
2022-01-15 10:36:55 +01:00
Christoph Oelckers
ddcee4ecbf
- split up g_visibility into two variables.
...
This is preparation for experimenting with the weapon flashes that can be quite annoying with how they brighten distant parts of the level far more than nearby parts.
2022-01-11 00:12:32 +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
415dc5246d
- fixed sprting of non-translucent sprites.
2022-01-08 21:18:18 +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
e1d32bdbf5
- removed the error messages in GetOverlapSector(2).
...
These can actually be triggered in legitimate scenarios by hitscans so just returning 0 looks like the best way of handling it.
2022-01-05 09:23:30 +01:00
Christoph Oelckers
468aea78ef
- SW: fixed wrong actor being checked in ContinueHitscan.
2022-01-04 12:42:46 +01:00
Christoph Oelckers
9f83fd3575
- SW: added a double deletion guard to KillBreakSprite.
...
This code can easily run into the case where SpawnShrap kills the actor but then further operations are performed, including deleting it again.
2022-01-03 12:28:25 +01:00
Christoph Oelckers
e302c45a0b
Revert "- added two FAFcansee variants that take shorter parameter lists for clearer code."
...
This reverts commit 29da39dda0
.
Something in here was wrong, so back to the start with it.
The positive effect was too small anyway.
2022-01-02 17:35:12 +01:00
Christoph Oelckers
a6845f55e4
- comments
2022-01-02 15:59:24 +01:00
Christoph Oelckers
2ac83b733c
- SW: clear some pointers before killing actors in TerminateLevel.
...
KillActor is an in-game function which may produce undefined behavior if being run on a partially deinitialized level.
All actor pointers it may operate upon should be cleared before taking down the actors.cpp
2022-01-02 15:06:57 +01:00
Christoph Oelckers
8c9b810b16
Revert "- removed Interp_Sprite_Z."
...
Sadly, SW's sprite interpolation is too screwed up to do a better fix on short notice.
It's the same with interpolating sprites attached to SOP's, it is only needed because generally interpolating sprites in SW is problematic.
2022-01-01 19:50:30 +01:00
Christoph Oelckers
0bfb4abc1c
- undid some leftover placeholder code in FAFhitscan.
2022-01-01 18:39:59 +01:00
Christoph Oelckers
d215ae0c63
- fixed bad target check for Ripper2's jump attack
2022-01-01 18:25:18 +01:00
Christoph Oelckers
1294f10cd7
- SW: fixed negated FAFcansee call in explosion code.
2022-01-01 17:14:49 +01:00
Christoph Oelckers
27eae52228
- fixed incorrect argument in FAFcansee call.
2022-01-01 17:11:15 +01:00
Mitchell Richters
45057ff8a0
- SW: Fix all GCC warning: suggest parentheses around assignment used as truth value [-Wparentheses]
warnings.
...
Regex to match such conditions: `while (\([\w]+\s?=\s?.+\.Next\(\)\))`.
2022-01-01 20:49:31 +11:00
Mitchell Richters
0375dfdf83
- SW: Replace SECTOR_OBJECT
zmid
with pmid.Z
calls and eliminate pmid
union.
2022-01-01 09:34:30 +11:00
Mitchell Richters
9145895b47
- SW: Replace SECTOR_OBJECT
ymid
with pmid.Y
calls.
2022-01-01 09:33:30 +11:00
Mitchell Richters
5e2bbb12b5
- SW: Replace SECTOR_OBJECT
xmid
with pmid.X
calls.
2022-01-01 09:32:40 +11:00
Mitchell Richters
1c0ba71c69
- SW: Eliminated ANIMATORp
typedef.
2022-01-01 09:09:41 +11:00
Mitchell Richters
1d51903a9e
- SW: Eliminated Voc3D_Flags
typedef.
2022-01-01 08:36:56 +11:00
Christoph Oelckers
84ca96c52c
eliminated STATEp
2021-12-31 16:00:14 +01:00
Christoph Oelckers
d1be430fbf
- eliminated PLAYERp
2021-12-31 15:59:11 +01:00
Christoph Oelckers
69b5d502e2
- renamed PLAYERstruct.
2021-12-31 15:57:55 +01:00
Christoph Oelckers
392397c2b0
- replaced SECTOR_OBJECTp
2021-12-31 15:50:44 +01:00
Christoph Oelckers
74593feab1
- replaced PANEL_SPRITEp
2021-12-31 15:49:07 +01:00
Christoph Oelckers
699bf9c4f5
- anim typedef eliminated.
2021-12-31 15:47:10 +01:00
Christoph Oelckers
8fb769649b
- eliminated sectortype aliases.
2021-12-31 15:43:47 +01:00
Christoph Oelckers
98492aae54
- eliminated walltype aliases.
2021-12-31 15:41:39 +01:00
Christoph Oelckers
72962cc098
- the last batch of small scale typedefs eliminated.
2021-12-31 15:40:29 +01:00
Christoph Oelckers
87d2b3274b
- cleaned out most of the less frequent typedef types in SW.
2021-12-31 15:27:18 +01:00
Christoph Oelckers
10187e892f
- handle track typedefs.
2021-12-31 15:13:05 +01:00
Christoph Oelckers
f43f63adec
- all typedefs in jsector.h and inv.h plus a bit of cleanup and #define removal.
2021-12-31 15:10:37 +01:00
Christoph Oelckers
6b50344417
- eliminated PANEL_SPRITEp
2021-12-31 15:03:12 +01:00
Christoph Oelckers
994a575435
- panel.h cleanup.
2021-12-31 13:49:34 +01:00
Christoph Oelckers
12c63d2337
- eliminated a few more typedefs,
2021-12-31 13:37:57 +01:00
Christoph Oelckers
89ab00fe99
- eliminated typedefs in sound code.cc.obj
2021-12-31 13:31:13 +01:00
Christoph Oelckers
085eb8a36e
- eliminated SHRAP typedefs.
2021-12-31 13:26:07 +01:00
Christoph Oelckers
271af39a59
- consolidated MISSILE_PLACEMENT definitions.
2021-12-31 13:20:56 +01:00
Christoph Oelckers
90ad4b8ef1
- eliminated typedefs for DECISION and BREAK_INFO.
2021-12-31 13:16:38 +01:00
Christoph Oelckers
0cba0e19b5
- SW: fixed some pointer mixup in UpdatePlayerUnderSprite
2021-12-30 23:39:54 +01:00
Christoph Oelckers
552668418a
- moved opos and oang to DCoreActor.
2021-12-30 18:21:02 +01:00
Christoph Oelckers
2bb7cecf27
- eliminated spritetype::clear.
...
Most uses were bad anyway, and the legitimate ones are just clearing the object.
2021-12-30 17:55:17 +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
88e4bb9f79
- moved sectno method to DCoreActor.
2021-12-30 16:39:43 +01:00
Christoph Oelckers
f0b7fe4add
- use setsector from DCoreActor.
...
Also did a bit of cleanup
2021-12-30 16:36:04 +01:00
Christoph Oelckers
af6ca40e3d
- use DCoreActor::insector instead of spritetype::insector.
2021-12-30 16:24:51 +01:00
Mitchell Richters
dc50ad154e
- SW: Replace PANEL_SPRITEstruct
yorig
with bobpos.Y
calls.
2021-12-31 00:36:13 +11:00
Mitchell Richters
d8aab1ecea
- SW: Replace PANEL_SPRITEstruct
xorig
with bobpos.X
calls.
2021-12-31 00:34:46 +11:00
Mitchell Richters
36b549b7f1
- SW: Replace PANEL_SPRITEstruct
oy
with opos.Y
calls.
2021-12-31 00:34:03 +11:00
Mitchell Richters
81b74c2cdf
- SW: Replace PANEL_SPRITEstruct
ox
with opos.X
calls.
2021-12-31 00:32:55 +11:00
Mitchell Richters
145028bc16
- SW: Replace PANEL_SPRITEstruct
y
with pos.Y
calls.
2021-12-31 00:32:00 +11:00
Mitchell Richters
defdb23533
- SW: Replace PANEL_SPRITEstruct
x
with pos.X
calls.
2021-12-31 00:30:42 +11:00
Mitchell Richters
ab6b9fd083
- SW: Replace USER
zchange
with change.Z
calls.
2021-12-31 00:23:30 +11:00
Mitchell Richters
50cb85e389
- SW: Replace USER
ychange
with change.Y
calls.
2021-12-31 00:22:48 +11:00
Mitchell Richters
ad0ea3f2f1
- SW: Replace USER
xchange
with change.X
calls.
2021-12-31 00:22:42 +11:00
Mitchell Richters
424b9c5f34
- SW: Replace REMOTE_CONTROL
pos*
variables with a vector.
2021-12-31 00:19:34 +11:00
Mitchell Richters
287351e678
- SW: Replace REMOTE_CONTROL
*vect
variables with vectors.
2021-12-31 00:19:34 +11:00
Mitchell Richters
5d10b32301
- SW: Replace PLAYERstruct
oldpos*
variables with a vector.
2021-12-31 00:19:33 +11:00
Mitchell Richters
e4d19a0bbe
- SW: Replace PLAYERstruct
slide_yvect
with slide_vect.Y
calls.
2021-12-31 00:19:33 +11:00
Mitchell Richters
8c1c5f3d55
- SW: Replace PLAYERstruct
slide_xvect
with slide_vect.X
calls.
2021-12-31 00:19:33 +11:00
Mitchell Richters
8c99053ebd
- SW: Replace PLAYERstruct
oyvect
with ovect.Y
calls.
2021-12-31 00:19:33 +11:00
Mitchell Richters
75cc539c58
- SW: Replace PLAYERstruct
oxvect
with ovect.X
calls.
2021-12-31 00:19:33 +11:00
Mitchell Richters
5515830e2b
- SW: Replace PLAYERstruct
yvect
with vect.Y
calls.
2021-12-31 00:19:33 +11:00
Mitchell Richters
f2497d7d08
- SW: Replace PLAYERstruct
xvect
with vect.X
calls.
2021-12-31 00:19:33 +11:00
Mitchell Richters
03da70b3b9
- SW: Replace PLAYERstruct
si*
variables with a vector.
2021-12-31 00:19:33 +11:00
Mitchell Richters
6e130d026e
- SW: Replace PLAYERstruct
lv_*
variables with a vector.
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
13639a09b7
- SW: Remove unused PLAYERstruct
variable turn180_target
that was deprecated with 7bf1cacc7f
.
2021-12-30 20:46:36 +11:00
Mitchell Richters
cf68018909
- SW: Replace PLAYERstruct
RevolveY
with Revolve.Y
calls.
2021-12-30 20:41:27 +11:00
Mitchell Richters
acc11f34bf
- SW: Replace PLAYERstruct
RevolveX
with Revolve.X
calls.
2021-12-30 20:41:27 +11:00
Mitchell Richters
05de974080
- SW: Replace PLAYERstruct
ly
with LadderPosition.Y
calls.
2021-12-30 20:41:27 +11:00
Mitchell Richters
a18fc5b66f
- SW: Replace PLAYERstruct
lx
with LadderPosition.X
calls.
2021-12-30 20:41:26 +11:00
Mitchell Richters
9c1e54a148
- SW: Replace USER
sz
with pos.Z
calls.
2021-12-30 20:40:29 +11:00
Mitchell Richters
0d70d26625
- SW: Replace USER
sy
with pos.Y
calls.
2021-12-30 20:31:09 +11:00
Mitchell Richters
fcf18c8c63
- SW: Replace USER
sx
with pos.X
calls.
2021-12-30 20:31:09 +11:00
Mitchell Richters
620f0fa7b8
- SW: Use correct function name in GetOverlapSector2()
I_Error()
call.
2021-12-30 20:31:09 +11: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
Mitchell Richters
1b077251e3
- SW: Use BIT()
inline in a few places that were changed in "- SW: Replace the last few remaining TEST()
macro uses and remove from mytypes.h
."
...
Originally, `BIT()` was going to be dropped in a subsequent commit but we've elected not to.
2021-12-30 20:14:01 +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
Mitchell Richters
bf7437c827
- SW: Remove ON
pre-processor define and eliminate mytypes.h
.
2021-12-30 09:58:46 +01:00
Mitchell Richters
3cf9450bd8
- SW: Remove OFF
pre-processor define.
2021-12-30 09:58:45 +01:00
Mitchell Richters
ae49a55fce
- SW: Replace the last few remaining TEST()
macro uses and remove from mytypes.h
.
2021-12-30 09:58:45 +01:00
Mitchell Richters
1439d5f268
- SW: Replace TEST\(([\w\-\>.()\[\]]+),\s?([\w\_\|\s]+)\)
with ($1 & ($2))
.
2021-12-30 09:58:45 +01:00
Mitchell Richters
48b0058d38
- SW: Replace TEST\(([\w\-\>.()]+),\s?(\w+)\)
with ($1 & $2)
.
2021-12-30 09:58:45 +01:00
Mitchell Richters
5316e23737
- SW: Replace !TEST\(([\w\-\>.()\[\]]+),\s?([\w\_\|\s]+)\)
with !($1 & ($2))
2021-12-30 09:58:45 +01:00
Mitchell Richters
8df3966d08
- SW: Replace !TEST\(([\w\-\>.()\[\]]+),\s?(\w+)\)
with !($1 & $2)
.
2021-12-30 09:58:44 +01:00
Christoph Oelckers
c8b5fa6556
- SW: fixed signed-ness issue with SP_TAG13
2021-12-30 09:58:14 +01:00
Christoph Oelckers
fb53f32603
- handle the remaining write accesses to ceilingz and floorz.
...
Everything is routed through the wrapper functions now.
2021-12-30 09:58:14 +01:00
Christoph Oelckers
c24aafd3d6
- SW: game.h cleanup
...
Turned almost all #defines into enums or inline functions, removed unused declarations and all leftover MONO_PRINT fragments elsewhere.
2021-12-30 09:58:13 +01:00
Christoph Oelckers
96396385e7
- more TEST() replacements.
...
This covers roughly half of the original use.
2021-12-30 09:58:13 +01:00
Christoph Oelckers
61564ab96a
- one third of TEST().
2021-12-30 09:58:13 +01:00
Christoph Oelckers
7727597bd7
- removed FLIP macro
...
was only used 3 times
2021-12-30 09:58:12 +01:00
Christoph Oelckers
08fcfb382c
- the remaining RESET() calls.
2021-12-30 09:58:12 +01:00
Christoph Oelckers
e29d0f50cf
- lots of RESET() flags replaced.
2021-12-30 09:58:12 +01:00
Christoph Oelckers
1ae7565a2a
- SW macro cleanup.
2021-12-30 09:58:12 +01:00
Christoph Oelckers
d15c3aeff6
- got rid of the DIV2 macro.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
387d65abb4
- the remaining SET()s.
...
These had to be done manually.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
fe292fce0d
- yet more SET flag replacements
...
90% done.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
12ad85f6f8
- SW: turned flag #defines into enums.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
92ed3fa728
- replaced more SET() macros.
...
This covers another 30-35%.
2021-12-30 09:58:11 +01:00
Christoph Oelckers
dc3f2473ba
- quick search & replace on ~40% of SET( macros in SW.
2021-12-30 09:58:10 +01:00
Christoph Oelckers
745794a1f1
- where did that comma go?
2021-12-30 09:58:07 +01:00
Christoph Oelckers
34f14aa4c3
- added vector variants of FindDistance2D and FindDistance3D
2021-12-30 09:58:07 +01:00
Christoph Oelckers
29da39dda0
- added two FAFcansee variants that take shorter parameter lists for clearer code.
2021-12-30 09:58:06 +01:00
Christoph Oelckers
bf3f580d52
- deleted PLAYER::Actor()
...
Also made actor a regular pointer. Unlike the other ones this may not be prematurely nulled ever.
2021-12-30 09:58:06 +01:00
Christoph Oelckers
d340a7e80c
- u() and USERp are gone.
2021-12-30 09:58:05 +01:00
Christoph Oelckers
26f93ab724
- the final u()'s.
2021-12-30 09:58:05 +01:00
Christoph Oelckers
cf88bcbecb
- handle u-> in player.cpp
2021-12-30 09:58:05 +01:00
Christoph Oelckers
bfea02a192
- a few in player.cpp
2021-12-30 09:58:05 +01:00
Christoph Oelckers
cc161fe66a
- deleted u variables in track.cpp
2021-12-30 09:58:05 +01:00
Christoph Oelckers
c544046fb3
- renamed u-> in track.cpp
2021-12-30 09:58:05 +01:00
Christoph Oelckers
055982f0db
- smaller u in track.cpp
2021-12-30 09:58:04 +01:00
Christoph Oelckers
050d93a92c
- deleted unused pointers and handled u() in the script interface.
2021-12-30 09:58:04 +01:00
Christoph Oelckers
6df854d612
- replaced one sprite inline with its actor variant.
2021-12-30 09:58:04 +01:00
Christoph Oelckers
4e7724ece2
- deleted all leftover SPRITEp stuff.
2021-12-30 09:58:04 +01:00
Christoph Oelckers
f1c60e4a52
- fixed SpawnFireballFlames and deleted leftover sprite pointers.
2021-12-30 09:58:04 +01:00
Christoph Oelckers
2543a46278
- deleted all u variables from weapon.cpp
2021-12-30 09:58:03 +01:00
Christoph Oelckers
8739ef9182
- renamed all u-> in weapon.cpp
2021-12-30 09:58:03 +01:00
Christoph Oelckers
3e79c917f2
- the last u in weapon.cpp that are not actor->u()
2021-12-30 09:58:03 +01:00
Christoph Oelckers
b522356120
- stuff that was missed.
2021-12-30 09:58:03 +01:00
Christoph Oelckers
85b687ba13
- all eu, which are expActor.
2021-12-30 09:58:03 +01:00
Christoph Oelckers
e16caa0c62
- eu, that are not expActor
2021-12-30 09:58:03 +01:00
Christoph Oelckers
7147d3c89e
- several non-u users in weapon.cpp
2021-12-30 09:58:02 +01:00
Christoph Oelckers
9485816cf7
- deleted u variables from sprite.cpp.
2021-12-30 09:58:02 +01:00
Christoph Oelckers
b9a8647d73
- renamed u-> in sprite.cpp
2021-12-30 09:58:02 +01:00
Christoph Oelckers
02d8551330
- non "u = actor" Users in sprite.cpp
2021-12-30 09:58:02 +01:00
Christoph Oelckers
221f1dc69a
- handle u-> in slidor.cpp
2021-12-30 09:58:02 +01:00
Christoph Oelckers
9f27e05fef
- deleted u variables in sector.cpp
2021-12-30 09:58:02 +01:00
Christoph Oelckers
121ae62108
- renamed u-> in sector.cpp
2021-12-30 09:58:01 +01:00
Christoph Oelckers
65b9841666
- handle u-> in rotator.cpp
2021-12-30 09:58:01 +01:00
Christoph Oelckers
be1d53db56
- deleted u variables in vator.cpp
2021-12-30 09:58:01 +01:00
Christoph Oelckers
ab359844aa
- renamed u-> in vator.cpp
2021-12-30 09:58:01 +01:00
Christoph Oelckers
2ef7fc9bc2
- handle u-> in zilla.cpp and zombie.cpp
2021-12-30 09:58:01 +01:00
Christoph Oelckers
936febd505
- deleted u variables in player.cpp
2021-12-30 09:58:01 +01:00
Christoph Oelckers
3e21dd40a7
- renamed u-> in half of player.cpp
2021-12-30 09:58:00 +01:00
Christoph Oelckers
bc15bdf92c
- renaming stuff in player.cpp
2021-12-30 09:58:00 +01:00