Commit graph

80 commits

Author SHA1 Message Date
Rachael Alexanderson
34c57ab6be - add 'loadwidescreen' to gameinfo, works exactly like 'loadbrightmaps' or 'loadlights' 2020-10-26 10:08:34 -04:00
Christoph Oelckers
54f85d4caa - made the sinmple options menu switchable.
Also ensure that custom mods pick up the simple version if enabled.
2020-10-25 17:07:03 +01:00
Christoph Oelckers
194824f810 - some fixes for the console.
* it is now possible to switch back to the main intro loop from the fullscreen console.
* do not distort the background of the fullscreen console. Always draw the console on top of what the main loop currently displays with a translucent black overlay.
* do not use the CONPIC for the fullscreen console as it tends to be more of a distraction than an asset when filling the entire screen.
* cleaned up c_console.cpp and moved several pieces of code unrelated to actual console management out of it.
2020-10-25 09:17:31 +01:00
Christoph Oelckers
bc2b0a0252 - added flag option menu item by Accensus. 2020-10-24 17:49:56 +02:00
Christoph Oelckers
473072d556 - doubled the default for horizontal mouse sensitivity.
This seems to fit more systems.
2020-10-17 13:10:09 +02:00
Christoph Oelckers
d6e962c91e - upgraded code base to C++17.
Mainly to allow using 'if constexpr'.
Older CI compiler setups like GCC 5 for Linux were removed as a consequence.
Windows 32 bit was also removed because there are no plans to do any more 32 bit releases of GZDoom.
2020-10-17 11:39:59 +02:00
Christoph Oelckers
65c52b9825 - Backend update. 2020-10-16 23:25:18 +02:00
Christoph Oelckers
cf7518fe43 - added two more system callbacks for menu customization. 2020-10-16 22:57:29 +02:00
Christoph Oelckers
881a77b3a1 - backport of menu transition code from Raze. 2020-10-16 22:57:29 +02:00
Christoph Oelckers
b8281f4758 - Backend update from Raze. 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
3a81c07ecf - moved language switching code to 'common'. 2020-10-16 22:57:27 +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
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
bd68ef917e - this too. 2020-10-03 08:54:41 +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
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
1d863d6cab - made player indexing consistent in i_net.cpp. 2020-09-27 16:19:34 +02:00
Christoph Oelckers
348f9ae68c - moved i_net into 'common' to bring it in line with Raze. 2020-09-27 12:30:54 +02:00
Christoph Oelckers
b3a179b691 - backported symbol table support for FScanner from Raze. 2020-09-27 11:36:13 +02:00
Christoph Oelckers
96ceb11af0 - various engine updates from Raze.
* removed refreshFreq variable and related code. This only got into the backend because of stupid interpolation code in some of the Build games which has long been removed.
* save FixedBitArrays as base64 in savegames.
* allow indirections in the string table - by prefixing the language string with '$$' the remaining text is interpreted as another string label to resolve.
* constexpr in palette code, also replacing #defines with enums.
2020-09-27 10:17:58 +02:00
Christoph Oelckers
db895b43b2 - copied constexpr declarations plus a few fixed in utility code and fixed a few places where this triggered a compile error now. 2020-09-27 08:36:30 +02:00
Christoph Oelckers
668ebd9be1 - immediately abort loading a savegame if object deserialization fails.
If the loader is allowed to go on, these objects will be linked into game structures and may do unpredictable things before the loader has a chance to abort at the end.
2020-09-26 20:36:10 +02:00
alexey.lysiuk
adfd5de166 - do not abort saving and loading on pointer serialization errors
Attempt to serialize invalid pointer is reported, and its value is treated as null
2020-09-02 15:21:00 +03:00
MajorCooke
eaba63e13b
View Angles (Part 1 - Redux) (#1002)
* Added ViewAngle/Pitch/Roll properties to actors.

- These are offsets for camera angles that allow turning the camera without affecting aim or movement direction.
- Added A_SetView<Angle/Pitch/Roll>, which will set the view direction.
- Added ABSVIEWANGLES flag, used to make the view absolute instead of an offset.

* Converted functions to be direct-native.
2020-08-27 13:03:06 -04:00
alexey.lysiuk
fc1f14b2eb - extended error messages in pointers serialization 2020-08-27 10:13:18 +03:00
alexey.lysiuk
dfd5726eb0 - added bounds checks for serialization of pointers
Bogus pointers and offsets were serialized silently
This will to find other cases of dangling pointers, and protect from loading of broken saved games

https://forum.zdoom.org/viewtopic.php?t=67494
2020-08-25 21:54:36 +03:00
alexey.lysiuk
24200c0c3f - fixed ARM64 compilation issues reported by Xcode 12 beta 4
src/common/engine/stats.h:139:31: error: invalid output constraint '=A' in asm
src/common/platform/posix/osx/iwadpicker_cocoa.mm:379:1: warning: non-void function does not return a value [-Wreturn-type]
2020-08-09 15:40:38 +03:00
alexey.lysiuk
18f2cf0fdc - exposed menu blur amount to engine interface
https://forum.zdoom.org/viewtopic.php?t=69056
2020-06-20 12:06:49 +03:00
Christoph Oelckers
90befff479 - moved out the Doom specific parts from menu.cpp and messagebox.cpp. 2020-06-13 22:43:35 +02:00
Christoph Oelckers
86e5f5a4cb - fixed missing include. 2020-06-13 20:57:13 +02:00
Christoph Oelckers
5dfe9918d0 - moved some event related code to 'common'. 2020-06-13 20:31:57 +02:00
Christoph Oelckers
a3c100a2ed - deleted the duplicate start screen class. 2020-06-12 23:10:19 +02:00
Christoph Oelckers
fe19aec059 - backend update from Raze. 2020-06-11 14:12:05 +02:00
Christoph Oelckers
666b6b7007 - moved m_joy to common. 2020-06-08 23:37:21 +02:00
Christoph Oelckers
720853cff8 - made some changes so that material definitions can properly check automatic layers when determining their material type.
Most importantly this means that any texture with a custom material definition needs to load its automatic layers before applying the definition.
2020-06-03 21:16:36 +02:00
Hugo Locurcio
80c5b4d37b Add a cvar to control weapon bobbing while firing
This simulates a feature found in Crispy Doom, which keeps the
weapon bobbing while firing. This leads to a "smoother" appearance
which may look a bit prettier to some people.

The default value of 0 preserves the old behavior.
2020-05-31 23:12:11 +02:00
Christoph Oelckers
3fd4d08004 - fixed startup and font init crashes. 2020-05-04 20:06:54 +02:00
Christoph Oelckers
d71ef66957 - fixes copied from Raze. 2020-04-29 23:58:50 +02:00
Christoph Oelckers
e3fdf2194e - moved a few leftover utility classes to 'common'. 2020-04-29 17:51:04 +02:00
Christoph Oelckers
6cf91d3941 - moved the remaining core parts of the GL renderer to 'common'. 2020-04-29 17:19:17 +02:00
Christoph Oelckers
9be63a5093 Merge branch 'master' into texture_rework 2020-04-29 08:04:15 +02:00
Christoph Oelckers
ddef3f7b98 - made video base code game independent 2020-04-28 22:54:53 +02:00
Christoph Oelckers
2196b4fb04 - moved the frame rate drawer out of DFrameBuffer.
Too much of this is not shareable and all it consists of are drawing operations on the 2D drawer.
2020-04-27 23:53:26 +02:00
PaulyB
8d1451689b Exposed MTF_NOCOUNT to UDMF 2020-04-27 20:30:37 +02:00
Christoph Oelckers
b9e3c9681b - moved a few files from 'rendering' to 'common'. 2020-04-25 21:52:21 +02:00
Christoph Oelckers
72533e2f8a - redirect ST_Sound to a callback because the sound code is game specific 2020-04-23 22:33:43 +02:00
Christoph Oelckers
f8e23500c7 - moved Windows platform code as well. 2020-04-23 22:26:30 +02:00