Commit graph

1441 commits

Author SHA1 Message Date
drfrag
2f3be44470 - Restored original colors for player setup icon backdrop. 2020-05-17 14:04:43 +02:00
Major Cooke
36bf930575 Enforce the reflective flag as well. 2020-05-17 02:10:14 +02:00
Major Cooke
ac015c4bb9 Fixed an issue where multiple invulnerability powerups could cancel each other out from just one expiring. 2020-05-17 02:10:12 +02:00
Mekboss
b658d4c225 Fix MSVS compile bug and add offset parameter for SprayDecal
# Conflicts:
#	src/g_shared/a_sharedglobal.h
2020-05-08 14:52:56 +02:00
Mekboss
6e30ac5f3c Replace function variables to DVector3
# Conflicts:
#	src/g_shared/a_sharedglobal.h
2020-05-08 14:52:53 +02:00
Mekboss
bfe367fb20 Add optional direction parameters for SprayDecal and its A_SprayDecal zscript counterpart
# Conflicts:
#	src/g_shared/a_sharedglobal.h
2020-05-08 14:52:51 +02:00
drfrag
6a3f2b59cd - Fixed compatibility flags not working in scripting. 2020-05-03 18:40:48 +02:00
alexey.lysiuk
80b3f8dcbe - fixed secondary ammo display in strife status bar
https://forum.zdoom.org/viewtopic.php?t=68315
2020-05-03 18:40:45 +02:00
Cacodemon345
19b125ca3a Fix bouncing missiles not dealing damage when hitting top/bottom (#1068)
* Fix bouncing missiles not dealing damage when hitting top/bottom
2020-04-30 11:45:45 +02:00
nashmuhandes
81820961d4 Apply alpha to the background texture in DrawBar 2020-04-30 11:45:41 +02:00
nashmuhandes
5ef009bfd5 Add an alpha parameter to StatusBar.DrawBar 2020-04-30 11:45:39 +02:00
Skepticist
1799209052 Added a number of maps that can make use of the MTF_NOCOUNT flag
All but the Hell Revealed case are thanks to Skepticist from Doomworld
2020-04-28 02:23:03 +02:00
PaulyB
e59fe8e01f Added MTF_NOCOUNT to spawn flags 2020-04-28 02:22:44 +02:00
Christoph Oelckers
411b287cd9 - block off the Substitute function by making it private to the 3 classes that really need it. 2020-04-19 21:39:25 +02:00
Christoph Oelckers
a953578484 - made 3D floor damage transfers optional by adding a new flag bit (2048) and made that mode automatic for the old ZDoom-based light only transfer special.
# Conflicts:
#	src/maploader/specials.cpp
2020-04-19 15:18:54 +02:00
Erick Tenorio
5ce63a92da - REQUIEM.WAD fixes (#1050)
Fixes for various maps in the Requiem megawad.

Idgames: https://www.doomworld.com/idgames/levels/doom2/megawads/requiem
2020-04-04 18:47:41 +02:00
drfrag
c1f6e70fb3 - Missed a bit for stat screens (fixes Guncaster Vindicated). 2020-04-04 18:17:35 +02:00
Christoph Oelckers
ca18bccb0b - fixed another typo.
# Conflicts:
#	wadsrc/static/zscript/base.zs
2020-03-25 13:58:49 +01:00
nashmuhandes
72ecc11e8d Added Actor.CopyBloodColor to copy another existing actor's blood color. 2020-03-24 01:36:58 +01:00
nashmuhandes
315efb2b97 Add help messages for most of the deprecated stuff in ZScript.
# Conflicts:
#	wadsrc/static/zscript/actors/actor.zs
#	wadsrc/static/zscript/base.zs
#	wadsrc/static/zscript/destructible.zs
#	wadsrc/static/zscript/mapdata.zs

# Conflicts:
#	wadsrc/static/zscript/base.zs
2020-03-16 11:07:29 +01:00
alexey.lysiuk
eaa7e392d7 - fixed FLineTraceData scripting definition
https://forum.zdoom.org/viewtopic.php?t=67795

# Conflicts:
#	src/scripting/thingdef_data.cpp
2020-03-14 19:15:27 +01:00
Christoph Oelckers
9fe9552023 - fixed A_FireCGun. 2020-03-11 20:18:45 +01:00
Christoph Oelckers
4e40c4dfa9 - fixed: player_t::GetPSprite cannot guarantee success
As a consequence it must return null in the failure case instead of asserting and all calls to this function must check for the failure case.
2020-03-11 20:18:43 +01:00
Alexander Kromm
c91c542c23 fix Dictionary and DictionaryIterator memory leaks
# Conflicts:
#	src/version.h
2020-03-09 00:33:48 +01:00
Major Cooke
c467539014 Changed Pre/Post(Un)Morph to take the other actor and a boolean indicating direction.
- 'current' is true for the actor that is the new body, false for the old body.
2020-03-09 00:28:05 +01:00
Major Cooke
8712d7c237 Added Pre(Un)Morph and Post(Un)Morph functions.
- cls: The other class's cast type which the actor is transitioning from/to.
2020-03-09 00:28:03 +01:00
Rachael Alexanderson
673e52f02f - fix debug assertion, cleanup vestigial A_PlaySound addition 2020-03-04 09:46:09 +01:00
Rachael Alexanderson
c9476e6188 - remove addition from deprecated A_PlaySound 2020-03-03 10:58:50 +01:00
Rachael Alexanderson
4625925a69 - ported over Nash's startTime for A_StartSound 2020-03-03 10:58:46 +01:00
Major Cooke
45c80916bc Added A_StopSounds(int chanmin, int chanmax).
- If both channels are 0, completely silences the actor.
- Adapted A_StopAllSounds to call A_StopSounds(0,0);
2020-03-01 20:27:03 +01:00
Major Cooke
3e77f9a6bd Added A_StopAllSounds. 2020-02-29 20:02:17 +01:00
Major Cooke
116a935b71 Added source, inflictor and damage flags to AbsorbDamage. 2020-02-11 00:55:21 +01:00
Zain Aamer
44ea61a280 Clearscope Index()
For Vertex, Side, Line and Sector
2020-02-11 00:55:17 +01:00
alexey.lysiuk
b8395e5b59 - fixed wrong arguments of a few A_StartSound() calls
https://forum.zdoom.org/viewtopic.php?t=67074
2020-01-24 15:20:35 +01:00
3saster
5a3e04e2e3 Plutonia 2 Compatibility Fixes (#1026)
* Plutonia 2 MAP20 fix

* Plutonia 2 MAP27 fix

* Plutonia 2 MAP05 fix

* Plutonia 2 MAP23 fix

* Plutonia 2 MAP24 fix
2020-01-22 12:27:53 +01:00
alexey.lysiuk
7d7bf3dee9 - fixed resetting of music volume after closing dialogue
https://forum.zdoom.org/viewtopic.php?t=67035
2020-01-21 12:17:56 +01:00
alexey.lysiuk
7d0df9fe3f - exposed Level.MusicVolume to ZScript 2020-01-21 12:17:54 +01:00
Alexander Kromm
dd40d4f6f6 make enter key toggle Option Search mode too 2020-01-17 13:02:12 +01:00
drfrag
004b48d62f - Blind attempt at adding support for 4 XInput controllers. 2020-01-13 13:19:34 +01:00
Christoph Oelckers
0c2ee0ffea - added missing render style constants to ZScript. 2020-01-12 12:59:46 +01:00
Christoph Oelckers
37db863bab - fixed: menu sounds no longer got the CHANF_UI flag. 2020-01-07 19:55:55 +01:00
Christoph Oelckers
286cda2bb5 - bumped ZScript version to 4.3 and silenced the remaining deprecation warnings.
# Conflicts:
#	wadsrc/static/zscript.txt
2020-01-07 19:37:00 +01:00
Christoph Oelckers
5229a84047 - deprecated A_PlaySound for real and transitoned the internal scripts to A_StartSound
# Conflicts:
#	wadsrc_extra/static/filter/harmony/decorate.txt
2020-01-07 19:36:57 +01:00
Christoph Oelckers
ce1f4427cc - cleaned up the parameters of A_StartSound.
There were two booleans that could be merged into the flag word.
This also fixes a bug with CHAN_NOSTOP not working for local sounds because it checked the wrong sound source for the playing sound.
2020-01-07 19:36:52 +01:00
Christoph Oelckers
16bd5e9619 - added the Dehacked extensions from Crispy/Doom Retro.
All empty placeholders for mods to fill in, no new functionality.
2020-01-06 21:57:04 +01:00
Alexander Kromm
032c6a534b export dictionary iterator 2020-01-06 21:57:02 +01:00
Cacodemon345
5ed070964c Add PSPF_PLAYERTRANSLATED flag (makes a PSprite layer translated to the user's color)
# Conflicts:
#	src/hwrenderer/scene/hw_weapon.cpp
#	src/r_data/models/models.cpp

# Conflicts:
#	src/gl/scene/gl_weapon.cpp
2020-01-06 21:50:14 +01:00
Chronos Ouroboros
b021befba8 Fixed a regression in DoTakeInventory. (the C++ code just ignored the null pointer, but ZScript can't do that) 2020-01-06 19:49:28 +01:00
Alexander Kromm
4f5218cc8f add Dictionary.Remove(String key) function 2020-01-06 19:49:25 +01:00
Christoph Oelckers
7919c86f3e - elimintated all cases from the ZScript code where channel indices and flags were combined into one parameter and removed all remnants of CHAN_PICKUP. 2020-01-06 19:49:18 +01:00
Alexander Kromm
a7e6552f0f export TMap<FString, FString> to ZScript
# Conflicts:
#	src/CMakeLists.txt
#	src/serializer.h
2020-01-06 19:18:22 +01:00
alexey.lysiuk
69d39bcd44 - move setting status bar defaults to proper location
BaseStatusBar.Init() method isn't suitable for this because it will override SBarInfoWrapper setup done in native code

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

# Conflicts:
#	wadsrc/static/zscript/ui/statusbar/statusbar.zs
2020-01-06 17:48:35 +01:00
alexey.lysiuk
47fd36d6ed - set meaningful defaults on initialization of BaseStatusBar
https://forum.zdoom.org/viewtopic.php?t=66339

# Conflicts:
#	wadsrc/static/zscript/ui/statusbar/statusbar.zs
2020-01-06 17:48:32 +01:00
Christoph Oelckers
25288d5cea - renamed IsActorPlayingSomething to IsActorPlayingSound and made it clearscope. 2020-01-06 15:08:26 +01:00
Christoph Oelckers
c3759f389c - separated the channel number from the flags in the sound interface so that the 8 channel limit can be eliminated.
- added Marisa Kirisame's CHAN_OVERLAP flag.
- exported S_IsActorPlayingSomething to ZScript.

The sound API change required deprecating A_PlaySound and S_Sound. There are now new variants S_StartSound and A_StartSound which have two distinct parameters for channel and flags.

# Conflicts:
#	src/bbannouncer.cpp
#	src/fragglescript/t_func.cpp
#	src/g_shared/a_lightning.cpp
#	src/p_effect.cpp
#	src/p_mobj.cpp
#	src/p_switch.cpp
#	src/playsim/p_spec.cpp
#	src/sound/s_doomsound.cpp
#	src/sound/s_doomsound.h
#	wadsrc/static/zscript/base.zs

# Conflicts:
#	src/intermission/intermission.cpp
#	src/sound/s_doomsound.cpp
2020-01-06 15:00:05 +01:00
Christoph Oelckers
8adf2c34cd - continued refactoring on sound code.
The game independent part of the code has been mostly isolated.

# Conflicts:
#	src/sound/s_doomsound.cpp
#	src/sound/s_sound.cpp
#	src/sound/s_sound.h

# Conflicts:
#	src/sound/s_sound.cpp
2020-01-06 13:45:19 +01:00
alexey.lysiuk
1ca7786650 - added 'damageonland' property to terrain definition
This property helps to replicate vanilla Hexen behavior of damaging player right after touching lava floor

https://forum.zdoom.org/viewtopic.php?t=66512
2019-12-12 20:35:44 +01:00
Ed the Bat
bc089ebb2b More compat fixes for Swan Fox maps (#982)
* More compat fixes for Swan Fox maps

Found some more issues on maps that already have compat fixes in place

* Missed a dud line

At least I'd commented it out so it was benign, but still...
2019-12-09 21:06:48 +01:00
Rachael Alexanderson
5c4d75e081 - add line_horizon on HOM line in Sapphire.wad 2019-12-09 21:06:46 +01:00
Christoph Oelckers
d4a71e3d20 - added null check to the dialogue lines array so that it doesn't crash if the text is never word wrapped. 2019-12-01 10:59:09 +01:00
alexey.lysiuk
ff4924bf8f - made most of AltHud class functions virtual
This allows arbitrary customization of alternative HUD
2019-11-26 16:48:04 +01:00
Christoph Oelckers
10c5b0588b - fixed redundant map name display on alternative HUD's automap HUD.
# Conflicts:
#	wadsrc/static/zscript/ui/statusbar/alt_hud.zs
2019-11-26 16:47:59 +01:00
alexey.lysiuk
1a4f62c54f - added ability to set custom alternative HUD
Use GAMEINFO key 'althudclass' to specify own class derived from AltHud

https://forum.zdoom.org/viewtopic.php?t=66422
2019-11-26 16:47:54 +01:00
alexey.lysiuk
7160219b63 - exported several Wads.GetLump...() methods to ZScript
* GetLumpName() returns 8-characters lump name
* GetLumpFullName() returns full name with path and extension
* GetLumpNamespace() returns lump's namespace
* GetNumLumps() returns total number of lumps

https://forum.zdoom.org/viewtopic.php?t=66285
2019-11-25 18:16:42 +01:00
Ed the Bat
b47e331c15 More level_compatibility map fixes
These maps have actors not marked for any game mode (single, cooperative, deathmatch). That works in Zandronum, but GZDoom requires this fix.
2019-11-25 12:11:06 +01:00
Rachael Alexanderson
818d9764c5 - fixed a compatibility fix that used 'FlipLine' 2019-11-25 12:11:04 +01:00
Rachael Alexanderson
bbe64ac8c6 - rename 'FlipLine' to 'FlipLineVertexes' to clarify what it does
- add function 'FlipLineCompletely' which calls both 'FlipLineVertexes' and 'FlipLineSideRefs'
2019-11-25 12:11:01 +01:00
Player701
d7542a8cd9 - Implemented scale parameter for BaseStatusBar::DrawString
# Conflicts:
#	src/g_statusbar/shared_sbar.cpp

# Conflicts:
#	src/g_statusbar/shared_sbar.cpp
2019-11-25 12:10:58 +01:00
Ed the Bat
6b70b7d83a Compatibility fixes for Clavicula Nox
https://www.doomworld.com/idgames/levels/doom2/Ports/a-c/clavnoxr

This Vavoom mod was unplayable in G/ZDoom without cheating, due to how swimmable water was implemented. This finally fixes it to work.
2019-11-23 01:10:07 +01:00
Ed the Bat
bfcc4b7be6 Update level_compatibility.zs (#973)
* Update level_compatibility.zs

Map fixes for some older mods

* Formatting changes

Spaces around commas and comment markers, to better match the rest of the file
2019-11-21 18:03:59 +01:00
drfrag
4977e6af1f - add native FlipLineSideRefs(line)
- FlipLineSideRefs should only work on single-sided lines
(patch by Rachael)
2019-11-16 14:01:47 +01:00
Rachael Alexanderson
4878da381b - new zscript function 'SetLineVertexes(line, v1, v2)'
- scriptify 'FlipLine' completely using new function, remove native version

# Conflicts:
#	src/maploader/postprocessor.cpp
2019-11-13 19:34:39 +01:00
Marisa Kirisame
50a7db6fa3 Localize level/author strings on intermission startup, fixes misalignments.
# Conflicts:
#	wadsrc/static/zscript/ui/statscreen/statscreen.zs
2019-11-13 19:34:31 +01:00
drfrag
44aeb56932 - add 'FlipLine' to 'LevelPostProcessor'
(patch by Rachael)
2019-11-13 19:34:28 +01:00
alexey.lysiuk
05f36cafc8 - extended level post-processing with special string arguments
# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:26 +01:00
alexey.lysiuk
dca15d56c8 - extended level post-processing with thing IDs
# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:23 +01:00
alexey.lysiuk
814483f5b8 - level post-processor cleanup
# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:21 +01:00
alexey.lysiuk
7f1166e833 - level post-processor can now add new things
# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:18 +01:00
alexey.lysiuk
05f0b76f8e - extended level post-processing with specials and arguments
# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:16 +01:00
alexey.lysiuk
09e7fe5fb4 - extended level post-processing with editor numbers and angles
# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:13 +01:00
alexey.lysiuk
20098ca90b - 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

# Conflicts:
#	src/maploader/maploader.cpp
2019-11-13 19:34:11 +01:00
drfrag
91859bc6fa - added generic level post-processing script class
It was extracted from LevelCompatibility class, and native code was moved accordingly
(original patch by _mental_)

# Conflicts:
#	src/compatibility.cpp
2019-11-13 19:33:49 +01:00
drfrag
033f0ca43e Revert "- add 'flipline' function to levelcompatibility"
This reverts commit 1a85206983.

Revert "- implement the following functions under LevelCompatibility:"

This reverts commit 6537eca669.
2019-11-13 19:31:42 +01:00
alexey.lysiuk
81010b4fbf - fixed missing fullbright for Berserk
https://forum.zdoom.org/viewtopic.php?t=66307
2019-11-06 17:51:03 +01:00
alexey.lysiuk
c41a44176f - fixed broken walkthrough of Restoring Deimos MAP07 2019-11-02 21:22:19 +01:00
drfrag
9ea43c4b14 - Fixed taking screenshots in menus with Space when Sys_Rq is set as screenshot key.
Thanks randi!
2019-10-31 17:05:33 +01:00
alexey.lysiuk
941a5f37a5 - 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 12:14:58 +02:00
drfrag
0907972c2f Revert "- allow the language table to supersede the title patches, if appropriate"
This reverts commit 2b51e8d5dd.

# Conflicts:
#	src/g_hub.cpp
#	src/g_level.cpp
#	src/p_setup.cpp
#	src/wi_stuff.cpp
#	src/wi_stuff.h
#	wadsrc/static/zscript/ui/statscreen/types.zs

Revert "- fixed: The wbstartstruct that gets passed to the level summary screen needs to be static"

This reverts commit 4a563f449d.

# Conflicts:
#	src/g_level.cpp

Revert "- Fixed compilation."

This reverts commit 149a294a49.

# Conflicts:
#	src/g_level.cpp

Revert "- Fixed game finales not being shown after the intermission."

This reverts commit 55af0b11c6.

All this didn't make sense without localization and caused problems with intermissions and endings, it was incompatible with the old code without the level refactor.
2019-10-25 16:23:42 +02:00
PaulyB
c9075cc481 Scythe MAP22 Compatibility fix 2019-10-22 10:59:19 +02:00
Christoph Oelckers
f15a52b1e7 - 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-22 10:59:13 +02:00
alexey.lysiuk
af3fce739d - fixed broken walkthrough of Skulldash MAP04 2019-10-20 11:31:57 +02:00
alexey.lysiuk
f41c0eca12 - fixed broken walkthrough of Restoring Deimos MAP03
# Conflicts:
#	wadsrc/static/zscript/level_compatibility.zs
2019-10-20 11:31:53 +02:00
alexey.lysiuk
0b16eb2cbb - fixed: pickup flash didn't fade out if player was killed by pickup
https://forum.zdoom.org/viewtopic.php?t=66135
2019-10-16 20:56:41 +02:00
Major Cooke
60b6b31542 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.
2019-10-12 14:35:31 +02:00
Alexander
b4d10d2f5b 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 21:38:48 +02:00
alexey.lysiuk
df05187229 - fixed inventory scroll arrows in alternative HUD
https://forum.zdoom.org/viewtopic.php?t=65976
2019-09-29 18:16:10 +02:00
Rachael Alexanderson
6537eca669 - implement the following functions under LevelCompatibility:
GetNumMapThings, GetMapThingPos, GetMapThingAngle, SetMapThingAngle

# Conflicts:
#	src/maploader/compatibility.cpp
2019-09-28 15:01:23 +02:00
Rachael Alexanderson
1a85206983 - add 'flipline' function to levelcompatibility
# Conflicts:
#	src/maploader/compatibility.cpp
2019-09-28 14:56:12 +02:00
drfrag
a1e19657f9 - Added support for PrtSc and cosmetic changes. 2019-09-22 19:34:56 +02:00
Alexander
6535f837b7 implement taking screen shots in menus
# Conflicts:
#	wadsrc/static/zscript/ui/menu/menu.zs
2019-09-22 12:45:32 +02:00