Commit graph

906 commits

Author SHA1 Message Date
Christoph Oelckers
8aab82691b - renamed two PLAYER members for easier searching. 2022-10-09 22:30:51 +02:00
Christoph Oelckers
6497456471 - most of int_phiz,int_ploz 2022-10-09 22:29:54 +02:00
Christoph Oelckers
13d9505662 - PLAYER::hiz,loz refactoring, part 1 2022-10-09 22:00:43 +02:00
Christoph Oelckers
30b620c700 - removed unused oz_speed member variable. 2022-10-09 22:00:43 +02:00
Christoph Oelckers
e14182be99 - reinstated integer MSTime where needed. 2022-10-09 13:56:07 +02:00
Christoph Oelckers
00b812a5ff - un-deprecated the integer MSTime variant.
Due to undefined downconversion rules from double to int, there is no way to safely downcast the return from MSTimef, meaning the function is completely useless for retrieving integral time stamps.
The old version is essential for these cases and must be kept around.
2022-10-09 13:47:55 +02:00
Christoph Oelckers
416be99967 - fixed: SW's intro video must not stop playing music. 2022-10-08 10:04:31 +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
c25493762b - Eliminate bvectangbam(). 2022-10-05 00:36:28 +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
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
Christoph Oelckers
24c845f827 - remove float_pos wrapper. 2022-10-04 18:44:15 +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
793e9b7623 - renamed DDukeActor::floorz, ceilingz. 2022-10-02 20:46:56 +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
f858d77e7c - fixed: starting a video must stop all playing music. 2022-10-01 09:01:14 +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
c15aeec9f7 - late __int_pos additions 2022-08-26 19:53:11 +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
0fd42a50e8 -fixed ZScript warnings with comparison signedness. 2022-08-03 19:44:37 +02:00
Christoph Oelckers
b60181eed5 - variable cleanup. 2022-08-03 15:58:18 +02:00
Christoph Oelckers
cac54d42e9 - fixed script warnings after updating to version 4.9.0 2022-08-03 13:49:17 +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
6591b3b090 - Backend update from GZDoom.
Mainly new features for 2D drawer and model renderer.
2022-07-23 12:05:27 +02:00
Christoph Oelckers
abb7f87de3 - Backend update from GZDoom. 2022-07-23 12:10:08 +10: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
30b81c0920 - SW: changed fullscreen HUD to display all 8 keys without gaps ans overlapping. 2022-06-06 22:03:42 +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
126f6051d2 - fixed level number for RRRA's travel animations.
first level is 1001, not 1.
2022-06-02 10:18:57 +02:00
Mitchell Richters
add86d8cdb - Remove m_filter option from the menu. The remainder of the removal will come from a backend sync with GZDoom. 2022-05-30 21:42:25 +10:00
Christoph Oelckers
7de040cc92 - yet another circular staircase workaround.
Why can't people do these things physically correctly? :(
2022-05-29 12:22:58 +02:00
Christoph Oelckers
0dc670da8e - added wipe transitions to screen job
Mainly to have the crossfade, the other styles are mostly bonus.
This also adds proper scoping to the cutscene code, which needs to run in UI scope.
2022-04-25 17:26:17 +02:00
Rachael Alexanderson
b1f971aa9b - add gl_satformula == 2 - an optional 'more accurate' desaturation 2022-03-18 04:32:34 -04:00
Christoph Oelckers
789794539c - added script exports for Duke's main structures. 2022-02-21 00:19:26 +01:00
Christoph Oelckers
df7e6dfec8 - added scripting exports for the global map types and a few more actor utilities. 2022-02-21 00:12:51 +01:00
Christoph Oelckers
7ddd0dc22e - fixed bad filter name for DukeDC's SSI variant fpr 1.5 2022-02-18 23:58:49 +01:00
Christoph Oelckers
21fddd6c54 - spriteset management. 2022-02-15 22:34:48 +01:00
Christoph Oelckers
e396798198 - made DCoreActor's properties functional.
They cannot be parsed directly into the actor's sprite because that gets used in ways that require a different setup.
This alsp adds a property parser and a setter function for the SpriteSet array. The idea here is to write code that does not need to use actual tile indices so it can later be refactored to real textures.
2022-02-15 22:34:03 +01:00
Christoph Oelckers
37fda9cf89 - added position getters/setters to DCoreActor.
Scripting should not be subjected to that awful mixed fixed point format, but we cannot easily swap out the internals without risking breakage all over the place.
2022-02-15 22:33:49 +01:00
Christoph Oelckers
d9fee902de - setSpritesetImage export added. 2022-01-26 23:35:53 +01:00
Christoph Oelckers
6ff8e89739 - add statnums and virtual base methods to DukeActor. 2022-01-26 00:37:11 +01:00
Christoph Oelckers
c27976b2e5 - added script exports for Duke's iterators 2022-01-26 00:16:21 +01:00
Christoph Oelckers
5bc8b1c2d3 - Duke: added two more flags to eliminate the references to the crane's tile numbers. 2022-01-25 22:26:53 +01:00
Mitchell Richters
515bd54512 - Exhumed: Add save game option to in-game menu. 2022-01-24 21:51:28 +11:00
Christoph Oelckers
2022de845a - did some reshuffling on Exhumed's menu.
To allow adding a "User map" item and prevent accidental reset of ongoing games, both the items for starting the campaign and the training map are now in a submenu.
This allows the game to go through the regular startup procedure common to all games, which in turn allows adding the "User map" item to the episode selection.
2022-01-24 01:00:05 +01:00
Christoph Oelckers
a252b206d1 - exported DukeActor's native member variables.
This includes renaming two native ones because they shared the same name with members of spritetype.
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
43f2601bd6 - added script definitions for the base actor classes so that the engine can start up again. 2022-01-23 13:03:40 +01:00
Christoph Oelckers
a34c6d6b5f - language update 2022-01-22 14:33:10 +01:00
Rachael Alexanderson
d5aacb369a - oops this was in the wrong place 2022-01-21 01:16:22 +01:00
Rachael Alexanderson
85aee83bf8 - backend sync with GZDoom 2022-01-21 01:15:22 +01:00
Mitchell Richters
a20a56d9e7 - Add missing SSAOModes option value array to menudef.txt. 2022-01-16 22:42:22 +11:00
Christoph Oelckers
8d777892e0 - enable Bloom and SSAO menu options. 2022-01-16 12:18:00 +01:00
Christoph Oelckers
e5dad53f6d - menu entries for light modes, plus handling of overbright shades. 2022-01-11 00:19:15 +01:00
Christoph Oelckers
7c4319d099 - Nam: don't draw the icon for weapon 7 on the HUD.
This is just a blue square. In RedNukem it isn't shown, but there's no special code for it.
2022-01-08 21:58:15 +01:00
Christoph Oelckers
a3162f6ccf - renamed testnewrenderer CVAR. 2022-01-07 12:49:41 +01:00
Mitchell Richters
5ce9955f39 - Exclude episode 4 "The Birth" from the 1.5-bound grpinfo for Duke!ZONE II. 2022-01-07 20:00:08 +11:00
Mitchell Richters
48b966c45a - Add a new Duke!ZONE II grpinfo definition so that the copy supplied from Zoom which ships with a 1.5 copy of Duke 3D can be found. 2022-01-07 19:28:31 +11:00
Mitchell Richters
a65e2e8448 - Don't do an animated transition for Duke's credits menu and don't redraw the background for RR/RRRA's credits menu. 2022-01-06 10:32:33 +11:00
Christoph Oelckers
709dcd9155 - flip keyhole in TD's $shore.map. 2022-01-05 12:51:12 +01:00
Mitchell Richters
77da0b9278 - Exhumed: Mark in-game menu as animated so its interpolation works properly. 2022-01-05 08:13:57 +11:00
Christoph Oelckers
227ac0fca6 - RR: address a missing texture in E1L2.
The current texture on this wall is suboptimal but it's still better than glitchy HOM.
2022-01-04 17:18:25 +01:00
Mitchell Richters
09e1fa4d1e - Exhumed: Amend previous commit to do proper floating point calculation. 2022-01-04 22:54:51 +11:00
Mitchell Richters
572dcc08dd - Exhumed: Remove debug line and use game's ticrate in milliseconds instead of a hard-coded value (not that it should ever change anyway). 2022-01-04 22:51:19 +11:00
Christoph Oelckers
8bc1ca5f58 - Exhumed: interpolate the menu items when zooming. 2022-01-04 12:42:46 +01:00
Christoph Oelckers
be2efc03ad - Exhumed: interpolate the scrolling map. 2022-01-04 12:42:45 +01:00
sinisterseed
734e670e30 - added menu entries to toggle between the classic Polymost renderer and the new polygonal one. 2022-01-02 16:46:44 +02: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
225a2a39da - Duke: Replace player_struct noise_* variables with a vector. 2021-12-31 00:19:33 +11:00
Mitchell Richters
1e90b0bbbe - Duke: Replace player_struct bobposy with bobpos.Y calls. 2021-12-30 23:00:44 +11:00
Mitchell Richters
034e1fd175 - Duke: Replace player_struct bobposx with bobpos.X calls. 2021-12-30 23:00:44 +11:00
Mitchell Richters
0bc26e78ba - Duke: Replace player_struct loogiey[64] with loogie[64].Y calls. 2021-12-30 23:00:43 +11:00
Mitchell Richters
e196a4daa3 - Duke: Replace player_struct loogiex[64] with loogie[64].X calls. 2021-12-30 23:00:43 +11:00
Mitchell Richters
2d6bc783c4 - Duke: Replace player_struct exity with exit.Y calls. 2021-12-30 23:00:43 +11:00
Mitchell Richters
8d2595ea84 - Duke: Replace player_struct exitx with exit.X calls. 2021-12-30 23:00:43 +11:00
Mitchell Richters
fd8c7bfa52 - Duke: Replace player_struct poszv with vel.Z calls. 2021-12-30 23:00:41 +11:00
Mitchell Richters
b2023efb44 - Duke: Replace player_struct posyv with vel.Y calls. 2021-12-30 23:00:41 +11:00
Mitchell Richters
31ed257f39 - Duke: Replace player_struct posxv with vel.X calls. 2021-12-30 23:00:41 +11: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
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
d46a7abb0e - better wall sprite handling.
When they are directly on a wall, project their coordinates onto the wall to eliminate the imprecisions from Build's ad-hoc setup.
2021-12-30 09:58:46 +01:00
Christoph Oelckers
25f4f49e9a - added render precision menu option and updated texts.
Also enabled Czech for the language option because the translation is complete.
2021-12-30 09:58:44 +01:00
Christoph Oelckers
00a7be545d - added a map preview to the user map browser. 2021-12-30 09:58:08 +01:00
Christoph Oelckers
6dfd975f88 - activated the user map menu item in the episode selection. 2021-12-30 09:58:08 +01:00
Christoph Oelckers
ffd23c23ca - implemented user map browser. 2021-12-30 09:58:08 +01:00
Christoph Oelckers
99b069d122 - fixed the user map label.
TXT_USERMAP does not exist, only MNU_USERMAP does.
2021-12-30 09:58:07 +01:00
Christoph Oelckers
bd47f56a5c - x() is gone entirely. 2021-12-30 09:57:22 +01:00
Mitchell Richters
6423684bfb - SW: Replace PLAYERstruct oposz with opos.Z calls. 2021-12-30 09:57:09 +01:00
Mitchell Richters
a2f2cc489a - SW: Replace PLAYERstruct oposy with opos.Y calls. 2021-12-30 09:57:08 +01:00
Mitchell Richters
ae50767c70 - SW: Replace PLAYERstruct oposx with opos.X calls. 2021-12-30 09:57:08 +01:00
Mitchell Richters
3adf81e4f9 - Duke: Replace player_struct oposz with opos.Z calls. 2021-12-30 09:57:07 +01:00
Mitchell Richters
111aa16e64 - Duke: Replace player_struct oposy with opos.Y calls. 2021-12-30 09:57:07 +01:00
Mitchell Richters
0e897c29b0 - Duke: Replace player_struct oposx with opos.X calls. 2021-12-30 09:57:07 +01:00
Christoph Oelckers
756ed1c14b - removed the workaround to make Lunatic Fringe not glitch. 2021-12-30 09:56:52 +01:00
Christoph Oelckers
75b36cbd1c - Duke: made player.i a real pointer
How could I overlook this one.
2021-12-26 23:09:45 +01:00
Christoph Oelckers
c0496420ec - LadderSector 2021-12-26 23:08:46 +01:00
Christoph Oelckers
d1f7269ca8 replaced cursectnum with a cursector pointer 2021-12-25 21:28:56 +01:00
Christoph Oelckers
1790ced1f8 - Exhumed: renamed disassembly fields in player struct. 2021-12-25 21:28:52 +01:00
Mitchell Richters
6c1632a744 - Add hud_showmapname to the HUD Options menu to allow easy disabling of it if its not desired. 2021-12-16 11:48:55 +11:00
Mitchell Richters
a9d7eb06c7 - Add OpenGL ES to the backend options in the menu. 2021-12-12 11:22:43 +11:00
Emile Belanger
5300abb76d GLES: Fix line-endings for func_paletted.fp 2021-12-11 13:23:39 +01:00
Emile Belanger
9e1e824f5e GLES: Fixed palette mode and interpolation 2021-12-11 13:23:39 +01:00
Emile Belanger
5a8c57040f GLES: Palette mode now GLES2 compliant. Interpolation not yet working. 2021-12-11 13:23:39 +01:00
Mitchell Richters
af96180123 - Duke/RR; Don't lose the precision of p->MotoSpeed when calculating p->VBumpTarget. 2021-12-07 20:02:30 +11:00
Christoph Oelckers
0f2f46ec35 - made one_parallax_sectnum a pointer 2021-11-29 00:56:26 +01:00
Christoph Oelckers
caa9ef6dd3 - make access_wallnum a pointer 2021-11-29 00:56:22 +01:00
Christoph Oelckers
2b4ed0eaf3 - PlayerCheckDeath 2021-11-29 00:56:10 +01:00
Christoph Oelckers
fb95f0fff7 - store an actual actor pointer in PLAYER.
# Conflicts:
#	source/games/blood/src/player.cpp
2021-11-29 00:54:58 +01:00
Christoph Oelckers
5b9152abfd - eliminated the last access to playerActors in trigger.cpp and made AimTargets a pointer array. 2021-11-29 00:54:58 +01:00
Christoph Oelckers
a67da5003a - made voodooTarget a pointer and removed most direct references to target_i. 2021-11-29 00:53:47 +01:00
Mitch Richters
4d629e7de8 - Make screenjob valid keys for skipping ignore the Alt key as its used for modifiers, and special keys like the screenshot bind.
* Partially revert 8bb13bc4c2 as its changes are no longer needed.
* Partially revert 9e40e49c2c as its changes are no longer needed.
* Fixes #577.
2021-11-18 20:59:07 +11:00
Christoph Oelckers
a5f51cfd88 - SW: migrate everything to the main clipmove function 2021-11-08 23:11:30 +01:00
Christoph Oelckers
d042472ef6 - Exhumed: flag the main menu as animated.
This is needed for the plasma display to animate properly.
2021-11-07 22:06:01 +01:00
Christoph Oelckers
ae08ae1d8d - some leftover shorts plus utilities that ended up unused but may be useful later. 2021-11-07 16:46:23 +01:00
Christoph Oelckers
060da8ec1d - Duke: replaced most sector array accesses with pointers in actors.cpp.
This already helped to find one 16 bit value that stored a sector index.
2021-11-07 15:00:06 +01:00
Christoph Oelckers
1c0e3d849b - addressed the updatesector related deprecation warnings with Duke. 2021-11-06 20:46:08 +01:00
Mitch Richters
a2a75fccc2 - Add support for Duke Nukem's Penthouse Paradise as shipped with the Zoom release of Duke Nukem 3D Atomic. 2021-11-06 23:26:56 +11:00
Mitch Richters
c424f7c8dd - processMovement(). Remove cl_exhumedoldturn CVAR and tidy up numeric literals in use.
* In our older codebase before the input code was refactored, Exhumed's turning was broken and was only applying the base factor of 12, significantly slower than the other games.
* Upon doing some testing in PCExhumed, I noticed their turning was faster as when the counter meets its target, the turn value is shifted left by 2, effectively making it 48: b90417ed8e/source/exhumed/src/player.cpp (L336-L337)
* Removed this CVAR because of this.
* Reworked turning code so that pressing left+right together cancel each other out and that pressing both doesn't call `updateTurnHeldAmt(scaleAdjust)` twice.
* Redid turn averages factoring in Exhumed's speeds, rounded off values and stored in an enum for clarity.
2021-11-06 09:28:47 +11:00
Mitch Richters
9d3d8e747c - Fix up bsin() usage within ZScript files. 2021-10-30 10:24:15 +02:00
Christoph Oelckers
9071949a46 - backend upate from GZDoom
* Vulkan SDK and dependencies updated.
* better interface for buffers in the render backend.
2021-10-30 09:34:38 +02:00
Christoph Oelckers
9cfd682c9e - eliminated Player::nSprite. 2021-10-28 13:54:09 +02:00
Christoph Oelckers
11912486de - moved all loose player related arrays into the Player struct. 2021-10-27 20:56:42 +02:00
Emile Belanger
b79b1aad53 Fix fade for GLES 2021-10-24 18:35:54 +02:00
Emile Belanger
2a905e8026 Fix palette mode for GLES 2021-10-16 18:42:02 +02:00
Christoph Oelckers
7eaff41b9a - text update 2021-10-16 15:36:34 +02:00
Christoph Oelckers
957db8e2b6 - activated Polish translation. 2021-10-15 19:16:50 +02:00
Christoph Oelckers
9f7b7ebf7c - text update 2021-10-11 22:36:58 +02:00
Hugo Locurcio
91ce22931d Add cvars to control automap line alpha and thickness
This can be used to improve automap readability on high-resolution
displays.
2021-10-11 22:30:39 +02:00
Christoph Oelckers
2348dd8848 - backend update from GZDoom
* GLES backend fixes.
* font colorization fixes.
* option menu spacing fix
2021-10-07 22:46:45 +02:00
Christoph Oelckers
49e0c461c2 - Backend update from GZDoom.
This is mainly bringing the GLES backend up to date.
2021-10-07 22:46:45 +02:00
Christoph Oelckers
01e9d8e5e1 - remaining parts of GLES. 2021-09-18 13:03:36 +02:00
Christoph Oelckers
a3d9cd9a68 - Backend update from GZDoom - mainly for GLES2 support. 2021-09-18 12:20:28 +02:00
Christoph Oelckers
2e451618f8 - Duke: fixed some incorrect cutscene playback speeds. 2021-09-12 18:17:51 +02:00
Mitchell Richters
a2f17b1de3 - Duke/RR: Fix clearing of weapons for RRRA E2L2 that should only be done for RR.
* Fixes https://forum.zdoom.org/viewtopic.php?f=340&t=73173.
2021-08-29 21:00:08 +10:00
Mitchell Richters
0a04f8d14e - Blood: Repair bad tile index swaps for frame 1 that were accidentally applied against frame 0.
* Fixes #527.
2021-08-29 19:42:24 +10:00
Mitchell Richters
44e0da1212 - Blood: Remove the interpolate statement from all unused beast QAVs.
* These files are included so that all interpolated weapon QAVs from 0 - 124 can be easily init/load/precache using the same code the game uses to init/load/precache the original QAVs.
* These QAVs have not been tested or patched for any QAV interpolation issues, so best to not declare them interpolated in case a modder uses them and they're messed up.
2021-08-28 16:58:39 +10:00
Mitchell Richters
d5a4a17ced - Blood: Amend shade issues in QAVs for KQAVFLARFIR2 (res_id: 43) and kQAVFLAR2FIR (res_id: 48) now that we're interpolating shade. 2021-08-24 22:35:05 +10:00