Just one more fix and dialog (no patcher, command line)

This commit is contained in:
Norbi Peti 2021-01-21 02:14:18 +01:00
parent 0a36e1a0c6
commit 3cf307a3b8
3 changed files with 13 additions and 4 deletions

View file

@ -6,7 +6,7 @@
<UseWindowsForms>true</UseWindowsForms>
<SignAssembly>false</SignAssembly>
<ApplicationIcon>favicon.ico</ApplicationIcon>
<Version>1.3.0</Version>
<Version>1.4.0</Version>
<Authors>NorbiPeti</Authors>
<Company>ExMods</Company>
<Description>A mod manager for Gamecraft. It automatically downloads and runs GCIPA and allows the user to install mods.</Description>

View file

@ -82,6 +82,7 @@ namespace GCMM
}
}
var status = CheckIfPatched();
//bool justDownloadedPatcherSoDontWarnAboutIncompatibility = false;
switch (status)
{
case GameState.NotFound:
@ -91,6 +92,7 @@ namespace GCMM
case GameState.NoPatcher:
case GameState.OldPatcher:
{
EnsureShown(false);
if (MessageBox.Show((status == GameState.NoPatcher
? "The patcher (GCIPA) is not found. It's necessary to load the mods."
: "There is a patcher update available!"
@ -101,7 +103,14 @@ namespace GCMM
return retOpenedWindowShouldStay;
}
this.status.Text = "Status: Patching...";
EnsureShown(false);
int C = 0;
while (gcipa.DownloadURL == null && C < 20)
await Task.Delay(500); //The EnsureShown() call should download info about GCIPA
if (gcipa.DownloadURL == null)
{
MessageBox.Show("Could not get information about GCIPA in time. Please run GCMM manually.");
return retOpenedWindowShouldStay;
}
using (WebClient client = GetClient())
{
string url = gcipa.DownloadURL;

View file

@ -203,13 +203,13 @@ namespace GCMM
Process.Start("steam://run/1078000/");
else
Process.Start("xdg-open", "steam://run/1078000/");
EndWork(false);
tcs.SetResult(null);
};
if (InvokeRequired)
Invoke(act);
else
act();
EndWork(false);
tcs.SetResult(null);
}, tcs.Task);
}