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