Commit graph

1531 commits

Author SHA1 Message Date
Mitchell Richters
91a05d01d2 - Silence noisy line in resourcefile.h against GCC builds.
In file included from /home/mrichters/Repos/Raze/source/common/filesystem/include/fs_filesystem.h:12,
                 from /home/mrichters/Repos/Raze/source/common/engine/filesystem.h:2,
                 from /home/mrichters/Repos/Raze/source/common/utility/zstring.h:43,
                 from /home/mrichters/Repos/Raze/source/common/platform/posix/i_system.h:14,
                 from /home/mrichters/Repos/Raze/source/common/platform/posix/sdl/hardware.cpp:38:
/home/mrichters/Repos/Raze/source/common/filesystem/include/resourcefile.h: In member function ‘int FileSys::FResourceFile::GetEntryNamespace(uint32_t)’:
/home/mrichters/Repos/Raze/source/common/filesystem/include/resourcefile.h:180:43: warning: enumerated and non-enumerated type in conditional expression [-Wextra]
  180 |                 return (entry < NumLumps) ? Entries[entry].Namespace : ns_hidden;
      |                        ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2024-01-06 09:32:36 +11:00
Christoph Oelckers
673a913f92 Backend update from GZDoom.
Mainly remembering the game list's initial setting.
2024-01-05 17:08:47 +01:00
Christoph Oelckers
5a232f8fa6 eliminated the small white part of the initial window content after the IWAD picker. 2024-01-04 22:23:05 +01:00
Christoph Oelckers
3b834b18af fixed Linux include 2024-01-04 21:09:04 +01:00
Christoph Oelckers
6948ed41a1 added ZWidget based game picker 2024-01-04 20:54:04 +01:00
Christoph Oelckers
b72fcd5185 converted files to UTF-8 2024-01-04 18:29:28 +01:00
Christoph Oelckers
52b3d386cf backend update from GZDoom 2024-01-04 18:24:00 +01:00
Christoph Oelckers
fb6beb905a Blood: fixed cutscene sound not playing when starting a map from the console. 2024-01-04 18:08:23 +01:00
Christoph Oelckers
e2048bd8bd fixed loading of embedded files from directories. 2024-01-04 17:56:15 +01:00
Christoph Oelckers
ac8e80e52f account for resorted directories when accessing the local file path array in file_directory.cpp 2023-12-31 23:42:57 +01:00
Christoph Oelckers
d352f564db minor backend update. 2023-12-28 21:12:24 +01:00
Christoph Oelckers
542997a967 perform music volume lookup by lump number instead of name.
This way any setting will work for both short and long file names.
2023-12-27 20:10:54 +01:00
Christoph Oelckers
6c79e35c25 Backend update from GZDoom. 2023-12-26 22:28:44 +01:00
Christoph Oelckers
af4eaf69e3 silenced some warnings. 2023-12-21 00:50:53 +01:00
Christoph Oelckers
27da9b6b79 fixed crash on trying to read from a mounted directory's content. 2023-12-19 19:01:30 +01:00
Christoph Oelckers
860a0c290b fixed some filesystem issues with directories and compression. 2023-12-17 17:13:42 +01:00
Christoph Oelckers
36930d44bd filesystem update from GZDoom. 2023-12-17 12:48:03 +01:00
Christoph Oelckers
84e10beab4 Blood: fixed cutscene sound not playing when starting a map from the console. 2023-12-17 10:59:25 +01:00
Christoph Oelckers
1e618d2fdb rewrote FileSystem::AddFromBuffer so that it gets backed by an actual FResourceFile. 2023-12-10 15:23:21 +01:00
Christoph Oelckers
745de36ead added Unicode utilities 2023-12-10 15:23:05 +01:00
Christoph Oelckers
c0d166c307 backend update from GZDoom. 2023-12-10 13:30:50 +01:00
Christoph Oelckers
aceed7f71c fixed case mapping for Georgian script. 2023-12-05 22:41:00 +01:00
Christoph Oelckers
9c595c6204 move M_Calloc out of the #ifndef BSD etc... block. 2023-12-05 22:40:58 +01:00
Christoph Oelckers
f6bca4177c - Don't inline M_Calloc() calls because GCC is shit.
* Fixes #1009.
2023-12-05 22:40:58 +01:00
Christoph Oelckers
c06e795703 use FTranslationID in the 2D drawer. 2023-12-05 22:40:57 +01:00
Christoph Oelckers
0265d37fdb use FTranslationID in the model code. 2023-12-05 22:40:56 +01:00
Christoph Oelckers
4cb3b96ddf migrate to FTranslationID support
So far this only adapts to the changes in the backend without making further use of this type.
2023-12-05 22:40:56 +01:00
Christoph Oelckers
6df1a14a92 gave translations a dedicated scripted type.
This is needed for implementing reliable serialization of custom translations. As long as they are merely ints they cannot be restored on loading a savegame because the serialization code does not know that these variables are special.
2023-12-05 22:40:56 +01:00
Christoph Oelckers
6c702847ff Backend update from GZDoom. 2023-12-05 22:39:34 +01:00
Christoph Oelckers
a9dc57e99f fixed potentially undefined behavior with bool parameters in direct native functions. 2023-12-05 22:39:34 +01:00
Christoph Oelckers
93294b2d44 for line intersection, exclude the end point of the intersected line.
This is needed to make Build's utilities work as expected.
2023-12-05 22:39:29 +01:00
Christoph Oelckers
f00a90aa07 two minor backend fixes 2023-12-05 22:39:29 +01:00
Christoph Oelckers
f0b7d57941 fixed Mac compilation.
Unlike the other platforms this builds its config paths from variable data.
2023-12-05 22:39:27 +01:00
Christoph Oelckers
f50430eb7c GetChars in non-windows code. 2023-12-05 22:39:26 +01:00
Christoph Oelckers
90eb9ceafe Use GetChars on FStrings. 2023-12-05 22:39:26 +01:00
Mitchell Richters
1859a902e0 - Fix some warnings in MSVC. 2023-12-05 22:39:26 +01:00
Christoph Oelckers
bbbb61f450 backend update from GZDoom
LZMA update plus several ZScript improvements.
2023-12-05 22:39:26 +01:00
Mitchell Richters
39df2714e9 - Modernise function declarations in Cephis C math to address ongoing GCC and Clang warnings.
Examples:

/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c: In function ‘c_exp’:
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:171:48: warning: declaration of built-in function ‘floor’ without a prototype; expected ‘double(double)’ [-Wbuiltin-declaration-mismatch]
  171 | double polevl(double, void *, int), floor(), ldexp();
      |                                                ^~~~~
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:171:57: warning: declaration of built-in function ‘ldexp’ without a prototype; expected ‘double(double,  int)’ [-Wbuiltin-declaration-mismatch]
  171 | double polevl(double, void *, int), floor(), ldexp();

/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:200:16: warning: passing arguments to 'polevl' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
px = x * polevl( xx, P, 2 );
               ^
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:201:17: warning: passing arguments to 'polevl' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
x =  px/( polevl( xx, Q, 3 ) - px );
                ^
/home/mrichters/Repos/Raze/source/common/thirdparty/math/exp.c:167:8: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
double c_exp(x)
       ^
3 warnings generated.
2023-12-05 22:39:24 +01:00
Mitchell Richters
790fc0b28a - Fix most warnings in Clang under Linux. 2023-12-05 22:39:24 +01:00
Mitchell Richters
0c13d4fe3a - Fix most GCC warnings in the backend/common code code.
* Most of them were just signedness issues. Hopefully I got everything right here.
* 3rd party stuff deliberately not touched.
2023-12-05 22:39:23 +01:00
Mitchell Richters
d2af13b924 - Make some utilities in vectors.h available as constexpr. 2023-12-05 22:39:18 +01:00
Mitchell Richters
a64de707e0 - Make TRotator<T> available as constexpr. 2023-12-05 22:39:18 +01:00
Mitchell Richters
4ff3351dd1 - Make TMatrix3x3<T> available as constexpr. 2023-12-05 22:39:18 +01:00
Mitchell Richters
eae8ebec31 - Make TVector4<T> available as constexpr. 2023-12-05 22:39:18 +01:00
Mitchell Richters
6b9ec49038 - Make TVector3<T> available as constexpr. 2023-12-05 22:39:18 +01:00
Mitchell Richters
ad694b7a8c - Make TVector2<T> available as constexpr. 2023-12-05 22:39:17 +01:00
Christoph Oelckers
60a36f4902 fix Vectoe3 clamp for real. 2023-12-05 22:39:17 +01:00
Mitchell Richters
e8451d3ddb - Take better advantage of InputPacket::ang's FRotator status.
* Change it to a DRotator as that's what the game is expecting. Too many narrowings against DAngle objects needed.
* Utilise object methods where possible.
* Do all math against the object where possible, not its members.
2023-12-05 22:39:13 +01:00
Mitchell Richters
e2a949949c - Take better advantage of InputPacket::vel's FVector3 status.
* Change it to a DVector3 as that's what the game is expecting. Too many narrowings against DAngle objects needed.
* Utilise object methods where possible.
* Do all math against the object where possible, not its members.
2023-12-05 22:39:12 +01:00
Mitchell Richters
8c1e392afc - Remove the TVector2 (const TVector3<vec_t> &other) constructor.
* This narrowing constructor was causing a problem with a `clamp()` overload in the next commit.
* Believe this is a product of a by-gone time before we had the `XY()` method on `TVector3<T>` objects.
2023-12-05 22:39:12 +01:00