feat: added patch integration

This commit is contained in:
Observer KRypt0n_ 2023-04-15 16:24:57 +02:00
parent 2a643f9639
commit e58b2e2e5c
No known key found for this signature in database
GPG key ID: 844DA47BA25FE1E2

View file

@ -16,6 +16,8 @@ pub enum LauncherState {
/// Always contains `VersionDiff::Predownload` /// Always contains `VersionDiff::Predownload`
PredownloadAvailable(VersionDiff), PredownloadAvailable(VersionDiff),
PatchAvailable(MainPatch),
#[cfg(feature = "components")] #[cfg(feature = "components")]
WineNotInstalled, WineNotInstalled,
@ -68,7 +70,7 @@ impl LauncherState {
match diff { match diff {
VersionDiff::Latest(_) | VersionDiff::Predownload { .. } => { VersionDiff::Latest(_) | VersionDiff::Predownload { .. } => {
// Check game patch status // Check game patch status
/*(params.status_updater)(StateUpdating::Patch); (params.status_updater)(StateUpdating::Patch);
let patch = Patch::new(&params.patch_folder); let patch = Patch::new(&params.patch_folder);
@ -82,22 +84,13 @@ impl LauncherState {
} }
} }
// Check UnityPlayer patch // Check main patch status
let player_patch = patch.unity_player_patch()?; let player_patch = patch.main_patch()?;
if !player_patch.is_applied(&params.game_path)? { if !player_patch.is_applied(&params.game_path)? {
return Ok(Self::UnityPlayerPatchAvailable(player_patch)); return Ok(Self::PatchAvailable(player_patch));
} }
// Check xlua patch
if params.use_xlua_patch {
let xlua_patch = patch.xlua_patch()?;
if !xlua_patch.is_applied(&params.game_path)? {
return Ok(Self::XluaPatchAvailable(xlua_patch));
}
}*/
// Check if update predownload available // Check if update predownload available
if let VersionDiff::Predownload { .. } = diff { if let VersionDiff::Predownload { .. } = diff {
Ok(Self::PredownloadAvailable(diff)) Ok(Self::PredownloadAvailable(diff))