Commit graph

200 commits

Author SHA1 Message Date
Emile Belanger
0f64dbf61e
Re-sync with gzdoom/master and add my latest fixes (#3)
* - Fixed bug with BishopPuff moving in wrong direction

* - pull new widepix fix for hexen sprites

* - font system overhaul.

This eliminates nearly all palette dependencies, most importantly font translation will now be done on True Color data, making translations on True Color font less destructive.

* Force gl_customshader = false, some fixes to shader code.

* Delete some unused code

* Actually read GL_MAX_TEXTURE_SIZE for max size

* - fix for "Return to Phobos (return01.wad) has an ancient bug in map E1M2 where the switch to raise the exit bridge doesn't work in versions of Doom past patch 1.2."

* - widepix update

* - add missing break statement

* - do not calculate translations for empty fonts.

FONTDEFS will create some due to lack of game filtering.

* - fix DaggerAlert using FindState incorrectly.

* Fixed wrong parameter type passed into TryMove here

* - fixed: GetColorTranslation did not handle translation-less single pic 'fonts' properly.

* - fixed: Actors did not set the position when spawning a dynamic light.

It always reused the previous content of the 'Pos' field which was either undefined or an older position where the actor was located when last spawning a light.

* - fixed generation of default color range for the option menu font.

* - added fallback to the parenthesis glyphs for the braces.

* Add 'AddDialogues' in MAPINFO to additively add Strife NPC dialogs without overwriting each other.

* Added APROP_SoundClass

- Added APROP_SoundClass to GetActorProperty, SetActorProperty, CheckActorProperty

* APROP_SoundClass inits a default value and checks for null pointers

- Gave default init value to SoundClass as "Player"
- Changed SoundClass detection to use the if/else structure
- Checked for null pointer in S_FindSkinnedSound when reading the player's sound class

* Made S_FindSkinnedSound to use GetSoundClass again

- I couldn't simply init SoundClass to NAME_SoundClass, even after converting it to the appropriate type. Probably because NAME_SoundClass hasn't been parsed from decorate yet. Instead, I change it to NAME_SoundClass through GetSoundClass if it's valid and currently "player".
- The skin checker code in GetSoundClass now checks if the SoundClass is equal to NAME_SoundClass. This mechanism exists so that way reverting the SoundClass to NAME_SoundClass processes the skin soundclass code. If it's different, the code is not processed.
- Just returns sclass. This is never null, so there's no need to check if so.
- S_FindSkinnedSound just uses GetSoundClass. This makes sure skins are checked.

* Update d_player.h

- Deleted some comment fragments I left when trying to get the SoundClass to init to NAME_SoundClass

* Sound Class renovations

- SoundClass is instantiated to "" by default. Since this property is only used when it is not empty (otherwise GetSoundClass just defaults to player), we can get away with this.
- We may want the soundclass to remain the same if we explicitly set it to the same one that is currently used (say, we set SoundClass to "Caleb" so all other skins can use it)
- GetActorProperty for APROP_SoundClass just calls GetSoundClass,
- CheckActorProperty also just runs GetSoundClass
- GetSoundClass is no longer a static method. We needed to access it in other places.
- Made renovations to GetSoundClass. First of all, SoundClass is no longer instantiated there. Secondly, skinned sounds are now returned if SoundClass is empty. Thirdly, "sclass" in this method will return the default soundclass of the player pawn or SoundClass, depending on if SoundClass is empty. Finally, sclass will retrieve "player" if it is empty.

* APROP_Soundclass update again

- Just set init for SoundClass to empty.
- Removed code block from SetActorProperty for APROP_Soundclass that does nothing
- Lower-cased soundclass in FSerializer
- Created a new const char to read the player's soundclass. If the playerpawn returns NAME_None for it's default, then it will set defaultsoundclass to "player". After running the skin code, the function now returns defaultsoundclass or soundclass, depending if soundclass is empty or not.
- Renamed GetSoundClass to S_GetSoundClass

* - Fixed crash calling ChangeSky() with an invalid texture.

* - moved Doom specific font init code out of the backend.

* - let dynamic lights call UpdateLocation instead of just setting their position right after being spawned.

This ensures that the position is correct and that everything gets set up properly.

* - fixed parsing of MAPxx par times in BEX lumps

https://forum.zdoom.org/viewtopic.php?t=72458

* - corrected the NUL checks in S_FindSkinnedSound.

* Make sprite shadows ignore float bob

* - fixed explosive damage radius for clericflame.

This was fixed before but must have gotten lost somehow...

* - fixed permission validation in OptionMenuItemCommand.DoCommand.

This was missing the InMenu check like the other critical menu functions.

* - added detection of macOS 12 Monterey

* - prevent redundant string copying in Strife conversation parser

strifedialogue.cpp:110:22: warning: loop variable 'addd' of type 'const FString' creates a copy from type 'const FString' [-Wrange-loop-analysis]

* - Fixed impassable exit line in 007ltsd.wad E4M7

* - fixed initialization of model frames

Replaced loop arrays initialization and obvious comments with something more readable, I hope

https://forum.zdoom.org/viewtopic.php?t=72523

* - fix missing border flat on heretic shareware

* Stop colormap being applied to 2D drawing

* - fixed parsing of 2D vectors in OBJ model loader

There is no `TVector2<>` constructor that accepts a pointer to float. However, there is such constructor in `TVector3<>`, so `TVector2<>` can be constructed from `float*` implicitly via temporary `TVector3<>` object.

* - added `TVector2<>` constructor from `float*`

As we seem to do not like explicit constructors, this will make temporary `TVector3<>` object creation much less probable

* - fixed bad type in FxFontCast.

* - fixed potential crash when sound sequence is destroyed

Level can be unset if sound sequence destruction happens after saved game loading failure

https://forum.zdoom.org/viewtopic.php?t=72551

* Fix light binding when using pipeline buffer on OpenGL

Co-authored-by: Dasperal <Dasperal1@gmail.com>
Co-authored-by: Rachael Alexanderson <madame-rachelle@users.noreply.github.com>
Co-authored-by: Christoph Oelckers <coelckers@users.noreply.github.com>
Co-authored-by: Chronos Ouroboros <doom2.fan@gmail.com>
Co-authored-by: nashmuhandes <nashbackslash@gmail.com>
Co-authored-by: Zandrewnum <andy.clarke99.ac@gmail.com>
Co-authored-by: Shiny Metagross <30511800+ShinyMetagross@users.noreply.github.com>
Co-authored-by: drfrag <drfrag666@hotmail.com>
Co-authored-by: alexey.lysiuk <alexey.lysiuk@gmail.com>
Co-authored-by: emily <minecrafter2010@gmail.com>
Co-authored-by: Player701 <player701@player701.ru>
2021-06-19 09:03:40 -04:00
Christoph Oelckers
c320db66f4 - language update 2021-05-22 16:34:22 +02:00
Christoph Oelckers
f0d8bd0a74 - tweaked Hexen's weapon pieces so they do not floatbob into the floor with the hardware renderer. 2021-05-19 18:30:19 +02:00
K0stov
3892e42f7c New letter И for Strife
The old one was a simple mirror of the letter N, switching around the proportions. The new variant is designed to look more faithful to the letter it’s based on.
2021-03-18 12:35:32 +01:00
Christoph Oelckers
ba618d308c - bumped CMake version to 3.1.0 in all projects to reduce warning spam in recent versions.
3.1.0 is the highest minimum set in the existing subprojects so this will not exclude anything that hadn't been already.
2021-03-08 13:58:29 +01:00
Christoph Oelckers
97de1f670b - language update. 2021-02-26 10:35:10 +01:00
Rachael Alexanderson
cdb24b214a - remove doom2 from the wadsmoosh filter in iwadinfo 2021-02-16 22:03:54 -05:00
Rachael Alexanderson
6701cd2842 - language update 2021-01-18 06:30:54 -05:00
Rachael Alexanderson
65c7b77997 - update $musicalias to allow iwad remapping when used from game_support.pk3
- add music aliases for the unity version of Doom/Doom2 for digitized game soundtrack
- this fixes issue #1268
2021-01-06 06:32:04 -05:00
Rachael Alexanderson
ef47abda74 - remove the IWADINFO definition to fix an un-offsetted status bar, since it's done unconditionally now 2020-10-28 06:27:30 +01:00
Christoph Oelckers
d0f9ccb09a - language update. 2020-10-25 16:59:47 +01:00
Christoph Oelckers
f6eac89677 - fixed some text issues with Hacx and Harmony.
One Harmony text had an incorrect label and Hacx must be loaded after the IWAD which has a language lump of its own.
2020-10-04 19:25:50 +02:00
Christoph Oelckers
731c68e69e - version bump for last commit. 2020-09-27 14:20:47 +02:00
Player701
3a526c9e5a - Implement return type covariance for ZScript virtual functions 2020-09-27 14:18:15 +02:00
Christoph Oelckers
9a166d894b - fixed: The IWAD record for Wadsmoosh was missing the IWAD default filename.
This made GAMEINFO fail to detect it.
2020-09-26 22:58:05 +02:00
Christoph Oelckers
9bfdf2dcb6 - text update. 2020-09-26 22:47:29 +02:00
Rachael Alexanderson
b11298afd5 - rename 'AlwaysCenterStatusBar' to 'FixUnityStatusBar', original name became a misnomer especially with updates that made it more specific in its use 2020-09-07 23:30:40 -04:00
Rachael Alexanderson
7cd2d14672 - use unity status bar correcting for wadsmoosh 2020-09-05 15:56:01 -04:00
Rachael Alexanderson
91a4e6aed4 - do unity data status bar correction only if stbar is in an iwad 2020-09-05 06:18:41 -04:00
Rachael Alexanderson
0204051381 - add support for the (as of now) newest version of the Unity re-releases 2020-09-03 23:40:00 -04:00
Christoph Oelckers
45210efb91 - text update 2020-06-11 08:48:33 +02:00
Christoph Oelckers
764605eaab - text update. 2020-06-06 21:36:20 +02:00
Nemrtvi
50e0353668 Revised Serbian characters Ћ/Ђ 2020-05-06 14:50:35 +02:00
Christoph Oelckers
2acdf5cfab - added autonames for the shareware games
They still need to access some internal filters, despite blocking loading addons.
2020-03-11 00:38:26 +01:00
Christoph Oelckers
4237e64081 - text update. 2020-02-16 22:55:28 +01:00
Christoph Oelckers
7a6b133e93 - Greek letters for Strife's Big and Mini fonts. 2020-02-16 12:44:16 +01:00
Christoph Oelckers
670ef100f7 - added the 7 Greek characters to Strife's SmallFont that cannot be done by remapping to existing Latin or Cyrillic letters. 2020-02-16 00:13:43 +01:00
Christoph Oelckers
9644e26ce3 - removed accented Greek characters from BigUpper font as well.
I think the same applies as for allcaps fonts, and aside from that the form of accents being used here is not correct for Greek anyway.
2020-02-16 00:04:22 +01:00
Christoph Oelckers
7a86e7f043 - fix for Greek uppercase-only fonts.
In Greek for all-caps text there *must* not be any accents. As such, all accented characters now contain a default remap to the unaccented version and the accented characters in the already converted Doom Small and BigFont have been removed as these are all-caps fonts. Doom BigUpper still requires investigation how Smallcaps fonts need to be handled.
2020-02-15 23:32:52 +01:00
svenhoefer
e249294e66 - autoload nerveunity.wad to doom2unity.wad
refers to 0b38c442e0
2020-02-04 09:30:53 +01:00
Rachael Alexanderson
538af7bbfa - add Doom2f.wad 2020-01-27 15:20:18 +01:00
Christoph Oelckers
142e3c7df7 - text update. 2020-01-23 18:35:27 +01:00
Rachael Alexanderson
e8c69d2757 - add support for xbox 360 versions of Doom/Doom2 2020-01-23 18:23:25 +01:00
Rachael Alexanderson
b219580ff5 - update filename for ultimate doom unity edition
- add support for tnt/plutonia unity edition
- uses same extraction program by kevansevans
2020-01-11 01:18:23 -05:00
Rachael Alexanderson
6df9e39152 - add support for new Bethesda.Net Unity Edition wads
- they can be extracted with this utility: https://github.com/kevansevans/Unity-Doom-Ripper
2020-01-10 16:36:01 -05:00
Christoph Oelckers
4a67bfcddb - deprecated A_PlaySound for real and transitoned the internal scripts to A_StartSound 2020-01-04 14:25:55 +01:00
Christoph Oelckers
cce03d1f34 - fixed Harmony's end text's name. 2019-12-26 09:33:09 +01:00
Rachael Alexanderson
71808b0d3f - language update 2019-12-22 09:01:43 -05:00
Rachael Alexanderson
a07d7856c2 - language update 2019-12-03 13:07:14 -05:00
drbugbait
0747514f58 Added en dash, figure dash, and ellipsis to Doom smallfont 2019-11-08 21:14:06 +01:00
Christoph Oelckers
f014e9cd8c - text update. 2019-10-20 16:16:40 +02:00
Christoph Oelckers
4df33a25d9 - text update. 2019-09-10 06:41:36 +02:00
Christoph Oelckers
3e2a04746a - one more text change. 2019-09-07 09:43:48 +02:00
Christoph Oelckers
e6d39254b7 - text update plus inclusion of Dutch in the menu. 2019-09-07 09:02:56 +02:00
alexey.lysiuk
7e9a777b45 - fixed loading of HacX 2.0 IWAD
Doom II MAPINFO (which is used as base for HacX 2.0 IWAD) was processed twice
This fixes Script error, "gzdoom.pk3:mapinfo/doomcommon.txt"line 199: Normal is already the default skill
2019-08-17 11:21:22 +03:00
Christoph Oelckers
a53861e27e - text update. 2019-08-11 18:28:50 +02:00
Christoph Oelckers
3c449f3908 - delete the teaser logs from SVE.WAD.
The way Strife has been set uo, it is not possible to have the full game and the teaser coexist without hackery.
2019-08-07 19:22:06 +02:00
Christoph Oelckers
045025f4cf - text update. 2019-07-31 10:08:47 +02:00
Christoph Oelckers
8219c3fd07 - corrected character offsets. 2019-07-27 11:29:18 +02:00
Christoph Oelckers
b768c6877c - text update 2019-07-27 09:00:49 +02:00