Christoph Oelckers
1717ff47b2
add GetChars() accessors to many FString uses where const char* is wanted.
...
By no means complete, it's just a start to get rid of that automatic type conversion operator.
2023-10-03 14:27:39 +02:00
Professor Hastig
3d6664c28e
fix DSDHacked state creation.
...
Continuous Integration / Linux Clang 12 | AppImage (push) Has been cancelled
Continuous Integration / macOS | Debug (push) Has been cancelled
Continuous Integration / Linux Clang 11 | Debug (push) Has been cancelled
Continuous Integration / Visual Studio 2022 | Debug (push) Has been cancelled
Continuous Integration / Linux GCC 12 | MinSizeRel (push) Has been cancelled
Continuous Integration / Linux GCC 9 | RelWithDebInfo (push) Has been cancelled
Continuous Integration / macOS | Release (push) Has been cancelled
Continuous Integration / Linux Clang 15 | Release (push) Has been cancelled
Continuous Integration / Visual Studio 2019 | Release (push) Has been cancelled
Continuous Integration / Visual Studio 2022 | Release (push) Has been cancelled
Several problems here:
* the crucial call did not override 'mustexist'.
* once created an extended stare would not be looked at anymore.
* extended states received no usage flags.
2023-09-25 16:10:10 +02:00
Professor Hastig
22e8bea91b
fixed actor class creation for DSDHacked
...
* the did not get defaults assigned.
* the RETARGETAFTERSLAM flag must also be set for newly created classes here
2023-09-25 16:10:10 +02:00
Christoph Oelckers
7f7edc4f72
- clear the Dehacked string table after passing it to GStrings.
...
For some reason std::move does not work here so make sure it won't stick around.
2023-09-15 21:46:53 +02:00
Christoph Oelckers
04815f9db4
- let Dehacked set the implicit missile flags.
2023-09-14 23:08:59 +02:00
Christoph Oelckers
0980b53881
- fixed: MBF21's BOSS flag implies NORADIUSDMG.
2023-09-13 20:48:57 +02:00
Christoph Oelckers
2fe0a7c60d
- fixed sound issues with DSDHacked.
...
* forward declarations must be allowed.
* this must disable map-local SNDINFOs because the added sounds would get lost otherwise.
2023-09-13 18:44:14 +02:00
Christoph Oelckers
f72da434a8
- fixed: For Dehacked, A_CPosAttack needs to use a hard coded attack sound.
...
This discrepancy is ancient, so the approach used for the shotgunner does not work here and some hacks are needed to remap the function only for Dehacked.
2023-09-13 17:50:47 +02:00
Christoph Oelckers
b75a8ed8ff
- removed pointless heap allocation that never was freed.
2023-09-11 23:22:24 +02:00
Christoph Oelckers
99f17f2dce
- fixed several issues with parsing DSDhacked
2023-09-11 23:22:24 +02:00
Christoph Oelckers
bdd02d9b2c
- implemented the remaining dynamic structures of dsdhacked
2023-09-11 23:22:24 +02:00
Christoph Oelckers
24d57b58c5
- dsdhacked: Allow dynamic creation of new actors
2023-09-11 23:22:24 +02:00
Christoph Oelckers
b44741b8aa
- dsdehacked: allow dynamic creation of new states.
2023-09-11 23:22:23 +02:00
Christoph Oelckers
be2f9c8660
- added DSDA's passover/nopassover keys to the MAPINFO parser.
2023-08-22 23:15:23 +02:00
Christoph Oelckers
ebb71cebf1
- put the entire filesystem code into a namespace and created some subdirectories.
2023-08-22 22:54:54 +02:00
Christoph Oelckers
2c2bf0265f
- refactored all places which treated FileData as zero terminated.
2023-08-22 22:54:53 +02:00
Christoph Oelckers
a0d679b84b
- FileData cleanup and uncoupling from FString.
...
Work is still needed to allow this to use the lump cache directly because some decisions in the past made this data padded by a zero byte.
2023-08-22 22:54:52 +02:00
Christoph Oelckers
8a5d3c096b
- return a std::string from GetFileFullPath
2023-08-22 22:18:54 +02:00
Christoph Oelckers
5398045f7d
- got rid of FileSystem::GetFileData.
...
Using FMemFile is better in all these places.
2023-08-22 22:18:53 +02:00
Christoph Oelckers
f0bbc32bae
- add m_swap.h to several files.
2023-08-22 21:49:55 +02:00
Cacodemon345
fe7beaaf17
Add support for HDR canvas textures
...
Vulkan only.
2023-08-12 06:46:05 -04:00
Christoph Oelckers
81fb9a26b2
- backend update from Raze.
...
* add QualifiedName to VMFunction and allocate these static names from the class data memory arena instead of using FStrings.
* null pointer type checks in the VM added to avoid crash on bad codegen.
2023-07-22 09:55:49 +02:00
Professor Hastig
666a99f204
lightmode refactor
...
* make all legacy light modes except 'Doom' MAPINFO only. A CVAR still exists for testing but its value won't be saved to the config.
* user can only select between "performance', 'software' and 'vanilla'. 'performance' is the old 'Doom' mode which is still needed to speed things up on low end hardware.
* MAPINFO can not enforce any of the two software light modes, as low end users require the option to change this to the 'performance' setting. Selecting one will always revert to the user's light mode selection.
2023-07-17 22:50:05 +02:00
Professor Hastig
602c7c4e24
fix UMAPINFO boss action clearing.
...
This did not handle the case where the actions were cleared without adding new ones and also did not clear the MBF21 boss action flags.
2023-07-05 09:17:37 -04:00
Christoph Oelckers
c675d60bac
- finish the implementation for nosectionmerge.
2023-06-18 09:44:34 +02:00
l2ksolkov
245dac814e
Add missing include guards
2023-05-29 07:35:26 +02:00
Ricardo Luís Vaz Silva
1589afb46e
Add Voodoo Zombie Compatflag
2023-05-14 08:14:47 +02:00
Christoph Oelckers
9fbac8f1d4
- moved all service code to 'common'.
...
This needs to work on Raze as well!
2023-03-26 10:55:09 +02:00
Christoph Oelckers
47b76180d6
- fixed several warnings emitted by Clang.
2023-03-26 08:48:54 +02:00
Ricardo Luís Vaz Silva
590475a8e3
Improve Services
2023-02-19 08:11:08 +01:00
Rachael Alexanderson
4ac76d82d8
- redirected maps need to be defined in order to redirect
2023-02-03 20:21:40 -05:00
Rachael Alexanderson
82b7e93d26
- oops, nullptr check
2023-02-01 10:23:30 -05:00
Rachael Alexanderson
04ea28defc
- add RedirectCVAR directive for loading alternate maps based on a Bool CVAR setting
2023-02-01 00:06:01 -05:00
Ricardo Luís Vaz Silva
5ba1e96d29
Add mDefFileNo to Classes/Structs
2023-01-20 22:34:26 +01:00
Boondorl
dd7cb8649f
Exported LinePortals
...
Added helper functions for lines related to portals
2023-01-15 22:01:37 +01:00
Christoph Oelckers
bafd6be342
- removed backend dependencies on game data.
2023-01-15 08:23:26 +01:00
Ricardo Luís Vaz Silva
9468ff85a2
Add missing error for mapinfo tonemap
2023-01-14 11:29:12 -05:00
Ricardo Luís Vaz Silva
1ebd4f0d41
Add Tonemap support for Unclamped lighting mode
2023-01-14 11:29:12 -05:00
Ricardo Luís Vaz Silva
8e7897233e
Add Alternate Light Blending Options
2023-01-14 11:29:12 -05:00
6f8901ea87
Rename ValidLock to IsLockDefined (more descriptive).
2022-12-23 22:48:01 +01:00
b85add01c7
Additional lock-related ZScript functions.
...
* Key.ValidLock: returns whether a lock number is valid (can be unlocked) or belongs to a "does not work" door.
* Key.GetMapColorForLock: returns the automap color for a lock number (or -1 if the lock isn't valid).
* Key.GetMapColorForKey: likewise, but for a specific key.
2022-12-23 17:47:31 +01:00
Christoph Oelckers
941c0850ba
- Backend update from Raze.
...
Mainly optimizations for the sound system and texture manager.
2022-12-18 16:19:18 +01:00
Christoph Oelckers
e17e6868e6
- removed bogus errno check from Dehacked parser.
...
This checked errno without first confirming that there has been an error, it is also pointless because the value range check will automatically catch the error case as well.
2022-12-11 21:08:22 +01:00
Christoph Oelckers
65a26d6779
- removed the string constructors from FSoundID.
...
Due to C++ conversion rules this was a bit too volatile. There's really not enough places where being able to pass a string directly into the sound API was beneficial - the two most frequent functions now got overloaded variants.
2022-11-24 23:52:52 +01:00
Christoph Oelckers
b89c4affae
- removed the string assignment operators.
...
These all caught literal 0's as well
2022-11-24 23:52:52 +01:00
Christoph Oelckers
d173c0453c
- handle all remaining places of sound ID conversions after removing the conversion operators.
2022-11-24 23:52:52 +01:00
Christoph Oelckers
160633a4a2
- migrate a large part of the sound code to FSoundIDs.
...
This has always been a wild mixture of IDs and ints.
2022-11-24 23:52:52 +01:00
Christoph Oelckers
6eab875ec2
- added option to show hub and episode names on the alt HUD.
...
Still very much work in progress because few mods have set this up.
CVARs default to off and are not exposed to the menu.
2022-10-26 17:44:51 +02:00
Christoph Oelckers
453688ccc6
- reworked CVARs to not use a linked list and to be initialized manually.
...
This solves two problems:
* The linked list is too slow, a map is better. A map cannot be used with statically allocated CVARs because order of initialization is undefined.
* The current CVAR system is an unordered mishmash of static variables and dynamically allocated ones and the means of identification are unsafe. With this everything is allocated on the heap so it can all be handled the same by the cleanup code.
2022-10-21 18:56:43 +02:00
Christoph Oelckers
8aaab153fa
- add a system interface for CheckCheatmode and moved some sound code to the backend.
2022-10-02 16:48:56 +02:00