diff options
| author | Unknown <shekwancheung0528@gmail.com> | 2019-02-03 17:02:55 +0800 |
|---|---|---|
| committer | Unknown <shekwancheung0528@gmail.com> | 2019-02-03 17:02:55 +0800 |
| commit | 0b0c9163782337b91f70c4bbb529f76e760b073e (patch) | |
| tree | c267eebdc56c97cb6b6b0198f984e37bbe5798e3 | |
| parent | e9c090e47a1cf0e65ecaf123f06cd1272d42bc72 (diff) | |
| download | RoughlyEnoughItems-2.2.0.48.tar.gz RoughlyEnoughItems-2.2.0.48.tar.bz2 RoughlyEnoughItems-2.2.0.48.zip | |
Version Checker + Mirror REI + Fix Bugsv2.2.0.48
Fix #26
Close #21
11 files changed, 109 insertions, 24 deletions
diff --git a/src/main/java/me/shedaniel/rei/client/ConfigHelper.java b/src/main/java/me/shedaniel/rei/client/ConfigHelper.java index 41996052e..ccc340af3 100644 --- a/src/main/java/me/shedaniel/rei/client/ConfigHelper.java +++ b/src/main/java/me/shedaniel/rei/client/ConfigHelper.java @@ -107,4 +107,16 @@ public class ConfigHelper { return config.checkUpdates; } + public void setCheckUpdates(boolean checkUpdates) { + config.checkUpdates = checkUpdates; + } + + public boolean isMirrorItemPanel() { + return config.mirrorItemPanel; + } + + public void setMirrorItemPanel(boolean mirrorItemPanel) { + config.mirrorItemPanel = mirrorItemPanel; + } + } diff --git a/src/main/java/me/shedaniel/rei/client/REIConfig.java b/src/main/java/me/shedaniel/rei/client/REIConfig.java index cdb5df330..b5b798371 100644 --- a/src/main/java/me/shedaniel/rei/client/REIConfig.java +++ b/src/main/java/me/shedaniel/rei/client/REIConfig.java @@ -13,5 +13,6 @@ public class REIConfig { public boolean sideSearchField = false; public String giveCommandPrefix = "/give"; public boolean checkUpdates = true; + public boolean mirrorItemPanel = false; } diff --git a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java index 3da3443cc..eb1daa9a4 100644 --- a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java +++ b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java @@ -62,7 +62,7 @@ public class ContainerScreenOverlay extends Screen { } }); page = MathHelper.clamp(page, 0, getTotalPage()); - widgets.add(new ButtonWidget(10, 10, 40, 20, "") { + widgets.add(new ButtonWidget(RoughlyEnoughItemsCore.getConfigHelper().isMirrorItemPanel() ? window.getScaledWidth() - 50 : 10, 10, 40, 20, "") { @Override public void draw(int int_1, int int_2, float float_1) { this.text = getCheatModeText(); @@ -74,7 +74,7 @@ public class ContainerScreenOverlay extends Screen { ClientHelper.setCheating(!ClientHelper.isCheating()); } }); - widgets.add(new ButtonWidget(10, 35, 40, 20, I18n.translate("text.rei.config")) { + widgets.add(new ButtonWidget(RoughlyEnoughItemsCore.getConfigHelper().isMirrorItemPanel() ? window.getScaledWidth() - 50 : 10, 35, 40, 20, I18n.translate("text.rei.config")) { @Override public void onPressed(int button, double mouseX, double mouseY) { ClientHelper.openConfigWindow(GuiHelper.getLastContainerScreen()); @@ -200,14 +200,22 @@ public class ContainerScreenOverlay extends Screen { } private Rectangle calculateBoundary() { - int startX = GuiHelper.getLastMixinContainerScreen().getContainerLeft() + GuiHelper.getLastMixinContainerScreen().getContainerWidth() + 10; - int width = window.getScaledWidth() - startX; + if (!RoughlyEnoughItemsCore.getConfigHelper().isMirrorItemPanel()) { + int startX = GuiHelper.getLastMixinContainerScreen().getContainerLeft() + GuiHelper.getLastMixinContainerScreen().getContainerWidth() + 10; + int width = window.getScaledWidth() - startX; + if (MinecraftClient.getInstance().currentScreen instanceof RecipeViewingWidgetScreen) { + RecipeViewingWidgetScreen widget = (RecipeViewingWidgetScreen) MinecraftClient.getInstance().currentScreen; + startX = widget.getBounds().x + widget.getBounds().width + 10; + width = window.getScaledWidth() - startX; + } + return new Rectangle(startX, 0, width, window.getScaledHeight()); + } + int width = GuiHelper.getLastMixinContainerScreen().getContainerLeft() - 6; if (MinecraftClient.getInstance().currentScreen instanceof RecipeViewingWidgetScreen) { RecipeViewingWidgetScreen widget = (RecipeViewingWidgetScreen) MinecraftClient.getInstance().currentScreen; - startX = widget.getBounds().x + widget.getBounds().width + 10; - width = window.getScaledWidth() - startX; + width = widget.getBounds().x - 6; } - return new Rectangle(startX, 0, width, window.getScaledHeight()); + return new Rectangle(4, 0, width, window.getScaledHeight()); } private int getLeft() { @@ -224,6 +232,8 @@ public class ContainerScreenOverlay extends Screen { @Override public boolean mouseScrolled(double amount) { + if (!GuiHelper.isOverlayVisible()) + return false; if (rectangle.contains(ClientHelper.getMouseLocation())) { if (amount > 0 && buttonLeft.enabled) buttonLeft.onPressed(0, 0, 0); @@ -241,6 +251,12 @@ public class ContainerScreenOverlay extends Screen { @Override public boolean keyPressed(int int_1, int int_2, int int_3) { + if (ClientHelper.HIDE.matchesKey(int_1, int_2)) { + GuiHelper.toggleOverlayVisible(); + return true; + } + if (!GuiHelper.isOverlayVisible()) + return false; for(GuiEventListener listener : listeners) if (listener.keyPressed(int_1, int_2, int_3)) return true; @@ -268,19 +284,24 @@ public class ContainerScreenOverlay extends Screen { else if (ClientHelper.USAGE.matchesKey(int_1, int_2)) return ClientHelper.executeUsageKeyBind(this, itemStack); } - if (ClientHelper.HIDE.matchesKey(int_1, int_2)) { - GuiHelper.toggleOverlayVisible(); - return true; - } return false; } @Override public boolean charTyped(char char_1, int int_1) { + if (!GuiHelper.isOverlayVisible()) + return false; for(GuiEventListener listener : listeners) if (listener.charTyped(char_1, int_1)) return true; return super.charTyped(char_1, int_1); } + @Override + public boolean mouseClicked(double double_1, double double_2, int int_1) { + if (!GuiHelper.isOverlayVisible()) + return false; + return super.mouseClicked(double_1, double_2, int_1); + } + } diff --git a/src/main/java/me/shedaniel/rei/gui/widget/ConfigWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/ConfigWidget.java index d1391d978..8637afd8a 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/ConfigWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/ConfigWidget.java @@ -54,7 +54,7 @@ public class ConfigWidget extends Screen { @Override public void draw(int mouseX, int mouseY, float partialTicks) { text = getTrueFalseText(RoughlyEnoughItemsCore.getConfigHelper().sideSearchField()); - String t = I18n.translate("text.rei.centre_searchbox"); + String t = I18n.translate("text.rei.side_searchbox"); int width = fontRenderer.getStringWidth(t); fontRenderer.drawWithShadow(t, this.x - width - 10, this.y + (this.height - 8) / 2, -1); super.draw(mouseX, mouseY, partialTicks); @@ -106,6 +106,48 @@ public class ConfigWidget extends Screen { super.draw(int_1, int_2, float_1); } }); + widgets.add(new ButtonWidget(window.getScaledWidth() / 2 - 20, 120, 40, 20, "") { + @Override + public void onPressed(int button, double mouseX, double mouseY) { + if (button == 0) + RoughlyEnoughItemsCore.getConfigHelper().setMirrorItemPanel(!RoughlyEnoughItemsCore.getConfigHelper().isMirrorItemPanel()); + try { + RoughlyEnoughItemsCore.getConfigHelper().saveConfig(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Override + public void draw(int mouseX, int mouseY, float partialTicks) { + text = getTrueFalseText(RoughlyEnoughItemsCore.getConfigHelper().isMirrorItemPanel()); + String t = I18n.translate("text.rei.mirror_rei"); + int width = fontRenderer.getStringWidth(t); + fontRenderer.drawWithShadow(t, this.x - width - 10, this.y + (this.height - 8) / 2, -1); + super.draw(mouseX, mouseY, partialTicks); + } + }); + widgets.add(new ButtonWidget(window.getScaledWidth() / 2 - 20, 150, 40, 20, "") { + @Override + public void onPressed(int button, double mouseX, double mouseY) { + if (button == 0) + RoughlyEnoughItemsCore.getConfigHelper().setCheckUpdates(!RoughlyEnoughItemsCore.getConfigHelper().checkUpdates()); + try { + RoughlyEnoughItemsCore.getConfigHelper().saveConfig(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Override + public void draw(int mouseX, int mouseY, float partialTicks) { + text = getTrueFalseText(RoughlyEnoughItemsCore.getConfigHelper().checkUpdates()); + String t = I18n.translate("text.rei.check_updates"); + int width = fontRenderer.getStringWidth(t); + fontRenderer.drawWithShadow(t, this.x - width - 10, this.y + (this.height - 8) / 2, -1); + super.draw(mouseX, mouseY, partialTicks); + } + }); } private String getTrueFalseText(boolean showCraftableOnlyButton) { diff --git a/src/main/resources/assets/roughlyenoughitems/lang/de_de.json b/src/main/resources/assets/roughlyenoughitems/lang/de_de.json index d500a1f14..759e097ca 100644 --- a/src/main/resources/assets/roughlyenoughitems/lang/de_de.json +++ b/src/main/resources/assets/roughlyenoughitems/lang/de_de.json @@ -18,7 +18,6 @@ "category.rei.brewing.reactant": "§Zutat", "category.rei.brewing.result": "§eEntstehender Trank", "text.rei.config": "Einstellung", - "text.rei.centre_searchbox": "Rechte Suchbox: ", "text.rei.cheat_items": "[{item_name}] x{item_count} {player_name} gegeben.", "text.rei.failed_cheat_items": "§cItems geben fehlgeschlagen.", "text.rei.list_ordering": "Item Listen Reihenfolge", diff --git a/src/main/resources/assets/roughlyenoughitems/lang/en_us.json b/src/main/resources/assets/roughlyenoughitems/lang/en_us.json index 3cf8598b3..a639d6f69 100755 --- a/src/main/resources/assets/roughlyenoughitems/lang/en_us.json +++ b/src/main/resources/assets/roughlyenoughitems/lang/en_us.json @@ -18,7 +18,8 @@ "category.rei.brewing.reactant": "§eIngredient", "category.rei.brewing.result": "§eResulted Potion", "text.rei.config": "Config", - "text.rei.centre_searchbox": "Right Search Box: ", + "text.rei.side_searchbox": "Side Search Box: ", + "text.rei.mirror_rei": "Mirror REI Widgets: ", "text.rei.cheat_items": "Given [{item_name}] x{item_count} to {player_name}.", "text.rei.failed_cheat_items": "§cFailed to give items.", "text.rei.list_ordering": "Item List Ordering", @@ -30,10 +31,11 @@ "ordering.rei.item_groups": "Item Groups", "text.speed_craft.failed_move_items": "§cCan't move items!", "text.speed_craft.move_items": "Move Items", - "text.rei.enable_craftable_only": "Enable Craftable Only: ", + "text.rei.enable_craftable_only": "Enable Craftable Filter: ", "text.rei.showing_craftable": "Showing Craftable", "text.rei.showing_all": "Showing All", "text.rei.delete_items": "§cDelete Item", + "text.rei.check_updates": "Check Updates: ", "text.rei.update_outdated": "§6REI is outdated!\n§6Current: §a%s §6Latest: §a%s\n§6Update Priority: §a%s", "text.rei.update_changelog_line": "§6- %s" }
\ No newline at end of file diff --git a/src/main/resources/assets/roughlyenoughitems/lang/et_ee.json b/src/main/resources/assets/roughlyenoughitems/lang/et_ee.json index d3d33e749..421bf6c87 100644 --- a/src/main/resources/assets/roughlyenoughitems/lang/et_ee.json +++ b/src/main/resources/assets/roughlyenoughitems/lang/et_ee.json @@ -18,7 +18,6 @@ "category.rei.brewing.reactant": "§eKoostisosa", "category.rei.brewing.result": "§eValmiv võlujook", "text.rei.config": "Seadistus", - "text.rei.centre_searchbox": "Parempoolne otsingukast: ", "text.rei.cheat_items": "{item_count} [{item_name}] antud mängijale {player_name}.", "text.rei.failed_cheat_items": "§cEsemete andmine ebaõnnestus.", "text.rei.list_ordering": "Esemenimekirja järjestus", diff --git a/src/main/resources/assets/roughlyenoughitems/lang/fr_fr.json b/src/main/resources/assets/roughlyenoughitems/lang/fr_fr.json index 3d5df5428..e12184fd0 100755 --- a/src/main/resources/assets/roughlyenoughitems/lang/fr_fr.json +++ b/src/main/resources/assets/roughlyenoughitems/lang/fr_fr.json @@ -15,7 +15,6 @@ "category.rei.brewing.reactant": "§eIngrédient", "category.rei.brewing.result": "§ePotion obtenue", "text.rei.config": "Config", - "text.rei.centre_searchbox": "Zone de recherche à droite : ", "text.rei.cheat_items": "[{item_name}] x{item_count} ont été donnés à {player_name}.", "text.rei.failed_cheat_items": "§cImpossible de donner les objets.", "text.rei.list_ordering": "Ordre de la liste d'objets", @@ -25,9 +24,9 @@ "ordering.rei.registry": "Registre", "ordering.rei.name": "Nom", "ordering.rei.item_groups": "Groupes d'objets", - "text.speed_craft.failed_move_items": "§cImpossible de déplacer les objets !", + "text.speed_craft.failed_move_items": "§cImpossible de déplacer les objets!", "text.speed_craft.move_items": "Déplacer les objets", - "text.rei.enable_craftable_only": "Activer les recettes réalisables uniquement : ", + "text.rei.enable_craftable_only": "Activer les recettes réalisables uniquement: ", "text.rei.showing_craftable": "Recettes réalisables", "text.rei.showing_all": "Toutes les recettes", "text.rei.delete_items": "§cSupprimer l'objet" diff --git a/src/main/resources/assets/roughlyenoughitems/lang/zh_cn.json b/src/main/resources/assets/roughlyenoughitems/lang/zh_cn.json index 6d0a45de2..60608b48d 100644 --- a/src/main/resources/assets/roughlyenoughitems/lang/zh_cn.json +++ b/src/main/resources/assets/roughlyenoughitems/lang/zh_cn.json @@ -18,7 +18,8 @@ "category.rei.brewing.reactant": "§e材料", "category.rei.brewing.result": "§e输出药水", "text.rei.config": "设置", - "text.rei.centre_searchbox": "右置搜索栏: ", + "text.rei.side_searchbox": "不置中搜索栏: ", + "text.rei.mirror_rei": "右置 REI 小工具: ", "text.rei.cheat_items": "已将 {item_count} 个 [{item_name}] 给予 {player_name}", "text.rei.failed_cheat_items": "§c不能给予物品.", "text.rei.list_ordering": "物品清单排序", @@ -30,7 +31,11 @@ "ordering.rei.item_groups": "物品分类", "text.speed_craft.failed_move_items": "§c不能移动物品!", "text.speed_craft.move_items": "移动物品", + "text.rei.enable_craftable_only": "过滤不可合成的物品: ", "text.rei.showing_craftable": "显示可合成的物品", "text.rei.showing_all": "显示所有物品", - "text.rei.delete_items": "§c删除物品" + "text.rei.delete_items": "§c删除物品", + "text.rei.check_updates": "检查更新: ", + "text.rei.update_outdated": "§6REI 需要更新!\n§6当前版本: §a%s §6最新版本: §a%s\n§6重要性: §a%s", + "text.rei.update_changelog_line": "§6- %s" }
\ No newline at end of file diff --git a/src/main/resources/assets/roughlyenoughitems/lang/zh_tw.json b/src/main/resources/assets/roughlyenoughitems/lang/zh_tw.json index 1ce972ac6..c7194d2ba 100644 --- a/src/main/resources/assets/roughlyenoughitems/lang/zh_tw.json +++ b/src/main/resources/assets/roughlyenoughitems/lang/zh_tw.json @@ -18,7 +18,8 @@ "category.rei.brewing.reactant": "§e材料", "category.rei.brewing.result": "§e輸出藥水", "text.rei.config": "設置", - "text.rei.centre_searchbox": "右置搜索欄: ", + "text.rei.side_searchbox": "不置中搜索欄: ", + "text.rei.mirror_rei": "右置 REI 小工具: ", "text.rei.cheat_items": "已將 {item_count} 個 [{item_name}] 給予 {player_name}", "text.rei.failed_cheat_items": "§c不能給予物品.", "text.rei.list_ordering": "物品清單排序", @@ -30,7 +31,11 @@ "ordering.rei.item_groups": "物品分類", "text.speed_craft.failed_move_items": "§c不能移動物品!", "text.speed_craft.move_items": "移動物品", + "text.rei.enable_craftable_only": "過濾不可合成的物品: ", "text.rei.showing_craftable": "顯示可合成的物品", "text.rei.showing_all": "顯示所有物品", - "text.rei.delete_items": "§c刪除物品" + "text.rei.delete_items": "§c刪除物品", + "text.rei.check_updates": "檢查更新: ", + "text.rei.update_outdated": "§6REI 需要更新!\n§6當前版本: §a%s §6最新版本: §a%s\n§6重要性: §a%s", + "text.rei.update_changelog_line": "§6- %s" }
\ No newline at end of file diff --git a/version.json b/version.json index a29db1924..73e83560b 100644 --- a/version.json +++ b/version.json @@ -17,7 +17,7 @@ "fabric": [ { "version": "2.2.0.48", - "text": "Added a version checker.", + "text": "Added a version checker, an option to mirror the item panel and fixed interacting with REI when hidden.", "level": "light" } ] |
