Commit graph

16937 commits

Author SHA1 Message Date
Christoph Oelckers
3ea0658449 - split the savegame manager into a game dependent and a reusable game indepenent part.
- added menu/advance sound alias.
2020-10-16 22:57:28 +02:00
Christoph Oelckers
504f85e6d4 - moved date code to its own file. 2020-10-16 22:57:27 +02:00
Christoph Oelckers
f99ac8b28b - allow struct extensions in zscript.
This is mainly for splitting the Doom specific content off the main definitions for easier reuse.
2020-10-16 22:57:27 +02:00
Christoph Oelckers
3a81c07ecf - moved language switching code to 'common'. 2020-10-16 22:57:27 +02:00
Christoph Oelckers
a08d87beb3 - added a customization hook class for the menu.
Currently the only thing it does is abstracting the menu caption, but more can be added here.
Not exposed to modding yet, though, that's for later.
2020-10-16 22:57:26 +02:00
Christoph Oelckers
4b77064fc4 - moved most of the menu code into the backend. 2020-10-16 22:57:25 +02:00
Christoph Oelckers
f6240ef428 - merged string table callbacks with system callbacks. 2020-10-16 22:57:25 +02:00
Christoph Oelckers
f30285b0ce - route menu's CheckGame call through SysCallbacks.
Needed to be able to move the menu into the backend.
2020-10-16 22:57:25 +02:00
Christoph Oelckers
46043f6278 - moved AutomapBindings export into common code. 2020-10-16 22:57:24 +02:00
Christoph Oelckers
e0d8241a50 - use the backend's GameTicRate in the scripts where applicable.
This should replace TICRATE globally as it is the backend's actual ticking speed (still locked to 35, though.)
2020-10-16 22:57:24 +02:00
Alexander Kromm
aa16fefd88 add a message for the failure case for resetcvar command 2020-10-14 20:19:07 +02:00
Alexander Kromm
92d68d05db rename reset command to resetcvar and do not create a new CVAR 2020-10-14 20:19:07 +02:00
Alexander Kromm
18a8fafd7d add console command to reset a CVAR to default value
Rationale:
1. Now to reset a CVAR to default, the user doesn't need to remember the default value.
2. If a modder wants to reset a CVAR via menu command, they don't need to keep menudef and cvarinfo in sync.
2020-10-14 20:19:07 +02:00
Nash Muhandes
cfbf115c4b
Change A_OverlayTranslation to accept a named translation instead. (#1215)
For more advanced use cases, the Translation member of PSprite can be written to directly.
2020-10-12 11:43:37 -04:00
Nash Muhandes
7bea14e6b2
- Add A_OverlayTranslation to set PSprite translations (#1202)
- Added PSPF_PLAYERTRANSLATED support to the software renderer
2020-10-11 17:14:06 -04:00
alexey.lysiuk
787b0d2480 - setup console handlers earlier to make them available during exit cleanup
https://forum.zdoom.org/viewtopic.php?t=70093
2020-10-10 17:28:09 +03:00
alexey.lysiuk
43a3188bdf - fixed compilation warnings reported by GCC and Clang
src/common/filesystem/file_ssi.cpp:78:20: warning: comparison of integers of different signs: 'int' and 'uint32_t' (aka 'unsigned int') [-Wsign-compare]
src/common/filesystem/file_ssi.cpp:130:38: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
2020-10-10 17:26:51 +03:00
alexey.lysiuk
1959502a0b - clear current levels' snapshots explicitly if saved game loading fails
Levels that are not defined via MAPINFO could keep stalled snapshots data preventing their loading from scratch

https://forum.zdoom.org/viewtopic.php?t=70115
2020-10-10 13:04:08 +03:00
alexey.lysiuk
5ee272a8b9 - fixed: next secret map was ignored in ending sequence
https://forum.zdoom.org/viewtopic.php?t=70132
2020-10-10 12:19:43 +03:00
Rachael Alexanderson
a2f0c27651 - add option to texture hqresize resize model skins. 2020-10-08 00:30:12 -04:00
Player701
4aec72be5d - Do not error out if some states are missing in an abstract weapon class 2020-10-06 20:07:04 +02:00
Christoph Oelckers
756caede51 - fixed misnamed variable and removed restriction for draw pass in GetFullscreenRect. 2020-10-05 18:32:16 +02:00
Christoph Oelckers
9a994482b1 - store extended sector info directly in FLevelLocals.
This is safer than using the first sector's reference.
2020-10-05 00:39:21 +02:00
Christoph Oelckers
63a338fd73 - changed display in key binding menu to list all bound keys for an action, not just the first two. 2020-10-04 19:28:20 +02:00
Christoph Oelckers
f3d75469c9 - moved two native player menu functions out of the main menu class.
These manipulate entries of that menu and have no business being called from anywhere else than this menu and its subclasses.
2020-10-04 19:08:14 +02:00
Christoph Oelckers
b902440535 - default summary screen's clean scale to false. 2020-10-04 15:14:11 +02:00
Christoph Oelckers
ce25b5bc41 - fixed: The scripted DrawFrame export should not be subjected to ui_screenborder_classic_scaling.
This affected the generic player display where the frame was far too wide.
At most it needs to be an option if properly corrected.
2020-10-04 15:05:00 +02:00
Christoph Oelckers
f1b0f32786 - add an option to the ListMenu class to draw to a fixed virtual screen size.
This allows proper dimensions in the stock menus and should make menu layout for mods a lot easier because coordinates are more predictable than with the clean factors.
The feature is opt-in for custom content. As long as only stock elements are used, the menu will be able to switch between both on its own, but as soon as custom classes or custom elements are used, the virtual size must be declared explicitly, defaulting to clean scaling.
2020-10-04 15:03:29 +02:00
Christoph Oelckers
acd71f7019 - groundwork for menus with a fixed virtual screen size. 2020-10-04 09:16:20 +02:00
Christoph Oelckers
89cc69710c - added config migration handling for the changes to adl_volume_model. 2020-10-04 08:20:42 +02:00
Wohlstand
4bfcbb4b18 libADLMIDI: Fixed a mistake with Volume Model setup
Don't set a bank number instead of a volume model!
2020-10-04 08:14:23 +02:00
Christoph Oelckers
f9ee465741 - backport of some enhancements for Cyrillic font support for Raze.
Now the identical looking characters can be mapped to their Latin counterpart if they do not have their own glyphs.
2020-10-04 08:11:56 +02:00
Christoph Oelckers
ff62d7a8a3 - made sysCallbacks a value variable instead of a pointer to simplify the checks for it. 2020-10-03 16:47:47 +02:00
Christoph Oelckers
2016f56a7e - added a new scaling mode to the level summary screen to scale to a given size.
In this mode the clean scaling factors are ignored and content is always scaled to fit the screen as efficently as possible.
For the default summary screens an option was added to use this mode, which is a lot closer to the original look of this screen.
It is not 100% identical because it still factors in the author, if given and long level names that may be broken into multiple lines of text.
2020-10-03 13:32:18 +02:00
Christoph Oelckers
fbf57e0c1d - fixed some scaling inconsistencies in the summary screen.
The background size wasn't taken into account for the splats and the widescreen check never verified the height of the background image.
It will now unconditionally use the new widescreen expansion mode for everything to reduce problems, use the background's display size for positioning overlays and only in the case of 200 pixel tall images perform widescreen positioning adjustment.
2020-10-03 09:07:29 +02:00
Christoph Oelckers
bd68ef917e - this too. 2020-10-03 08:54:41 +02:00
Christoph Oelckers
91406aa48b - fixed compilation.
Forgot to save these before the last commit. :(
2020-10-03 08:54:21 +02:00
Christoph Oelckers
c1e04b29d1 - AActor size reduction
* a few shorter fields were moved into alignment gaps
* the visible angles are now stored as floats. Since these are only used for rendering the loss of precision is negligible, but this shortens AActor by 16 bytes alone.
2020-10-03 08:23:36 +02:00
Nikolay Ambartsumov
a72fdd7e3e Add MaxSlopeSteepness actor property 2020-10-03 07:53:55 +02:00
Nikolay Ambartsumov
5aeda2b139 Add optional filtering to listmaps CCMD output 2020-10-03 07:38:03 +02:00
Nikolay Ambartsumov
da97b51c35 Show CVar's default value in addition to current 2020-10-03 07:37:08 +02:00
Rachael Alexanderson
9fbfee3b2d - mark m_noprescale as removed in defcvars also 2020-10-02 20:09:41 -04:00
Rachael Alexanderson
e2e176e0be - remove old 'mouse_sensitivity' cvar completely, it's no longer needed
- update defcvars parser so it no longer looks for it
2020-09-30 01:05:37 -04:00
C.W. Betts
b07c9550cf Update iwadpicker_cocoa.mm
Use proper integer types for ObjC protocols.
2020-09-29 21:47:10 +02:00
Christoph Oelckers
da4e791a3f - delete the FraggleScript thinker in G_NewInit.
If this isn't done it can later cause problems when being taken down by GC
2020-09-28 23:08:48 +02:00
Christoph Oelckers
92d630eb45 - keep mouse coordinates as floats for as long as possible. 2020-09-28 22:12:44 +02:00
Christoph Oelckers
3cfd19b2ef - removed const that erorred out. 2020-09-28 21:38:48 +02:00
Christoph Oelckers
51518d63a4 - cleanup of mouse input code and removal of all magic factors.
Sensitivity scaling of both axes is now exposed as a raw factor to the user instead of obscuring it behind an unclear 'prescale' boolean.
This also consolidates the coordinate processing code to prevent such discrepancies as were present here from happening again.
Migration code for old config settings is present so that this change does not affect existing configurations.
2020-09-28 21:13:34 +02:00
Christoph Oelckers
cd6ef67209 - fixed sounds not stopping in sound sequences.
The sound sequence code used S_GetSoundPlayingInfo incorrectly, so let it check for a valid sound ID first to restore the old behavior.
2020-09-28 18:38:05 +02:00
Christoph Oelckers
cd20ecaae0 - fixed sounds not being serialized for hub travel.
Sound stopping was done in the wrong place - this killed the sound before they could be serialized for hub travel.
The sound may only be stopped *after* calling G_DoCompleted.
2020-09-27 22:29:07 +02:00