diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/DownloadPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/DownloadPage.java index 971032b9f..ce158c41a 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/DownloadPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/DownloadPage.java @@ -230,6 +230,10 @@ public class DownloadPage extends DecoratorAnimatedPage implements DecoratorPage tab.select(modTab); } + public void showWorldDownloads() { + tab.select(worldTab); + } + private class DownloadNavigator implements Navigation { private final Map settings = new HashMap<>(); diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/WorldListPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/WorldListPage.java index 4f84e63a7..40b6acd33 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/WorldListPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/WorldListPage.java @@ -114,6 +114,11 @@ public class WorldListPage extends ListPageBase implements Versio installWorld(res.get(0)); } + public void download() { + Controllers.getDownloadPage().showWorldDownloads(); + Controllers.navigate(Controllers.getDownloadPage()); + } + private void installWorld(File zipFile) { // Only accept one world file because user is required to confirm the new world name // Or too many input dialogs are popped. @@ -165,7 +170,8 @@ public class WorldListPage extends ListPageBase implements Versio return Arrays.asList(chkShowAll, createToolbarButton2(i18n("button.refresh"), SVG::refresh, skinnable::refresh), - createToolbarButton2(i18n("world.add"), SVG::plus, skinnable::add)); + createToolbarButton2(i18n("world.add"), SVG::plus, skinnable::add), + createToolbarButton2(i18n("world.download"), SVG::plus, skinnable::download)); } } } diff --git a/HMCL/src/main/resources/assets/lang/I18N.properties b/HMCL/src/main/resources/assets/lang/I18N.properties index 788c6e1c8..bad24a151 100644 --- a/HMCL/src/main/resources/assets/lang/I18N.properties +++ b/HMCL/src/main/resources/assets/lang/I18N.properties @@ -706,6 +706,7 @@ world.add=Add world(.zip) world.datapack=Manage data packs world.datapack.1_13=Only Minecraft 1.13 and later versions support data packs. world.description=%s. Last played time: %s. Game version: %s. +world.download=Downloads world.export=Export this world world.export.title=Choose a location to store your world world.export.location=Export to diff --git a/HMCL/src/main/resources/assets/lang/I18N_zh.properties b/HMCL/src/main/resources/assets/lang/I18N_zh.properties index a5e62bfdd..93fab730c 100644 --- a/HMCL/src/main/resources/assets/lang/I18N_zh.properties +++ b/HMCL/src/main/resources/assets/lang/I18N_zh.properties @@ -705,6 +705,7 @@ world.add=加入世界 world.datapack=管理資料包 world.datapack.1_13=僅 Minecraft 1.13 及之後的版本支援資料包 world.description=%s. 上一次遊戲時間: %s. 遊戲版本: %s +world.download=存檔下載 world.export=匯出此世界 world.export.title=選擇該世界的儲存位置 world.export.location=儲存到 diff --git a/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties b/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties index f9f078280..c40d5d4a6 100644 --- a/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties +++ b/HMCL/src/main/resources/assets/lang/I18N_zh_CN.properties @@ -706,6 +706,7 @@ world.add=添加世界 world.datapack=管理数据包 world.datapack.1_13=仅 Minecraft 1.13 及之后的版本支持数据包 world.description=%s. 上一次游戏时间: %s. 游戏版本: %s +world.download=存档下载 world.export=导出此世界 world.export.title=选择该世界的存储位置 world.export.location=保存到