Commit Graph

282 Commits

Author SHA1 Message Date
Guillaume Jacquemin 47890f6939 ArmourSets: add Axial Core. 2022-03-20 11:31:37 +01:00
Guillaume Jacquemin 354c3ff3d9 LastMissionId: add missing IDs. 2022-03-20 11:31:15 +01:00
Guillaume Jacquemin 04beebbc1c SaveTool: implement the UI for BL placement editing. 2022-03-20 10:17:14 +01:00
Guillaume Jacquemin 47520b89e3 Mass: implement BL attachment writing.
Needs testing, though.
2022-03-20 10:16:39 +01:00
Guillaume Jacquemin ce0ca07afc SaveTool: various UI tweaks. 2022-03-20 09:14:46 +01:00
Guillaume Jacquemin e91c015c00 SaveTool,ProfileManager: make backups 0.8-ready. 2022-03-20 09:14:11 +01:00
Guillaume Jacquemin 75d77413f6 Mass: add a new value to BulletLauncherSockets.hpp. 2022-03-13 15:26:00 +01:00
Guillaume Jacquemin ddad6536c6 Mass: fix a condition. 2022-03-13 15:25:11 +01:00
Guillaume Jacquemin d9f6470dc6 Mass: make the code look in the right places.
Time to facepalm...
2022-03-13 11:02:43 +01:00
Guillaume Jacquemin f963ce31ad SaveTool: fix a condition that prevented armour accessories from being editable. 2022-03-13 10:48:32 +01:00
Guillaume Jacquemin be06c2d552 Mass: add reading support for 0.8 BL placement.
Then, it's UI design time, followed by writing support.
2022-03-12 09:34:19 +01:00
Guillaume Jacquemin d61977d758 Weapon: change how enums are built. 2022-03-11 15:39:49 +01:00
Guillaume Jacquemin f36782bff0 ArmourPart: auto-fill ArmourSlot using ArmourSlots.hpp. 2022-03-11 10:58:13 +01:00
Guillaume Jacquemin 76613c2ec5 Mass: add a few missing string views. 2022-03-11 10:57:16 +01:00
Guillaume Jacquemin e997312286 SaveTool: rename tabs in the build viewer. 2022-03-11 10:56:52 +01:00
Guillaume Jacquemin e2d31854b4 SaveTool: use ImGui's {Begin,End}Disabled API. 2022-03-11 09:20:24 +01:00
Guillaume Jacquemin ccf630c385 MassManager: fix a condition. 2022-03-09 14:03:08 +01:00
Guillaume Jacquemin 4ae9f83ab3 SaveTool: fix a segfault. 2022-03-09 14:02:56 +01:00
Guillaume Jacquemin dd9dcdb5f6 SaveTool: change how file update events are handled. 2022-03-09 13:27:45 +01:00
Guillaume Jacquemin f1a4b64219 SaveTool: use the shorthand getters added in the previous commit. 2022-03-09 13:27:21 +01:00
Guillaume Jacquemin 8f4708f518 Profile: provide shorthand getters. 2022-03-09 13:25:26 +01:00
Guillaume Jacquemin b859bf7ab5 Update Corrade/Magnum and adapt to changes.
Also a few misc things, but nothing really noteworthy.
2022-03-09 11:04:19 +01:00
Guillaume Jacquemin db6836ec33 Profile(Manager): add basic 0.8 profile support. 2022-03-06 14:42:24 +01:00
Guillaume Jacquemin 89bba618fb SaveTool: eliminate a few format warnings. 2022-03-06 14:30:04 +01:00
Guillaume Jacquemin 88afaaceec UESaveFile/Serialisers: make types() return an ArrayView of Strings.
It's the best way to avoid dangling views for now.
2022-03-06 14:29:09 +01:00
Guillaume Jacquemin fdb7567aea PropertySerialiser: make into a singleton.
Also update UESaveFile to match.
2022-03-06 13:21:56 +01:00
Guillaume Jacquemin 771e008e62 Mass: fragment into smaller files.
Should help navigation and maintenance.
2022-03-06 09:52:11 +01:00
Guillaume Jacquemin 4d9fc46003 SaveTool: fix a mistake in drawAbout. 2022-03-06 09:25:23 +01:00
Guillaume Jacquemin db3eba5b59 SaveTool: move some stuff into its own function. 2022-03-06 09:12:40 +01:00
Guillaume Jacquemin 8791eb32ac Use Corrade's String(View) types where possible.
Utility::Directory, efsw, cpr, and json.hpp are the only obstacles to a
complete removal of std::string usages.
2022-03-04 21:18:55 +01:00
Guillaume Jacquemin f522d20dd4 SaveTool: fragment SaveTool_MassViewer.cpp.
This will make maintenance easier. I hope.
2022-03-02 14:43:02 +01:00
Guillaume Jacquemin 6208825aa6 Mass: fix a bug that prevented global styles from being read. 2022-03-02 14:10:13 +01:00
Guillaume Jacquemin 572585e648 SaveTool: optimise code readability.
...mostly for Clang/CLion. :D
2022-03-02 11:46:31 +01:00
Guillaume Jacquemin de2ba9ce7f Mass(Manager),SaveTool: improve error handling. 2022-02-26 14:48:45 +01:00
Guillaume Jacquemin d0ddc73852 Profile: fix a compile error. 2022-02-25 21:00:32 +01:00
Guillaume Jacquemin a1c17b7138 Profile(Manager),SaveTool: improve error handling and fix bugs. 2022-02-24 14:00:47 +01:00
Guillaume Jacquemin 350ad59f8e SaveTool: add a convenience wrapper over ImGui stuff. 2022-02-23 21:59:00 +01:00
Guillaume Jacquemin 883d5d3f41 Mass,SaveTool: improve error handling. 2022-02-23 15:47:34 +01:00
Guillaume Jacquemin 77d7eaefad SaveTool: fix a condition. 2022-02-23 10:18:58 +01:00
Guillaume Jacquemin 82170b3078 Mass,SaveTool: optimise the effect colour mode. 2022-02-17 20:22:33 +01:00
Guillaume Jacquemin 88abf91047 Mass,SaveTool: add some future-proofing. 2022-02-17 20:01:59 +01:00
Guillaume Jacquemin 955ec010b8 Crc32: make the polynomial literal explicitly unsigned. 2022-02-16 11:48:39 +01:00
Guillaume Jacquemin 7cb9ea28b2 BinaryReader: add a way to read arbitrary types. 2022-02-16 11:47:49 +01:00
Guillaume Jacquemin 975f471a68 BinaryReader: add a way to seek into the file. 2022-02-14 09:31:20 +01:00
Guillaume Jacquemin 76210e147a BinaryWriter: add a way to access the temp array.
That way, I'll be able to easily compute the CRC32 of it.
2022-02-13 15:09:07 +01:00
Guillaume Jacquemin 5e06c48492 BinaryWriter: fix an issue with writeValueToArray().
The view needs to be of type T, not U (which can potentially be T&).
2022-02-13 15:03:45 +01:00
Guillaume Jacquemin 2ff32c4c78 Add a CRC32 algorithm. 2022-02-13 15:02:08 +01:00
Guillaume Jacquemin 4000421a8c Mass,SaveTool: refactor even more code. 2022-02-13 10:31:55 +01:00
Guillaume Jacquemin 8f1e3668a3 BinaryWriter: allow writing string literals. 2022-02-12 11:21:23 +01:00
Guillaume Jacquemin a6c0614979 BinaryWriter: make non-copyable. 2022-02-11 19:44:16 +01:00
Guillaume Jacquemin 2cabe6a3ba MassManager: adapt to Mass changes.
Should have caught it earlier. Ugh.
2022-02-11 18:31:45 +01:00
Guillaume Jacquemin afc163f344 Mass: rename a member.
SteamIDs aren't used anymore in 0.8+ save files.
2022-02-09 20:16:14 +01:00
Guillaume Jacquemin 353a71d8ab Weapon: remove an unneeded blank line. 2022-02-09 18:28:23 +01:00
Guillaume Jacquemin bbc40d7c93 Weapon: update formatting. 2022-02-09 18:12:11 +01:00
Guillaume Jacquemin 28db82c8a9 Weapon,Mass,SaveTool: refactor some more code. 2022-02-09 14:17:05 +01:00
Guillaume Jacquemin 9f324c30fd Delete WeaponTypes.h.
It's not needed anymore.
2022-02-09 13:54:44 +01:00
Guillaume Jacquemin 41cd92352d Mass: refactor and optimise some parts. 2022-02-09 13:41:55 +01:00
Guillaume Jacquemin 940fe3feee SaveTool: implement weapon copying. 2022-01-30 14:04:22 +01:00
Guillaume Jacquemin d74a7bc219 Mass: make Weapon copyable.
This is necessary to add weapon copying.
2022-01-30 14:02:30 +01:00
Guillaume Jacquemin 51faed7210 Update copyright years.
I should have done that earlier... and of course I forgot a few files...
2022-01-30 11:38:22 +01:00
Guillaume Jacquemin 8fb837bfc0 SaveTool: finish implementing weapon reordering. 2022-01-30 09:48:14 +01:00
Guillaume Jacquemin 0ac1e759ca Profile(Manager),SaveTool: prepare for legacy/normal distinction. 2022-01-20 19:42:27 +01:00
Guillaume Jacquemin a4045e8e9b Add a few IDs to maps. 2022-01-20 11:39:36 +01:00
Guillaume Jacquemin 1ec4522baf SaveTool: make the clickthrough hint have priority. 2022-01-15 13:26:12 +01:00
Guillaume Jacquemin 13d09e4aa0 SaveTool: prepare for the better import/export system. 2022-01-15 11:31:33 +01:00
Guillaume Jacquemin ed0c4a73bb SaveTool: mark profiles as "legacy" in the manager.
I'll probably have to redesign that whole part of the UI anyway, so...
2022-01-15 11:31:06 +01:00
Guillaume Jacquemin 8102d1d83a SaveTool: improve the ShellExecuteW call. 2022-01-15 11:30:12 +01:00
Guillaume Jacquemin 9a9c08391a SaveTool: change how story progress is handled. 2022-01-15 11:01:11 +01:00
Guillaume Jacquemin 51602c713a SaveTool: update layout. 2022-01-14 13:42:09 +01:00
Guillaume Jacquemin 1621a4dbd5 SaveTool: move M.A.S.S. viewer state tracking.
That way, it's easier to reset. Some states, such as the current tab or
which headers are open/collapsed, are internal to ImGui, though, so I
can't do much there. Well, I could use the internal ImGui API, but, it's
still a pain in the ass.
2022-01-14 13:22:51 +01:00
Guillaume Jacquemin 7fb269f862 SaveTool: change viewer window ID. 2022-01-07 09:35:32 +01:00
Guillaume Jacquemin 1378676bbc SaveTool: fix old code. 2022-01-03 12:46:13 +01:00
Guillaume Jacquemin 96768c1aab SaveTool: add a conversion operator. 2022-01-03 12:10:20 +01:00
Guillaume Jacquemin bd05a98820 SaveTool: make pre-releases considered up-to-date if they're more recent than the latest stable. 2022-01-03 11:56:34 +01:00
Guillaume Jacquemin 7059295cb3 Strip the release executable.
For *some* reason, there's debug info in one of the MinGW-w64 libs,
which account for roughly half the bloat of the release exe.
2021-12-03 00:14:22 +01:00
Guillaume Jacquemin 065e63f27c SaveTool: skip prereleases in update check. 2021-12-02 20:37:47 +01:00
Guillaume Jacquemin a05f3eeed0 Prepare the pre-release. 2021-12-02 20:12:54 +01:00
Guillaume Jacquemin 321e8feed0 SaveTool: change how versions are evaluated.
This allows pre-releases and beta versions to be considered out of date
once complete versions are released.
2021-12-02 19:52:26 +01:00
Guillaume Jacquemin c6de9c1940 SaveTool: finish most of the M.A.S.S. viewer.
Some parts are very unfinished, but do work.
2021-12-02 19:23:28 +01:00
Guillaume Jacquemin fe0db983ce Mass: add tuning reading support.
Writing support SOON™.
2021-12-02 15:27:00 +01:00
Guillaume Jacquemin bd8ff47f1e Mass: fix data ordering issue with joint sliders. 2021-11-01 11:19:34 +01:00
Guillaume Jacquemin 83fa5822bf MassManager: fix bugs in path handling. 2021-11-01 09:40:33 +01:00
Guillaume Jacquemin 8d87cdd619 Mass: fix a check. 2021-10-29 14:41:52 +02:00
Guillaume Jacquemin 0900f92b9f Mass: finish implementing the saving feature.
Oh, and also remove a blank line, but that's not important.
2021-10-29 10:23:34 +02:00
Guillaume Jacquemin af71806e13 Mass: finish getWeaponType(). 2021-10-18 14:54:28 +02:00
Guillaume Jacquemin 247578a386 Mass: add getDecals() and getAccessories(). 2021-10-18 14:54:04 +02:00
Guillaume Jacquemin 4ca6f62d9b Mass: remove as many hardcoded values as possible. 2021-10-17 15:29:16 +02:00
Guillaume Jacquemin e461d5a505 Mass: add getCustomStyles(); 2021-10-17 15:28:54 +02:00
Guillaume Jacquemin d79debe69f Mass: change how setCustomStyle() works.
This'll allow usage with weapon styles.
2021-10-17 10:52:57 +02:00
Guillaume Jacquemin 83fe02a8dc Mass: improve readability and reliability. 2021-10-17 09:24:44 +02:00
Guillaume Jacquemin 7e452db3a4 Mass: improve readability. 2021-10-17 08:44:23 +02:00
Guillaume Jacquemin 80bb85c0d8 Mass: add weapon reading.
Writing will come SOON™.
2021-10-17 08:37:12 +02:00
Guillaume Jacquemin 4df90efd67 Mass: rename a field. 2021-10-16 11:36:31 +02:00
Guillaume Jacquemin b92c37e4b6 Mass: fix another bug with importing. 2021-10-14 15:06:03 +02:00
Guillaume Jacquemin dd460b4313 MassManager: fix a bug with importing. 2021-10-13 14:49:31 +02:00
Guillaume Jacquemin 05a2b1cfb0 SaveTool: change a drag widget to a slider. 2021-10-12 16:53:19 +02:00
Guillaume Jacquemin 8fedbdd4e5 Add armour sets and slots maps. 2021-10-12 16:52:40 +02:00
Guillaume Jacquemin 3ac5288f12 Mass: prepare decals for edition. 2021-10-12 16:35:49 +02:00
Guillaume Jacquemin 8bae723018 Mass: finish implementing armour part support. 2021-10-11 17:17:14 +02:00
Guillaume Jacquemin 3714162b50 UnrealPropertyBase: initialise valueLength. 2021-10-05 10:31:06 +02:00