Nikolay Ambartsumov
5ece08d12e
Make bMaskRotation angles portal-aware
2020-10-18 07:35:10 +02:00
Christoph Oelckers
d6e962c91e
- upgraded code base to C++17.
...
Mainly to allow using 'if constexpr'.
Older CI compiler setups like GCC 5 for Linux were removed as a consequence.
Windows 32 bit was also removed because there are no plans to do any more 32 bit releases of GZDoom.
2020-10-17 11:39:59 +02:00
Christoph Oelckers
4ac7588488
- did a bit of AActor reshuffling so that the new thruBits can be placed into a previously existing alignment gap.
2020-10-17 09:54:31 +02:00
Major Cooke
60f0d35477
Added ThruBits.
2020-10-17 09:51:24 +02:00
Nash Muhandes
cfbf115c4b
Change A_OverlayTranslation to accept a named translation instead. ( #1215 )
...
For more advanced use cases, the Translation member of PSprite can be written to directly.
2020-10-12 11:43:37 -04:00
Nash Muhandes
7bea14e6b2
- Add A_OverlayTranslation to set PSprite translations ( #1202 )
...
- Added PSPF_PLAYERTRANSLATED support to the software renderer
2020-10-11 17:14:06 -04:00
Christoph Oelckers
91406aa48b
- fixed compilation.
...
Forgot to save these before the last commit. :(
2020-10-03 08:54:21 +02:00
Christoph Oelckers
c1e04b29d1
- AActor size reduction
...
* a few shorter fields were moved into alignment gaps
* the visible angles are now stored as floats. Since these are only used for rendering the loss of precision is negligible, but this shortens AActor by 16 bytes alone.
2020-10-03 08:23:36 +02:00
Nikolay Ambartsumov
a72fdd7e3e
Add MaxSlopeSteepness actor property
2020-10-03 07:53:55 +02:00
Christoph Oelckers
043de8c780
Revert "- avoid double linking to and unlinking from the world for actors."
...
This reverts commit 8fc9f1e5ef
.
As I already feared, this does not work right. The entire linking/unlinking code is simply too fragile. So no protection here against inept tinkering.
2020-09-27 19:56:50 +02:00
Major Cooke
200104777b
Call SpecialMissileHit directly with zero damaging missiles last to ensure the function is actually triggered.
2020-09-27 14:03:02 +02:00
makise-homura
5720a54da4
Add species parameter to A_RadiusThrust
...
This is the last parameter for A_RadiusThrust() DECORATE function.
If it is omitted or none, then A_RadiusThrust will behave as usual.
If it is set for some species name, it witt thrust only that species.
Of course, these species should be +VULNERABLE to be thrustable.
2020-09-27 13:58:22 +02:00
Christoph Oelckers
5c392a220d
- fixed: Actors moved to STAT_TRAVELLING need to preserve their JUSTSPAWNED flag.
...
Otherwise freshly spawned inventory items won't call PostBeginPlay.
2020-09-26 19:37:30 +02:00
Christoph Oelckers
8fc9f1e5ef
- avoid double linking to and unlinking from the world for actors.
...
Some people apparently have to toy around with the engine's innards without fully understanding them. :(
When properly used the saveguards should never be triggered.
2020-09-26 19:09:00 +02:00
Christoph Oelckers
2ffb447f9e
- let non-solid teleporting actors not actually telefrag.
...
Since they are non-solid they may just be allowed to teleport, even when a monster or player is in the way.
2020-09-26 18:46:39 +02:00
Player701
c60e026334
Fixed decals not appearing when firing at walls point-blank ( #1186 )
2020-09-22 07:03:37 -04:00
Cacodemon345
e74b9f1955
Add FALLDAMAGE flag and add property to properly apply falling damage… ( #1153 )
...
* Add FALLDAMAGE flag and add property to properly apply falling damage to the monsters
* Change name of propermonsterdamage property to propermonsterfallingdamage
2020-09-15 15:38:51 +02:00
Marisa Kirisame
e0aa8db616
Add Pre/PostTeleport virtuals, for special handling of actor teleportation.
2020-09-02 12:02:09 +02: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
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
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
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
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
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
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
Rachael Alexanderson
383f3e5fd6
- change recent /0 fix to conform to UDMF specs
2020-06-25 09:30:52 -04:00
Rachael Alexanderson
f47055bca6
- amend previous commit: do the same for healing sectors, as well
2020-06-23 13:37:56 -04:00
Rachael Alexanderson
90895d154b
- when a damaging sector's damage interval is 0, instantly kill the player instead of dividing by 0
2020-06-23 13:12:25 -04:00
Christoph Oelckers
cfd8d07bf8
- added missing target check to A_RadiusDamageSelf.
2020-06-16 00:16:22 +02:00
Christoph Oelckers
e47f016b23
- fixed: AActor::GetModifiedDamage must account for the inventory items to get destroyed in its scripted subfunctions.
2020-06-12 23:11:45 +02:00
Marisa Kirisame
e81641dd01
Hotfix: LineTrace now reports the correct number of portal crossings.
2020-06-07 15:04:44 +02:00
alexey.lysiuk
8a1091c6fe
- fixed (un)morphing of more than one actor from ACS
...
https://forum.zdoom.org/viewtopic.php?t=68847
2020-06-07 12:16:46 +03:00
Alexander Kromm
928c738e19
make various getter and pure-math methods clearscope, and where applicable, const
...
Original PR: https://github.com/coelckers/gzdoom/pull/532
Status of the original PR
1. Actor
- [already in] deltaangle
- [already in] absangle
- [already in] AngleToVector
- [already in] RotateVector
- [already in] Normalize180
- [already in] BobSin
- [already in] GetDefaultSpeed
- [this PR] GetBobOffset
- [this PR] InStateSequence
- [already in] FindState
- [already in] GetDropItems
- [this PR] DistanceBySpeed
- [this PR] AccuracyFactor
- [not in original PR, for PlayerInfo.isTotallyFrozen] isFrozen
2. PlayerInfo
- [this PR] GetUserName
- [this PR] GetColor
- [this PR] GetDisplayColor
- [this PR] GetColorSet
- [this PR] GetPlayerClassNum
- [this PR] GetSkin
- [this PR] GetNeverSwitch
- [this PR] GetGender
- [this PR] GetTeam
- [this PR] GetAutoaim
- [this PR] GetNoAutostartMap
- [this PR] GetClassicFlight
- [this PR] IsTotallyFrozen
3. C++ methods, to match ZScript:
- [scriptified] AActor::AccuracyFactor() to Actor.AccuracyFactor
- [this PR] AActor::DistanceBySpeed(AActor *, double) — it is a combination of getter and pure math
- [this PR] AActor::Distance2D(AActor *, bool) — called by DistanceBySpeed
- [this PR] AActor::Distance2D(AActor *, double, double, bool) — called by DistanceBySpeed
- [not in original PR, for PlayerInfo.isTotallyFrozen] AActor::isFrozen
2020-06-07 09:39:30 +02:00
Christoph Oelckers
932b2d820d
- fixed floorclipping checks for 3D floors.
...
Neither the setup nor the in-game checks were correct, because this code comes from a time where ceilings could not have a terrain, meaning that 3D floors couldn't have one.
2020-06-02 23:04:05 +02:00
Christoph Oelckers
c537e5a0b7
- fixed bad ACS translation indexing.
2020-06-02 22:31:04 +02:00
Christoph Oelckers
1881cb45d2
- reject all 0-special lines for activation.
...
This is to ensure consistency between all callers of this function.
2020-06-02 21:38:55 +02:00
Christoph Oelckers
c48fa818ff
- use modulo, not bitwise and-ing to check the damage delay for terrain based damage.
...
This was apparently overlooked when refactoring the damage system 4 years ago.
2020-06-02 21:24:34 +02:00
Hugo Locurcio
80c5b4d37b
Add a cvar to control weapon bobbing while firing
...
This simulates a feature found in Crispy Doom, which keeps the
weapon bobbing while firing. This leads to a "smoother" appearance
which may look a bit prettier to some people.
The default value of 0 preserves the old behavior.
2020-05-31 23:12:11 +02:00
Christoph Oelckers
730f64e447
Merge branch 'master' of https://github.com/coelckers/gzdoom
2020-05-25 21:23:25 +02:00
Christoph Oelckers
2828dbe095
- fixed: TRF_ALLACTORS did not consider actors without any flag being set.
2020-05-25 19:33:14 +02:00
Christoph Oelckers
991661e11e
- fixed missing sound for Polyobj_MoveTo.
2020-05-25 16:24:36 +02:00
Marisa Kirisame
7d5df1dd7e
Add mapinfo option to disable merging of identical pickup messages on same tic
2020-05-24 08:19:14 +02:00
Rachael Alexanderson
0f0768652a
- force player respawn to call up the player's default class settings before determining where to respawn the player
2020-05-07 04:33:28 -04:00
Rachael Alexanderson
192882f63a
Merge branch 'master' of https://github.com/coelckers/gzdoom into texture_rework
2020-05-07 04:32:46 -04:00
Mekboss
4807f4240b
Fix MSVS compile bug and add offset parameter for SprayDecal
2020-05-07 09:35:48 +02:00
Mekboss
0e9ca3c850
Replace function variables to DVector3
2020-05-07 09:35:48 +02:00
Mekboss
ba43244764
Add optional direction parameters for SprayDecal and its A_SprayDecal zscript counterpart
2020-05-07 09:35:48 +02:00
Cacodemon345
4b4ff8dd0e
Fix bouncing missiles not dealing damage when hitting top/bottom ( #1068 )
...
* Fix bouncing missiles not dealing damage when hitting top/bottom
2020-04-30 08:55:09 +02:00
Christoph Oelckers
e3fdf2194e
- moved a few leftover utility classes to 'common'.
2020-04-29 17:51:04 +02:00
Christoph Oelckers
6cf91d3941
- moved the remaining core parts of the GL renderer to 'common'.
2020-04-29 17:19:17 +02:00
Christoph Oelckers
9be63a5093
Merge branch 'master' into texture_rework
2020-04-29 08:04:15 +02:00
Christoph Oelckers
2196b4fb04
- moved the frame rate drawer out of DFrameBuffer.
...
Too much of this is not shareable and all it consists of are drawing operations on the 2D drawer.
2020-04-27 23:53:26 +02:00
PaulyB
573b2958c6
Added MTF_NOCOUNT to spawn flags
2020-04-27 20:30:37 +02:00
Christoph Oelckers
67a50d084a
- started cleanup of model code.
...
* refactored FBoundingBox so that the game dependent members are global functions now.
* changed some methods of the model renderer to take a render style parameter instead of a full actor.
2020-04-27 00:03:23 +02:00
Christoph Oelckers
bd3f4e7347
- relax pointer substitution restriction for morphed monsters.
2020-04-19 21:08:23 +02:00
Christoph Oelckers
88d5bf6877
- relax pointer substitution restriction for morphed monsters.
2020-04-19 19:03:25 +02:00
Christoph Oelckers
0eb68177ca
Merge branch 'master' into texture_rework
2020-04-19 18:07:16 +02:00
Christoph Oelckers
052172b9ee
- let TeleportSpecial universally map to Teleport when checking action special names.
2020-04-19 18:00:27 +02:00
Christoph Oelckers
e63871d6f5
- 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.
2020-04-19 13:40:21 +02:00
Christoph Oelckers
9099bc8420
- reworking some lower level texture code.
2020-04-19 10:57:46 +02:00
Christoph Oelckers
b9b6a354c7
- changed all texture access in the play code to use FGameTexture and redid Hexen's front sky layer by adding a new texture instead of hacking the existing one.
2020-04-19 10:57:46 +02:00
Christoph Oelckers
6722b64ac0
- fixed: Setting 'noallies' on the level cleared the player's friendly flag.
...
The check was for mobj->player, which at this point wasn't set yet so the check failed.
2020-04-13 10:54:40 +02:00
Major Cooke
a56177f178
Begin TICRATE conversion.
...
- Moved TICRATE from Thinker to Object in ZScript so status bars have access to it.
2020-04-12 22:43:33 +02:00
alexey.lysiuk
72c8df530f
- fixed compilation of optimized GCC and Clang targets
2020-04-12 11:03:25 +03:00
alexey.lysiuk
f0ca7fb213
- fixed compilation of Linux targets
2020-04-12 11:03:01 +03:00
Christoph Oelckers
7b292cca57
- split the serializer in two to keep the Doom specific parts out of the main file.
2020-04-11 20:20:53 +02:00
Christoph Oelckers
f74efcf721
- split the TObjPtr serializers into a separate file to avoid polluting everything that needs to use the serializer.
...
To use these it is necessary to include dobject.h and all its dependencies, so this should not be done unless necessary.
2020-04-11 20:20:53 +02:00
Christoph Oelckers
cf51508ce6
- moved around some pieces of code to make sharing with Raze easier.
2020-04-11 20:20:52 +02:00
Christoph Oelckers
580e463498
- moved texture code to 'common'.
2020-04-11 20:20:38 +02:00
Christoph Oelckers
3e285d2261
- moved renderstyle and colortables code to 'common'.
2020-04-11 20:20:37 +02:00
Christoph Oelckers
f8e9cb8fbc
- major dependency reduction of the texture system.
2020-04-11 20:20:37 +02:00
Christoph Oelckers
be24023722
- split animation management out of the texture manager into a separate class.
2020-04-11 20:20:36 +02:00
Christoph Oelckers
56f2b2ac56
- reduce backend's dependency on game state by using callbacks.
2020-04-11 20:19:53 +02:00
Christoph Oelckers
ac610d87e5
- merged FPalette and PaletteContainer.
2020-04-11 20:19:53 +02:00
Christoph Oelckers
1479e3a1c3
- CVAR cleanup, in particular decoupling from game internals, which now get handled via callbacks.
2020-04-11 14:00:22 +02:00
Christoph Oelckers
05d8856fe0
- moved file system implementation to 'common'.
2020-04-11 14:00:20 +02:00
Christoph Oelckers
80c6d5b276
- renamed more stuff and also moved the Strife teaser voice handling out of the file system.
2020-04-11 14:00:19 +02:00
Christoph Oelckers
c1bb7de23a
- more file system refactoring.
...
* moved the sprite renaming out of the file system entirely into a caller-provided callback.
* renamed several functions to closer match the terms of a file system.
* moved the VM interface out of the implementation.
2020-04-11 14:00:19 +02:00
Christoph Oelckers
6bccde3b51
- renamed the file system related classes to actually use the term "FileSystem".
2020-04-11 14:00:18 +02:00
Christoph Oelckers
ace3e29473
- removed the implicit conversion operators from FName.
...
These were creating dangerous interdependencies. It is better to do explicit conversions when needed.
As an added plus, this means that zstring.h no longer depends on name.h which was very annoying.
2020-04-11 14:00:13 +02:00
Christoph Oelckers
6996d54a23
- moved more code to 'common'.
...
This is all low level utilities with no dependencies on game logic. Having this in a separate directory makes sharing with Raze a lot easier.
2020-04-11 14:00:12 +02:00
Christoph Oelckers
cf757ba834
- made the translation container a class.
...
This also splits off some Doom-specific implementation details into higher level headers.
2020-04-11 14:00:11 +02:00
Christoph Oelckers
520a96033b
- minimalized the interface to the translation tables to a small set of functions.
...
Now the internals can be refactored without affecting all using code.
2020-04-11 14:00:10 +02:00
Christoph Oelckers
0a7344e432
- abstract the external translation interface.
...
The translation table array now only gets accessed from within r_translate.cpp.
2020-04-11 14:00:10 +02:00
Christoph Oelckers
b0ecb02d6b
- move SuperFastHash to its own set of files, instead of having this tied to the console.
...
- replace swapvalues with std::swap globally.
- added some additions to utility code from Raze, mainly to reduce file content differences.
- reduced some unused utilities
2020-04-11 14:00:10 +02:00
Christoph Oelckers
1fe667c6a0
- cleaned up the includes in m_png.h, this file had far too many and far too broad dependencies.
2020-04-11 14:00:09 +02:00
Christoph Oelckers
c623b04170
- copied some fixes for overlong config entries from Raze.
...
- renamed basictypes.h to basics.h to keep the file name in line with Raze and make comparisons easier.
2020-04-11 14:00:08 +02:00
Christoph Oelckers
58afc3d5b2
- added some utilities to cmdlib.cpp and changed its license to BSD, because no original Quake code is left here.
2020-04-11 14:00:08 +02:00
Christoph Oelckers
3db56651f4
- avoid using plain char pointers to store script data for FraggleScript.
2020-04-11 14:00:07 +02:00
Christoph Oelckers
5865c4dcca
- use FString to manage strings in bot code.
2020-04-11 14:00:07 +02:00
Major Cooke
09a5771ad4
- Fixed: SPECTRAL flag didn't check for DMG_FORCED before aborting DamageMobj.
2020-03-30 12:16:16 +02:00
nashmuhandes
dd0769de80
Opaque blood decals must be defined with 'OpaqueBlood' keyword in DECALDEF
2020-03-23 12:50:17 +01:00
nashmuhandes
8facd5f3f3
Colorize opaque decals using the bleeding actor's blood color, if the 'Shaded' keyword is omitted from the DECALDEF.
2020-03-23 12:50:17 +01:00
Christoph Oelckers
a638cfbd6e
- 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 00:56:29 +01:00
Major Cooke
39a9a48ad6
Added source, inflictor and damage flags to AbsorbDamage.
2020-02-09 19:07:52 +01:00
alexey.lysiuk
c58e98cc7f
- fixed usage of floor sound with Plat_DownWaitUpStayLip special
...
https://forum.zdoom.org/viewtopic.php?t=67126
2020-01-31 13:21:14 +02:00
Christoph Oelckers
b7e1a35e6f
- 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-04 14:25:55 +01:00
Cacodemon345
7fd27bc925
Add PSPF_PLAYERTRANSLATED flag (makes a PSprite layer translated to the user's color)
2019-12-30 13:05:38 +01:00
Major Cooke
5425aa979d
- Fixed: Invulnerability checking for rails was done before the various THRU actor flags instead of after, meaning actors could block shots regardless of those flags. This was never intended.
2019-12-30 08:37:08 +01:00
Major Cooke
0b0984b88e
Added STOPRAILS actor flag.
...
- An actor with this flag will prevent railgun shots from penetrating further.
2019-12-30 08:37:08 +01:00
Christoph Oelckers
695ab81bca
- let a sight check that gets lost return failure.
...
This way these cannnot unwantedly wake up monsters.
2019-12-28 16:33:20 +01:00
Christoph Oelckers
03537e90ff
- linked new properties with the renderer.
...
Support for the softpoly renderer still missing.
2019-12-20 18:56:03 +01:00
Christoph Oelckers
e82565373f
- 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.
2019-12-16 23:52:39 +01:00
alexey.lysiuk
1a19dbb52f
- 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 15:14:30 +01:00
Christoph Oelckers
b9582cc98e
- continued refactoring on sound code.
...
The game independent part of the code has been mostly isolated.
2019-12-08 21:22:53 +01:00
Christoph Oelckers
fd181f469d
- reduced the dependency of the sound system on game state.
...
Many of the simple wrappers have been moved to a separate file and the sound source handling has been abstracted.
This is only the first phase, the work is not complete yet.
Also changed the license of the sound code to BSD after verifying that this code bears no similarity to id's original sound code anymore, save for a few function names (which are due to be refactored out anyway.)
2019-12-08 13:28:52 +01:00
Christoph Oelckers
d420b0ab05
- fixed: AActor::Revive did not restore flags8.
2019-11-30 22:03:19 +01:00
Christoph Oelckers
5cc75af295
- changed secret message handling so that the debug output of the sector number is only printed to the console but not the centered message.
2019-11-12 23:39:05 +01:00
alexey.lysiuk
4c7c1138aa
- adjusted collision detection for item pickups
...
Use vanilla condition for a thing with MF_SPECIAL flag to fix inability to grab it when item's top is at the same height as sector's floor from it can be picked up
https://forum.zdoom.org/viewtopic.php?t=60181&start=88#p1122935
2019-10-31 12:07:50 +01:00
alexey.lysiuk
ae2f7dd892
- fixed radius attack that may inflict damage twice
...
https://forum.zdoom.org/viewtopic.php?t=66191
2019-10-27 09:34:13 +01:00
alexey.lysiuk
994960627b
- added explicit clearing of global VM stask
...
When exception is thrown from JITed code, VM stask isn't cleared during unwinding
It needs to be clear explicitly to avoid memory leaks and references to destructed objects on shutdown
https://forum.zdoom.org/viewtopic.php?t=66172
2019-10-21 15:54:13 +03:00
Christoph Oelckers
777798ede4
- fixed GetLineX/GetLineY ACS implementation
2019-10-20 14:32:11 +02:00
Christoph Oelckers
8b10d231cd
- 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-20 14:02:28 +02:00
Major Cooke
d0a256b51c
Fixed CheckBossDeath not checking for actor replacements.
...
- A_BossDeath relies upon this function in particular.
- This completes CheckReplacee's purpose, allowing for varied actors to count as one particular actor, such as a Fatso for map07 and avoid lowering the walls until they are all dead.
2019-10-15 20:44:21 +02:00
alexey.lysiuk
30f2ac1e89
- fixed crash with DMSS_INFLICTORDMGTYPE flag and no inflictor
...
https://forum.zdoom.org/viewtopic.php?t=66110
2019-10-14 13:01:13 +03:00
alexey.lysiuk
d3c50eadaa
- removed test code
...
https://forum.zdoom.org/viewtopic.php?t=66065
2019-10-08 22:23:43 +03:00
Christoph Oelckers
523fd0bf3a
Revert "AsmJit update"
...
This reverts commit 747b3dfcfe
.
# Conflicts:
# libraries/asmjit/asmjit/core/compiler.h
This had to be reverted because it breaks exception handling which is a critical problem.
With the updated code any exception thrown inside code that had a JITed call stack would crash.
2019-10-07 20:34:55 +02:00
Christoph Oelckers
c42deda6e6
- cleanup of the remaining music code in the main project
2019-09-30 02:31:12 +02:00
Christoph Oelckers
b709a0b6b2
- fixed: sector lights could access the sector before it was set.
2019-09-16 17:34:41 +02:00
Marisa Kirisame
2628dabc31
Fix for LineTrace not setting its starting sector based on its offset.
2019-09-15 21:58:25 +02:00
Marisa Kirisame
bcef440511
Squashed commit of the following:
...
commit 6ecd831eb45a8258995c02664450c3ca8cfe5b48
Merge: a4fb1f61c afbd7f7a2
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Sun Jul 28 22:02:19 2019 +0200
Merge branch 'master' of github.com:coelckers/gzdoom into f3dfloor_export
commit a4fb1f61c0532d3a6051d4c1fca4ac72ec33e060
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Fri Jul 12 15:43:25 2019 +0200
Renamed EFFloorType enum in ZScript to the more descriptive EF3DFloorFlags
commit 9ad1c3b5625d53c06229be2a94d44fa0f36f41fd
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Sun Jul 7 20:25:31 2019 +0200
Add bounds checks to Get3DFloor/GetAttached
commit dd2a7956a887b92ed24ce5e79f10b1a445664d6c
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Sun Jul 7 17:13:44 2019 +0200
Correct handling of 3d floor plane texture getting.
commit 9b748287892c8fdee9ac67019bf1f66bc4b69eab
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Sun Jul 7 16:14:45 2019 +0200
Implemented requested changes to F3DFloor exports.
* Getters for ffloors/attached arrays.
* Getter for 3D floor top/bottom texture.
commit 6a1482bb0637a70890629e4c13e8759c7a3673f3
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Sat Jul 6 13:42:52 2019 +0200
Renamed exported extsector pointer in Sector struct to something more descriptive.
commit 7c6783d43b898cbd7a01fb2191fd401ed8e8c300
Merge: ff64e04b2 8d36f0a0c
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Mon Apr 29 12:40:44 2019 +0200
Merge branch 'master' into f3dfloor_export
commit ff64e04b251f23325d2f72bc25c59f34b4cab6fa
Merge: a90947392 5b6bae409
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Sun Apr 21 16:56:18 2019 +0200
Merge branch 'master' into f3dfloor_export
commit a90947392a27eb1c2dac7005614592ec2f410274
Author: Marisa Kirisame <marisa@sayachan.org>
Date: Mon Feb 4 17:47:25 2019 +0100
Export F3DFloor structure and related data.
Small changes to Trace code to better use this struct.
2019-09-11 08:19:19 +03:00
Christoph Oelckers
62b0fc5f4e
- give P_ExplodeMissile a damage type when being called from P_DamageMobj
2019-09-09 15:41:09 +02:00
Christoph Oelckers
76ee658be4
Made several classes trivially copyable,
...
Many had leftover non-default constructors/ assignment operators, and some were initialized, even though the initialized data was never used.
In case of FCycler this even caused a default setting to be overwritten when used inside FDynamicLight.
2019-09-09 09:52:33 +02:00
Christoph Oelckers
cbd4479628
- reinstated the old scriptwait implementation as a compatibility option.
...
Daedalus's MAP19 needs this.
2019-09-07 09:34:50 +02:00
alexey.lysiuk
37fa2e1b67
- fixed initial setup for dynamic light actors
...
They are attached and actived explicitly during usual actor initialization sequence
Postponed processing applicable to so called user dynamic lights must be skipped for them
RECREATELIGHTS flag handling for dynamic light actors had the opposite effect of deactivating them
https://forum.zdoom.org/viewtopic.php?t=65683
2019-09-02 12:20:13 +02:00
alexey.lysiuk
f5d2063613
- do thinker profiling of internal dynlights only when they are present
...
There is no point to output zero calls and/or handle such case in profiling stats calculation
2019-08-31 13:20:10 +03:00
Christoph Oelckers
66db894866
- split off all music code from s_sound.cpp
2019-08-23 17:15:19 +02:00
Christoph Oelckers
b3deb30fa5
- changed license of portal.cpp to GPLv3
...
- list Eternity Engine as a source of some code in the main README.
2019-08-21 21:31:12 +02:00
Christoph Oelckers
1dde2ef597
- added obituary fallbacks for actors that do not have any defined.
...
This is mainly for Dehacked mods which redefine decorations as monsters.
The fallback names are DEFOB_{classname} or DEFITOB_{classname}.
2019-08-18 18:28:09 +02:00
Christoph Oelckers
ca805016c8
- fixed bad default alpha for 3D floors.
...
This is a byte value, therefore the default must be 255, not 65536.
2019-08-18 15:04:34 +02:00
Christoph Oelckers
ae57bc71d4
- fixed attached dynamic light setup.
...
This was only run on a state change and missed every external light change.
Any place which wants to flag a light change now only will set a flag and at the end of the thinker loop all flagged actors will be processed.
For performance reasons this was merged with the P_RunEffects iterator loop.
2019-08-18 13:48:52 +02:00
Christoph Oelckers
cf74118d53
- 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 09:00:29 +02:00
Christoph Oelckers
5ca1bb3979
- 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 09:36:50 +02:00
Christoph Oelckers
495f2d9c82
- 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 20:18:01 +02:00
alexey.lysiuk
222dfd17b7
- 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 20:11:42 +02:00
alexey.lysiuk
435f0bb0b0
- 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-23 12:10:16 +03:00
Christoph Oelckers
b37acef0c9
- added the two missing subtitle texts for Strife.
...
These are identical to the actual logs but it turned out that these texts need to be separate to avoid misbehavior.
This also disables the subtitles for the teaser because its log numbers collide with the full game.
2019-07-17 20:02:43 +02:00
Christoph Oelckers
8177583e2f
- treat configurations which load a secondary WAD on top of a primary IWAD like SVE to consider the secondary WAD an actual IWAD as well.
...
This fixes localization of the SVE menu.
2019-07-15 20:48:00 +02:00
Christoph Oelckers
7346288bf5
- moved some more files.
2019-07-14 21:09:49 +02:00
Christoph Oelckers
ec52e90e54
- moved more files out of the root src directory.
2019-07-14 14:39:21 +02:00
Christoph Oelckers
2a16fb9d28
- moved most remaining playsim code into its proper folder.
2019-07-14 13:59:16 +02:00
Christoph Oelckers
9045615a7a
- renamed g_shared folder to playsim.
2019-07-14 13:24:18 +02:00