Commit Graph

16822 Commits

Author SHA1 Message Date
Christoph Oelckers 2e260c6367 - use the new console font for the options menu to gain space and better character support.
So far this is just an experiment, this needs a bit of work to become viable.
2019-03-17 18:32:47 +01:00
Nemrtvi b59b092c49 Russian/Spanish quotation marks for BIGFONT + Better back buttons
The quotation marks were made by combining the < and > signs. Because the back buttons in the menu look quite similar, they were also retouched for all games.
2019-03-17 14:09:45 +01:00
Christoph Oelckers 7d93983669 - fixed: SpawnShootDecal tried to get the current level from a value that could point to actor defaults which do not have a level. 2019-03-17 13:19:17 +01:00
Christoph Oelckers 4f7ad5b130 - make the clean scaling system more consistent.
Now, all menus will use the same scale, i.e. it only depends on the screen width and a base size of 640. This nearly universally yields better results than trying to make a 320x200 screen fit.
The only exceptions to this are the intermission screens and the level summary. These, unlike the menu need to try to make a 320x200 screen fit, but without all the hackery that was present to adjust the menu display.
Note that since this affects globally visible script variables, both the intermission and summary drawers will not use their own set but instead temporarily override the global setting as long as they run their own code.
Changing the use of variables here might cause much worse problems with menu code so it wasn't attempted
2019-03-17 12:06:09 +01:00
Christoph Oelckers 0ff703c361 - fixed: Doom's episode names were not translatable. 2019-03-17 10:11:02 +01:00
Christoph Oelckers ba13a540e4 - changed default graphics substitution rules to be more localization friendly.
The default was changed to replace graphics if only known content is affected.
This also required blocking the feature for Hacx, Harmony and Action Doom 2 which have no localization yet and would fall back on Doom's texts if not blocked.
2019-03-17 09:27:40 +01:00
Alexander aa9c484b3b automap options readability changes 2019-03-16 20:01:26 +01:00
Christoph Oelckers 3fde5535c7 - replaced the "or" in the keybind menu with a darker comma so that this part is language neutral. 2019-03-16 19:00:56 +01:00
Christoph Oelckers 9b76c47dbe - added some placeholder strings to language.def.
This is in preparation for the spreadsheet based text handling.
2019-03-16 18:56:20 +01:00
Alexander 73d81d3983 added option search menu 2019-03-16 18:40:13 +01:00
alexey.lysiuk 540e180fb1 - fixed log text output to console
src/p_user.cpp:429:42: warning: data argument not used by format string [-Wformat-extra-args]
2019-03-16 14:45:16 +02:00
alexey.lysiuk ac9a428196 - fixed compilation error with some versions of GCC and Clang
src/p_acs.cpp:8719:100: error: cannot pass non-trivial object of type 'FString' to variadic function; expected type from format string was 'char *' [-Wnon-pod-varargs]
2019-03-16 14:39:29 +02:00
Christoph Oelckers 669b13ab8a - cleanup and fixes in console code
* consolidated C_MidPrint and C_MidPrintBold.
* removed some unused code from the console buffer.
* handle console output of centered messages to ensure they get written to the log file and to stdout.
* replaced the non-standard bar strings with simple '-'s. These were making things needlessly complicated when redirecting console output and the new font does not have the characters anyway.
* removed some old code from a time when during console drawing new network events could come and have more text printed. This can not happen anymore with how 2D elements are being handled now so all this code was redundant.
2019-03-16 13:02:38 +01:00
Christoph Oelckers 714c656753 - set a Unicode capable font for the Windows console.
The default raster font only contains the OEM 437 code page which is quite useless.
2019-03-16 10:50:53 +01:00
Christoph Oelckers dbd6c2eabf - removed the automatic system language detection for Windows.
Default language is now always American English, just like on Linux and macOS.
2019-03-16 00:07:18 +01:00
Christoph Oelckers 04281d4a0b - fixed positoning issues in the load/save menu. 2019-03-15 20:22:40 +01:00
Christoph Oelckers 2573ca8ac4 - disabled the error message spam from the demo loop
These messages are useful for the playdemo CCMD, but since the demo loop is mostly non-functional anyway they better be disabled there.
2019-03-15 12:18:12 +01:00
alexey.lysiuk c0d843b596 - fixed crash on startup inside userinfo_t::GetGender()
This function is required for localization handling but when it's called userinfo_t may not be fully initialized yet

https://forum.zdoom.org/viewtopic.php?t=63959
2019-03-15 13:12:53 +02:00
Christoph Oelckers 50ebca20bb - do not use iswspace to check raw UTF-8.
At least under MSVC this function reports 0x85 as whitespace, but it is a continuation byte for UTF-8 sequences and may not be treated as whitespace.
2019-03-14 21:42:02 +01:00
alexey.lysiuk 087353f00b - fixed dynamic lights flickering with GL3 render path
https://forum.zdoom.org/viewtopic.php?t=63755
2019-03-14 14:53:24 +02:00
Christoph Oelckers 613cf15b31 - fixed: player_t::GetGender needs to check if the CVAR exists.
This function can get called before the player's userinfo is available
2019-03-13 18:06:59 +01:00
Chronos Ouroboros 8dea4f9523 Fixed arrays of dynamic arrays causing a compilation error. 2019-03-13 12:42:45 +01:00
Christoph Oelckers 04bf975796 Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-03-13 10:39:22 +01:00
Christoph Oelckers 561444f921 added printlocalized CCMD to check strings in-game. 2019-03-13 10:38:51 +01:00
Chronos Ouroboros 7165b40657 Fixed nested dynamic array indexing causing a compilation error. 2019-03-13 10:23:06 +01:00
Christoph Oelckers 43ca814da8 - fixed: The FFont* serializer was unable to handle null pointers. 2019-03-13 07:11:46 +01:00
Christoph Oelckers 7f8b048347 - added a fallback mapping for the typographic upper quotation mark to the generic form 2019-03-13 07:07:56 +01:00
Rachael Alexanderson fd4295b38c - add some /0 guards in the load/save menu to prevent VM aborts 2019-03-11 20:19:40 -04:00
Christoph Oelckers 2d5210ccf2 - added lowercase->uppercase mapping for ß and moved all glyphs to the uppercase code point for consistency. 2019-03-12 00:00:54 +01:00
Christoph Oelckers 5c4871dc7b - recolorized Doom's SmallFont extended characters to green for use in Chex Quest.
These fonts are similar enough that this works.
2019-03-11 23:44:48 +01:00
Christoph Oelckers c0d333ee56 - adjusted the script-side MidPrint calls to honor the con_midconsolefont CVAR. 2019-03-11 22:44:28 +01:00
Nemrtvi f500414a61 Language-specific quotation marks
Supports German. (French, Russian, and Spanish quotation marks are already in the engine.)
2019-03-11 21:59:24 +01:00
Christoph Oelckers 8b4690bc44 - use international date format for all places that print a date.
The most important one is the autosave tagging. This was done because the old printout was missing the year and printed the month as a 3 character English string, sabotaging any attempt to sort the autosaves by anything meaningful.
2019-03-11 21:21:37 +01:00
Christoph Oelckers 22cf35c1c7 - reworked the load/save menu to use the new console font.
Parts of this menu suffered badly from lack of screen space to convey the intended information due to the oversized fonts. With the new font this is a lot less problematic (unless using 320x200, of course)
2019-03-11 20:59:43 +01:00
Christoph Oelckers 60c5350e8b - added an option to use the new console font for centered messages.
Like the notification messages, this is optional to not affect existing settings.
2019-03-11 19:54:03 +01:00
Christoph Oelckers ed1615babb - allow using the console font for notification messages (e.g. item pickup)
This is optional because it impacts display of game content, but for readability the new font definitely has advantages.
2019-03-11 19:09:37 +01:00
Christoph Oelckers e2d3c6feea - use the new console font for the chat input. 2019-03-11 18:42:28 +01:00
Christoph Oelckers 414a38c19d - use the new console font to display stat output. 2019-03-11 18:27:46 +01:00
Christoph Oelckers 109413b3a1 - fixed cursor positioning in console with double-wide characters present. 2019-03-11 18:24:42 +01:00
alexey.lysiuk d5410a8828 - added missing #include
src/c_console.cpp:167:7: error: no type named 'u32string' in namespace 'std'
2019-03-11 10:39:06 +02:00
Christoph Oelckers 02836b3c3f - fixed: The command line parser of the console was incapable of handling non-ASCII characters. 2019-03-11 00:26:37 +01:00
Christoph Oelckers 4532c2c489 - fixed crash when inserting CJK text. 2019-03-11 00:06:44 +01:00
Christoph Oelckers b605ae5213 - reactivated the formatting for the secret hints.
This had to be temporarily disabled for the font switch and wasn't undone afterward.
2019-03-10 23:29:33 +01:00
Christoph Oelckers 561d5a3d8b - fixed: IsPointInLevel must explicitly check for minisegs, which can be one-sided on maps with unclosed sectors.
Obviously, in such a case it is impossible to decide whether a point is really inside the map, so if this happens, behavior is undefined.
2019-03-10 19:07:48 +01:00
Christoph Oelckers 90c47e7497 - fixed character counting in TypeOn HUD message. 2019-03-10 18:54:57 +01:00
Christoph Oelckers ec476877ac - handle double wide characters in the console buffer. 2019-03-10 17:54:03 +01:00
Christoph Oelckers eb4eb1ac00 - use a wide string for the console input buffer.
Since this needs to do cursor positioning calculations it's the one spot in the entire engine where UTF-8 would simply be to messy, especially when having to deal with double wide characters.
2019-03-10 17:54:03 +01:00
Christoph Oelckers 0884057ae1 - use a higher resolution console font with better Unicode support. 2019-03-10 17:54:03 +01:00
Nemrtvi f1d931517d Font overhaul
Many existing letters are redone, and support for the following languages is added:

Doom:
• Italian
• Spanish

Raven:
• Italian
• Portugese

Strife:
• French
• German
• Italian

Credits to Jimmy for some of the lowercase glyphs for Doom.
2019-03-10 12:00:14 +01:00
Christoph Oelckers 5a891f3b0a - fixed color of status screen text. 2019-03-09 17:50:23 +01:00