Commit graph

978 commits

Author SHA1 Message Date
Christoph Oelckers
67e807de26 - exported the tile flag setters to .def. 2022-12-11 18:42:01 +01:00
Christoph Oelckers
52e5e2f59a - use a sepate file system filter for 'duke-like' games, i.e. Duke, NAM and WW2GI combined.
These 3 all require the same SNDINFO being loaded.
2022-12-11 18:41:52 +01:00
Christoph Oelckers
797c122363 fixed the sound controller's sound selection.
In this case the game-side resource ID was silently cast to a sound ID but it needs explicit conversion.
2022-12-11 18:41:52 +01:00
Christoph Oelckers
a825dfb8ca - Duke sound is working again. 2022-12-11 18:41:52 +01:00
Christoph Oelckers
f103e33300 - fixed code up to the point where everything compiles again. Duke sounds are currently non-functional.
All Duke script code has been changed to use strings as sound names now, just like GZDoom these will be looked up at compile time.
Original Duke sound indices still exist but are now being managed as resource IDs, not sound engine indices anymore.
2022-12-11 18:41:51 +01:00
Christoph Oelckers
1ac4aee0c1 - RR cactus stuff 2022-12-11 18:41:50 +01:00
Christoph Oelckers
c48dfc082f - scriptified RR's lumber blade. 2022-12-11 18:41:50 +01:00
Christoph Oelckers
76fabcd1c7 - chickenplant scriptified. 2022-12-11 18:41:50 +01:00
Mitchell Richters
0ab175b894 - Duke: Fix pos issues with crane's touchplate following position change to sprite. 2022-12-11 18:41:42 +01:00
Mitchell Richters
dd5834444e - Duke: Swap out the internals of the player's pos methods and get the game going again. 2022-12-11 18:41:41 +01:00
Mitchell Richters
abd6275f17 - Add new double DCoreActor::viewzoffset set in spawning code during level loads.
* Interpolated backup copy isn't needed for Duke, but will be for SW.
2022-12-11 18:41:41 +01:00
Mitchell Richters
4aa63b5446 - Duke: Rename player's pos to something identifiable. 2022-12-11 18:41:38 +01:00
Mitchell Richters
4bf8ea140c - Fix IWADBoxCallback() and MENUDEF setup for GLES backend. 2022-12-11 19:45:07 +11:00
Mitchell Richters
36c38dab9a - Make crosshairscale slider match GZDoom, including allowing it to slide down to 0 for unscaled. 2022-12-11 19:31:52 +11:00
Christoph Oelckers
f163c328d4 - text update. 2022-12-04 17:23:36 +01:00
Christoph Oelckers
1061e3e2ca - backend update from GZDoom. 2022-12-04 16:51:44 +01:00
Mitchell Richters
2c966e35ae - Add Kevin Caccamo (Talon1024) to Raze QA credits.
We really appreciate all your continued bug reports! 🤘
2022-11-30 18:11:10 +11:00
Rachael Alexanderson
e8b31d3c08 - complete transfer of vk_hdr fix from gzdoom (was missing the shader component) 2022-11-28 18:52:10 -05:00
Christoph Oelckers
aa3df50f9b - fixed locked activator setup.
This broke all locked doors.
2022-11-26 17:26:45 +01:00
Christoph Oelckers
adc2b884cd - Nam and WW2GI also need Duke's spawnclasses table. 2022-11-26 09:05:25 +01:00
Christoph Oelckers
4d6920e80b - fixed failiure to initialize the ambient tags array.
Also adding range checks to all places where it gets used. This is from CON code so proper values are never guaranteed.
2022-11-24 09:01:44 +01:00
Christoph Oelckers
13e19bad36 - fixed handling of bad class assignment to map picnums. 2022-11-24 08:12:18 +01:00
Mitchell Richters
a7ba843eb5 - Remove some leftover console debug prints. 2022-11-24 13:41:15 +11:00
Christoph Oelckers
6cb3e2f457 - Duke: fixed operator precedence in scrap spawning code. 2022-11-21 10:48:47 +01:00
Christoph Oelckers
8735e24d99 - don't print negative ammo numbers on the Duke HUD. 2022-11-21 10:01:44 +01:00
Christoph Oelckers
29c4c77e55 - fixed bad StopSound implementation. 2022-11-21 09:25:46 +01:00
Christoph Oelckers
a76d166966 - scriptified tongue actor.
This seems to be develpment garbage. No proper sprites exist for this.
2022-11-20 20:40:46 +01:00
Christoph Oelckers
b069904be1 - scriptified the remaining controller sprites. 2022-11-20 13:57:51 +01:00
Christoph Oelckers
cb005062cd - scriptified activators and locators. 2022-11-20 12:43:24 +01:00
Christoph Oelckers
9fa2fb75cf - scriptified the respawn controller.
This also handles one special RRRA controller which was just easier to scriptify right away than temporarily work around it.
2022-11-20 11:58:19 +01:00
Christoph Oelckers
d44b637f1b - fixed touchplate initialization
This was still using older code - the current native version was also not removed from the spawn function.
2022-11-20 08:51:09 +01:00
Christoph Oelckers
f515939fde - scriptified the sound controller. 2022-11-20 08:46:49 +01:00
Christoph Oelckers
714a2ef70e - scriptified canwithsomething, the last internal STAT_STANDABLE item. 2022-11-19 19:01:17 +01:00
Christoph Oelckers
dee33ba4dd - scriptified viewscreen and camera. 2022-11-19 17:35:04 +01:00
Christoph Oelckers
046ba1ae0c - scriptified touchplate 2022-11-19 15:40:35 +01:00
Christoph Oelckers
63a8c3148c - scriptified doorshock 2022-11-19 15:40:21 +01:00
Christoph Oelckers
15cd80cad3 - scriptified the waterdrip 2022-11-19 15:40:09 +01:00
Christoph Oelckers
11acb92553 - scriptified the bolts. 2022-11-19 12:54:50 +01:00
Christoph Oelckers
676ca73983 - scriptified the trash actor. 2022-11-19 12:54:15 +01:00
Christoph Oelckers
5ae7011e41 - converted the masterswitch. 2022-11-19 11:24:39 +01:00
Christoph Oelckers
b106fb693a - scriptified OozFilter + Seenine
Also fixing the default handling for onHit.
2022-11-17 21:46:24 +01:00
Christoph Oelckers
26ba1f601e - scriptified the fire extinguisher. 2022-11-17 20:19:22 +01:00
Christoph Oelckers
f9826241ef - scriptied the cracks. 2022-11-17 20:18:46 +01:00
Christoph Oelckers
8ce358fc24 - scriptified the trip bombs. 2022-11-17 18:38:25 +01:00
Christoph Oelckers
6b3e57fd2c - added 'foreach' loop to ZScript.
Syntax:

foreach(variable : array)
{
}

the variable's type is automatically deducted.
2022-11-15 21:29:04 +01:00
Christoph Oelckers
dc9451d584 - renamed global 'wall' and 'sector' arrays to 'walls' and 'sectors' for ZScript.
This avoids problems with name hiding.
2022-11-15 20:09:36 +01:00
Christoph Oelckers
bfae5ce1bc - use a TArrayView to store the wall references in a sector.
This is a lot more scripting friendly than hacking around the indices.
2022-11-15 14:53:39 +01:00
Christoph Oelckers
a2683559ce - refactored Duke's cactus. 2022-11-15 10:44:06 +01:00
Christoph Oelckers
ad7cf290d2 - restricted use of gs.firstdebris to the only place where it is really needed.
Also no script export for this, it is only needed for converting CON parameters to propr indices.
2022-11-15 08:28:05 +01:00
Christoph Oelckers
d253468b22 - scriptified the scraps.
A Duke-ish mess of epic proportions.
2022-11-15 00:06:21 +01:00
Christoph Oelckers
5fea500f92 - flammable actors scriptified. 2022-11-14 16:31:45 +01:00
Christoph Oelckers
190fd1827e - scriptified Dukes water fountain.
That's this thingy in the first corridor of E2L1.
2022-11-14 12:10:13 +01:00
Christoph Oelckers
306db376d9 - added script exports for 'spawn' and 'lotsofglass' and made the spawn variant using class names operational. 2022-11-14 10:30:59 +01:00
Christoph Oelckers
317968c45a - exported DukeGameInfo.
Only the parts that can be considered stable.
2022-11-14 10:25:17 +01:00
Christoph Oelckers
ced22bb0a8 - added onUse virtual to DukeActor. 2022-11-14 10:22:22 +01:00
Christoph Oelckers
f23ddc28f0 - Duke: scriptified the crane 2022-11-13 18:55:32 +01:00
Christoph Oelckers
660c546266 - actor interface fixes. 2022-11-13 18:51:23 +01:00
Christoph Oelckers
e3aa1da175 - CallOnanimate 2022-11-13 11:50:28 +01:00
Christoph Oelckers
ba016c7c3a - added CallOnHit and named spawn. 2022-11-13 10:30:52 +01:00
Christoph Oelckers
b06382a565 - this was supposed to be named 'sector'. 2022-11-13 10:15:40 +01:00
Mitchell Richters
5e6c899a2d - Comment out CoreActor::sectp for now so the games boot up. 2022-11-13 20:09:06 +11:00
Christoph Oelckers
48d1367a7e - added some VM exports for DukePlayer 2022-11-13 08:59:08 +01:00
Christoph Oelckers
53e43d6d1e - CoreActor setposition natives. 2022-11-13 08:59:07 +01:00
Christoph Oelckers
de51b65ead - reimplemented Duke's scripted actor iterators in a more lightweight fashion.
This now works without allocating garbage collected objects.
2022-11-13 08:59:07 +01:00
Christoph Oelckers
c32a695384 - DukeActor scriptification framework. 2022-11-13 08:55:20 +01:00
Christoph Oelckers
8806fb930b - Backend update from GZDoom
* Vector 4 in zscript
* garbage collector fixes
2022-11-12 10:45:39 +01:00
Christoph Oelckers
8f5923c324 - handle a visual glitch in Duke's E2L1 via compatibility.
There is already code to deal with this automatically, but this does not manage to fully eliminate the problem.
2022-11-07 11:51:40 +01:00
Mitchell Richters
9fbe564327 - Fix bad if statement guarding cl_clampedpitch in menu and make non-global. 2022-11-07 15:43:26 +11:00
Mitchell Richters
eb3f4c6e00 - Update language.csv. 2022-11-06 22:03:43 +11:00
Mitchell Richters
2357cc5c36 - Add option to (experimentally) unclamp the view pitch for the Duke family of games. 2022-11-06 22:03:42 +11:00
Christoph Oelckers
0e113dab79 - added true level compatibility map processing and deleted all related map hack code. 2022-10-31 10:45:47 +01:00
Christoph Oelckers
a6af6b88df - removed the MHK for Route66's coffin.map
This was actually a render bug that was fixed long ago, so the edit is no longer needed.
2022-10-31 08:27:15 +01:00
Christoph Oelckers
b636ffe6a7 - added a MHK for RR E1L1 to fix a render glitch in the barn. 2022-10-31 08:26:20 +01:00
Christoph Oelckers
6586868cb8 - added the framework for scripted level compatibility patching. 2022-10-30 16:51:41 +01:00
Christoph Oelckers
32b2e84fdc - added episode and total episode time display to alt HUD 2022-10-30 16:51:40 +01:00
Christoph Oelckers
fa3a8ca0d7 - add episode name display to alt hud. 2022-10-30 16:51:40 +01:00
Christoph Oelckers
562c1a18c8 - integrate hud_althud into hud_size
This makes it easier to use and avoids rendering a fullscreen hud on a screen size with view border.
2022-10-30 16:51:39 +01:00
Christoph Oelckers
2fbee8faf5 - Exhumed alt hud. 2022-10-30 16:51:38 +01:00
Christoph Oelckers
7808dae81b - implemented alt HUD for SW. 2022-10-30 16:51:38 +01:00
Christoph Oelckers
95042247cf - implemented alt HUD for RR. 2022-10-30 16:51:38 +01:00
Christoph Oelckers
95d10bd73c - Duke: fixed some issues with the pipe bomb’s detonator in the alt HUD. 2022-10-30 16:51:38 +01:00
Christoph Oelckers
2c7cf5564f - implemented alt HUD for Duke. (incl. NAM + WW2GI) 2022-10-30 16:51:37 +01:00
Christoph Oelckers
ff71ab14ce - added a GZDoom-style alternative HUD.
So far only implemented for Blood.
2022-10-30 16:51:37 +01:00
Christoph Oelckers
5f50ee5204 - updated CoreActor’s script exports. 2022-10-30 16:51:35 +01:00
Christoph Oelckers
4aa765675e - use a float vector to store the scale. 2022-10-30 16:51:31 +01:00
Mitchell Richters
ffc16635b2 - Blood: Make bobPhase a proper float. 2022-10-30 16:51:24 +01:00
Christoph Oelckers
8d1626de02 - yet more SetScale uses. 2022-10-30 16:51:18 +01:00
Christoph Oelckers
4af4983d3e - floatified clipdist and replaced fClipdist wrapper.
This uses a new variable because a few things use clipdist as a flag byte
2022-10-30 16:51:14 +01:00
Mitchell Richters
0600bf5860 - Negate everything to do with PlayerHorizon::__horiz where appropriate, including some loose horizoff members. 2022-10-30 16:51:11 +01:00
Christoph Oelckers
0eea776065 - moved RS_ bits to gamehud.h because that's all that uses these flags. 2022-10-30 16:51:09 +01:00
Christoph Oelckers
5ab75f45e9 - floatified and consolidated throwPower handling. 2022-10-25 07:07:11 +02:00
Christoph Oelckers
f286565abc - floatifying player::slope, part 2 2022-10-25 07:07:09 +02:00
Mitchell Richters
8d3f3c6025 - Cut over to DAngle from fixedhoriz and remove the latter. 2022-10-25 07:06:55 +02:00
Mitchell Richters
06a9a7b1a7 - SW: Change all weapon recoils to work on pitch. 2022-10-25 07:06:54 +02:00
Christoph Oelckers
243c071834 - got rid of bsinf and bcosf. 2022-10-22 12:17:04 +02:00
Christoph Oelckers
c511e5dca9 - eliminated int_xvel 2022-10-22 11:33:16 +02:00
Christoph Oelckers
9325886e35 - split use of tempang between real angles and other counters. 2022-10-22 11:33:16 +02:00
Christoph Oelckers
b8efc5c563 - floatified RR noise code. 2022-10-22 09:34:14 +02:00
Mitchell Richters
db5fcde0db - Fix issues with startup on fresh config following CVAR overhaul. 2022-10-22 14:42:12 +11:00
Christoph Oelckers
5eb9af1e00 - Backend update from GZDoom
IQM model support and a few bugfixes.
2022-10-20 22:24:25 +02:00