Commit graph

16076 commits

Author SHA1 Message Date
drfrag
1fca65f9e4 - Missed some language strings again. 2019-08-14 10:40:33 +02:00
drfrag
b3c4e24b58 - Fall back to D3D for software on systems without GL2 support. 2019-08-13 22:04:05 +02:00
drfrag
9f0d5ac113 - Now the quicksave slot must be selected explicitly like in original Doom. 2019-08-13 21:15:09 +02:00
drfrag
1f7c241eb8 - Changed how the old quicksave works. Now you select the slot using quicksave like in original Doom. 2019-08-13 20:32:41 +02:00
Christoph Oelckers
13ee3e3484 - added checks for the special hacky quicksave marker. 2019-08-11 18:51:35 +02:00
Rachael Alexanderson
7adda0e47a - 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 14:32:37 +02:00
Christoph Oelckers
d13499d2b7 - 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 14:28:51 +02:00
alexey.lysiuk
e4ef998dc2 - exposed Append() method to ZScript dynamic array
https://forum.zdoom.org/viewtopic.php?t=65570
2019-08-11 00:09:51 +02:00
Christoph Oelckers
994bdc0b03 - 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 12:47:57 +02:00
Christoph Oelckers
1161a17f00 - do not blur the background for portrait-less conversations.
- Fixed the mHasBackdrop flag. (drfrag)

# Conflicts:
#	wadsrc/static/zscript/ui/menu/conversationmenu.zs

# Conflicts:
#	src/menu/menu.cpp
2019-08-10 12:47:41 +02:00
Christoph Oelckers
d6e7e68bfa - fixed: The frozen state was not reset when the global level variable was reset.
# Conflicts:
#	src/g_level.cpp
2019-08-09 13:16:27 +02:00
drfrag
2c014e63ac - Unicode fix.
(patch by Graf)
2019-08-09 13:16:24 +02:00
Christoph Oelckers
d9f3fdd293 - fixed handling of the "ouch" face.
This depended on order of execution, taking the health values to compare from variables which were not synchronized properly.
Now both the last and current health being used here are being retrieved in the same place so that further changes cannot break this again.

But here it worked. (drfrag)
2019-08-09 13:16:22 +02:00
Christoph Oelckers
61a849b439 - fixed an inconsistency with missiles bouncing off actors.
They exploded when hitting a side but not when hitting top or bottom. Changed so that they always explode now.
2019-08-09 13:16:19 +02:00
Christoph Oelckers
15cf157877 - removed the ActiveSequences counter.
It was only used to avoid traversing the list if all sequences were paused which is an exceptional situation.
On the other hand, the way it counted was not correct so rather than fixing it it seemed more appropriate to remove it entirely.

# Conflicts:
#	src/g_levellocals.h
#	src/s_sndseq.cpp
2019-08-09 13:16:17 +02:00
Christoph Oelckers
9a4959c82e - fixed incorrect write barrier in sound sequence code.
# Conflicts:
#	src/s_sndseq.cpp
2019-08-09 13:16:14 +02:00
drfrag
61bd1d614a - More fake generic font support. 2019-08-08 00:39:22 +02:00
Christoph Oelckers
f6234d08fa - optionally disallow showing the autor's name
# Conflicts:
#	src/g_level.cpp
#	src/gamedata/g_mapinfo.h
#	wadsrc/static/zscript/ui/statscreen/statscreen.zs
2019-08-07 13:42:05 +02:00
drfrag
25c890d91c - Fixed bad return value. 2019-08-07 13:42:03 +02:00
Christoph Oelckers
78fa0a6f95 - 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.

# Conflicts:
#	src/g_level.cpp
#	src/gamedata/g_mapinfo.h
#	src/gi.cpp
#	wadsrc/static/zscript/ui/statscreen/statscreen.zs
2019-08-06 18:46:23 +02:00
drfrag
149a294a49 - Fixed compilation. 2019-08-06 17:27:12 +02:00
Christoph Oelckers
4a563f449d - fixed: The wbstartstruct that gets passed to the level summary screen needs to be static
This variable is needed long after the function which sets it up will be exited. So this either needs to be dynamically allocated or static, and in this case using a static variable is simpler.  However, unlike before, it is only being accessed in the one function that needs to initialize it and pass to the summary screen and nowhere else.

# Conflicts:
#	src/g_level.cpp
2019-08-06 17:13:30 +02:00
Christoph Oelckers
2b51e8d5dd - 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.

# Conflicts:
#	src/g_hub.cpp
#	src/g_level.cpp
#	src/gamedata/g_mapinfo.h
#	src/gi.h
#	src/p_setup.cpp
#	src/stringtable.cpp
#	src/stringtable.h
#	wadsrc/static/zscript/ui/statscreen/statscreen.zs
#	wadsrc_extra/static/iwadinfo.txt

# Conflicts:
#	src/gi.h
#	wadsrc_extra/static/iwadinfo.txt
2019-08-06 17:13:21 +02:00
drfrag
2172b1bd63 - Changed GAMEINFO flags to an enum. 2019-08-06 17:08:33 +02:00
Blue Shadow
b9a9e3f8b7 - moved GetSaveAmount() from the base armor class 2019-08-05 13:29:02 +02:00
Blue Shadow
80c561a056 - fixed buggy ArmorFactor behavior when set to a value other than 1.0 2019-08-05 13:29:01 +02:00
Christoph Oelckers
070dde2e2b - 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.

Without the adjustments, just added GetMaxAscender for compatibility. (drfrag)

# Conflicts:
#	src/gamedata/fonts/font.cpp
#	src/scripting/vmthunks.cpp
#	wadsrc/static/zscript/ui/statscreen/statscreen.zs
2019-08-05 13:28:43 +02:00
drfrag
31b823a796 - Tweaked 1K Deaths. 2019-08-05 12:56:35 +02:00
drfrag
dadbc828dc - Take quicksave slots into account for the new savegame list order. 2019-07-29 20:12:04 +02:00
drfrag
a62c7fc31c - Missing strings. 2019-07-29 18:54:45 +02:00
Kevin Hutchins
ac238545fd Adds option to use a rotation of quicksaves instead of having one quicksave slot that needs to be manually created. 2019-07-29 18:54:43 +02:00
alexey.lysiuk
d5e6453120 - updated bzip2 to version 1.0.8
https://www.sourceware.org/bzip2/
https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz
2019-07-29 18:54:25 +02:00
drfrag
865d1581dd - Extended the fake generic font support for the dialogue system. 2019-07-27 12:56:32 +02:00
Christoph Oelckers
6a647afff1 - changed subtitle duration to last at least 7 seconds, even for shorter sounds so that there is sufficient time to read them. 2019-07-26 21:59:46 +02:00
alexey.lysiuk
c7516a0fc5 - 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 21:59:43 +02:00
Christoph Oelckers
768959af45 - 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-26 14:15:57 +02:00
drfrag
1f54466e33 - Fixed fuzz style fallback not working in GL legacy mode.
- Changed default since software style was too expensive on old cards.
2019-07-26 14:08:18 +02:00
Christoph Oelckers
c31b4f0b9b - fixed line breaking on non-spaces for multi-byte UTF-8 characters.
This needs to backtrack the entire code point, not just one byte.

# Conflicts:
#	src/gamedata/fonts/v_text.cpp
2019-07-25 00:06:14 +02:00
Major Cooke
7f5a2d3a11 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.

# Conflicts:
#	src/s_sound.cpp
#	wadsrc/static/zscript/base.zs
2019-07-25 00:06:12 +02:00
alexey.lysiuk
4f56ab45ad - fixed crash on player unmorph after falling death
Rearranged conditions to avoid accessing player from obsolete morphed pawn
Unmorphing upon death resets player in morphed actor, so player alive state should be tested first
Removed duplicate health check as well

https://forum.zdoom.org/viewtopic.php?t=65429
2019-07-25 00:06:08 +02:00
drfrag
77c5ec0e23 - New version. 2019-07-19 13:30:41 +02:00
drfrag
f84ad33134 - Moved a graphic and changed its format to 32 bit PNG. 2019-07-18 17:48:45 +02:00
Christoph Oelckers
136e828de9 - 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-18 14:30:09 +02:00
alexey.lysiuk
f38c83f96c - added PSprite.bMirror flag to ZScript class definition
https://forum.zdoom.org/viewtopic.php?t=65372
2019-07-18 14:30:05 +02:00
Christoph Oelckers
6999c89cbb - 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.

# Conflicts:
#	src/gamedata/fonts/v_font.cpp
2019-07-18 14:28:40 +02:00
Christoph Oelckers
1d8f735a27 - renamed zd_extra.pk3 to game_support.pk3
# Conflicts:
#	src/version.h
2019-07-18 14:28:35 +02:00
Rachael Alexanderson
264f1d875f - add +ZDOOMTRANS to BFGExtra in order to force classic transparency per user setting. 2019-07-18 13:57:59 +02:00
Christoph Oelckers
cf88ecf36a - remove test code. 2019-07-18 13:53:24 +02:00
Christoph Oelckers
7757798d22 - 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-18 13:53:20 +02:00
Christoph Oelckers
2114641cef - dynamic light definitions for Hacx. 2019-07-18 13:51:33 +02:00