Commit Graph

969 Commits

Author SHA1 Message Date
Azamat H. Hackimov
233dc8bb39 Cleanup newui
Remove some code related to unused DoFileDialog().
2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
b30597ae90 Change Multi*Settings() to use std::fs::path 2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
7a3f46ad4c Change SimpleStartLevel() to use std::fs::path 2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
4bf097d0ff Use std::fs::path in demofiles 2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
c6919f93b0 Rework GetDirectoriesInPath() to use std::fs::directory_iterator
Probably there need more deep refactor... This function uses twice - for counting directories and then fetching actual list!
2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
d5127fd9ff Use ddio_DoForeachFile() in multi_ui.cpp
Replace ddio_FindFileStart() with ddio_DoForeachFile().
We don't support HEAT.NET anymore, so removing it from sorting order. Now "Parallax Online" is first entry in multiplayer list.
2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
db627322e6 Properly cleanup tmp files in multi_dll_mgr.cpp
ddio_DeleteFlie() can't handle globbed paths (at least on Linux), replace it with ddio_DoForeachFile().
2024-08-15 11:48:16 +03:00
Azamat H. Hackimov
bd4cc1655a menu.cpp: replace ddio_FindFileStart() with ddio_DoForeachFile() 2024-08-15 11:48:14 +03:00
Azamat H. Hackimov
8a9b93acfd init.cpp: replace ddio_FindFileStart() with ddio_DoForeachFile() 2024-08-15 11:47:43 +03:00
Azamat H. Hackimov
0ba3828a13 LINUX: minor cleanup on lnxcontroller.cpp 2024-08-15 11:47:43 +03:00
Azamat H. Hackimov
b911d81c2a LINUX: Use ddio_DoForeachFile()
Replace ddio_FindFileStart() with ddio_DoForeachFile().
2024-08-15 11:47:43 +03:00
Azamat H. Hackimov
0805e97061 DDIO: New ddio_DoForeachFile() function
Cross-platform ddio_DoForeachFile() replaces platform-specific ddio_FindFileStart(), ddio_FindNextFile() and ddio_FindFileClose() functions.
2024-08-15 11:47:43 +03:00
Azamat H. Hackimov
ec065b2a07 DDIO: remove unused ddio_GetFullPath() 2024-08-15 11:47:43 +03:00
Azamat H. Hackimov
45361c453d
Merge pull request #521 from Lgt2x/usage-instructions
Create usage file for the packaged version
2024-08-15 10:22:04 +03:00
Louis Gombert
164f102368 Split README between README, BUILD and USAGE files.
Prepare those files to be shipped with the pre-built assets.
2024-08-15 01:02:10 +02:00
Louis Gombert
a78eb53f69
Merge pull request #525 from winterheart/release-actions
Add release flow to GitHub Actions
2024-08-13 09:18:48 +02:00
Louis Gombert
bda97fc57a
Merge pull request #523 from DescentDevelopers/windows-fix
Fixes for Windows build
2024-08-12 22:49:09 +02:00
Azamat H. Hackimov
03a3b923a0 Add release flow to GitHub Actions
Initial support to automate release flow. Now after git tag of specific commit GitHub Actions will create a draft entry of release (named by tag) with source code package on it.
2024-08-12 17:07:44 +03:00
Azamat H. Hackimov
73373205e5
Merge pull request #517 from Lgt2x/cmake-headers
CMake: add all headers to target sources
2024-08-12 15:58:05 +03:00
Louis Gombert
e74515ddff
Merge pull request #524 from MaddTheSane/netDylib
macOS: Fix netgames not looking for dylib.
2024-08-12 09:10:14 +02:00
C.W. Betts
0d9873a361 macOS: Fix netgames not looking for dylib.
replaces #522
2024-08-11 23:07:25 -06:00
Azamat H. Hackimov
f888a101ab Fix crash in Release mode for new pilot
During start of new game with new pilot (never played) game tries to inject to play level1.mve before training mission right in the middle of update UI frame. At same time, if game previously found mainmenu.mve, it will be looped in main menu screen. Since buffers for MVE playback already allocated fo mainmenu.mve, trying to start another movie will lead to crash.

Removed movie injection from playing, now new pilot will see this sequence:

New game -> Training mission -> level1.mve cutscene -> Level 1

Removed RELEASE #ifdef's on this part of code as this definitely masked issue until we caught it in preparation of release build.
2024-08-12 01:44:21 +03:00
Azamat H. Hackimov
ba1020ef70 Fix compilation on Windows
SetUnhandledExceptionFilter requires WINAPI macros on RecordExceptionInfo() declaration, otherwise it fails to compile on x86 arch.
2024-08-11 20:40:19 +03:00
Louis Gombert
6ec444d9cc
Merge pull request #514 from pzychotic/windows-crashdumps
Windows crashdumps
2024-08-11 12:34:38 +02:00
Louis Gombert
688bb3715b
Merge pull request #519 from winterheart/vecmat-cleanup
VECMAT: Silence "unknown pragma" warning on gcc/clang
2024-08-11 10:35:08 +02:00
Azamat H. Hackimov
39f971e325 VECMAT: Silence "unknown pragma" warning on gcc/clang
There no double to float conversion anymore, so in Windows this pragma is useless.
2024-08-11 04:06:43 +03:00
Thomas Roß
1809f48ca9 [Misc] Removed some leftover debug stuff that does nothing anymore. 2024-08-10 18:44:29 +02:00
Thomas Roß
33288916c2 Replaced the old and now unused code for manunal callstack parsing with the creation of a crashdump file aka MiniDump. Together with the matching debug symbols from the previous commit, we can analyse these crashdumps to fix the problem. 2024-08-10 18:41:48 +02:00
Thomas Roß
0d01d3c84c [Build] Enable the generation of debug symbols in all build configurations and install them to be available in our GitHub workflow artifacts. This prepares us to create crashdumps on user systems even from release builds that we will than be able to analyse on a dev machine. 2024-08-10 18:40:24 +02:00
Azamat H. Hackimov
b923179526
Merge pull request #518 from Lgt2x/disable-editor
Disable shipping the editor because it is not currently usable
2024-08-10 17:43:24 +03:00
Louis Gombert
9551e78b92 Disable shipping the editor because it is not currently usable 2024-08-10 01:07:18 +02:00
Louis Gombert
dbf6c149f5
Merge pull request #515 from MaddTheSane/netDylib
macOS: Make sure the netcon modules end with dylib.
2024-08-10 00:27:15 +02:00
Louis Gombert
60c5dbf1fe CMake: add all headers to target sources
This can help with CMake IDE integration and file indexing.
2024-08-09 17:09:14 +02:00
C.W. Betts
7d5b51e8f8 macOS: Make sure the netcon modules end with dylib. 2024-08-05 15:54:38 -06:00
Louis Gombert
05e873ade4
Merge pull request #512 from tophyr/pr/fix-vcpkg
Fix VCPKG builds in GitHub CI
2024-08-04 18:13:34 +02:00
Louis Gombert
4c4cd9cfc6
Build SDL2 with alsa for VCPKG 2024-08-04 10:49:48 -05:00
Chris Sarbora
f93f86e7dd
Update CI workflow with correct vcpkg dependencies 2024-08-04 10:42:09 -05:00
Louis Gombert
10de36c0e4
Merge pull request #469 from tophyr/vcpkg-all-thethings
Use vcpkg on all presets
2024-08-04 14:10:09 +02:00
Chris Sarbora
e5dcce3c9f
Use vcpkg for all platform presets 2024-08-03 23:38:01 -05:00
Louis Gombert
fd08fab0dd
Merge pull request #507 from MaddTheSane/clangWarn
Quiet warnings about uninitialized values.
2024-08-03 15:37:33 +02:00
C.W. Betts
1384aa62af Quiet warnings about uninitialized values. 2024-07-31 15:40:16 -06:00
Louis Gombert
ae5840f314
Merge pull request #502 from winterheart/modules-split
Splitting submodules of project
2024-07-30 23:17:47 +02:00
Azamat H. Hackimov
5b80408450
Merge pull request #503 from Lgt2x/main-cleanup
Cleanup sdlmain.cpp
2024-07-31 00:11:25 +03:00
Louis Gombert
9c016dde45
Merge pull request #504 from pzychotic/msvc-build-settings
Cleanup MSVC build settings
2024-07-29 08:54:03 +02:00
Thomas Roß
8c88a8fc21 [Build] Removed unused IS_WINDOWS and duplicate _CRT_SECURE_NO_WARNINGS compiler defines. 2024-07-29 00:29:12 +02:00
Thomas Roß
3b3cd434e3 [Build] Add /LTCG (Link Time Code Generation) to linker flags in Relese builds.
We already add /GL (Whole Program Optimization) to the compiler flags in Release builds. By not using /LTCG for the linker, the build output will be spammed with following message:
MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
2024-07-29 00:29:12 +02:00
Thomas Roß
ead9f61558 [Build] Replaced string based handling of linker flags with add_link_options(). 2024-07-29 00:29:12 +02:00
Azamat H. Hackimov
4b192f8960
Merge pull request #500 from Lgt2x/cache-dir
Use standard temporary directory instead of custom/cache
2024-07-28 22:10:34 +03:00
Azamat H. Hackimov
dd32f4e3ed Split libacm files to third_party/libacm and AudioEncode
Logically adecode/aencode belongs to AudioEncode.
2024-07-28 21:51:35 +03:00
Louis Gombert
a0a4195a3a SDLMain: remove unused defines, superfluous logging 2024-07-28 17:52:01 +02:00