Commit Graph

4161 Commits

Author SHA1 Message Date
alexey.lysiuk 82c248854d - extended level post-processing with special string arguments 2019-11-10 11:37:02 +02:00
alexey.lysiuk 00ff4083d2 - extended level post-processing with thing IDs 2019-11-10 11:37:02 +02:00
alexey.lysiuk 098b1c5973 - level post-processor cleanup 2019-11-10 11:37:02 +02:00
alexey.lysiuk c5237ce58f - level post-processor can now add new things 2019-11-10 11:37:02 +02:00
alexey.lysiuk 1e29444152 - extended level post-processing with specials and arguments 2019-11-10 11:37:02 +02:00
alexey.lysiuk 79880b2bd9 - extended level post-processing with editor numbers and angles 2019-11-10 11:37:02 +02:00
alexey.lysiuk a2a50f34d5 - added things related getters to level post-processing
New functions cover existing interface only
Unsigned integers are now used instead signed for indices and bitfields
2019-11-10 11:37:02 +02:00
alexey.lysiuk 59bdebb20a - added generic level post-processing script class
It was extracted from LevelCompatibility class, and native code was moved accordingly
2019-11-10 11:37:02 +02:00
alexey.lysiuk 093901a561 - set meaningful defaults on initialization of BaseStatusBar
https://forum.zdoom.org/viewtopic.php?t=66339
2019-11-09 15:00:03 +02:00
alexey.lysiuk ad89f1381c - fixed missing fullbright for Berserk
https://forum.zdoom.org/viewtopic.php?t=66307
2019-11-05 15:32:00 +02:00
alexey.lysiuk 857d0175b5 - fixed broken walkthrough of Restoring Deimos MAP07 2019-11-02 14:38:41 +02:00
alexey.lysiuk 10078f519a - fixed missing frames for axe attack without mana
The target state to jump is S_FAXEATK_5 in the original Hexen, but we were jumping to S_FAXEATK_7
5329fb5d75/src/hexen/info.c (L1298-L1299)

https://forum.zdoom.org/viewtopic.php?t=66216
2019-10-26 11:32:27 +03:00
PaulyB a601350db6 Scythe MAP22 Compatibility fix 2019-10-21 08:19:17 +02:00
Christoph Oelckers f014e9cd8c - text update. 2019-10-20 16:16:40 +02:00
Christoph Oelckers 8b10d231cd - when adding some minmum lateral movement to trigger collision detection, do not just set Vel.X but actually use a vector pointing in the proper facing direction of the actor. 2019-10-20 14:02:28 +02:00
alexey.lysiuk 1dd08a73ed - fixed broken walkthrough of Skulldash MAP04 2019-10-20 10:00:44 +03:00
alexey.lysiuk 3d557b68b0 - fixed broken walkthrough of Restoring Deimos MAP03 2019-10-20 10:00:44 +03:00
alexey.lysiuk 89ecd7a964 - fixed: pickup flash didn't fade out if player was killed by pickup
https://forum.zdoom.org/viewtopic.php?t=66135
2019-10-16 18:13:01 +03:00
MajorCooke 8bf4522174 Compatibility for Hellbound MAP29 (#951)
* Added compatibility for Hellbound MAP29

- Some of the ceilings in the monster closets weren't high enough to allow the cyberdemons to pass, making 100% kills impossible. This is caused by the floors not going down far enough and stopping at a certain height above the next closest floor.

* Remove the cyberdemons instead of raising the ceilings.
2019-10-11 10:10:37 -04:00
Colton G. Rushton 3a54b10697 Remove Illusory E3M7 key door changes
Removed the red key door compat patch for Illusions of Home E3M7 because a switch (the computer panel, rather) already opened that door as it was, therefore the original change was unnecessary.
2019-10-10 09:04:05 -04:00
Dominus Iniquitatis f13843c8ca Fixed a typo 2019-10-04 17:34:54 +02:00
Alexander ff9715c080 add m_quickexit option for quick exit in game menu
Default: off (false)

When this option is enabled (true), then exiting the game from
main menu and by menu_quit command doesn't require confirmation
and doesn't play sound.
2019-09-30 20:07:45 +02:00
Alexander 0c2ed71cdd fix bug when down arrow gave no result after mouse move in main menu
Steps to reproduce:
1. Load game.
2. Press any key to bring up the main menu.
3. Move the mouse anywhere out of the menu entries.
4. Press Down arrow.

Expected result: the menu cursor sound is played, the first menu element is selected.
Actual result: the menu cursor sound is played, no menu element is selected.

Repeated Down arrow pressing doesn't give any result, either.

If on step 4 Up arrow is pressed, the last element in the menu is selected.
2019-09-30 20:04:44 +02:00
alexey.lysiuk ef7a356644 - fixed inventory scroll arrows in alternative HUD
https://forum.zdoom.org/viewtopic.php?t=65976
2019-09-29 16:07:25 +03:00
Christoph Oelckers cb93e00aaf - fixed spelling of "Korean" in Korean. 2019-09-13 09:23:33 -04:00
Marisa Kirisame bcef440511 Squashed commit of the following:
commit 6ecd831eb45a8258995c02664450c3ca8cfe5b48
Merge: a4fb1f61c afbd7f7a2
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Sun Jul 28 22:02:19 2019 +0200

    Merge branch 'master' of github.com:coelckers/gzdoom into f3dfloor_export

commit a4fb1f61c0532d3a6051d4c1fca4ac72ec33e060
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Fri Jul 12 15:43:25 2019 +0200

    Renamed EFFloorType enum in ZScript to the more descriptive EF3DFloorFlags

commit 9ad1c3b5625d53c06229be2a94d44fa0f36f41fd
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Sun Jul 7 20:25:31 2019 +0200

    Add bounds checks to Get3DFloor/GetAttached

commit dd2a7956a887b92ed24ce5e79f10b1a445664d6c
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Sun Jul 7 17:13:44 2019 +0200

    Correct handling of 3d floor plane texture getting.

commit 9b748287892c8fdee9ac67019bf1f66bc4b69eab
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Sun Jul 7 16:14:45 2019 +0200

    Implemented requested changes to F3DFloor exports.
    * Getters for ffloors/attached arrays.
    * Getter for 3D floor top/bottom texture.

commit 6a1482bb0637a70890629e4c13e8759c7a3673f3
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Sat Jul 6 13:42:52 2019 +0200

    Renamed exported extsector pointer in Sector struct to something more descriptive.

commit 7c6783d43b898cbd7a01fb2191fd401ed8e8c300
Merge: ff64e04b2 8d36f0a0c
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Mon Apr 29 12:40:44 2019 +0200

    Merge branch 'master' into f3dfloor_export

commit ff64e04b251f23325d2f72bc25c59f34b4cab6fa
Merge: a90947392 5b6bae409
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Sun Apr 21 16:56:18 2019 +0200

    Merge branch 'master' into f3dfloor_export

commit a90947392a27eb1c2dac7005614592ec2f410274
Author: Marisa Kirisame <marisa@sayachan.org>
Date:   Mon Feb 4 17:47:25 2019 +0100

    Export F3DFloor structure and related data.
    Small changes to Trace code to better use this struct.
2019-09-11 08:19:19 +03:00
PaulyB 0535961a7a Added Armor to Hexen fullscreen display
Since the armor icon is much larger than the flask icon, both have been moved to the right slightly
2019-09-11 00:02:39 +02:00
PaulyB 223b62aa59 Wrong offset on Fighter's Fist 2019-09-10 18:52:17 +02:00
Christoph Oelckers 4df33a25d9 - text update. 2019-09-10 06:41:36 +02:00
alexey.lysiuk 31ebeaf833 - removed useless conditions from options menu 2019-09-08 10:01:10 +03:00
alexey.lysiuk 526a576d89 - fixed VM abort when entering search menu
https://forum.zdoom.org/viewtopic.php?t=65833
2019-09-08 09:52:16 +03:00
Christoph Oelckers 06ad60718c - added Serbian texts. 2019-09-07 09:45:25 +02:00
Christoph Oelckers cbd4479628 - reinstated the old scriptwait implementation as a compatibility option.
Daedalus's MAP19 needs this.
2019-09-07 09:34:50 +02:00
Christoph Oelckers e6d39254b7 - text update plus inclusion of Dutch in the menu. 2019-09-07 09:02:56 +02:00
Christoph Oelckers fd6f6b1356 - use correct label for "No" text. 2019-09-07 08:51:39 +02:00
Christoph Oelckers 5968bb6114 - added dlg_vgafont and log_vgafont to the menu. 2019-09-07 08:39:39 +02:00
alexey.lysiuk 37fa2e1b67 - fixed initial setup for dynamic light actors
They are attached and actived explicitly during usual actor initialization sequence
Postponed processing applicable to so called user dynamic lights must be skipped for them
RECREATELIGHTS flag handling for dynamic light actors had the opposite effect of deactivating them

https://forum.zdoom.org/viewtopic.php?t=65683
2019-09-02 12:20:13 +02:00
Alexander d6396e79fb add empty line after standard options
Rationale:
When a mod adds a custom option menu, it adds a space before it, like this:
```
AddOptionMenu OptionsMenu
{
  StaticText ""
  Submenu "$MYTITLE", MyOptions
}
```
to prevent custom option menu being in the same block as the last entries in the
standard options list. It's okay.

But when more than one such mod is loaded, each one of them adds a space before
their option menu entry, and Options Menu becomes unnecessary bloated.

This simple edit allows mods to not add a space, still be separated from
standard options.
2019-08-31 21:34:09 +02:00
PaulyB 7de1b796ba Level compatibility additions for Scythe 2 and Hell Revealed 2019-08-31 20:29:39 +02:00
PaulyB 78c5a8ae92 Fix typo in Heretic status bar 2019-08-31 03:46:05 -04:00
Colton G. Rushton 07f8b7f61a Fix ILLUSORY/ilusory1 E3M7 some more (#918)
* Fix ILLUSORY/ilusory1 E3M7 some more
2019-08-28 18:16:24 +02:00
Colton G. Rushton 5a3441a2c6 Fix tag for ILLUSORY/ilusory1 E3M4 patch (#917)
The tag was set incorrectly in the E3M4 patch for Illusions of Home, and this PR fixes that. This ties into #916.
2019-08-27 13:49:22 +02:00
Colton G. Rushton d80816a0d9 Fix issues in ILLUSORY/ilusory1 (#916)
* Fix issues in ILLUSORY/ilusory1

Added some compatibility patches for Illusions of Home E1M6, E3M4, and E3M7 (this fixes minor issues to all of these maps)
E1M8 requires a MAPINFO of some sort to have work correctly in the state it's in, unfortunately.

* Minor tweak to ILLUSORY/ilusory1 fix

Didn't need the activation reset as it was already set to begin with.

* Made the fixes consistent

Made the fixes consistent with the rest of the fixes for the other WADs already in this file
2019-08-27 12:19:38 +02:00
Rachael Alexanderson 9456eeb8ec - oops, this didn't get through 2019-08-23 05:56:10 -04:00
PaulyB 179e526981 Let Hexen Cleric and Mage use unique health chains
- (changed slightly by Rachelle)

Hexen's characters incorrectly only used the Fighter's health chain previously.
2019-08-23 05:54:39 -04:00
Christoph Oelckers 8b6c051bf8
Merge pull request #907 from OrdinaryMagician/sbar_overrides
Allow status bars to override notifications/prints/chat prompt
2019-08-19 19:45:09 +02:00
Marisa Kirisame 14dc288f22 Allow custom status bars to override notifications, centered prints and chat prompt. 2019-08-19 11:19:36 +02:00
Hugo Locurcio 61badfd694 Improve crosshair health color to be more informative
With `crosshairhealth 2`, the crosshair will now
go from white to yellow, then yellow to red as the player's health
decreases. As the player's health increases up to 200, the crosshair
will also go from white to green to indicate overheal.
This is similar to the implementation in games like Xonotic.

The old behavior (`crosshairhealth 1`) is still the default.
2019-08-18 19:09:52 +02:00
alexey.lysiuk 1bd249677b - fixed core script warnings with developer CVAR set to 2 or greater
Script warning, "gzdoom.pk3:zscript/ui/menu/conversationmenu.zs" line 159:
Truncation of floating point value
Script warning, "gzdoom.pk3:zscript/ui/menu/conversationmenu.zs" line 161:
Truncation of floating point value
2019-08-13 14:48:40 +03:00
Christoph Oelckers a53861e27e - text update. 2019-08-11 18:28:50 +02:00
Rachael Alexanderson c029f02b90 - add missing break statements 2019-08-11 03:23:50 -04:00
Rachael Alexanderson 9c3cdd1462 - fix a couple issues with sigil.wad:
- e5m2: floating skulls disappear on lower skill levels
- e5m4: the platform with the baron of hell that led to the invulnerability secret had a missing texture
2019-08-11 03:22:00 -04:00
Christoph Oelckers cf74118d53 - fixed the extremely long standing bug that Lost Souls didn't reacquire their target when slamming into something.
This was one of that annoying old design mistakes where Doom and Heretic features were poorly merged together. The Heretic Gargoyle uses very similar coding but performs a subtly different action when actually hitting another actor. This different action was made the default, even for the Lost Soul.
It has now been changed that both monsters use their original action, being distinguished by an actor flag. For compatibility with custom definitions Heretic's behavior, which has been the default in ZDoom will be the preferred one. The one of the Lost Soul can be reactivated by a flag.
2019-08-11 09:00:29 +02:00
alexey.lysiuk 07a2331ca3 - exposed Append() method to ZScript dynamic array
https://forum.zdoom.org/viewtopic.php?t=65570
2019-08-10 16:37:40 +03:00
Christoph Oelckers 34c2c65bb6 - fixed: Do not use BasicArmor's save percentage when no armor present.
This function is only for the Hexen status bar and printed incorrect values.
2019-08-10 08:26:55 +02:00
Christoph Oelckers 3b4184816b - do not blur the background for portrait-less conversations. 2019-08-09 15:22:52 +02:00
Christoph Oelckers bf9c5849e8 - merged all useful parts from https://github.com/coelckers/gzdoom/pull/725 2019-08-08 08:09:31 +02:00
Christoph Oelckers 352d5d098d - fixed mouse coordinate checks when using the generic VGA font with Strife conversations. 2019-08-07 20:24:45 +02:00
Christoph Oelckers 43041c21d8 - made author names work with title patches.
Most importantly, specifying a patch may optionally disallow showing the autor's name - this is for cases where a styled patch gets used for English but text-based translations of the map name should still be possible.
2019-08-07 12:09:47 +02:00
Zain Aamer 3447904541 Clearscope Index()
For Vertex, Side, Line and Sector
2019-08-06 12:32:24 -05:00
Christoph Oelckers be0478972a Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-08-05 19:15:16 +02:00
Christoph Oelckers a05314968f Made reverb editor localizable 2019-08-05 19:15:05 +02:00
Blue Shadow 5abffabb56 - moved GetSaveAmount() from the base armor class 2019-08-03 11:14:03 +03:00
Blue Shadow 479a992a3e - fixed buggy ArmorFactor behavior when set to a value other than 1.0 2019-08-02 15:10:06 +03:00
Christoph Oelckers 3e99216967 - added option to print a map author's name on the summary screen
For now only with font-printed map names. Allowing this with titlepatches will require more work and an option to disable.
2019-08-02 09:11:40 +02:00
Christoph Oelckers 154af34cd9 - added an option to always display the log and the subtitles with the generic font.
If this is on it will disable the status bar's pop screen for the log and always use the HUD overlay instead.
2019-07-31 17:02:39 +02:00
Christoph Oelckers 045025f4cf - text update. 2019-07-31 10:08:47 +02:00
Christoph Oelckers c36dc137ba - made adjustments to the text placement on the summary screen.
With extended fonts much of the old code did not work anymore, this needed more precise checks for the sources of the printed texts.
2019-07-30 10:53:02 +02:00
Christoph Oelckers c577f1d743
Merge pull request #899 from khutchins/master
Adds option to use a quicksave rotation
2019-07-28 08:44:21 +02:00
Kevin Hutchins 5cb59018e0 Adds option to use a rotation of quicksaves instead of having one quicksave slot that needs to be manually created. 2019-07-27 12:09:55 -07:00
Christoph Oelckers 1dd98a5c89 - when using the VGA font, confine the speaker's text in Strife dialogues to the backdrop picture.
This looks a lot better. Unfortunately for the regular SmallFont this would severely reduce the available space for the text so it isn't done here, even though for shorter texts the formatting would look better as well.
2019-07-27 09:35:45 +02:00
Christoph Oelckers b768c6877c - text update 2019-07-27 09:00:49 +02:00
Christoph Oelckers 86d2742798 - allow switching the Strife conversation screen to the VGA font for all languages by a CVAR.
This is for readability purposes because the styled SmallFont may be problematic for some players.
2019-07-26 20:23:46 +02:00
alexey.lysiuk 222dfd17b7 - added ability to specify display duration of subtitles
Duration of sound playback and subtitles display will be synchronized if sound id is specified
For existing Strife messages this works out of the box

https://forum.zdoom.org/viewtopic.php?t=65379
2019-07-26 20:11:42 +02:00
Christoph Oelckers b4aacb7be5 - fixed: The numcommands value in A_KoraxCommand needs to be decremented by one because the max parameter of the random function is inclusive. 2019-07-25 20:42:41 +02:00
Major Cooke 15eabfd055 Added A_SoundPitch and an optional pitch parameter to A_PlaySound and S_Sound.
- Note: Because sound channels are not in zscript, there's no way to modify a sound made by S_Sound.
2019-07-24 20:15:24 +02:00
Christoph Oelckers 9d66a5105a - text update.
This also activates Serbian and Japanese in the menu.
Note that Serbian is still missing a few characters in Hacx and Harmony!
2019-07-23 21:30:12 +02:00
Christoph Oelckers 95349822c4 - for the map name on the automap, fall back to the original SmallFont if the actual one cannot print it.
This is mainly for mods which provide a new font but do not alter the automap texts, a good example is Hell Revealed 2.
2019-07-17 20:28:07 +02:00
Christoph Oelckers b360f04e28 - use proper interface calls to give the initial BasicArmor to the player.
The old code didn't check if giving the item was proper and just went ahead adding it to the inventory unconditionally.
2019-07-17 20:08:43 +02:00
alexey.lysiuk 9603a09f82 - added PSprite.bMirror flag to ZScript class definition
https://forum.zdoom.org/viewtopic.php?t=65372
2019-07-17 12:20:05 +03:00
Christoph Oelckers 56cb7cbaea - did a bit of cleanup on the MAPINFO organization
What could be done has been moved into the filter directory of game_support.pk3

Unfortunately most of the rest is needed as presets even for custom games so it cannot be fully cleaned up, because the dependencies here and the filter structure do not align 100%.
2019-07-17 01:05:58 +02:00
Christoph Oelckers 77b1ebe0d7 - moved several IWAD dependent files into the game_support resource
* sprite offset definitions, which are IWAD dependent
* Freedoom's decal overrides
* conversation ID definitions for the Strife teasers
* the fallback BigFont now can also be loaded by IWADs which declare themselves as GAME_Heretic or GAME_Hexen.
2019-07-17 00:54:59 +02:00
Christoph Oelckers c64aedb262 - reimplemented the Harmony status bar in ZScript
* the Doom status bar has been partially virtualized to allow overriding specific parts of it, most notably the ammo display
* the internal Harmony status bar has been removed because it only works with the now disabled Dehacked patch.
* the SBARINFO definition has been removed, instead it uses a ZScript-based status bar now which overrides the ammo display to use the new ammo types instead.
2019-07-17 00:36:38 +02:00
Rachael Alexanderson f7c110698f - add +ZDOOMTRANS to BFGExtra in order to force classic transparency per user setting. 2019-07-16 16:52:30 -04:00
Christoph Oelckers 38a1a05af3 - moved iwadinfo.txt to zd_extra.pk3.
This was done for two reasons:

1. It forces loading of zd_extra.pk3 for the stock IWADs, eliminating a certain kind of user error.
2. It removes the stock IWAD definitions for custom games that distribute the engine along with their data, so that it doesn't pick up on Steam and GOG installations and shows an inappropriate IWAD picker.
2019-07-16 20:22:15 +02:00
Christoph Oelckers 4cc1aeadd4 - language update 2019-07-16 20:01:16 +02:00
Christoph Oelckers 7916cebdc1 - merged the Hacx extra stuff into zd_extra.pk3 and added the ability to inject data into the resource directory after the IWAD so that the base resources can provide content that can override IWAD data if broken or not usable.
Hacx in particular needs this to fix a handful of buggy actors and to override the IWAD's MAPINFO which is not localizable.
2019-07-15 21:23:46 +02:00
Christoph Oelckers cd7438c02e - made some adjustments to the text spacing on the level summary screen.
With the extended fonts some parts here caused too large gaps.
2019-07-14 12:44:42 +02:00
Christoph Oelckers 32dd6b049c - offset text in statscreen if it gets too wide.
German and Hungarian were creating problems in Hacx here, others could also become too wide with huge amounts of monsters.
2019-07-14 10:03:50 +02:00
Christoph Oelckers 2fd170b06e - allow setting the font used for the status screen's content text.
This was needed to give Hacx's screen the proper colors.
2019-07-14 09:08:19 +02:00
Christoph Oelckers b087f3f4ed - added Hacx localization support.
Unlike the other games this required a bit of patching of the IWAD's data with a new MAPINFO so it needs to be in a separate .pk3 file loaded after the IWAD.
Since this needs to be loaded after the IWAD it was also possible to add a small DECORATE lump which fixes a few errors inherited from the original Dehacked patch, like monster counting bugs and unintentionally shootable decorations.
2019-07-13 20:29:29 +02:00
Christoph Oelckers 2e42e4f5fb - fixes to let Hacx load its own extended font.
There were two issues blocking this:

* the Doom BigUpper font was loaded for all Doom-based games. It is only valid for original idgames releases and nothing more.
* Hacx.wad defines its BigFont in FONTDEFS which blocks all custom fonts. Since the Hacx font and GZDoom's base BigFont are very similar, the FONTDEFS lump now gets deleted from the WAD directory.
2019-07-13 16:20:57 +02:00
Christoph Oelckers 8efe18b3ba - text update and inclusion of Czech and Polish in the menu. 2019-07-10 19:57:40 +02:00
Christoph Oelckers 8b4d85f0d7 - tested and fixed the attachable lights. 2019-07-07 09:50:02 +02:00
Christoph Oelckers 5df8919b90 Merge branch 'master' into userlights 2019-07-07 08:11:09 +02:00
Major Cooke b66b4ae0ec 'Fixed' spacing. 2019-07-03 18:01:45 +02:00
Major Cooke 7b698b4a0e Added RenderUnderlay.
- Works exactly like RenderOverlay, but is drawn behind the status bar/huds instead.
2019-07-03 18:01:45 +02:00
Christoph Oelckers 1dcbe43d95 - User definable dynamic lights
This hasn't been tested yet!
2019-06-28 12:35:42 +02:00
Christoph Oelckers 20b6395cf0 - give UMAPINFO the ability to disable cluster-based exit texts. 2019-06-18 20:40:41 +02:00
alexey.lysiuk 44f896174a - restored indication of console scrolling
https://forum.zdoom.org/viewtopic.php?t=65070
2019-06-17 10:32:13 +03:00
alexey.lysiuk 459fe74a1f - made console cursor fill whole character box
https://forum.zdoom.org/viewtopic.php?t=64962
2019-06-17 09:46:57 +03:00
alexey.lysiuk d5d509ea10 - switched to unconditional level exit in scriptified actors
Action special may not work properly in a very specific setup
E.g., exit to the next level within a hub via boss brain death was broken
2019-06-16 15:05:36 +02:00
alexey.lysiuk cc5bff6c9c - exported unconditional level exit to ZScript
Exit_Normal and Exit_Secret specials imply addition conditions to make a decision about proceeding to the next map
A few scriptified actors require a bypass of these conditions in order to work properly
2019-06-16 15:05:36 +02:00
Rachael Alexanderson 764e95f34f - compat_pointonline for doom2 map14 2019-06-15 04:57:03 -04:00
Alexander c161635cca localize custom menu titles in option search results 2019-06-12 17:37:29 +02:00
alexey.lysiuk b6ada166fc - fixed compilation of FXAA shader by macOS OpenGL
Compile Shader 'shaders/glsl/fxaa.fp':
ERROR: 0:250: '' : syntax error: incorrect preprocessor directive
ERROR: 0:250: '' : syntax error: unexpected tokens following #if preprocessor directive - expected a newline
ERROR: 0:265: '' : syntax error: incorrect preprocessor directive
ERROR: 0:265: '' : syntax error: unexpected tokens following #if preprocessor directive - expected a newline
ERROR: 0:266: '' :   Macro Redefined lumaM
ERROR: 0:301: '' : syntax error: incorrect preprocessor directive
ERROR: 0:301: '' : syntax error: unexpected tokens following #if preprocessor directive - expected a newline
ERROR: 0:599: '' : syntax error: incorrect preprocessor directive
ERROR: 0:599: '' : syntax error: unexpected tokens following #if preprocessor directive - expected a newline

https://forum.zdoom.org/viewtopic.php?t=65003
2019-06-11 08:20:24 +03:00
Gutawer 324a720d56 - added a linear transformation system to Shape2D so that things like rotations and scales can be changed without having to clear and push a large amount of data 2019-06-08 14:05:32 +02:00
Rachael Alexanderson 0e6d30f671 - language update 2019-06-07 09:11:28 -04:00
alexey.lysiuk 5c0562ca7a - check for presence of fonts in message box menu
https://forum.zdoom.org/viewtopic.php?t=64958
2019-06-07 11:49:01 +03:00
Blue Shadow b026b7a880 - fixed PlaySpawnSound call in A_ThrowGrenade 2019-06-05 11:28:59 +03:00
alexey.lysiuk addcad8ac0 - disabled discard in FXAA shader with Vulkan backend
Discard caused graphical corruptions on AMD hardware with Vulkan backend enabled

https://forum.zdoom.org/viewtopic.php?t=64230
2019-06-04 11:32:00 +03:00
alexey.lysiuk da2d0e47e6 - removed array length() function from shadowmap shader
Array's length() function is not yet supported by SPIRV-cross and MoltenVK
Its usage was replaced by explicit nodes count value passed as uniform
2019-05-24 14:29:37 +03:00
Christoph Oelckers 61ead74492 - made the colorset names and the texts in the color picker localizable. 2019-05-19 18:57:39 +02:00
Christoph Oelckers 04334aa0fe - implemented subtitle display for Blackbird's voiceover messages. 2019-05-19 12:16:42 +02:00
alexey.lysiuk 270f8fb381 - added missing quotation mark in menu definition
Script error, "gzdoom.pk3:menudef.txt" line 1472:
Insufficient parameters for OptionMenuItemOption
2019-05-19 13:01:09 +03:00
Christoph Oelckers 2c226afff1 - implemented subtitles for intermission slideshows. 2019-05-19 10:28:07 +02:00
Christoph Oelckers 35e25a8aea - language update. 2019-05-19 08:11:11 +02:00
Christoph Oelckers 7a8defd76f - added European Portuguese to the menu.
This is sufficiently complete with only some intermission texts and the Strife dialogues falling back to the Brazilian version.
2019-05-18 18:46:07 +02:00
Alexander 7540de4027 added a crosshair on/off toggle 2019-05-18 11:32:48 +02:00
Rachael Alexanderson a40c7821a1 - language update 2019-05-14 14:06:53 -04:00
Magnus Norddahl f3cb5e09e4 - SIMPLE is never ever defined for main.fp 2019-05-13 22:38:16 +02:00
Magnus Norddahl bab5862383 - fix some vulkan warnings 2019-05-13 21:15:10 +02:00
alexey.lysiuk 7298ba2707 - do not show par time when it's zero
https://forum.zdoom.org/viewtopic.php?t=64551
2019-05-13 11:04:55 +03:00
Magnus Norddahl 5f12191c05 - fix validation error for shader input not declared by main.vp 2019-05-12 23:15:49 +02:00
Magnus Norddahl e75ab8ed09 - fix wrong fog color used for ssao when using multisampling 2019-05-05 23:23:47 +02:00
player701 32109a75a7 - Fixed random generation of friendly obituaries 2019-05-04 21:06:09 +02:00
Magnus Norddahl 1973001834 - use the exact sRGB->linear transfer function in HDR mode as the 2.2 gamma approximation is visibly inaccurate in this case 2019-05-01 00:55:31 +02:00
Rachael Alexanderson 777a4c600a - bump zscript version to 4.2 - if this gets feature updates it should give warnings ahead of time, this time 2019-04-29 00:14:03 -04:00
alexey.lysiuk 6d1a85af3c - fixed deprecation warnings in core scripts
Script warning, "gzdoom.pk3:zscript/ui/statscreen/statscreen.zs" line 24:
Call to deprecated function CharAt
Script warning, "gzdoom.pk3:zscript/ui/statscreen/statscreen.zs" line 24:
Accessing deprecated function CharAt - deprecated since 4.1.0
Script warning, "gzdoom.pk3:zscript/ui/menu/search/query.zs" line 64:
Call to deprecated function ToLower
Script warning, "gzdoom.pk3:zscript/ui/menu/search/query.zs" line 64:
Accessing deprecated function ToLower - deprecated since 4.1.0
Script warning, "gzdoom.pk3:zscript/ui/menu/search/query.zs" line 65:
Call to deprecated function ToLower
Script warning, "gzdoom.pk3:zscript/ui/menu/search/query.zs" line 65:
Accessing deprecated function ToLower - deprecated since 4.1.0
Script warning, "gzdoom.pk3:zscript/ui/menu/conversationmenu.zs" line 202:
Call to deprecated function CharAt
Script warning, "gzdoom.pk3:zscript/ui/menu/conversationmenu.zs" line 202:
Accessing deprecated function CharAt - deprecated since 4.1.0
Script warning, "gzdoom.pk3:zscript/ui/menu/conversationmenu.zs" line 235:
Call to deprecated function CharAt
Script warning, "gzdoom.pk3:zscript/ui/menu/conversationmenu.zs" line 235:
Accessing deprecated function CharAt - deprecated since 4.1.0
2019-04-28 11:26:01 +03:00
alexey.lysiuk 63d30e27a6 - bump versions to match the latest release
we don't want to miss deprecation warnings
2019-04-28 11:24:24 +03:00
Christoph Oelckers 5f871b7aa0 - mark NewPlayerMenu as protected. 2019-04-26 12:54:57 +02:00
Christoph Oelckers 03828bb759 - removed the leftovers of the removed savedamount variable. 2019-04-26 12:00:58 +02:00
Christoph Oelckers 3bb42aaff7 - removed the MaxAmount fudging from MaxHealth. 2019-04-26 09:58:58 +02:00
Christoph Oelckers 933ff805f1 - another text update. 2019-04-25 09:40:52 +02:00
Christoph Oelckers 23e2b1c0c0 - use Obituary for both Demon and Spectre. 2019-04-23 10:49:18 +02:00
Christoph Oelckers cbb3e17267 - minor text update. 2019-04-23 10:42:41 +02:00
Christoph Oelckers 5122aa0571 - fixed the internal name of the original SmallFont to be different from the real SmallFont. This necessitated creating a separate font object, even if it has the same contents.
- added an OriginalBigFont as well.
2019-04-23 09:34:28 +02:00
Christoph Oelckers e0d57e5464 - added smarter font replacement logic to the confirmation screen. 2019-04-23 08:47:06 +02:00
Nemrtvi 4a33f4f85b Sort language options
Reorders the languages to appear in alphabetical order, adds an English keyword, and adds an accent mark to Portuguese.
2019-04-22 19:20:45 +02:00
Christoph Oelckers 8357f2b16b - re-enabled code block commented out for testing. 2019-04-22 18:52:21 +02:00
Christoph Oelckers e53fc83ef2 - text update. 2019-04-22 12:07:28 +02:00
Christoph Oelckers ec13d0e4c1 Merge remote-tracking branch 'remotes/origin/vulkan2' 2019-04-22 10:45:32 +02:00
Christoph Oelckers 6f3982865f - refinement of font substitution logic. 2019-04-22 10:23:28 +02:00
Christoph Oelckers e0a0be4f7b - added a CanPrint function to FFont and used that to handle the statistics display on the automap HUD to only replace the font when actually needed, not based on the language. 2019-04-22 09:08:43 +02:00
Christoph Oelckers 5b6bae409e - automated the SmallFont selection based on a filter string in the language table. 2019-04-21 12:38:43 +02:00
Christoph Oelckers 13841655aa - add color remapping for NewSmallFont as well. 2019-04-21 10:49:27 +02:00
Christoph Oelckers fcbde757c9 - do not mix game-specified fonts with the extensions for the stock version.
This generally doesn't look good when different colors are mixed or the mismatch in color ranges causes bad translations to be generated.
2019-04-21 08:09:31 +02:00
Christoph Oelckers cbc3bc500f - fixed inverted logic for displaying the generic log in Strife. 2019-04-20 09:04:31 +02:00
Magnus Norddahl 62fa74485d Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-19 18:49:00 +02:00
Christoph Oelckers ec8e57c61e - text update. 2019-04-19 10:57:58 +02:00
Christoph Oelckers 4e23d543ef - re-added the menu option for wipetype which got lost in a recent menu reorganization. 2019-04-19 09:35:03 +02:00
Christoph Oelckers 23412a4f28 - fixed a few developer warnings. 2019-04-19 09:08:31 +02:00
Christoph Oelckers a5d743cc3b - fixed: The color sliders in the player setup menu may not be selected when inactive. 2019-04-19 07:50:52 +02:00
Christoph Oelckers 68597da75d - removed debug output. 2019-04-19 07:24:23 +02:00
Christoph Oelckers 35186e9fd7 - adjustments to the player menu so that the display isn't cut off on the smallest screen sizes. 2019-04-18 00:16:09 +02:00
Christoph Oelckers 2a329950f6 - fixed menu caption for languages which use the VGA font. 2019-04-17 23:40:05 +02:00
Magnus Norddahl d63513ec14 - fix normal vectors on models 2019-04-17 20:42:00 +02:00
Magnus Norddahl 15dae4cfe6 - rewrite depthblur.fp to workaround what seemed to be a bug in the NVidia driver 2019-04-16 16:17:23 +02:00
Rachael Alexanderson 5913f72c9f Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-16 08:11:53 -04:00
Rachael Alexanderson 09a2b53b21 - rename `vid_backend` to `vid_enablevulkan`. Also changed the CVAR from a 0-state enable to 1-state. So `vid_enablevulkan==1` enables vulkan now. This should be less confusing. 2019-04-16 08:10:57 -04:00
Christoph Oelckers 89a11d1a9d - added Korean and Portuguese to the language menu
Also add an English name in parentheses to Russian and Korean so that people not fluent in these scripts know what they selected.
2019-04-16 10:27:47 +02:00
Magnus Norddahl 9d29a460de - simplify depthblur.fp into a single function 2019-04-16 08:59:29 +02:00
Magnus Norddahl 67490d13cb - add gl_ssao_debug mode showing the depth 2019-04-16 05:29:32 +02:00
Magnus Norddahl 558760c090 - fix the gl_ssao_debug cvar 2019-04-16 03:32:54 +02:00
Rachael Alexanderson 73efe707ac Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-15 01:34:22 -04:00
Christoph Oelckers a8c47408fa - implemented 'deletelumps' feature and add Chex Quest 3 texts.
The episode titles required a workaround because the CQ3 episodes do not contain names in text form: If this is the case, the patch name will be used as a string table identifier to get a matching text for localization.
2019-04-14 22:46:03 +02:00
Christoph Oelckers c45c7cdb4b - reimplemented as an OptionsMenu.
This is both for consistency and better localizability. The old code is retained to ensure that mods inheriting from the old menu continue to work.
2019-04-14 14:03:24 +02:00
Rachael Alexanderson b8dfb3c136 Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-14 06:12:32 -04:00
Player701 ad23726cb6 - Fixed conditions tested for when checking whether "Force respawn" or "Respawn protection" dmflags are enabled 2019-04-14 05:40:23 -04:00
Player701 8ab6747d77 - Added "const" qualifiers to the new UTF-8-aware string methods 2019-04-13 22:13:52 +02:00
Player701 747906730c Added support for monospacing alignment modes to HUDFont / BaseStatusBar.DrawString (#810)
* - Added support for monospacing alignment modes to HUDFont / BaseStatusBar.DrawString

* - added underlying type declaration for EMonospacing

* - replaced "#include v_video.h" with a declaration of EMonospacing
2019-04-13 18:10:58 +02:00
Christoph Oelckers d73f8faafa - added monospacing support to Screen.DrawText and its native counterparts. 2019-04-13 12:17:38 +02:00
Christoph Oelckers 3938119192 - added CharUpper and CharLower functions to ZScript.
These, like MakeUpper and MakeLower, use the internal Unicode case conversion tables.
2019-04-13 10:26:55 +02:00
Christoph Oelckers f7561f25d6 - added Unicode aware MakeUpper/MakeLower functions to FString and ZScript's String and deprecated ToUpper/ToLower because their semantics did not allow fixing them. 2019-04-13 10:12:33 +02:00
Christoph Oelckers bcf7bc8d34 - added some UTF-8 utilities to FString.
This deprecated CharAt and CharCodeAt for being unsuitable for text processing and in the case of CharCodeAt also for being buggy.
A new replacement, ByteAt has been added that reads a string byte by byte, as well as CodePointCount, which counts the amount of Unicode code points in a string and GetNextCodePoint which reads the string code point by code point.
Note that while this woll work as intended with the currently supported languages as a means to read single characters, there is no guarantee that this will remain so if Unicode support gets extended to things which break the "one code point == one character" assumption.
2019-04-13 09:31:36 +02:00
Christoph Oelckers c0b322c51a - make the switch between game and generic fonts automatic by adding a key value to the language table 2019-04-12 00:20:42 +02:00
Rachael Alexanderson 3deda0efd2 Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-11 17:45:35 -04:00
Christoph Oelckers 1090c4b345 - added generic font support to the dialogue system. 2019-04-11 18:56:13 +02:00
Rachael Alexanderson aeb63321ad - add optional hacx_gzdoom_stuff.pk3 to HacX's IWADINFO 2019-04-11 12:28:54 -04:00
Magnus Norddahl db4310ca6b - prevent excessively bright pixels as this is actually visible on a HDR monitor 2019-04-11 03:34:34 +02:00
Christoph Oelckers b1ca746af3 - added a "DeleteLumps" list to IWADINFO
This is for IWADs that contain content which clashes with the engine and must be removed. The primary reason are the unimplemented characters in Raven's BigFont.
2019-04-11 03:02:23 +02:00
Christoph Oelckers 9f5b0001fe - handle generic fonts on the summary screen. 2019-04-11 02:00:51 +02:00
Christoph Oelckers 9fddc38030 - allow all list menu items to fall back on the Unicode font for languages which are not supported by the bitmap font.
This allows the primary menus to display Korean text without any further special handling.
2019-04-10 22:25:31 +02:00
Christoph Oelckers b423caa8d6 - removed the rather pointless hud_althudfont CVAR and the tiny piece of code it activated.
This was meant for using the VGA font in the alternative HUD but this never went beyond the Kill/Item/Secret display which isn't useful for localization.
2019-04-10 21:57:24 +02:00
Christoph Oelckers 4bd01de4db - updated strings. 2019-04-10 21:33:06 +02:00
Christoph Oelckers 5e5780dd65 - allow using the VGA font for map name display on the alternative HUD. 2019-04-10 21:21:33 +02:00
Christoph Oelckers 31d1f8ba50 - fixed redundant map name display on alternative HUD's automap HUD. 2019-04-10 20:56:24 +02:00
Christoph Oelckers 1b077c560d - removed unused mSmallFont. 2019-04-10 20:43:00 +02:00
Christoph Oelckers 9e096c62fd - allow the automap HUD to use the VGA font. 2019-04-10 20:39:15 +02:00
Rachael Alexanderson 7b06fbe28e Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-10 04:02:42 -04:00
Christoph Oelckers 939815d6bf - added VGA font support to the MessageBoxMenu class
This is optional, of course.
2019-04-10 01:33:02 +02:00
Christoph Oelckers f1105f2e13 - further work on generic HUD
Some reorganization to avoid code duplication plus making the log screen capable of using the generic font. This also means that the popup for the log in Strife's status bar will be disabled when in generic mode - this popup with its special font would be a bit problematic.
2019-04-10 00:45:32 +02:00
Christoph Oelckers 8b0dd1376f - changed the filter name for Doom IWADs
It's "doom.id.doom1/2" instead of "doom.doom1/2" now.
The config file's content will be renamed and for lump filtering a fallback has been added - note that you cannot combine both naming schemes! The old one has to be considered deprecated now.

This also removes the duplicated content necessitated by the old naming scheme.
2019-04-10 00:15:16 +02:00
Christoph Oelckers 7a01b6b0d4 - use Unicode font for deathmatch summary screen to bring it in line with the coop version. 2019-04-09 20:15:40 +02:00
Rachael Alexanderson 536aa98e87 Merge remote-tracking branch 'origin/master' into vulkan2 2019-04-09 02:01:29 -04:00
Christopher Bruns 263842169e Fix typo: add missing dollar sign in new stereo 3D submenu. 2019-04-08 19:45:48 +02:00
Magnus Norddahl c28e56f9e8 - workaround buggy preprocessor in old AMD OpenGL drivers 2019-04-07 19:42:32 +02:00
Rachael Alexanderson 06c0aa911d Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-04-07 07:03:43 -04:00
Rachael Alexanderson 1096c14a3a - remove 320x240 from the list of resolution presets
- enforce a minimum CleanXfac scaling in the menu to prevent accidental divide by 0's
2019-04-07 06:02:36 -04:00
Rachael Alexanderson e6dab46b90 - remove 320x240 from the list of resolution presets
- enforce a minimum CleanXfac scaling in the menu to prevent accidental divide by 0's
2019-04-07 06:01:47 -04:00
Christoph Oelckers a166af82f8 - added layout adjustment to the skill menu as well and shortened the Italian text for "I'm too young to die" because it did not fit the minimum available space. 2019-04-07 09:11:16 +02:00
Christoph Oelckers 6afe9d09f3 Merge branch 'master' into vulkan2 2019-04-07 08:17:12 +02:00
Rachael Alexanderson 8dc7190fb3 - don't autoload nerve.wad with regular Doom 2. 2019-04-06 08:21:42 -04:00
Christoph Oelckers b01529f473 - removed a few unnecessary abbreviations in the Spanish menu texts. 2019-04-06 09:59:32 +02:00
Christoph Oelckers 6928e019ca - language update. 2019-04-06 09:28:22 +02:00
Christoph Oelckers aed9c458db Revert "- initial layout for new player setup menu."
This reverts commit 1567bc5911.
2019-04-05 12:25:16 +02:00
Christoph Oelckers 2a6cdc7a6a Merge branch 'master' of https://github.com/coelckers/gzdoom 2019-04-04 17:40:52 +02:00
Rachael Alexanderson 655b0c27de Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-04-03 10:58:12 -04:00
Christoph Oelckers 55e00f350b - use a more reliable menu check for the player menu items.
This needs to ensure that it only allows modification from within a menu's event handlers and nowhere else.
2019-04-01 00:27:43 +02:00
Nemrtvi a6593e1400 Update language list in MENUDEF
The file renames “enu” to “default” for consistency and only contains languages that are complete/up to date, i.e. American English, British English, German, Castilian Spanish, Latin American Spanish, French, and Russian. Italian, while not 100% complete, contains a full engine translation, so it has enough material to make it here.
2019-04-01 00:12:04 +02:00
Christoph Oelckers 1567bc5911 - initial layout for new player setup menu. 2019-03-31 13:34:55 +02:00
Christoph Oelckers 4b40e266f1 - use the proper virtual methods for setting and retrieving the string in OptionMenuItemTextField.
Without this the class cannot be properly subclassed.
2019-03-31 10:33:46 +02:00
Christoph Oelckers a08cc2b477 - switched the input grid to the new font. Also use the same scale as the rest of the menus. 2019-03-31 10:08:09 +02:00
Marisa Kirisame 659de5d2d8 Silence "truncation of floating point value" warnings in gzdoom.pk3. 2019-03-31 09:50:59 +02:00
Rachael Alexanderson ead3695844 Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2
# Conflicts:
#	src/posix/sdl/gl_sysfb.h
2019-03-31 03:49:08 -04:00
Christoph Oelckers 8919a991a7 - fixed: The on-screen keyboard did not properly delete the last character of the input string. 2019-03-31 09:48:15 +02:00
Rachael Alexanderson 3fd449378c - replace the lost 320x200 resolution with 960x600 2019-03-31 03:38:15 -04:00
Christoph Oelckers ab16d3cd72 - limit minimum screen size to 640x400.
The current menu system simply does not work that well with 320x200, rendering the game hard to use at that tiny screen size. This is a clear case where the work required to keep it operational stands in no relation to the benefit.
2019-03-31 09:13:22 +02:00
Christoph Oelckers a768500afa - do not use CalcIndent for 320x200. 2019-03-31 09:02:11 +02:00
Nemrtvi 282cce765d MENUDEF change for new strings in Russian
This is to accomodate the grammatical gender system.
2019-03-30 21:26:15 +01:00
Christoph Oelckers f5ad144934 - fixed: air_finished was sometimes checked against level.time, sometimes against level.maptime.
For a per-level effect it needs to always check against level.maptime.
2019-03-30 18:52:32 +01:00
Christoph Oelckers f48e0280d8 - fixed: OptionMenuItemSafeCommand did not allow unsafe commands. 2019-03-30 09:25:48 +01:00
Christoph Oelckers 4619fc5622 - removed unused (now always active) gl_trimsprites option from the menu. 2019-03-29 19:10:10 +01:00
Rachael Alexanderson bd284cf337 Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-03-29 04:53:10 -04:00
player701 2766b5ab2b - Fixed misplaced vertex on Community Chest MAP16 2019-03-28 18:55:32 +01:00
alexey.lysiuk c4ef8ce465 - fixed level progression of titan-426 map on easy skill
https://www.doomworld.com/idgames/levels/doom2/Ports/s-u/titan426
2019-03-27 13:18:33 +02:00
Rachael Alexanderson 1dd0909ec2 - fix a missing texture in strife map21 2019-03-27 06:57:41 -04:00
Christoph Oelckers f4401d1525 - this option was in the wrong menu 2019-03-26 17:30:44 +01:00
Magnus Norddahl 4cc9880f50 Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-26 13:08:59 +01:00
Christoph Oelckers 0341a3d75b - made the gross railing hack for Strife a compatibility option and restricted it to MAP04
The side effects here broke other maps and this is really too glitchy to be turned on unless really necesasary.
2019-03-26 00:38:54 +01:00
Rachael Alexanderson ddc67fb1bc - fix missing texture in Strife MAP15 2019-03-25 23:54:01 -04:00
Magnus Norddahl 2d8516b2ca - make shaderClipDistance optional 2019-03-25 19:44:46 +01:00
alexey.lysiuk 6c91d15b0a - fixed adjustment of options menu slider with mouse
https://forum.zdoom.org/viewtopic.php?t=64063
2019-03-25 12:59:36 +02:00
Rachael Alexanderson 91dfebd211 Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2
# Conflicts:
#	wadsrc/static/menudef.txt
2019-03-24 09:08:55 -04:00
Christoph Oelckers 10b25110c4 - restored some accidentally deleted parts of the Display Options menu. 2019-03-24 13:41:43 +01:00
Rachael Alexanderson 26ec0f6f17 - fixed: VideoOptions was renamed to DisplayOptions, but its menu reference was not updated, causing a VM abort 2019-03-24 08:18:44 -04:00
Christoph Oelckers 48cff0a617 - fixed the label for "Master Volume".
The text already existed, just with a different name.
2019-03-24 12:56:38 +01:00
Christoph Oelckers 92586e6c17 - did a bit of cleanup on the option menus by regrouping some settings, especially splitting out of the Hardware Rendering Options menu into submenus. 2019-03-24 12:42:57 +01:00
Christoph Oelckers dc67355e95 - added A_Explode compatibility options.
There are two options here - one only disables the vertical thrust and the other goes back fully to the original non-z-aware code.
Both options are settable through MAPINFO.
For the compatibility presets, the normal ones only disable the vertical thrust, the strict ones force use of the old code entirely.
2019-03-24 12:42:57 +01:00
Christoph Oelckers d9ac337d7a - fixed string table references for "No Rest for the Living." 2019-03-24 12:42:56 +01:00
Player701 456c1eb926 - Added Unholy Realms MAP27 to the node rebuild compatibility list 2019-03-23 15:28:27 +01:00
Christoph Oelckers 4fff8a41b7 Merge branch 'master' into vulkan2 2019-03-23 09:49:57 +01:00
Christoph Oelckers 6ba8067499 - language update. 2019-03-23 09:49:15 +01:00
Christoph Oelckers 4aef99632d Merge branch 'master' into vulkan2 2019-03-21 18:56:06 +01:00
Christoph Oelckers 6d82e6f5f5 - fix some holes the player can fall in for darken2 MAP12.
This map went a bit too far with lighting hacks depending on holes in the floor.
2019-03-20 21:50:27 +01:00
Christoph Oelckers 0b84d6b204 - added a compatibility handler for a badly constructed crossbeam bridge in Unholy Realms MAP17. 2019-03-20 21:39:53 +01:00
Christoph Oelckers 9f6b8cd323 - fixed spacing of Strife's merchant's texts. 2019-03-20 00:49:00 +01:00
Christoph Oelckers cdc109fbc0 - fixed space calculations for option menu sliders. 2019-03-20 00:01:12 +01:00
Rachael Alexanderson 4fae7ad4a9 - implement a menu for Vulkan. todo: Implement a way to select a Vulkan renderer directly, also todo: Hide Vulkan menu if the system doesn't support it. 2019-03-19 15:38:34 -04:00
Rachael Alexanderson 3c594c6c93 Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-19 15:12:18 -04:00
Christoph Oelckers 6e0e221804 - give Hexen's PoisonCloud the OLDRADIUSDMG flag.
This actor has such oddball semantics that it's better not subjected to the revised radius damage code.
2019-03-19 19:54:46 +01:00
Christoph Oelckers 0abd9d4aec - fixed slider scaling. 2019-03-19 18:50:38 +01:00
Christoph Oelckers a1acc4adc4 - fixed layout issues with Strife's dialogues.
They were using some settings from the option menu which they never should have used to begin with.
2019-03-19 17:46:59 +01:00
Christoph Oelckers cda248df66 - localized some user-facing texts that were still string literals. 2019-03-19 00:37:43 +01:00
Christoph Oelckers d86dd902fb Merge branch 'master' into vulkan2 2019-03-18 13:31:04 +01:00
Christoph Oelckers 8f93dcc884 - fixed the option menu indentation.
This was yet another piece of code that essentially was unworkable thanks to the limited screen space with the old bitmap fonts.
With the new font there is enough screen space to do this properly.
2019-03-18 10:54:26 +01:00
Christoph Oelckers 86f9824c2a - updated the text data to the content of the Google spreadsheet. 2019-03-18 10:18:31 +01:00
Rachael Alexanderson dd4ef010ab Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-18 04:05:19 -04:00
Christoph Oelckers 54f5076b0f - fixed option menu selector and slider bar positioning. 2019-03-17 22:00:28 +01:00
Christoph Oelckers 13f3bf2331 - add an option to print the kill, item and secret stats on the alternative HUD with the NewSmallFont.
This has to be set in the console, the default is still the regular small font. Mainly added because some mods have really hard to read fonts where it is not easy to decipher the numbers.
2019-03-17 21:35:33 +01:00
Christoph Oelckers b839da45ec - Found two more unlocalized texts in the color picker. Due to space constraints a proper localization is not possible so these were replaced by a non-text. 2019-03-17 20:56:49 +01:00
Alexander dbb93d6c08 option search improvements
1. Top-level menu names are now properly handled.
2. Changing "Any or All terms" option now immediately updates the results.
3. Reformatted menu.zs to have tabs instead of spaces.
2019-03-17 20:28:38 +01:00
Christoph Oelckers b515ac662e - cleaned up the coop summary screen.
This was one of the pieces that suffered badly from the proportions of the game provided SmallFonts, so now it uses the NewSmallFont.
2019-03-17 20:28:12 +01:00
Christoph Oelckers 478eef5628 - fixed positioning of "no files" message on load game screen. 2019-03-17 19:10:25 +01:00
Christoph Oelckers 95adbc58a8 - fixed the spacing for the sliders.
- moved the scroll indicators in the menu to the right and use a brighter color for them - the old ones were only barely visible.
2019-03-17 18:32:55 +01:00
Christoph Oelckers 1beaa8da58 - deleted obsolete and broken font characters. 2019-03-17 18:32:49 +01:00
Christoph Oelckers a6051c8231 - moved the flag display in the gameplay and compatibility menus down below the headline. 2019-03-17 18:32:48 +01:00
Christoph Oelckers 59f0a377d4 - consolidate the dependencies on the font in the option menu. 2019-03-17 18:32:48 +01:00
Christoph Oelckers 2227c15010 - create a second font based on the VGA glyphs that is stylistically more similar to the SmallFont and use that for the option menus. 2019-03-17 18:32:48 +01:00
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
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 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
Christoph Oelckers 04281d4a0b - fixed positoning issues in the load/save menu. 2019-03-15 20:22:40 +01:00
Magnus Norddahl cce96ca87a - implement shadow maps 2019-03-15 07:54:34 +01:00
Magnus Norddahl dca0b75038 - change the images to be upside down until presentation to increase compatibility with shaders designed for OpenGL
- clamp scissors fully to avoid NVidia's awful drivers locking up the entire system if they end up out of bounds
- perform buffer clears as part of the render pass. this puts some restrictions on how FRenderState.Clear can be used
- add an offset uniform to the present shaders so the vulkan target can flip the image during presentation
2019-03-12 23:53:20 +01:00
Magnus Norddahl 0620041228 - remove screenquadscale.vp 2019-03-12 16:24:55 +01:00
Rachael Alexanderson 879aae1bd3 Merge branch 'master' of https://github.com/coelckers/gzdoom into vulkan2 2019-03-11 22:07:46 -04: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 c0d333ee56 - adjusted the script-side MidPrint calls to honor the con_midconsolefont CVAR. 2019-03-11 22:44:28 +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 0884057ae1 - use a higher resolution console font with better Unicode support. 2019-03-10 17:54:03 +01:00
Christoph Oelckers 5a891f3b0a - fixed color of status screen text. 2019-03-09 17:50:23 +01:00
alexey.lysiuk 02ed758447 Merge branch 'master' into vulkan2
# Conflicts:
#	src/posix/cocoa/i_video.mm
2019-03-09 16:45:49 +02:00
Christoph Oelckers 392ba7ed2e - properly construct the reply texts for Strife's merchants. 2019-03-09 13:34:47 +01:00
Christoph Oelckers 99c8ba1288 - use uAddColor instead of uObjectColor2 for the ending color of a special colormap range.
Unlike uObjectColor2, this is more global state. uObjectColor2 is part of gradient calculation which may later be offloaded to a secondary buffer which already resulted in only conditionally setting it, resulting in broken special colormap application for the software renderer.
2019-03-09 12:12:33 +01:00
Christoph Oelckers 54efbf3edd Merge remote-tracking branch 'remotes/origin/master' into vulkan2 2019-03-09 08:55:40 +01:00
Sterling Parker cabe0c583e Add LookScale property
As requested by @coelckers.
2019-03-07 21:22:33 +01:00
Sterling Parker ae1a1df02d Add LookScale variable on weapon
This variable allows a weapon to set a custom look sensitivity multiplier without fiddling with FOVScale / DesiredFOV hacks.
2019-03-07 21:22:33 +01:00
Magnus Norddahl b313f91ab0 - add layout location decl to all postprocess shaders 2019-03-05 18:55:31 +01:00
Magnus Norddahl 319099fee9 Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-05 03:07:30 +01:00
Alexander 77cb9ae866 added MakeScreenShot and MakeAutoSave functions to FLevelLocals 2019-03-04 19:16:51 +01:00
Major Cooke 6327734659 Added CanTouchItem virtual.
- Allows an actor with +PICKUP flag to determine if it can pick up specific items or not.
2019-03-04 13:15:27 +01:00
Magnus Norddahl 56afcd210b - fix: gl_PointSize is required in Vulkan when drawing points
- fix: add depthstencil attachment when stencil is active while depth is not
2019-03-03 23:30:36 +01:00
Christoph Oelckers 43ec2cf8f2 . added the missing Cyrillic letters to the console font. 2019-03-03 20:09:25 +01:00
Nemrtvi 864b99a5a0 Split “Linear” option value into three
This option value is used for 4 different options, and splitting it up into three will allow for languages based on grammatical gender systems to have different endings. Necessary for e.g. Russian in order to sound correctly.

The corresponding strings are already in the language spreadsheet.
2019-03-03 16:12:46 +01:00
Magnus Norddahl 7d56aa4b0b Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-03 13:45:22 +01:00
Christoph Oelckers 735e1d1a44 - allow localization of the fallback string "Person".
The corresponding text is in the translation spreadsheet which isn't part of the repo yet.
2019-03-03 09:16:21 +01:00
Christoph Oelckers f15e3c871d - did a bit more tweaking to the menu dims.
Red on red in Doom was still not good, so the colors were darkened more and made more opaque.
2019-03-03 09:08:19 +01:00
Christoph Oelckers af3b100b81 - split up the compatibility menu by making each subsection its own submenu.
This one, even more than the gameplay options has devolved into an overwhelming wall of text.
2019-03-03 08:58:49 +01:00
Christoph Oelckers be0f2f3b74 - split up the automap colors menu.
The cheat and overlay settings are now in submenus. Like the gameplay menu, this was simply too long.
2019-03-03 08:47:05 +01:00
Christoph Oelckers 83fce134f2 - split out the deathmatch and coop gameplay settings into their own submenus. 2019-03-03 08:41:20 +01:00
Christoph Oelckers cac032cb1c - made the menu dim darker and a bit more opaque.
The recent localization work has made it apparent that on many images the menu was extremely hard to read because its colors often clash with the background.
The choice of a bright overlay color with extremely low opacity is simply not enough to make the menus comfortable to navigate. Chex Quest was particularly bad but the problem existed in many Doom mods as well.
This also changes the CQ dim color to something a bit more green to better fit with the theme.
2019-03-03 08:29:10 +01:00
Christoph Oelckers 1c828b98c2 - fixed incorrect flag keyword in IWADINFO. 2019-03-03 08:16:41 +01:00
Christoph Oelckers f3813c036f - filter out the BIGFONT lump in Chex Quest, now that we have a more complete font internally. 2019-03-03 07:50:10 +01:00
Christoph Oelckers 6ba8fee5c2 Merge branch 'master' into vulkan2 2019-03-03 00:04:19 +01:00
Christoph Oelckers 3903d957bd - moved the weapon bobbing options from the Display Options to the HUD Options menu. 2019-03-03 00:03:22 +01:00
Rachael Alexanderson 580c55f8a5 - moved language changer to miscellaneous menu
- removed spacing gaps in the customize controls menu
2019-03-02 13:59:42 -05:00
Christoph Oelckers 5682b1b5bb -corrected text placement on load+save menu. 2019-03-02 16:03:56 +01:00
Magnus Norddahl f8aa48d053 - fix blinking caused by uninitialized clipping planes 2019-03-02 14:16:11 +01:00
Christoph Oelckers 0febe20a08 - fixed: Unmorphing a monster did not clear its UNMORPHED flag. 2019-03-02 13:15:38 +01:00
Christoph Oelckers 805cf6c098 - moved the sprite box on the player menu up a bit because this was badly overlapping with some long texts in most languages. 2019-03-02 12:20:58 +01:00
Magnus Norddahl 05a6896d4f - Pass vertex color and normal via uniform buffer when the attribute isn't available 2019-03-02 01:56:08 +01:00
Magnus Norddahl d86a56086c Merge remote-tracking branch 'origin/master' into vulkan2 2019-03-01 21:50:06 +01:00
Magnus Norddahl d4118a755c - load all the shaders and use the right one for each renderpass 2019-03-01 02:40:02 +01:00
Christoph Oelckers cad2f49ceb - use BigUpper font for option menu captions. 2019-02-28 22:19:53 +01:00
Major Cooke b48f7da43e Renamed to musplaying. 2019-02-28 18:47:28 +01:00
Major Cooke 210af0d414 Exported MusPlayingInfo to ZScript.
- Allows grabbing the currently playing song, base order, and loop properties.
2019-02-28 18:47:28 +01:00
Magnus Norddahl 2e0b34ca72 - hook up enough of renderstate to enable all of main.vp and main.fp 2019-02-28 00:26:49 +01:00
Rachael Alexanderson 612f198fcf - separate/group out the volume sliders, make them look slightly hierarchal in order to denote their importance 2019-02-27 14:56:12 -05:00
nashmuhandes 407983749a Added a master volume setting. 2019-02-27 14:17:45 -05:00
Rachael Alexanderson baf5ebd1ce - fixed: menu language selection would not save on exit (this was due to CVAR protections from the menu)
- moved language entry up a bit in the menu
- converted the language entry into a proper CVAR string list selection, instead of a separate menu with said list.
2019-02-27 14:07:49 -05:00
Magnus Norddahl fe67a2c24f - fix enough bugs to finally get some visuals 2019-02-26 20:19:54 +01:00
Rachael Alexanderson e719b9cf00 - merge the options menu properly - the language entry was separated in its own section 2019-02-26 13:39:42 -05:00
Christoph Oelckers e8f690116b - removed unused gl_spritebrightfog CVAR. 2019-02-26 00:07:30 +01:00
Christoph Oelckers 413412f603 Merge branch 'master' into vulkan2 2019-02-23 19:53:38 +01:00
Christoph Oelckers b542d1371d - reorganized the ZScript content in gzdoom.pk3 and changed the files' extensions to something unique for easier syntax highlighting. 2019-02-23 12:08:27 +01:00
Christoph Oelckers 2874a36fbe - added the final missing piece of localization support, i.e. forcing text based menus.
Now a localization mod can disable the graphics patches containing text entirely so that it can properly localize the text based menu variant.
If this flag gets set in MAPINFO, it will override all user settings.
2019-02-23 10:40:07 +01:00
Magnus Norddahl 52460d53d9 - compile main.vp and main.fp for vulkan 2019-02-22 11:30:48 +01:00
Nemrtvi 7060f9cc05 Add language menu to Options
In this menu, all languages supported by GZDoom are selectable with one simple click! Credits to @PROPHESSOR for making it!

(This only edits the English and French languages because they are the only languages currently up to date with GZDoom’s development. A Russian translation will follow suit at a later date.)
2019-02-21 17:54:13 +01:00
Christoph Oelckers 48fcdacf06 - more work on graphics substitutiion
* added a CVAR that sets how localizable graphics need to be dealt with.
* pass the substitution string to OkForLocalization so that proper checks can be performed.
* increased item spacing on Doom's list menus to 18 from 16 pixels, because otherwise the diacritic letters would not fit. 20 would have been more ideal but 18 was the limit without compromising its visual style
* added a second text-only main menu because here the spacing cannot be changed. Doing so would render any single-patch main menu non-functional. So here the rules are that if substitution takes place, it will swap out the entire menu class.
* fixed some issues with the summary screen's "entering" and "finished" graphics.
2019-02-21 00:35:27 +01:00
Christoph Oelckers a0c10df387 - made some adjustments so that the BigFont works as intended.
The auto-calculated height of 24 is too tall, this requires a manual setting here. Also fix the space calculations for the "finished" graphic.
2019-02-21 01:13:42 +01:00
Christoph Oelckers 22781e3cb9 - BigFont update. 2019-02-21 00:43:58 +01:00
Christoph Oelckers f580d85da6 - fixed typo in menu texts. 2019-02-21 00:24:09 +01:00
Christoph Oelckers 7ea2f135df - did not save the latest changes. 2019-02-21 00:23:49 +01:00
Christoph Oelckers 8bdbd2e915 - fixed layout of summary screen. 2019-02-21 00:16:48 +01:00
Christoph Oelckers 6a742f8d34 - changed all places which used a localized string as a format template for printf, String.Format et.al.
Passing something non-constant at compile time here is extremely dangerous, especially when users can replace those strings if they like.
It now uses FString::Substitute in all cases where something needs to be inserted into a template string.
2019-02-20 20:20:06 +01:00
Christoph Oelckers 74f5211046 - fixed accidental commit of incomplete test code. 2019-02-20 18:54:29 +01:00
Christoph Oelckers a6a091c83a - reworked summary screen to use consistent contents, either all patches or all text but not mixed 2019-02-20 00:44:17 +01:00
Christoph Oelckers 9f59a84a37 - allow text substitution for StaticPatch items in ListMenus 2019-02-20 00:43:31 +01:00
Christoph Oelckers 5e288ef2d4 - fixed: Doom used Chex Quest's default settings for menu fonts. 2019-02-20 00:01:20 +01:00
Christoph Oelckers c13e496107 - a bit of text cleanuo. Removed some unused strings and moved a few not-to-be-translated ones to language.def. 2019-02-19 23:18:46 +01:00
Christoph Oelckers 6b8303ed05 - moved the lump/resource names in the string table to their own file and removed them from other language files.
These are neither supposed to be translated nor overridden by other language tables.
Doing so may break later Dehacked refactorings.
2019-02-19 21:47:54 +01:00
Christoph Oelckers 5e7fb16d05 - preparation work for substituting the menu and intermission screen text graphics for localization 2019-02-19 01:22:12 +01:00
Christoph Oelckers 91206f12be - changed zstrformat to allow %c to emit non-ASCII characters as UTF-8. 2019-02-19 00:27:47 +01:00
Christoph Oelckers b29975503d - fixed issues with text entering
* entering a savegame description did not work anymore
* the length check was too restrictive and always underestimated the available space
* use the console font for entering a savegame description. This has more characters and better contrast for this content.
* the interface to the text enterer used bad measurements.
2019-02-19 00:08:23 +01:00
Rachael Alexanderson c7103cbe4d - autoload nerve.wad with Doom 2 2019-02-16 17:23:43 +01:00
Alexander cce270ba72 moved controls to submenus in "Customize Controls" menu
What is done:
D1. Controls are separated by existing sections, each section is now a submenu;
D2. The original sections are preserved;
D3. The original controls order is preserved;
D4. "Controls" section is renamed to "Game", because "Controls" submenu of "Customize Controls" would be too confusing;
D5. Map (automap) controls are added as a section, map controls submenu is unchanged;
D6. Missing controls are added to "Other" section;
D7. Sections are given a title following the scheme "Customize <section> Controls", except N4 (see below).
D8. Inside the sections, spaces are added to group the related controls.

Things that I'm not sure about:
N1. "Game" controls section name is too generic - I'll gladly change it to something more suitable;
N2. "Other" controls section name is too generic - I'll gladly change it to something more suitable;
N3. Map controls submenu could use some spacing, and internal title ("Map Controls") is redundant;
N4. "Strife Popup Screens" section name is too long to fit in scheme described in D7, therefore the title is "Strife Popup Screens Controls";
N5. "Game" section could be divided further, but this will break the original menu structure.
2019-02-16 17:21:55 +01:00
Christoph Oelckers aa550310f6 - allow the language table to supersede the title patches, if appropriate
For the Doom IWADs the provided font looks almost identical to the characters used on the title patches. So, for any level name that got replaced in some language, it will now check if the retrieved name comes from the default table, and if not, ignore the title patch and print the name with the specified font.

This also required removing the 'en' label from the default table,  because with this present, the text would always be picked from 'en' instead of 'default'. Since 'en' and 'default' had the same contents, in any English locale the 'default' table was never hit, so this won't make any difference for the texts being chosen.

Last but not least, wminfo has been made a local variable in G_DoCompleted. There were two places where this was accessed from outside the summary screen or its setup code, and both were incorrect.
2019-02-15 00:29:24 +01:00
Christoph Oelckers 3dce45545f - added U-100-U-17f to the console font.
This was mostly just accent edits of existing characters, so this also contains the less important characters.
2019-02-17 21:01:29 +01:00
Christoph Oelckers 45d75745f0 - reworked console font loading to use the glyph sheets directly and allowing to load more than one per font. 2019-02-17 19:15:57 +01:00
Christoph Oelckers d39a624942 - fixed the player name display.
This was broken by several small unicode-incompatible code fragments.
This commit also removes the input limit for the player name and the savegame description. With multibyte encoding, limiting them to a fixed length did not work right.
Currently these will just overflow the fields if the text becomes too long, this needs some additional work.
2019-02-16 22:57:02 +01:00
Christoph Oelckers deb233677e - made the menu's text input handler Unicode capable.
Also make sure that the savegame description remains readable. Unlike in-game text this can be done without double-encoding existing UTF-8.
2019-02-16 21:29:46 +01:00
Christoph Oelckers d15e3391a0 Merge remote-tracking branch 'remotes/origin/master' into localization
# Conflicts:
#	src/v_font.cpp
2019-02-16 17:35:15 +01:00
Rachael Alexanderson 9f62289507 Merge branch 'master' of https://github.com/coelckers/gzdoom into localization 2019-02-16 10:50:49 -05:00
Ne Mrtvi 0356c2fc67 New BIGFONT, uppercase and lowercase
Now that GZDoom supports uppercase and lowercase characters in the BIGFONT format, this commit actually adds those characters. It contains full support for both the English and Russian (minus the letter Ё) alphabets for both Doom and Strife. As for the existing punctuation graphic lumps in Strife, all extra space is removed, and the sprite offsets are adjusted instead.

This also adjusts the English language file so that all menu header texts utilize these new characters. As a tiny extra, it also adds the letter Ё to the Strife smallfont.

(Credits to Skulltag for the uppercase B, Amuscaria for the uppercase X and Z, and @jnechaevsky for all Russian characters, taken from Russian Doom!)
2019-02-15 19:00:19 +01:00
Christoph Oelckers 6e9b62a43e Merge branch 'master' into localization 2019-02-14 22:24:12 +01:00
Christoph Oelckers 868ac5adf8 - switched the Windows backend to use the Windows Unicode API.
With localization for non-Latin languages on the support list the multibyte API doesn't cut it anymore. It neither can handle system text output outside the local code page nor can an ANSI window receive text input outside its own code page.
Similar problems exist for file names. With the multibyte API it is impossible to handle any file containing characters outside the active local code page.

So as of now, everything that may pass along some Unicode text will use the Unicode API with some text conversion functions. The only places where calls to the multibyte API were left are those where known string literals are passed or where the information is not used for anything but comparing it to other return values from the same API.
2019-02-14 22:23:33 +01:00
alexey.lysiuk be6ce43045 - added ability to customize font of automap marks
Set am_markfont CVAR to a desired font name
Use am_markcolor to select a text color, has no effect with the default font, AMMNUMx
2019-02-13 21:47:53 +01:00
Christoph Oelckers 914818cb88 - fixed run health clamping.
This didn't scale the move factors properly.
2019-02-13 20:12:13 +01:00
Christoph Oelckers 6ff6a6af00 - made gameaction read only
The script side cannot do anything useful with this, because most actions require parameters in global variables, so this is a first grade candidate for rogue mods to make the engine misbehave.
2019-02-13 14:59:55 +01:00
Christoph Oelckers e526cebc8e Merge remote-tracking branch 'origin/master' into localization 2019-02-12 00:20:00 +01:00
Christoph Oelckers 0b8fb3ac1a - cleanup of font init to have less special cases
To make things easier, DBIGFONT, SBIGFONT and HBIGFONT will now be renamed in the lump directory to make things a bit easier to handle.

Another change is to make font folders atomic units to prevent cross-pollution between incompatible fonts. The only exception to this are the def* folders because they need to piece together their fonts from both zd_extra.pk3 and the IWADs.
2019-02-12 00:19:44 +01:00
alexey.lysiuk eaf0ac1f7b - added compatibility entries for maps affected by buggy CheckSwitchRange behavior 2019-02-11 17:57:03 +01:00
alexey.lysiuk d4d010ac32 - added compatibility flag for buggy CheckSwitchRange behavior
https://forum.zdoom.org/viewtopic.php?t=63008
https://forum.zdoom.org/viewtopic.php?t=63650
2019-02-11 17:57:03 +01:00
Christoph Oelckers 3a440a5fa7 - moved the displayed text in strfhelp.o to the string table. 2019-02-11 00:43:57 +01:00
Christoph Oelckers 4bacde36c0 - moved Strife's map names to the string table. 2019-02-11 00:27:08 +01:00
Christoph Oelckers 88e227f1f3 Merge branch 'new_level_refactor' into localization 2019-02-09 12:22:15 +01:00
Christoph Oelckers 3c0c076226 - removed extraneous parameter in SpawnPlayerMissile call in A_FireProjectile.
The native variant has a MissileActor out parameter in this place, but in ZScript that's a secondary return value.
2019-02-09 09:25:29 +01:00
Christoph Oelckers 3d3f260137 - exported LevelLocals's compatibility flags to scripting and fixed all places where access to combined compatibility flags is needed. 2019-02-09 09:17:57 +01:00
Major Cooke acc510dfb3 Added inflictor, source and flag parameters to GetModifiedDamage on actors and ModifyDamage on inventory.
- The flags are used by DamageMobj so modders can determine radius damage, for example, by checking for DMG_EXPLOSION.
2019-02-08 20:07:49 +01:00
Christoph Oelckers c0bbb4fd0d - fixed lowercase handling of non-basic-latin characters and added Undead's Russian translation.
The added table may be overkill but this way the font engine is prepared for things to come.
Currently the text placement in the menu seems a bit broken, that's a task for later.
2019-02-07 13:49:54 +01:00
Christoph Oelckers 5af5717cf1 - added a compatibility fix for KDiZD Z1M3 and fixed some tagging issues in the compatibility handler.
One sector in an underwater area of KDIZD Z1M3 got tagged with an incorrect Transfer_Heights effect which caused render glitches in that area.
There were also a few AddSectorTag calls without first clearing the sector's tags leading to potentially undefined behavior.
2019-02-07 09:42:51 +01:00
Christoph Oelckers 495298079b - rewrote the language table so that it doesn't have to reload everything on a language change.
It now reads everything into a two-dimensional TMap and creates a list of mappings that apply to the current setting.
The constant need for reloading was the main blocker in redesigning how Dehacked strings get inserted. Currently they override everything, but IWAD-based Dehacked text shouldn't block PWAD overrides from PWADs' LANGUAGE lumps and instead be treated as coming from an [en default] block.

This also renames the main block from [enu default] to [en default], because it should be treated as the English default for all English locales and not just make it fall through to the base default as it did before.
2019-02-06 13:59:41 +01:00
Christoph Oelckers 0936a2fa19 - exported all texts from Strife's dialogues to the string table.
Now all this content can be localized. However, since this is actual game content it was placed in a secondary file in zd_extra.pk3, so that it won't affect the GPL-compatible status of the main one.
2019-02-05 13:39:38 +01:00
Christoph Oelckers 546d3d1bf5 - allow localization of Hexen's original ACS strings.
This way of looking up strings is intentionally limited to content from Hexen.wad and Hexdd.wad.
2019-02-05 11:51:19 +01:00
Christoph Oelckers a0042fd653 - removed bad character from A_CustomPunch definition. 2019-02-04 14:08:34 +01:00
Christoph Oelckers 53162a8a5c Merge branch 'master' into new_level_refactor
# Conflicts:
#	src/am_map.cpp
2019-02-03 09:20:13 +01:00
Christoph Oelckers 25071e26e5 - fixed: The CheckEnvironmant call in PlayerThink can already invalidate the PlayerPawn so even the calls to CheckUndoMorph and CheckUse need to get the pawn through the PlayerInfo. 2019-02-03 09:11:33 +01:00
Nemrtvi 4af80fa43b Fixed “Finished:” and “Now entering” in Heretic
The text file
gzdoom/wadsrc/static/zscript/statscreen/statscreen.txt
is set to use strings called “$ENTERING” and “$FINISHED”, located in the language files, in intermission screens between levels in Heretic. However, these strings are named incorrectly in the language files, instead being written as “$WI_ENTERING” and “$WI_FINISHED” for some reason I’m unaware of. After renaming the original script, the ingame text shows up through what is written in the language files, as intended.

On a miscellaneous note: in GZDoom, the text between levels in Heretic says “Entering:”. In the DOS version, it says “Now entering:”. This is accurately reflected in the English language file, though, and thus faithful to the original when displayed ingame.
2019-02-02 18:29:33 +01:00
Christoph Oelckers 1dbbb56a1b Merge branch 'master' into new_level_refactor
# Conflicts:
#	src/p_user.cpp
2019-02-02 16:58:30 +01:00
Christoph Oelckers 235c4c0499 - allow localization of Strife's log text. 2019-02-02 16:56:58 +01:00
Nemrtvi fa53ae21e6 Localized “FIND HELP” in Strife
The very first quest log that appears in Strife, “FIND HELP”, is located in a source file. This moves it to the language files.
2019-02-02 10:57:14 +01:00
Christoph Oelckers 45dc9a7b47 - renamed the level variables.
currentUILevel is now primaryLevel.
For ZScript, currentVMLevel was added. This is also exported as 'level' and will change as needed.
This also means that no breaking deprecations will be needed in the future, because in order to sandbox a level only 4 variables need to be handled: level, players, playeringame and consoleplayer.
The remaining global variables are not relevant for the level state.

The static 'level' has been mostly removed from the code except some places that still need work.
2019-02-02 00:25:51 +01:00
Major Cooke 695eced81a Added Inventory UNCLEARABLE flag.
- Allows prevention of ClearInventory without stopping it from being dropped.
2019-02-01 18:29:31 +01:00
Christoph Oelckers ff903da19a Merge remote-tracking branch 'remotes/origin/master' into new_level_refactor 2019-01-31 20:43:24 +01:00
Major Cooke b1c508fa6c Added CheckReplacee.
- Allows defining of what actor is replacing another for information.
- If multiple arachnotrons, a modder can attribute them as being a replacer of Arachnotron itself, allowing A_BossDeath and GetReplacee to work with it.
2019-01-31 19:05:44 +01:00
Erick Tenorio b9e71d6db3 - DOOM.WAD fixes 2019-01-31 19:03:57 +01:00
Christoph Oelckers cfa35f548f - make the file name of savegame nodes read only. 2019-01-31 17:57:39 +01:00
Christoph Oelckers 68bff17d63 - this was missing 2019-01-31 03:29:45 +01:00
Christoph Oelckers ddab2c3e78 - removed the playernum parameter from CheckLocalView
This was always used with 'consoleplayer' which really is the only thing making sense here. But this is a part of the global state which should be avoided in play code.

In particular, this makes no real sense in case of secondary maps where it should always return false.
2019-01-31 03:29:25 +01:00
Christoph Oelckers 0eb3b2abca Merge branch 'master' into new_level_refactor 2019-01-30 22:03:21 +01:00
Christoph Oelckers a2065cae4b - fixed: RecreateAllAttachedLights must activate the lights it creates.
This also removes the gl_attachedlights CVAR because with the new management this doesn't really work anymore.
2019-01-30 20:21:00 +01:00
Christoph Oelckers b12de04258 - fixed the remaining deprecation warnings in the base script.
All these required access to the sector's Level reference.
The remaining references to the global 'level' variable are all in deprecated functions which is ok.
2019-01-30 00:58:44 +01:00
Christoph Oelckers 6451b7d592 - moved the combined compatibility flags into FLevelLocals. 2019-01-29 19:28:22 +01:00
Christoph Oelckers 14101fa447 - health groups and software rendering textures freed of 'level'
Edited cherry-pick of an older commit.
2019-01-29 16:06:17 +01:00
Christoph Oelckers f9239f6e0f - added a compiler-side workaround for the formerly static methods of FLevelLocals.
LevelLocals on the left side of.a function call will now always be remapped to 'Level', which will either remap to the same-named instance variable or the global deprecated one.

In a few degenerate cases where there is a conflicting local variable named 'level' it may error out but that is unavoidable here but this is very unlikely.
2019-01-29 02:04:31 +01:00
Christoph Oelckers 60873bc5d6 Moved the PointInSector functions into FLevelLocals 2019-01-29 01:30:41 +01:00
Christoph Oelckers 259ae41774 - sanitized the 'frozen level' code.
This had two different flags that were checked totally inconsistently, and one was not even saved.
Moved everything into a few subfunctions so that these checks do not have to be scattered all over the code.
2019-01-28 20:15:48 +01:00
Christoph Oelckers 3721771934 - forgot to save this. 2019-01-28 18:44:42 +01:00
Christoph Oelckers 3c14a7db76 - use map time, not hub time for map actions. 2019-01-28 18:42:56 +01:00
Christoph Oelckers 66695ac6a0 - made most of the player spawn spot handliing functions members of FLevelLocals. 2019-01-28 02:44:05 +01:00
Christoph Oelckers b4acb857ad - the final batch of easy level replacements.
What's left will require a bit more work...
2019-01-27 21:59:19 +01:00
Christoph Oelckers 73ea59179c - fixed some deprecation warnings about 'level'. 2019-01-27 14:48:35 +01:00
Christoph Oelckers 84baa5bb4d - deprecated the global 'level' variable.
This will currently output 9 warnings for the UDMF property getters. To silence these a bit more work is needed.
2019-01-27 14:33:02 +01:00
Christoph Oelckers 05830455e7 - made the automap an object.
This simplifies handling a lot because it allows to make the level the owner of its map.
2019-01-26 15:21:20 +01:00
Christoph Oelckers 10feb446fa - made most of the EV_* functions part of FLevelLocals. 2019-01-26 08:28:45 +01:00
Christoph Oelckers 4e052f2857 - use a separate variable pointing to the current level for the UI code.
UI always runs on the primary level, so this does not need the ability to operate on multiple levels. Additionally, this can later be set to null when running play code so that scope violations result in an abort.
2019-01-25 18:31:40 +01:00
Christoph Oelckers bf3dc2f99b Merge branch 'rolling_back' into new_level_refactor 2019-01-25 00:57:01 +01:00
Christoph Oelckers b2ee99c7cc - call level compatibility handlers for all levels and pass the map name as a second parameter.
This is for user-made handlers for which the checksum is rather useless both for deciding whether to call the handler and for identifying the map.
2019-01-25 00:56:15 +01:00
Christoph Oelckers 3cef56249d - moved most functions of portals.cpp into FLevelLocals.
Much of this is used during level init and needs to be independent of the current level.
2019-01-25 00:30:55 +01:00
Christoph Oelckers 0e5986769e - moved the tid hash into FLevelLocals and adjusted the interface to the iterators. 2019-01-24 19:28:40 +01:00
Christoph Oelckers 1f2162fea8 - moved the scripted creation functions for tag iterators to LevelLocals
The old static methods are now deprecated, this was done to clarify the relationships at play here.
2019-01-24 02:17:10 +01:00
Christoph Oelckers 5c8ae72453 - fixed: ScriptUtil.PlayerAmmo must be declared static. 2019-01-23 21:50:11 +01:00
Rachael Alexanderson dc27011370 - remove vid_hwgamma, force always use shader gamma
*** note to drfrag: Please don't cherry-pick this commit. Systems that do not use renderbuffers will still need this feature!
2019-01-23 21:50:11 +01:00
Christoph Oelckers 477560e1ef - swapped order of checks for picking up an item.
Failure must take precedence over the morph check because this does not return a proper toucher.
2019-01-23 21:50:10 +01:00
Christoph Oelckers f6ce5f59ae - fixed armor bonus giving in A_CustomPunch 2019-01-23 21:49:18 +01:00
nashmuhandes d911fa99a1 Move the "time" string in saved game comment into the LANGUAGE lump.
# Conflicts:
#	src/g_game.cpp
2019-01-23 21:48:30 +01:00
alexey.lysiuk 12db808307 - fixed 'missing interpolation point' warning 2019-01-23 21:46:46 +01:00
Rachael Alexanderson b378b29421 - modify the wording in the preset scaling menu to imply that all it does is pixel scaling, not change the actual screen resolution 2019-01-23 21:45:26 +01:00
Rachael Alexanderson 8f7038aa53 - add 4k UHD resolution to presets 2019-01-23 21:44:27 +01:00
Rachael Alexanderson c280457635 - fix spacing on one of the resolution preset entries 2019-01-23 21:44:14 +01:00
alexey.lysiuk 7d4765b5cd - workaround code generation issue in PlayerPawn.FindMostRecentWeapon()
Multiple values in returned from a subfunction cannot be used directly as a function result

https://forum.zdoom.org/viewtopic.php?t=63284
2019-01-23 21:41:03 +01:00
alexey.lysiuk 8aa47e664e - fixed disappearing inventory after morphing pickup
When player is picked up item that does morph, the corresponding toucher actor is changed in process
Previously, morhing item was removed from original actor leaving player's inventory in inconsistent state

https://forum.zdoom.org/viewtopic.php?t=63124
2019-01-23 21:40:44 +01:00
Christoph Oelckers 5e4ef04a4d - allow assignment of line IDs through LevelCompatbility. 2019-01-23 21:40:19 +01:00
alexey.lysiuk c6ee8e084c - fixed condition to produce blood splatter during line attack
https://forum.zdoom.org/viewtopic.php?t=63186
2019-01-23 21:23:35 +01:00
Christoph Oelckers 2d90cc288b - fixed: Strife was missing the move factors. 2019-01-23 21:21:22 +01:00
Marrub af06d7cb9e Make LevelLocals::ExecuteSpecial return int
# Conflicts:
#	wadsrc/static/zscript/base.txt
2019-01-23 21:15:33 +01:00
Christoph Oelckers 4126f8ce72 - made OP_NEW a builtin function instead of an opcode.
The code was present 3 times due to the JIt, and this is not something that benefits from being a real opcode, even in the interpreted case.
2019-01-23 21:12:23 +01:00
Christoph Oelckers a1ae01e392 - fixed last PR.
The result of GetPointer must be null checked as well!
2019-01-23 20:43:23 +01:00
Cacodemon345 70a07e154c Move receiver NULL check above the orresult check (#695)
This is to prevent a VM abort from happening here if orresult is false.
2019-01-23 20:42:41 +01:00
Christoph Oelckers c651045ed3 - let RunHealth clamping respect the newly added global properties. 2019-01-05 15:37:14 +01:00
Christoph Oelckers dab68184f5 - moved the global spot state into FLevelLocals.
This way it doesn't even have to be a thinker.
2019-01-05 10:04:27 +01:00
Christoph Oelckers bfbf7ff9c9 - made forwardmove and sidemove defaults configurable through the gameinfo section. 2019-01-05 08:48:57 +01:00
Christoph Oelckers d898cadda5 - fixed: Trying to remove the first item in an actor's inventory would lose all owned items. 2019-01-04 18:56:14 +01:00
Magnus Norddahl f10ded756e - split shadowmap AABB tree into two parts. one for static and one for dynamic
- upload only the dynamic AABB subtree using glBufferSubData
- change internal raytracing stack limit from 16 to 32
- update shadowmap AABB tree after R_SetupFrame for proper frame interpolation
2019-01-04 15:51:59 +01:00
Christoph Oelckers f9ff097457 - fixed A_Chase default detection. 2019-01-03 23:43:15 +01:00
Christoph Oelckers 9521b6cd1f - removed all remaining native parts of APlayerPawn.
Unlike the other classes, the places where variables from this class were accessed were quite scattered so there isn't much scriptified code. Instead, most of these places are now using the script variable access methods.
This was the last remaining subclass of AActor, meaning that class Actor can now be opened for user-side extensions.
2019-01-03 22:05:49 +01:00
Christoph Oelckers c18e895272 - exported all native components of APlayerPawn.
Only the class definition itself remains and needs to be taken care of.
2019-01-03 18:01:58 +01:00
Christoph Oelckers 3314a1efe5 - scriptified the remaining PlayerPawn methods. 2019-01-03 14:35:17 +01:00
Christoph Oelckers 2258a71c36 - took several methods out of the native PlayerPawn implementation, either by scriptification or moving them to other places. 2019-01-03 13:59:46 +01:00
Christoph Oelckers 23146f1af2 - scriptified PlayerPawn.ResetAirSupply. 2019-01-03 13:04:48 +01:00
Christoph Oelckers badacbb968 - scriptified APlayerPawn's DamageFade handling. 2019-01-03 12:47:34 +01:00
Christoph Oelckers 2bd72478ee - scriptified P_CalcHeight.
This was the only code using the ViewBob member variable.
This also moves the range check for this variable to its application, because a badly behaved mod can just as easily change it at run time instead of just setting an absurdly large value in the class definition.
2019-01-03 11:57:20 +01:00
Christoph Oelckers 9e5c5b68c5 - did some more lightening on the PlayerPawn class. 4 more properties and one native member function have been handled. 2019-01-03 10:06:45 +01:00
Christoph Oelckers c753d59a72 - scriptified A_SkullPop and ObtainInventory.
These were the last relevant items to access PlayerPawn.InvFirst.
2019-01-03 00:35:56 +01:00
Christoph Oelckers 6eb8ded471 - made ColorRangeStart and ColorRangeEnd meta properties of APlayerPawn.
These are only used during initialization and they should have been readonly from the start.
2019-01-02 22:13:57 +01:00