From 9a356dbf0d68e22d6fcd879da43fe2700a7f3514 Mon Sep 17 00:00:00 2001 From: Frank Date: Thu, 26 Aug 2021 21:28:31 +0200 Subject: [PATCH] Mod Warning Fixes --- .../handler/autosync/HelloClient.java | 3 ++- .../ru/bclib/gui/screens/ModListScreen.java | 19 ++++++++++++++----- .../resources/assets/bclib/lang/en_us.json | 2 +- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/main/java/ru/bclib/api/dataexchange/handler/autosync/HelloClient.java b/src/main/java/ru/bclib/api/dataexchange/handler/autosync/HelloClient.java index 95449ecd..1c25eb37 100644 --- a/src/main/java/ru/bclib/api/dataexchange/handler/autosync/HelloClient.java +++ b/src/main/java/ru/bclib/api/dataexchange/handler/autosync/HelloClient.java @@ -6,6 +6,7 @@ import net.fabricmc.fabric.api.networking.v1.PacketSender; import net.fabricmc.loader.api.metadata.ModEnvironment; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.chat.CommonComponents; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import ru.bclib.BCLib; @@ -380,7 +381,7 @@ public class HelloClient extends DataHandler.FromServer { showSyncFilesScreen(client, filesToRequest, filesToRemove); return; } else if (serverPublishedModInfo && mismatchingMods.size()>0 && Configs.CLIENT_CONFIG.isShowingModInfo()) { - client.setScreen(new ModListScreen(client.screen, new TranslatableComponent("title.bclib.modmissmatch"), new TranslatableComponent("message.bclib.modmissmatch"), ModUtil.getMods(), modVersion)); + client.setScreen(new ModListScreen(client.screen, new TranslatableComponent("title.bclib.modmissmatch"), new TranslatableComponent("message.bclib.modmissmatch"), CommonComponents.GUI_PROCEED, ModUtil.getMods(), modVersion)); return; } } diff --git a/src/main/java/ru/bclib/gui/screens/ModListScreen.java b/src/main/java/ru/bclib/gui/screens/ModListScreen.java index b376539f..74ee4a33 100644 --- a/src/main/java/ru/bclib/gui/screens/ModListScreen.java +++ b/src/main/java/ru/bclib/gui/screens/ModListScreen.java @@ -13,7 +13,6 @@ import ru.bclib.gui.gridlayout.GridLayout; import ru.bclib.gui.gridlayout.GridRow; import ru.bclib.gui.gridlayout.GridScreen; import ru.bclib.util.ModUtil; -import ru.bclib.util.Pair; import ru.bclib.util.PathUtil; import ru.bclib.util.Triple; @@ -30,22 +29,32 @@ public class ModListScreen extends BCLibScreen { private final List mods; private final HelloClient.IServerModMap serverInfo; private final Component description; + private final Component buttonTitle; private static List extractModList(Map mods){ List list = new LinkedList(); ModUtil.getMods().forEach((id, info) -> list.add(info)); return list; } - + public ModListScreen(Screen parent, Component title, Component description, Map mods, HelloClient.IServerModMap serverInfo) { - this(parent, title, description, extractModList(mods), serverInfo); + this(parent, title, description, CommonComponents.GUI_BACK, mods, serverInfo); + } + + public ModListScreen(Screen parent, Component title, Component description, List mods, HelloClient.IServerModMap serverInfo) { + this(parent, title, description, CommonComponents.GUI_BACK, mods, serverInfo); + } + + public ModListScreen(Screen parent, Component title, Component description, Component button, Map mods, HelloClient.IServerModMap serverInfo) { + this(parent, title, description, button, extractModList(mods), serverInfo); } - public ModListScreen(Screen parent, Component title, Component description, List mods, HelloClient.IServerModMap serverInfo) { + public ModListScreen(Screen parent, Component title, Component description, Component button, List mods, HelloClient.IServerModMap serverInfo) { super(parent, title, 10, true); this.mods = mods; this.serverInfo = serverInfo; this.description = description; + this.buttonTitle = button; } public static List localMissing(HelloClient.IServerModMap serverInfo){ @@ -197,7 +206,7 @@ public class ModListScreen extends BCLibScreen { grid.addSpacerRow(8); row = grid.addRow(); row.addFiller(); - row.addButton(CommonComponents.GUI_BACK, 20, font, (n)-> { + row.addButton(buttonTitle, 20, font, (n)-> { onClose(); System.out.println("Closing"); }); diff --git a/src/main/resources/assets/bclib/lang/en_us.json b/src/main/resources/assets/bclib/lang/en_us.json index c873d4fc..4778e438 100644 --- a/src/main/resources/assets/bclib/lang/en_us.json +++ b/src/main/resources/assets/bclib/lang/en_us.json @@ -26,7 +26,7 @@ "title.config.bclib.client.auto_sync.acceptConfigs": "Accept incoming Confog Files", "title.config.bclib.client.auto_sync.acceptFiles": "Accept incoming Files", "title.config.bclib.client.auto_sync.acceptMods": "Accept incoming Mods", - "title.config.bclib.client.auto_sync.syncModFolder": "Sync entire Mod-Folder from Server", + "title.config.bclib.client.auto_sync.displayModInfo": "Display warning when Serverside Mods differ from Client", "title.config.bclib.client.auto_sync.debugHashes": "Print Auto-Sync Debug-Hashes to Log", "title.bclib.syncfiles.modInfo": "Mod Info",