Christoph Oelckers
634a646c2d
take namespace enum out of namespace and added CheckNumForAnyName and CheckNumForFullNameInFile to clarify the meaning of CheckNumForFullName.
...
This is to take some renaming noise out of the upcoming refactoring.
2024-11-24 17:59:16 +01:00
Christoph Oelckers
ba2800d698
renamed GetFileFullName to GetFileName
2024-11-24 17:59:15 +01:00
Christoph Oelckers
2b2e85005c
fix MBF21 ClearCountItem
2024-10-04 18:34:32 +02:00
Christoph Oelckers
6aa71184f7
fixed: MBF21's flag functions did not call the special wrappers for MF_FRIENDLY.
2024-10-03 23:01:09 +02:00
Christoph Oelckers
8354c4a5c3
Replaced MISSILE(EVEN)MORE with a real property and added related Dehacked options from Crispy Doom.
...
This also adds proper deprecation messages to the deprecated flags which were missing due to a bad definition macro.
2024-10-03 12:24:16 +02:00
Xaser Acheron
76c8b6da57
fix A_PlaySound not working for DSDHACKED-defined sounds
2024-08-25 11:18:52 -04:00
Ricardo Luís Vaz Silva
70cf707251
Skip bex strings for freedoom if language lump is present ( #2682 )
2024-08-21 00:08:57 -03:00
Christoph Oelckers
3f05f38a60
fix max health for Doom's health bonus with Dehacked modifications present.
2023-12-20 00:11:09 +01:00
Christoph Oelckers
8c5eb2c807
use FTranslationID in all places where strict type checking is needed.
...
This means all properties in serializable classes now use this wrapper type. The backend hasn't been changed yet
2023-11-09 23:04:10 +01:00
Christoph Oelckers
f1017ef362
fixed DEHSUPP multiple load prevention.
...
The code in place did not work reliably, it now just checks if the StateMap could be created and if so, skips any subsequent load while only unloading everything in the finalization step.
2023-10-31 13:05:56 +01:00
Christoph Oelckers
478a832515
fixed handling of DSDHacked sound replacement in the index range between the regular sounds and the MBF21 extensions.
2023-10-28 09:20:56 +02:00
Professor Hastig
ab8711b57a
removed several bad casts to 'long'.
...
The 'long' type should generally be avoided because its size differs on Windows and Linux/Mac so it is almost guaranteed to cause undefined behavior
2023-10-04 16:47:43 +02:00
Christoph Oelckers
48ba63c022
added even more explicit GetChars() calls.
2023-10-03 15:55:08 +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
8a5d3c096b
- return a std::string from GetFileFullPath
2023-08-22 22:18:54 +02: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
Ricardo Luís Vaz Silva
5ba1e96d29
Add mDefFileNo to Classes/Structs
2023-01-20 22:34:26 +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
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
316b9305a2
- fixed type of third argument of MBF21's MonsterMeleeAttack function.
...
This is a sound, not an int.
2022-06-16 10:31:39 +02:00
Christoph Oelckers
355219d614
- fixed several scale related floating point conversion warnings.
2022-06-15 22:15:36 +02:00
Christoph Oelckers
431c47c957
- fixed setup of ready state with Dehacked.
...
This needs to emulate the hard coded chainsaw sound when weapon states get reassigned.
2022-06-15 22:04:01 +02:00
Christoph Oelckers
26a377c009
- fixed undefined behavior with Dehacked's value parser.
...
From the looks of it MSVC's strtoul function does parse negative values, while GCC's does not. Since negative values are allowed for some properties this now uses strtoll and stores the value with 64 bit to preserve both the value range of signed int and unsigned int.
2022-06-04 09:23:46 +02:00
Christoph Oelckers
da30b6f6f0
- fixed some GCC warnings
2022-06-01 08:37:00 +02:00
Christoph Oelckers
21c60c931e
- warning fixes and cleanup from old startscreen branch.
2022-06-01 08:36:59 +02:00
Christoph Oelckers
a9cba90647
- fixed MF_SHADOW handling for MBF21
...
This needs to alter the render style as well.
2022-05-23 00:10:59 +02:00
Christoph Oelckers
6cb035b7b2
- added workaround to Dehacked so that „Doom“ only replaces the music name
...
Of all these short strings this is the only one that occurs elsewhere as well.
2022-04-22 00:53:27 +02:00
Christoph Oelckers
1c4d48f5f2
- added some fudging so that the Dehacked parser can properly deal with ConsumeAmmo.
...
This is a parameterized code pointer, so checking state functions for names won't work. Additionally, the handling was not correct for weapons with an ammo use other than 1.
2022-04-17 08:53:52 +02:00
Christoph Oelckers
bdab9c2d9d
- fixed Dehacked drop items.
2022-04-15 23:10:53 +02:00
Christoph Oelckers
d0e1aea273
- fixed Dehacked check for A_ConsumeAmmo.
...
This must use the internal function name.
2022-04-14 12:21:24 +02:00
Xaser Acheron
25f28c4b50
fix mbf21 A_ConsumeAmmo taking 0 ammo instead of 1 if ammopershot field not set (need to amend the spec for this, argh)
2022-01-18 08:06:29 +01:00
Xaser Acheron
00d4442fc8
fix MBF21 A_WeaponMeleeAttack function name typo & args
2022-01-18 08:06:29 +01:00
Xaser Acheron
97859fd608
fix MBF21 GetSoundArg off-by-one: sound indices are 1-indexed in args because Killough
2022-01-18 08:06:29 +01:00
Christoph Oelckers
49ab6612cb
- fixed Dehacked parsing issues with weapon properties.
...
Due to a badly used string length check this code didn't really do what it was supposed to.
2022-01-07 00:31:57 +01:00
Christoph Oelckers
77d74a11d1
- removed most templates.h includes.
2021-10-30 10:49:12 +02:00
Christoph Oelckers
3c961a2aa2
- avoid multiple Dehacked mappings to the same function.
...
Due to some MBF21 related changes these would cause interference.
Instead the two affected functions, A_NailBomb and A_RadiusDamage are now separate script functions that just call A_Explode with the correct parameters.
2021-10-03 18:16:37 +02:00
Christoph Oelckers
3acc5a2723
- fixed code generation issues with parameterized MBF21 functions.
2021-09-19 12:59:24 +02:00