1.5: Fuckin' UE5... #38

Manually merged
williamjcm merged 126 commits from one-point-five into master 2024-07-22 11:06:13 +02:00
Owner

Making a PR just because Forgejo has been nagging me about it.

Making a PR just because Forgejo has been nagging me about it.
williamjcm self-assigned this 2024-07-22 11:02:13 +02:00
williamjcm added 126 commits 2024-07-22 11:02:15 +02:00
This way, I can make it work like radio buttons or selectables.
Magnum's type names are fine, but I'd rather limit what depends on
Magnum as much as possible. Vector types are still allowed, though. No
way I'll write my own.
I'll update SDL2 separately.
The .gitmodules file was also updated so that future submodule updates will
track the SDL2 branch from the repo. This will prevent updates from
accidentally checking out SDL3.
Additionally, I started signing my commits with my SSH key, starting with the
previous one (eef4c72d3d). That was long overdue.
I won't provide actual support for it because MSVC sucks, but if someone wants
to use it or Clang-cl, now they can.
This should be useful for some setups, like my current one (see #31's opening
message).
Submodules should _not_ be used when using system libs, after all. Derp.
This requires a minimum CMake version bump, but most systems should have
access to 3.24 by now, as it was released last year.
This might break submodule builds on MSYS2. Not like I care anyway, as they
were already broken on my Arch rig.
This should thin the exe up a bit.
Turns out the flag I used for SHGetKnownFolderPath() is not only deprecated
starting with Win10 1703, but it also isn't implemented in Wine. It also was
completely useless because the Save Tool isn't a "packaged process", as the
docs call it. Ah, the joys of using WinAPI...
CLion can't grab stdout on Wine/Proton, so this is the only way to get any
kind of output there.
This was long overdue...
Should have been indented from the get-go, but I forgot about it.
THIS IS BROKEN, ONLY BUILD THIS COMMIT FOR DEBUGGING PURPOSES!
Considering I went back to Windows, this is gonna be better than
outputting to a file.
Couldn't have known the lambda would have caused issues.
I can't find the setting that allows CLion to capture stdout when
running normally anymore, so this is the next best thing.
Closes #32.
This is a big one. Namespacing, general formatting updates, and
renaming, among others.
libzip also changed its branch name from master to main, so adapt to
that too.
That table for the joint sliders was ugly as fuck. I'm glad to be
rid of it.
Corrade's string views aren't guaranteed to be null-terminated,
though most of them come from strings, which _are_
null-terminated. Still, safety first.
Now's a good time as any, I guess.
Separate libraries made things a bit messy, to be honest.
The functionality has been moved to BinaryIo::{Reader,Writer} to
prepare for exporting build parts.
Also, add new folders for the upcoming weapon/armour/style
export/import mechanism.
std::fread() returns how many things it read, not the amount of
bytes read. Worst thing is, I got this right everywhere else.
It might already be a dependency of other packages installed through
the command-line, but better safe than sorry.
From now on, Maps will only be for preprocessor-powered
multi-directional mapping fuckery.
Partial revert of 04d2ab9dc7.

I forgot about the Backup struct when I was working on the backup
manager, and was about to run into a conflict sooner or later.
This'll stop Clang-Tidy's complaining that "default values in
virtual/override methods are prohibited". Dunno how prohibited they
are, but better safe than sorry, even though there was no compile
error/warning.
Logger doesn't output coloured text to the console anymore. As a
result, we don't need to tell Corrade to use ANSI colour codes on
Windows anymore.
Allowing each dependency to be system-wide or not is gonna be an
improvement, especially when it comes to IDE memory usage.
There's now a BackupManager class, which handles all backup
management functionalities ProfileManager used to have.
ProfileManager also got adapted to paths being available from
Configuration, which was long overdue.

Application was adapted to the various changes.
Crashes at runtime. Needs debugging.
This fixes a compilation issue with MinGW-w64 on MSYS2. Probably
MinGW-w64 on Linux too, but I haven't checked yet.
Somehow, it made the app crash _only_ in release mode, while debug
was unaffected.
Though there's another issue, which I'll have to investigate further.
As mentioned in the commit, something's wrong. Probably on ImGui's
side, but I'll have to investigate more.
Fuckers at Epic added four more bytes to the file header, and not
even equivalent Rust libraries know what those bytes are for.
Also change namespace definitions to nested ones.
Some of the new stuff still isn't supported yet, but it'll be when
the release happens.
williamjcm manually merged commit 40f2d88433 into master 2024-07-22 11:06:13 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: williamjcm/MassBuilderSaveTool#38
No description provided.