Display feedback to user

This commit is contained in:
MEEPofFaith
2024-04-16 17:09:23 -07:00
parent dd0719c6f1
commit 5ac8abec0f
3 changed files with 16 additions and 3 deletions

View File

@@ -185,6 +185,8 @@ mod.scripts.disable = Your device does not support mods with scripts. You must d
mod.dependencies.error = [scarlet]Mods are missing dependencies
mod.dependencies.download = Download
mod.dependencies.success = Successfully downloaded all dependencies
mod.dependencies.failure = Failed to download some dependencies:
about.button = About
name = Name:

View File

@@ -663,10 +663,10 @@ public class Mods implements Loadable{
p.row();
p.table(d -> {
mod.missingDependencies.each(dep -> {
d.add(" - " + dep).wrap().growX().left().get().setAlignment(Align.left);
d.add(" " + dep).wrap().growX().left().get().setAlignment(Align.left);
d.row();
});
}).growX();
}).growX().padBottom(8f);
p.row();
});
}).fillX();
@@ -678,10 +678,20 @@ public class Mods implements Loadable{
b.button("@mod.dependencies.download", () -> {
hide();
Seq<String> missingDeps = new Seq<>();
mods.each(m -> m.enabled() && m.hasUnmetDependencies(), mod -> {
mods.each(LoadedMod::hasUnmetDependencies, mod -> {
mod.missingDependencies.each(missingDeps::addUnique);
});
int amount = missingDeps.size;
ui.mods.importDependencies(missingDeps);
if(missingDeps.size < amount) requiresReload = true;
if(missingDeps.isEmpty()){
ui.showInfo("@mod.dependencies.success");
}else{
String[] fail = {Core.bundle.get("mod.dependencies.failure")};
missingDeps.each(d -> fail[0] += "\n " + d);
ui.showStartupInfo(fail[0]);
}
}).size(150, 50);
});
}}.show();

View File

@@ -677,6 +677,7 @@ public class ModsDialog extends BaseDialog{
getModList(listings -> {
listings.each(l -> dependencies.contains(l.internalName), l -> {
githubImportMod(l.repo, l.hasJava);
dependencies.remove(l.internalName);
});
});
}