Commit graph

16750 commits

Author SHA1 Message Date
3saster
a3d7029e2c Removed some time specifiers that aren't standard and can crash GZDoom (#1166)
A number of the specifiers were GNU extensions that aren't actually standard
2020-08-29 22:51:31 +02:00
drfrag
74cffeb84f - Add the DF2_NO_COOP_THING_SPAWNDM flag to prevent spawning MP things in coop. 2020-08-29 17:57:24 +02:00
alexey.lysiuk
6b16b6a0c1 - fixed compilation warnings reported by MSVC
src\common\audio\sound\s_sound.cpp(556,27): warning C4244: '=': conversion from 'double' to 'float', possible loss of data
src\scripting\vmthunks.cpp(2678,13): warning C4244: 'return': conversion from 'time_t' to 'int', possible loss of data
2020-08-29 15:43:21 +02:00
alexey.lysiuk
8755a5efc1 - fill array of objects with nulls on reserve
When item of object array is reserved but not written, it contains random garbage that is treated as valid pointer by VM and GC

https://forum.zdoom.org/viewtopic.php?t=69703
2020-08-29 15:43:18 +02:00
alexey.lysiuk
6f3205174d - fixed getting state name with incomplete list of actor classes
https://forum.zdoom.org/viewtopic.php?t=69713
2020-08-29 11:50:18 +02:00
alexey.lysiuk
3ff3a5f846 - fixed compilation warnings introduced recently
src/console/c_cmds.cpp:690:11: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
src/scripting/vmthunks.cpp:2698:21: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
2020-08-29 11:50:16 +02:00
3saster
26f2bfe3fd Implemented Clock Class (#977)
* Simplified some stuff, made up-to-date

* Dealt with DST problems

* Made SystemTime.Format clearscope, as there is no reason for this function to be limited to the ui
# Conflicts:
#	wadsrc/static/zscript/ui/statusbar/alt_hud.zs
2020-08-28 17:20:28 +02:00
MajorCooke
4f522c0ac3 View Angles (Part 1 - Redux) (#1002)
* Added ViewAngle/Pitch/Roll properties to actors.

- These are offsets for camera angles that allow turning the camera without affecting aim or movement direction.
- Added A_SetView<Angle/Pitch/Roll>, which will set the view direction.
- Added ABSVIEWANGLES flag, used to make the view absolute instead of an offset.

* Converted functions to be direct-native.
2020-08-28 13:47:22 +02:00
MajorCooke
62f3a1cf08 Added an optional extra float parameter to $pitchshift. (#1150)
- This allows for setting a randomized range for the pitch each time the sound is initialized.
# Conflicts:
#	src/sound/s_sound.cpp
2020-08-28 13:47:09 +02:00
MajorCooke
83f82afbc8 Optimized P_CheckPosition. (#1161)
- If the actor passed into the function has THRUACTORS, PIT_CheckThing won't be called anymore.
- Moved THRUACTORS check to just under the self clipping check in PIT_CheckThing.
2020-08-28 13:46:55 +02:00
alexey.lysiuk
cebca2d93d - do not report missing camera target if its TID is zero
This handles the case with setting TID of thing to follow after camera spawning, e.g. via ACS

https://forum.zdoom.org/viewtopic.php?t=69690
2020-08-28 13:46:52 +02:00
Chronos Ouroboros
3ea75a7863 Fixed an incorrect abort message on out of bounds array access. 2020-08-28 13:46:48 +02:00
alexey.lysiuk
643cba776b - added initialization for line and sector portals
Resizing of portal arrays during serialization could lead to processing of junk data

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

# Conflicts:
#	src/maploader/specials.cpp
#	src/portal.cpp

# Conflicts:
#	src/portal.h
2020-08-28 13:46:10 +02:00
alexey.lysiuk
36210acc28 - update floor/ceiling for inventory items after traveling
Inventory items had dangling floor and ceiling sector pointers after transition to a new level
This could cause random issues with serialization

https://forum.zdoom.org/viewtopic.php?t=67494
2020-08-28 13:44:41 +02:00
Nash Muhandes
c2f220132d Allow conversation menu cursor graphic replacement. (#1134)
If "graphics/DialogReplyCursor.png" is present, it will be used for the reply cursor. Otherwise, the default ConFont cursor is used.
# Conflicts:
#	wadsrc/static/zscript/ui/menu/conversationmenu.zs
2020-08-28 13:43:24 +02:00
Ed the Bat
83eeaac940 Optional override for SetSlot and ClearPlayerClasses
With this, a decade-long struggle can now be ended.

# Conflicts:
#	src/keysections.cpp
#	wadsrc/static/menudef.txt
2020-08-28 13:42:40 +02:00
drfrag
7416a1d49b - Disable compat_oldrandom for a few more PRNGs just in case. 2020-08-28 13:25:27 +02:00
drfrag
a020070bf0 - Add game load message. 2020-08-24 18:31:31 +02:00
drfrag
0a210ed7f0 - Disable chat for single player, controlled by the chat_self CVAR. 2020-08-24 17:59:51 +02:00
drfrag
a228edf64f - Disable the original Doom PRNG flag for a bunch of named generators. 2020-08-24 17:22:53 +02:00
drfrag
eeef1c2dad - Now base the old PRNG flag on Edward850's implementation but done in reverse.
Also disable it for some generators.
https://forum.zdoom.org/viewtopic.php?f=4&t=47546
2020-08-24 17:06:09 +02:00
drfrag
e002d61823 Revert "Ported the COMPATF2_OLD_RANDOM_GENERATOR compatibility flag from Zandronum".
It made demos and MP games desync.
2020-08-24 16:19:16 +02:00
drfrag
f9bd158211 - Ported the COMPATF2_OLD_RANDOM_GENERATOR compatibility flag from Zandronum and added it to the Doom (Strict) compatibility mode.
Added new compatflag "old random generator", controlled by the new CVAR compat_oldrandom. If this is enabled, the original Doom random table is used to generate random integers in [0,255], which should make for instance the SSG cause a little more damage.
2020-08-24 16:11:07 +02:00
alexey.lysiuk
479f421007 - fixed event processing in XMI reader
Event pointer was moved forward twice leaving arbitrary garbage data in the stream

https://forum.zdoom.org/viewtopic.php?t=69631
2020-08-22 13:07:43 +02:00
Chronos Ouroboros
0ea4e182c7 Fixed nested structs breaking the ZScript compiler under certain circumstances. 2020-08-15 19:02:58 +02:00
RockstarRaccoonAlt
2c3303e723 Fix obscure error in Animated Doors where the Actor can be NULL
This is a quick fix for an error in which Animated Doors crash the game by trying to check "actor->player" when "actor" itself is NULL.  Deleting the check entirely also worked, but I worried it might be there for some higher-level scripting reason.  This just puts in a check to make sure actor isn't NULL before checking actor->player, and keeps the behavior in that case the same.

I think this was happening because I had doors being opened by projectiles (like in Metroid) which were being despawned into NULL pointers when they hit the doors, as this was an issue when initially programming said doors..
2020-08-15 11:27:45 +02:00
MajorCooke
3d22c635f4 P_BounceActor now calls SpecialMissileHit before any other bouncing effects are processed. Return values are as such: (#1156)
- 1: The missile will continue moving through the actor, and it's down to the modder to handle bouncing.
- 0: The missile will explode.
- Any other value will process a bouncing actor as normally done in the engine.
2020-08-14 12:46:31 +02:00
Kevin Caccamo
4fac2e3ebc Fix the health bar on Strife status bar (#1080)
* Fix the health bar on Strife status bar

Now, if the player's health is above 100, the green health bar won't be shortened any more.

* Fix the bar properly

Now, the blue and green bars don't overlap. Also, health above 100 goes from right to left, like in Strife: Veteran Edition.
2020-08-08 16:15:25 +02:00
alexey.lysiuk
a4fe7b6de2 - fixed: UMAPINFO partime was multiplied by ticrate
https://www.doomworld.com/forum/post/2167749
2020-08-03 17:57:30 +02:00
Rachael Alexanderson
3197679114 - demote pwad defcvars error to a warning 2020-08-01 17:31:43 +02:00
Blue Shadow
2cc9c0bbde - fixed: the minotaur spawned its floor flames regardless of the setting of compat_minotaur
A_MinotaurAtk3 was checking against the CVAR instead of the compatibility flag constant.

# Conflicts:
#	wadsrc/static/zscript/actors/raven/minotaur.zs
2020-07-28 13:26:55 +02:00
Major Cooke
09f5d1b666 Added $PitchSet <logical name> <float> for SNDINFO.
- Sets the direct pitch of the sound to the specific float. Default is 0.0, meaning do not set a specific pitch. Regular pitch is 1.0.
- Only works for direct sound definitions.
- Overrides $PitchShift unless value is <= 0.0
- Overridden by A_StartSound's pitch parameter if the value > 0.0.
2020-07-24 12:42:17 +02:00
drfrag
f02d0d44d9 - Missing strings. 2020-07-22 02:33:46 +02:00
Rachael Alexanderson
bddbe608f6 - add menu options for 'sv_alwaystally'
# Conflicts:
#	wadsrc/static/menudef.txt

# Conflicts:
#	wadsrc/static/menudef.txt
2020-07-22 02:33:44 +02:00
Rachael Alexanderson
b9e98889ef - add 'sv_alwaystally' defaults to 0 with the following states:
* 0: previous behavior (completely MAPINFO controlled)
* 1: always show level tally at the end of an episode
* 2: always show level tally even when changing levels within a hub

# Conflicts:
#	src/g_level.cpp
#	src/g_levellocals.h

# Conflicts:
#	src/g_level.cpp
2020-07-21 21:38:00 +02:00
Major Cooke
b9e2063a65 Begin TICRATE conversion.
- Moved TICRATE from Thinker to Object in ZScript so status bars have access to it.

# Conflicts:
#	src/p_effect.h
#	wadsrc/static/zscript/base.zs
2020-07-15 19:03:44 +02:00
drfrag
54482bf165 - Fix compilation with VS 2019? 2020-07-12 12:14:33 +02:00
Marisa Kirisame
b6ee4151ee Optimize UE1 vertex normal computation. 2020-07-12 12:14:30 +02:00
Christoph Oelckers
70de6ff165 - added more contrast to the Cream font color.
This brightened the darkest colors to the point that all font looked totally washed out and devoid of any texture.
2020-07-10 14:58:54 +02:00
Rachael Alexanderson
de2d564c98 - change recent /0 fix to conform to UDMF specs
# Conflicts:
#	src/playsim/p_spec.cpp
2020-06-25 16:07:20 +02:00
Farkas Péter
ee94d3b627 Rename MAP31 and MAP32 back in Doom 2: Unity Edition (#1127) 2020-06-25 16:07:18 +02:00
drfrag
cf083f5b56 - Fixed division by zero when damageinterval was not specified from ZScript. 2020-06-25 14:02:29 +02:00
alexey.lysiuk
d3b5e952ba - fixed freeze with StartSlideshow called for undefined intermission
https://forum.zdoom.org/viewtopic.php?t=69079
2020-06-23 20:15:45 +02:00
drfrag
aad005c688 - Don't show the iwad selection box with -iwad. 2020-06-21 15:54:13 +02:00
drfrag
299cd93a3f - LZDoom 3.86. 2020-06-20 18:28:37 +02:00
alexey.lysiuk
da8c452795 - added mixin support to AST output 2020-06-20 16:25:35 +02:00
alexey.lysiuk
f2b1d45985 - fixed leaking full VM frames
https://forum.zdoom.org/viewtopic.php?t=69055
2020-06-20 10:48:32 +02:00
Cacodemon345
a0fee03209 Account for the NOTONAUTOMAP flag when using am_thingrenderstyles 2020-06-20 10:48:21 +02:00
drfrag
5e65a9d6b9 - Deleted old unused stuff. 2020-06-19 11:54:07 +02:00
Christoph Oelckers
cd74e70739 - fixed: Inventory items that are terminated by GoAwayAndDie must be removed from the blockmap and sector lists.
Since they were just scheduled for delayed deletion any map related action they can trigger is unwanted.
2020-06-19 11:54:05 +02:00