Commit graph

19091 commits

Author SHA1 Message Date
alexey.lysiuk
adfd5de166 - do not abort saving and loading on pointer serialization errors
Attempt to serialize invalid pointer is reported, and its value is treated as null
2020-09-02 15:21:00 +03:00
Marisa Kirisame
58f5c030fe
Add Travelled virtual for PlayerPawn, akin to the same function for Inventory. (#1169) 2020-09-02 06:12:58 -04:00
Marisa Kirisame
e0aa8db616 Add Pre/PostTeleport virtuals, for special handling of actor teleportation. 2020-09-02 12:02:09 +02:00
alexey.lysiuk
53199e4553 - reset player's blocking line on traveling between levels
It's not obvious where we can reset blocking line in a more generic way, and whether it's possible at all, because this member is exposed to scripting

https://forum.zdoom.org/viewtopic.php?t=69747
2020-09-01 15:02:02 +03:00
Maarten Lensink
5ef02df827 Count up to level time only 2020-08-31 18:48:20 +02:00
Maarten Lensink
90f40bd8eb Display own and total in coop alt hud 2020-08-30 19:41:17 +02:00
Rachael Alexanderson
0868f65199 Merge commit 'refs/pull/1168/head' of https://github.com/coelckers/gzdoom
# Conflicts:
#	wadsrc/static/zscript/ui/statscreen/statscreen_coop.zs
2020-08-30 09:43:03 -04:00
Maarten Lensink
34dd9625fc
Display other kills in coop tally screen (#1167)
* Display other kills in coop tally screen

* Showing other when skipping counter
2020-08-30 09:34:53 -04:00
Maarten Lensink
c81370a9ec Showing time when skipping counter 2020-08-30 15:40:26 +03:00
Maarten Lensink
2e0289e501 Making use of String.Format 2020-08-30 15:12:23 +03:00
Maarten Lensink
005f13b853 Time in coop tally 2020-08-30 03:53:05 +03:00
3saster
11cecf7f22
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 15:55:51 -04:00
dondiego
560bbf0a9c
- Add the DF2_NO_COOP_THING_SPAWNDM flag to prevent spawning MP things in coop. (#1165) 2020-08-29 15:08:08 -04:00
alexey.lysiuk
254489e34c - 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 14:42:19 +03:00
alexey.lysiuk
60886f389c - 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 13:06:46 +03:00
alexey.lysiuk
f46e3bacb2 - fixed getting state name with incomplete list of actor classes
https://forum.zdoom.org/viewtopic.php?t=69713
2020-08-29 11:08:31 +03:00
alexey.lysiuk
fb20730960 - 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 10:36:29 +03:00
MajorCooke
eaba63e13b
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-27 13:03:06 -04:00
MajorCooke
c57e669044
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.
2020-08-27 12:49:59 -04:00
3saster
5803b78147
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
2020-08-27 12:43:50 -04:00
MajorCooke
85759e3bd0
Added A_SpriteOffset. (#895)
- Coordinates work akin to A_OverlayOffset: +X shifts to the right, +Y shifts down.
2020-08-27 12:43:09 -04:00
William Breathitt Gray
3e69e44763
Install soundfonts and WOPL/WOPN banks (#874)
The INSTALL_SOUNDFONT_PATH cache entry is used to configure the
installation directory.
2020-08-27 12:39:56 -04:00
MajorCooke
4cbcb84dc9
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-27 12:37:39 -04:00
alexey.lysiuk
c20a7f53c9 - 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-27 11:57:25 +03:00
alexey.lysiuk
fc1f14b2eb - extended error messages in pointers serialization 2020-08-27 10:13:18 +03:00
alexey.lysiuk
dad0a6f977 - fixed typo in serialization error message 2020-08-27 09:57:36 +03:00
Chronos Ouroboros
2e2ee33a98 Fixed an incorrect abort message on out of bounds array access. 2020-08-26 18:16:04 -03:00
Rachael Alexanderson
54a630c3cf - amend last commit: rename the variable to something slightly more meaningful 2020-08-25 19:48:25 -04:00
Rachael Alexanderson
28f7728980 - fix a bug in the png renderer of the software renderer with decals: if the palette remap is missing, don't attempt to use it. (fix null pointer) 2020-08-25 19:10:22 -04:00
alexey.lysiuk
dfd5726eb0 - added bounds checks for serialization of pointers
Bogus pointers and offsets were serialized silently
This will to find other cases of dangling pointers, and protect from loading of broken saved games

https://forum.zdoom.org/viewtopic.php?t=67494
2020-08-25 21:54:36 +03:00
alexey.lysiuk
f9708e225c - 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
2020-08-25 21:54:36 +03:00
alexey.lysiuk
05f9df7057 - 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-25 21:54:36 +03:00
Nash Muhandes
09a7a0d944
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.
2020-08-25 11:55:43 -04:00
Alexander Kromm (m8f)
83ffcbf692
autosave and make screenshot only if there is no other game actions (#1126)
In-game fix for this bug: https://forum.zdoom.org/viewtopic.php?f=43&t=59889&start=60#p1121698
because it may be also caused by other scripts or even manually.
2020-08-25 11:54:57 -04:00
Sterling Parker
d2a9de0012
Add PlayerSpawned() event (#1118)
* Add PlayerSpawned() event

* add playerspawned to DStaticEventHandler

* Define PlyerSpawned() correctly
2020-08-25 11:54:20 -04:00
Rachael Alexanderson
b5af2fc2eb - fix previous commit 2020-08-25 11:34:22 -04:00
Rachael Alexanderson
5f9377ae2a Merge commit 'refs/pull/980/head' of https://github.com/coelckers/gzdoom
# Conflicts:
#	wadsrc/static/menudef.txt
2020-08-25 11:32:10 -04:00
Magnus Norddahl
8306af298f Switch to use a single triangle when drawing screen quads for a slight cache locality improvement 2020-08-18 11:42:50 +02:00
Chronos Ouroboros
0f86f3a62a Fixed nested structs breaking the ZScript compiler under certain circumstances. 2020-08-15 16:25:59 +02:00
RockstarRaccoonAlt
b8bf812433 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 09:06:58 +02:00
MajorCooke
7e4a996cd4
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 02:01:32 -04:00
alexey.lysiuk
24200c0c3f - fixed ARM64 compilation issues reported by Xcode 12 beta 4
src/common/engine/stats.h:139:31: error: invalid output constraint '=A' in asm
src/common/platform/posix/osx/iwadpicker_cocoa.mm:379:1: warning: non-void function does not return a value [-Wreturn-type]
2020-08-09 15:40:38 +03:00
alexey.lysiuk
b7e8a87b81 - fixed platform detection of Apple ARM64 target 2020-08-09 15:22:04 +03:00
Cacodemon345
b0e2c993f7
- added macOS Big Sur and ARM64 detection (#1151) 2020-08-09 15:06:11 +03:00
Perry Fraser
86cf5c9e53
- added native fullscreen mode option to Cocoa backend (#1154) 2020-08-09 14:41:29 +03:00
Kevin Caccamo
b6f0c4071d
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 01:26:59 -04:00
alexey.lysiuk
5f8b313446 - fixed: UMAPINFO partime was multiplied by ticrate
https://www.doomworld.com/forum/post/2167749
2020-08-03 12:45:20 +03:00
Rachael Alexanderson
bda49d0bf7 - demote pwad defcvars error to a warning 2020-08-01 06:01:29 -04:00
Blue Shadow
7179eaacda - 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.
2020-07-28 12:25:35 +02:00
Rachael Alexanderson
86bac6bfcf - sv_leveltally has been removed from the config file and is now session-only 2020-07-25 10:28:08 -04:00