1
Fork 0
mirror of https://github.com/redstrate/Physis.git synced 2025-04-24 13:37:44 +00:00
Commit graph

289 commits

Author SHA1 Message Date
0edbcfdf34 Revert "Switch from bitfield-struct to modular-bitfield"
This reverts commit 3615adac47.
2022-10-17 19:50:38 -04:00
a9fa6d714a Use read_le instead of manually passing ReadOptions 2022-10-17 19:24:02 -04:00
3615adac47 Switch from bitfield-struct to modular-bitfield 2022-10-17 19:23:45 -04:00
78856af0a5 Finally, implement SqpkFileOperation::RemoveAll 2022-10-17 19:05:58 -04:00
263f18a544 Remove Index Add/Delete commands, intentionally NOP some ops 2022-10-17 17:48:34 -04:00
ebc7ae77e7 Implement MakeDirTree, consolidate some parts of FileOperation 2022-10-17 16:54:40 -04:00
a4641cdfce Don't use temp variables in installer 2022-10-17 16:46:53 -04:00
4ee2d3235f Oops, game installation is failing 2022-10-17 16:44:14 -04:00
5508813340 Fix a very small error that caused index2 file gen to fail 2022-10-17 16:20:42 -04:00
c61ba6be7a Note a TODO that the InvalidPatchFile error is misleading 2022-10-17 15:25:49 -04:00
eebe89a4bd Remove some import warnings 2022-10-13 17:11:28 -04:00
177523831b Switch a lot more parsers from binread -> binrw
This doesn't necessarily mean that these formats support writing (yet)
but just to solve the initial compilation errors.
2022-10-13 17:11:03 -04:00
c3c3df7c68 More small warning changes 2022-10-13 16:11:20 -04:00
e86d910594 Update binrw to 0.10.0
This introduces a new breaking change, namely that all endianness must
be known. I've done the best I can, but I'll be checking soon.
2022-10-13 16:03:46 -04:00
eed1b5fe83 Extract InstallShield files in your temp dir instead of the current dir 2022-10-13 15:51:03 -04:00
d87694df4d Make apply_patch public 2022-10-13 15:45:50 -04:00
952b06cd76 Fix a rare case where installation might fail 2022-10-13 15:45:50 -04:00
2868a2adad Add build_skeleton_path function 2022-10-13 15:45:50 -04:00
85bcfa5db6 WOW missed another one! 2022-09-15 17:02:30 -04:00
1923b626a9 Fix some module descriptions missing from docs 2022-09-15 17:00:27 -04:00
49bd5987d0 Convert TextureAttribute constants to upper case camel 2022-09-15 16:31:56 -04:00
9819f87fcc Suppress some warnings 2022-09-15 16:26:31 -04:00
0dd4121557 Improve patch NOP logging 2022-09-13 16:51:32 -04:00
ca6a5be72b Don't panic on IndexAddDelete, it should actually NOP 2022-08-31 17:58:08 -04:00
d9e79e563a Reformat code 2022-08-16 11:52:07 -04:00
c7184cb36f Fix Clippy warnings and errors 2022-08-16 11:50:18 -04:00
75f88ba3b6 Clarify that IndexFile::from_existing is not reading index2 files 2022-08-14 23:38:49 -04:00
209b475065 Make material struct members public 2022-08-11 15:51:39 -04:00
3b2038024f Make texture struct members public 2022-08-11 15:48:28 -04:00
06226cfad1 Expose texture width and height 2022-08-11 15:47:02 -04:00
01717456d1 Add material file parsing 2022-08-11 15:40:14 -04:00
6554dee2f1 Decompress and return rgba data for textures 2022-08-11 15:03:12 -04:00
0210479fd3 Parse texture attribute and formats 2022-08-11 09:23:15 -04:00
214e5495fe Properly set bone parenting Skeleton::from_skel, export bone transforms 2022-08-10 14:52:11 -04:00
5ca60cb95d Export affected bone names 2022-08-10 14:51:50 -04:00
5d8e8e23e5 Add some new equipment functions needed for VARC tool
* Added deconstruct_equipment_path to grab the model id and slot from
an already made equipment filename.
* Added get_slot_from_abbreviation to be the reverse of
get_slot_abbreviation.
2022-08-10 14:51:36 -04:00
c609974fe2 Fix warning in doctest 2022-08-09 23:44:11 -04:00
642cb94896 Make install_game no longer unsafe, propagates errors 2022-08-09 23:39:31 -04:00
6f9b5c59d7 Fix misc warnings 2022-08-09 23:39:15 -04:00
59913434e6 Read boot version 2022-08-09 23:17:19 -04:00
e094742690 Properly propagate errors up the stack for game_data::extract 2022-08-09 22:43:04 -04:00
22569cf09d Oops, apparently index and patch platform id sizes are different! 2022-08-09 22:37:40 -04:00
2784935409 Actually extract expansion number 2022-08-09 22:31:48 -04:00
2a723f459f Make RepositoryType copyable 2022-08-09 22:07:17 -04:00
e172433b00 Propagate patch errors for BootData too 2022-08-09 21:53:20 -04:00
8c3f848918 Make RepositoryType repr(C) 2022-08-09 21:52:07 -04:00
18322a13d2 Handle patching error handling better
* Move PlatformId to common module.
* Platform id is no longer hardcoded to win32.
* Parse apply options correctly.
* Parse target info better, use more native structures.
* All errors are now handled properly, and propagated up.
* Added a new Region enum.
* Added todo!() to all unhandled patching branches.
* Paths are now built using PathBuf instead of format!().
* process_patch function is no longer accessible, now you have to use
the function found in GameData and BootData.
2022-08-09 21:51:52 -04:00
03e3d3ca21 Simplify index file return 2022-08-09 20:05:11 -04:00
ba5d8bc628 Create get_dat_file function 2022-08-09 20:03:18 -04:00
d318dcb788 Use PathBuf in get_index_file 2022-08-09 20:00:02 -04:00