Skip to content
This repository was archived by the owner on Dec 30, 2022. It is now read-only.

Commit d351163

Browse files
committed
List updatable mods
1 parent db23402 commit d351163

5 files changed

Lines changed: 16 additions & 2 deletions

File tree

src/main/java/xyz/deathsgun/modmanager/api/mod/DetailedMod.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,25 @@
1616

1717
package xyz.deathsgun.modmanager.api.mod;
1818

19+
import java.util.Collections;
1920
import java.util.List;
2021

2122
public record DetailedMod(
2223
String id,
24+
String slug,
2325
String name,
2426
String description,
2527
String body,
2628
String license,
29+
String icon,
2730
int downloads,
2831
List<Category> categories,
2932
String issuesUrl,
3033
String sourceUrl,
3134
String wikiUrl,
3235
List<String> versions
3336
) {
37+
public SummarizedMod toSummarizedMod() {
38+
return new SummarizedMod(id, slug, "", name, Collections.emptyList(), description, icon);
39+
}
3440
}

src/main/java/xyz/deathsgun/modmanager/gui/ModDetailScreen.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ protected void init() {
6666
Objects.requireNonNull(this.client).setScreen(new ModManagerErrorScreen(this, e));
6767
}
6868
int buttonX = this.width / 8;
69-
String text = detailedMod.body();
69+
String text = detailedMod.body().replaceAll("\\u00A0", " ");
7070
if (HTML_PATTERN.matcher(text).find()) {
7171
text = detailedMod.description();
7272
}

src/main/java/xyz/deathsgun/modmanager/gui/widget/CategoryListWidget.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
import net.minecraft.client.MinecraftClient;
2020
import net.minecraft.client.gui.screen.Screen;
21+
import net.minecraft.text.TranslatableText;
2122
import xyz.deathsgun.modmanager.ModManager;
2223
import xyz.deathsgun.modmanager.api.mod.Category;
2324
import xyz.deathsgun.modmanager.gui.ModManagerErrorScreen;
@@ -39,6 +40,10 @@ public CategoryListWidget(MinecraftClient client, int width, int height, int top
3940
public void init() {
4041
try {
4142
this.categories = new ArrayList<>();
43+
this.addEntry(new CategoryListEntry(this, new Category(
44+
"updatable",
45+
new TranslatableText("modmanager.categories.updatable")
46+
)));
4247
ModManager.getModProvider().getCategories().forEach(category -> this.addEntry(new CategoryListEntry(this, category)));
4348
if (parent.getEntry(this) != null) {
4449
setSelected(parent.getEntry(this));

src/main/java/xyz/deathsgun/modmanager/providers/modrinth/model/Mod.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public class Mod {
3636
private List<String> categories;
3737
@SerializedName("issues_url")
3838
private String issuesUrl;
39+
@SerializedName("icon_url")
40+
private String icon;
3941
@SerializedName("source_url")
4042
private String sourceUrl;
4143
@SerializedName("wiki_url")
@@ -45,6 +47,6 @@ public class Mod {
4547
public DetailedMod toDetailedMod() {
4648
ArrayList<Category> categoriesList = new ArrayList<>();
4749
categories.forEach(s -> categoriesList.add(new Category(s, new TranslatableText("modmanager.category." + s))));
48-
return new DetailedMod(id.replaceFirst("local-", ""), title, description, body, license.name(), downloads, categoriesList, issuesUrl, sourceUrl, wikiUrl, versions);
50+
return new DetailedMod(id.replaceFirst("local-", ""), slug, title, description, body, license.name(), icon, downloads, categoriesList, issuesUrl, sourceUrl, wikiUrl, versions);
4951
}
5052
}

src/main/resources/assets/modmanager/lang/en_us.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"modmanager.badge.installed": "Installed",
33
"modmanager.badge.outdated": "Outdated",
44
"modmanager.categories": "Categories",
5+
"modmanager.categories.updatable": "Updatable mods",
56
"modmanager.category.technology": "Technology",
67
"modmanager.category.adventure": "Adventure",
78
"modmanager.category.magic": "Magic",

0 commit comments

Comments
 (0)