From cdbc3cfab759fbcf73372d49f8d30e03ef805a88 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Sun, 1 Sep 2024 07:12:53 +0800 Subject: [PATCH] update AdventureDeckEditor - show Shop prices, show Auto Sell / No Sell card label --- .../adventure/scene/AdventureDeckEditor.java | 48 ++++++++++++------- .../forge/adventure/scene/DeckEditScene.java | 9 ++++ .../src/forge/adventure/scene/ShopScene.java | 5 +- .../forge/itemmanager/views/ImageView.java | 28 +++++++++++ forge-gui/res/languages/de-DE.properties | 15 +++++- forge-gui/res/languages/en-US.properties | 15 +++++- forge-gui/res/languages/es-ES.properties | 15 +++++- forge-gui/res/languages/fr-FR.properties | 15 +++++- forge-gui/res/languages/it-IT.properties | 15 +++++- forge-gui/res/languages/ja-JP.properties | 15 +++++- forge-gui/res/languages/pt-BR.properties | 15 +++++- forge-gui/res/languages/zh-CN.properties | 15 +++++- 12 files changed, 183 insertions(+), 27 deletions(-) diff --git a/forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java b/forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java index 528fc3a1fa3..28d812a139e 100644 --- a/forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java +++ b/forge-gui-mobile/src/forge/adventure/scene/AdventureDeckEditor.java @@ -17,7 +17,12 @@ import forge.assets.FSkinFont; import forge.assets.FSkinImage; import forge.card.CardEdition; import forge.card.CardZoom; -import forge.deck.*; +import forge.deck.AddBasicLandsDialog; +import forge.deck.CardPool; +import forge.deck.Deck; +import forge.deck.DeckFormat; +import forge.deck.DeckSection; +import forge.deck.FDeckViewer; import forge.game.GameType; import forge.gamemodes.limited.BoosterDraft; import forge.item.InventoryItem; @@ -32,10 +37,13 @@ import forge.menu.FPopupMenu; import forge.model.FModel; import forge.screens.FScreen; import forge.screens.TabPageScreen; -import forge.toolbox.*; +import forge.toolbox.FContainer; +import forge.toolbox.FEvent; +import forge.toolbox.FLabel; +import forge.toolbox.FOptionPane; +import forge.toolbox.GuiChoose; import forge.util.Callback; import forge.util.ItemPool; -import forge.util.Localizer; import forge.util.Utils; import org.apache.commons.lang3.StringUtils; @@ -48,7 +56,7 @@ public class AdventureDeckEditor extends TabPageScreen { Deck contents = new Deck(); protected ContentPreviewPage(Deck cardsToShow) { - super(ItemManagerConfig.QUEST_EDITOR_POOL, Localizer.getInstance().getMessage("lblInventory"), CATALOG_ICON); + super(ItemManagerConfig.QUEST_EDITOR_POOL, Forge.getLocalizer().getMessage("lblInventory"), CATALOG_ICON); contents = cardsToShow; } @@ -66,7 +74,7 @@ public class AdventureDeckEditor extends TabPageScreen { private static class DraftPackPage extends CatalogPage { protected DraftPackPage() { - super(ItemManagerConfig.DRAFT_PACK, Localizer.getInstance().getMessage("lblPackN", String.valueOf(1)), FSkinImage.PACK); + super(ItemManagerConfig.DRAFT_PACK, Forge.getLocalizer().getMessage("lblPackN", String.valueOf(1)), FSkinImage.PACK); } @Override @@ -134,13 +142,13 @@ public class AdventureDeckEditor extends TabPageScreen { private static class StoreCatalogPage extends CatalogPage { protected StoreCatalogPage() { - super(ItemManagerConfig.QUEST_EDITOR_POOL, Localizer.getInstance().getMessage("lblInventory"), CATALOG_ICON); + super(ItemManagerConfig.QUEST_EDITOR_POOL, Forge.getLocalizer().getMessage("lblInventory"), CATALOG_ICON); Current.player().onGoldChange(() -> lblGold.setText(String.valueOf(AdventurePlayer.current().getGold()))); } @Override protected void buildMenu(final FDropDownMenu menu, final PaperCard card) { - addItem(menu, "Sell for ", String.valueOf(AdventurePlayer.current().cardSellPrice(card)), SIDEBOARD_ICON, false, true, new Callback() { + addItem(menu, Forge.getLocalizer().getMessage("lblSellFor"), String.valueOf(AdventurePlayer.current().cardSellPrice(card)), SIDEBOARD_ICON, false, true, new Callback() { @Override public void run(Integer result) { if (result == null || result <= 0) { @@ -169,7 +177,7 @@ public class AdventureDeckEditor extends TabPageScreen { private static class CollectionCatalogPage extends CatalogPage { protected CollectionCatalogPage() { - super(ItemManagerConfig.QUEST_EDITOR_POOL, Localizer.getInstance().getMessage("lblInventory"), CATALOG_ICON); + super(ItemManagerConfig.QUEST_EDITOR_POOL, Forge.getLocalizer().getMessage("lblInventory"), CATALOG_ICON); } @Override @@ -184,6 +192,8 @@ public class AdventureDeckEditor extends TabPageScreen { if (!cardManager.isInfinite()) { removeCard(card, result); } + if (Current.player().autoSellCards.contains(card)) + Current.player().autoSellCards.remove(card); getMainDeckPage().addCard(card, result); } }); @@ -198,6 +208,8 @@ public class AdventureDeckEditor extends TabPageScreen { if (!cardManager.isInfinite()) { removeCard(card, result); } + if (Current.player().autoSellCards.contains(card)) + Current.player().autoSellCards.remove(card); getSideboardPage().addCard(card, result); } }); @@ -208,17 +220,17 @@ public class AdventureDeckEditor extends TabPageScreen { int sellableCount = Current.player().getSellableCards().count(card); if (noSellCount > 0) { - FMenuItem unsellableCount = new FMenuItem("Unsellable (" + noSellCount + ")", null, null); + FMenuItem unsellableCount = new FMenuItem(Forge.getLocalizer().getMessage("lblUnsellableCount", noSellCount), null, null); unsellableCount.setEnabled(false); menu.addItem(unsellableCount); } if (sellableCount > 0) { - FMenuItem moveToAutosell = new FMenuItem("Move to Autosell (" + autoSellCount + " / " + sellableCount + ")", Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> Current.player().autoSellCards.add(card)); + FMenuItem moveToAutosell = new FMenuItem(Forge.getLocalizer().getMessage("lbltoSell", autoSellCount, sellableCount), Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> Current.player().autoSellCards.add(card)); moveToAutosell.setEnabled(sellableCount - autoSellCount > 0); menu.addItem(moveToAutosell); - FMenuItem moveToCatalog = new FMenuItem("Move back to Catalog (" + autoSellCount + " / " + sellableCount + ")", Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> Current.player().autoSellCards.remove(card)); + FMenuItem moveToCatalog = new FMenuItem(Forge.getLocalizer().getMessage("lbltoInventory", autoSellCount, sellableCount), Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> Current.player().autoSellCards.remove(card)); moveToCatalog.setEnabled(autoSellCount > 0); menu.addItem(moveToCatalog); } @@ -533,28 +545,28 @@ public class AdventureDeckEditor extends TabPageScreen { } if (!isShop && catalogPage != null && !(catalogPage instanceof ContentPreviewPage)) { if (catalogPage.showNoSellCards) { - FMenuItem hideNoSell = new FMenuItem("Hide No-Sell cards", Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> catalogPage.toggleNoSellCards(false)); + FMenuItem hideNoSell = new FMenuItem(Forge.getLocalizer().getMessage("lblHideNoSell"), Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> catalogPage.toggleNoSellCards(false)); addItem(hideNoSell); hideNoSell.setEnabled(catalogPage.showAutoSellCards || catalogPage.showCollectionCards); } else { - addItem(new FMenuItem("Show No-Sell cards", Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.toggleNoSellCards(true))); + addItem(new FMenuItem(Forge.getLocalizer().getMessage("lblShowNoSell"), Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.toggleNoSellCards(true))); } if (catalogPage.showAutoSellCards) { - FMenuItem hideAutoSell = new FMenuItem("Hide Auto-Sell cards", Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> catalogPage.toggleAutoSellCards(false)); + FMenuItem hideAutoSell = new FMenuItem(Forge.getLocalizer().getMessage("lblHideAutoSell"), Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> catalogPage.toggleAutoSellCards(false)); addItem(hideAutoSell); hideAutoSell.setEnabled(catalogPage.showCollectionCards || catalogPage.showNoSellCards); } else { - addItem(new FMenuItem("Show Auto-Sell cards", Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.toggleAutoSellCards(true))); + addItem(new FMenuItem(Forge.getLocalizer().getMessage("lblShowAutoSell"), Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.toggleAutoSellCards(true))); } if (catalogPage.showCollectionCards) { - FMenuItem hideCollection = new FMenuItem("Hide Collection cards", Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> catalogPage.toggleCollectionCards(false)); + FMenuItem hideCollection = new FMenuItem(Forge.getLocalizer().getMessage("lblHideCollection"), Forge.hdbuttons ? FSkinImage.HDMINUS : FSkinImage.MINUS, e1 -> catalogPage.toggleCollectionCards(false)); addItem(hideCollection); hideCollection.setEnabled(catalogPage.showAutoSellCards || catalogPage.showNoSellCards); } else { - addItem(new FMenuItem("Show Collection cards", Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.toggleCollectionCards(true))); + addItem(new FMenuItem(Forge.getLocalizer().getMessage("lblShowCollection"), Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.toggleCollectionCards(true))); } if (!catalogPage.showNoSellCards || !catalogPage.showAutoSellCards || !catalogPage.showCollectionCards) { - addItem(new FMenuItem("Show All cards", Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.showAllCards())); + addItem(new FMenuItem(Forge.getLocalizer().getMessage("lblShowAll"), Forge.hdbuttons ? FSkinImage.HDPLUS : FSkinImage.PLUS, e1 -> catalogPage.showAllCards())); } } ((DeckEditorPage) getSelectedPage()).buildDeckMenu(this); diff --git a/forge-gui-mobile/src/forge/adventure/scene/DeckEditScene.java b/forge-gui-mobile/src/forge/adventure/scene/DeckEditScene.java index db2fcfa3645..6315979fe7d 100644 --- a/forge-gui-mobile/src/forge/adventure/scene/DeckEditScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/DeckEditScene.java @@ -2,6 +2,8 @@ package forge.adventure.scene; import com.badlogic.gdx.scenes.scene2d.Stage; import forge.adventure.data.AdventureEventData; +import forge.adventure.player.AdventurePlayer; +import forge.item.PaperCard; import forge.screens.FScreen; /** @@ -60,4 +62,11 @@ public class DeckEditScene extends ForgeScene { return screen; } + public boolean isAutoSell(PaperCard pc) { + return AdventurePlayer.current().getAutoSellCards().contains(pc); + } + + public boolean isNoSell(PaperCard pc) { + return AdventurePlayer.current().getNoSellCards().contains(pc); + } } diff --git a/forge-gui-mobile/src/forge/adventure/scene/ShopScene.java b/forge-gui-mobile/src/forge/adventure/scene/ShopScene.java index 329764fee4b..7b9faa50200 100644 --- a/forge-gui-mobile/src/forge/adventure/scene/ShopScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/ShopScene.java @@ -54,7 +54,7 @@ public class ShopScene extends ForgeScene { int cards = 0; for (PaperCard cardToSell: Current.player().autoSellCards.toFlatList()) { cards++; - profit += AdventurePlayer.current().cardSellPrice(cardToSell); + profit += getCardPrice(cardToSell); } if (!confirmAutosell(profit, cards, changes.getTownPriceModifier())) { return; @@ -71,4 +71,7 @@ public class ShopScene extends ForgeScene { AdventurePlayer.current().loadChanges(changes); this.changes = changes; } + public int getCardPrice(PaperCard pc) { + return AdventurePlayer.current().cardSellPrice(pc); + } } diff --git a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java index 8917ff5488f..bf01b6b44ef 100644 --- a/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java +++ b/forge-gui-mobile/src/forge/itemmanager/views/ImageView.java @@ -10,6 +10,8 @@ import forge.Forge; import forge.Forge.KeyInputAdapter; import forge.Graphics; import forge.ImageKeys; +import forge.adventure.scene.DeckEditScene; +import forge.adventure.scene.ShopScene; import forge.assets.*; import forge.assets.FSkinColor.Colors; import forge.card.*; @@ -965,6 +967,7 @@ public class ImageView extends ItemView { private class ItemInfo extends FDisplayObject implements Entry { private final T item; + private Integer cardPrice; private final Group group; private int index; private CardStackPosition pos; @@ -996,6 +999,17 @@ public class ImageView extends ItemView { return 1; } + private void drawCardLabel(Graphics g, String message, Color bgColor, float x, float y, float w, float h) { + FSkinFont skinFont = FSkinFont.forHeight(w / 7); + float fontheight = skinFont.getLineHeight(); + float ymod = h / 2 - fontheight / 2; + float oldAlpha = g.getfloatAlphaComposite(); + g.setAlphaComposite(0.4f); + g.fillRect(bgColor, x, y + ymod, w, fontheight); + g.setAlphaComposite(oldAlpha); + g.drawText(message, skinFont, Color.WHITE, x, y, w, h, false, Align.center, true); + } + @Override public void draw(Graphics g) { final float x = getLeft() - group.getScrollLeft(); @@ -1043,6 +1057,20 @@ public class ImageView extends ItemView { String value = String.valueOf(draftRank); g.drawText(value, FSkinFont.forHeight(rankSize / 4), Color.WHITE, x, y, w, h, true, Align.center, true); } + + if (Forge.isMobileAdventureMode) { + if (Forge.getCurrentScene() instanceof ShopScene) { + if (cardPrice == null) + cardPrice = ((ShopScene) Forge.getCurrentScene()).getCardPrice((PaperCard) item); + drawCardLabel(g, "$" + cardPrice, Color.GOLD, x, y ,w ,h); + } else if (Forge.getCurrentScene() instanceof DeckEditScene) { + if (((DeckEditScene) Forge.getCurrentScene()).isAutoSell((PaperCard) item)) { + drawCardLabel(g, Forge.getLocalizer().getMessage("lblAutoSell"), Color.GREEN, x, y, w, h); + } else if (((DeckEditScene) Forge.getCurrentScene()).isNoSell((PaperCard) item)) { + drawCardLabel(g, Forge.getLocalizer().getMessage("lblNoSell"), Color.RED, x, y, w, h); + } + } + } } else if (item instanceof ConquestCommander) { CardRenderer.drawCard(g, ((ConquestCommander) item).getCard(), x, y, w, h, pos); } else if (deckSelectMode) { diff --git a/forge-gui/res/languages/de-DE.properties b/forge-gui/res/languages/de-DE.properties index 5800f1eb37e..0dfbf110283 100644 --- a/forge-gui/res/languages/de-DE.properties +++ b/forge-gui/res/languages/de-DE.properties @@ -3420,4 +3420,17 @@ AdvBossIntro32=Nicht blinzeln! AdvBossIntro33=Hier kann man nicht verlieren! AdvBossIntro34=Es gibt kein Zurück! AdvBossIntro35=Jetzt geht es um alles oder nichts! -lblYouDied={0}, du bist gestorben!!! \ No newline at end of file +lblYouDied={0}, du bist gestorben!!! +lblSellFor=Verkaufen für +lblUnsellableCount=Unverkäuflich ({0}) +lblAutoSell=AUTOVERKAUF +lblNoSell=NICHT VERKAUFEN +lbltoSell=Zu verkaufen ({0}/{1}) +lbltoInventory=Zum Inventar ({0}/{1}) +lblHideAutoSell=Auto-Verkauf Ausblenden +lblShowAutoSell=Auto-Verkauf Anzeigen +lblHideNoSell=No-Sell Ausblenden +lblShowNoSell=No-Sell Anzeigen +lblShowAll=Alle Anzeigen +lblHideCollection=Sammlung Ausblenden +lblShowCollection=Sammlung Anzeigen \ No newline at end of file diff --git a/forge-gui/res/languages/en-US.properties b/forge-gui/res/languages/en-US.properties index 09a4625ff6b..b7b4123ea3a 100644 --- a/forge-gui/res/languages/en-US.properties +++ b/forge-gui/res/languages/en-US.properties @@ -3153,4 +3153,17 @@ AdvBossIntro32=Don't blink! AdvBossIntro33=You can't lose here! AdvBossIntro34=There's no turning back! AdvBossIntro35=It's all or nothing now! -lblYouDied={0}, You Died!!! \ No newline at end of file +lblYouDied={0}, You Died!!! +lblSellFor=Sell for +lblUnsellableCount=Unsellable ({0}) +lblAutoSell=AUTO-SELL +lblNoSell=NO-SELL +lbltoSell=To Sell ({0}/{1}) +lbltoInventory=To Inventory ({0}/{1}) +lblHideAutoSell=Hide Auto-Sell +lblShowAutoSell=Show Auto-Sell +lblHideNoSell=Hide No-Sell +lblShowNoSell=Show No-Sell +lblShowAll=Show All +lblHideCollection=Hide Collection +lblShowCollection=Show Collection \ No newline at end of file diff --git a/forge-gui/res/languages/es-ES.properties b/forge-gui/res/languages/es-ES.properties index 529ec6e7d75..36d40cee076 100644 --- a/forge-gui/res/languages/es-ES.properties +++ b/forge-gui/res/languages/es-ES.properties @@ -3434,4 +3434,17 @@ AdvBossIntro32=¡No parpadees! AdvBossIntro33=¡No puedes perder aquí! AdvBossIntro34=¡No hay marcha atrás! AdvBossIntro35=¡Ahora es todo o nada! -lblYouDied={0}, ¡¡¡Moriste!!! \ No newline at end of file +lblYouDied={0}, ¡¡¡Moriste!!! +lblSellFor=Vender por +lblUnsellableCount=No vendible ({0}) +lblAutoSell=AUTOVENTA +lblNoSell=NO VENDER +lbltoSell=Para vender ({0}/{1}) +lbltoInventory=Al inventario ({0}/{1}) +lblHideAutoSell=Ocultar Venta Automática +lblShowAutoSell=Mostrar Autoventa +lblHideNoSell=Ocultar No Vender +lblShowNoSell=Mostrar No Vender +lblShowAll=Mostrar Todo +lblHideCollection=Ocultar Colección +lblShowCollection=Mostrar Colección \ No newline at end of file diff --git a/forge-gui/res/languages/fr-FR.properties b/forge-gui/res/languages/fr-FR.properties index 811de924891..a75eef9ebc3 100644 --- a/forge-gui/res/languages/fr-FR.properties +++ b/forge-gui/res/languages/fr-FR.properties @@ -3428,4 +3428,17 @@ AdvBossIntro32=Ne clignez pas des yeux ! AdvBossIntro33=Vous ne pouvez pas perdre ici ! AdvBossIntro34=Il n'y a pas de retour en arrière! AdvBossIntro35=C'est tout ou rien maintenant ! -lblYouDied={0}, tu es mort !!! \ No newline at end of file +lblYouDied={0}, tu es mort !!! +lblSellFor=Vendre pour +lblUnsellableCount=Invendable ({0}) +lblAutoSell=VENTE AUTOMATIQUE +lblNoSell=NON-VENTE +lbltoSell=À vendre ({0}/{1}) +lbltoInventory=Vers l'inventaire ({0}/{1}) +lblHideAutoSell=Masquer La Vente Automatique +lblShowAutoSell=Afficher La Vente Automatique +lblHideNoSell=Masquer Non-Vente +lblShowNoSell=Afficher Non-Vente +lblShowAll=Afficher Tout +lblHideCollection=Masquer la Collection +lblShowCollection=Afficher la Collection \ No newline at end of file diff --git a/forge-gui/res/languages/it-IT.properties b/forge-gui/res/languages/it-IT.properties index 0b5b5c01062..d5f5a0b96c4 100644 --- a/forge-gui/res/languages/it-IT.properties +++ b/forge-gui/res/languages/it-IT.properties @@ -3426,4 +3426,17 @@ AdvBossIntro32=Non sbattere le palpebre! AdvBossIntro33=Non puoi perdere qui! AdvBossIntro34=Non si può tornare indietro! AdvBossIntro35=Adesso è tutto o niente! -lblYouDied={0}, sei morto!!! \ No newline at end of file +lblYouDied={0}, sei morto!!! +lblSellFor=Vendi per +lblUnsellableCount=Invendibile ({0}) +lblAutoSell=AUTOVENDITA +lblNoSell=NON VENDITA +lbltoSell=Da vendere ({0}/{1}) +lbltoInventory=All'inventario ({0}/{1}) +lblHideAutoSell=Nascondi Auto-Vendita +lblShowAutoSell=Mostra Auto-Vendita +lblHideNoSell=Nascondi Non Vendita +lblShowNoSell=Mostra Non Vendita +lblShowAll=Mostra Tutto +lblHideCollection=Nascondi Collezione +lblShowCollection=Mostra Collezione \ No newline at end of file diff --git a/forge-gui/res/languages/ja-JP.properties b/forge-gui/res/languages/ja-JP.properties index 6143bd2f9de..8538de7fa7c 100644 --- a/forge-gui/res/languages/ja-JP.properties +++ b/forge-gui/res/languages/ja-JP.properties @@ -3422,4 +3422,17 @@ AdvBossIntro32=瞬きしないでください! AdvBossIntro33=ここで負けるわけにはいかない! AdvBossIntro34=もう後戻りはできない! AdvBossIntro35=もう、オール・オア・ナッシングだ! -lblYouDied={0}、死んだ!!! \ No newline at end of file +lblYouDied={0}、死んだ!!! +lblSellFor=で売る +lblUnsellableCount=販売不可 ({0}) +lblAutoSell=自動販売 +lblNoSell=販売禁止 +lbltoSell=販売する ({0}/{1}) +lbltoInventory=インベントリへ ({0}/{1}) +lblHideAutoSell=自動販売を隠す +lblShowAutoSell=自動販売を表示する +lblHideNoSell=ノーセールを隠す +lblShowNoSell=ノーセールを表示 +lblShowAll=すべて表示 +lblHideCollection=コレクションを非表示にする +lblShowCollection=ショーコレクション \ No newline at end of file diff --git a/forge-gui/res/languages/pt-BR.properties b/forge-gui/res/languages/pt-BR.properties index bb9249ffd30..7d8584be098 100644 --- a/forge-gui/res/languages/pt-BR.properties +++ b/forge-gui/res/languages/pt-BR.properties @@ -3512,4 +3512,17 @@ AdvBossIntro32=Não pisque! AdvBossIntro33=Você não pode perder aqui! AdvBossIntro34=Não há como voltar atrás! AdvBossIntro35=É tudo ou nada agora! -lblYouDied={0}, você morreu!!! \ No newline at end of file +lblYouDied={0}, você morreu!!! +lblSellFor=Vender por +lblUnsellableCount=Invendável ({0}) +lblAutoSell=VENDA AUTOMÁTICA +lblNoSell=NÃO VENDER +lbltoSell=Para Vender ({0}/{1}) +lbltoInventory=Para o estoque ({0}/{1}) +lblHideAutoSell=Ocultar Venda Automática +lblShowAutoSell=Mostrar Venda Automática +lblHideNoSell=Ocultar Não Vender +lblShowNoSell=Mostrar Não-Venda +lblShowAll=Mostrar Tudo +lblHideCollection=Ocultar Coleção +lblShowCollection=Mostrar Coleção \ No newline at end of file diff --git a/forge-gui/res/languages/zh-CN.properties b/forge-gui/res/languages/zh-CN.properties index e5381c5a38f..830fe496650 100644 --- a/forge-gui/res/languages/zh-CN.properties +++ b/forge-gui/res/languages/zh-CN.properties @@ -3413,4 +3413,17 @@ AdvBossIntro32=别眨眼! AdvBossIntro33=在这里你不能输! AdvBossIntro34=没有回头路了! AdvBossIntro35=现在要么全有要么全无! -lblYouDied={0},你死了!!! \ No newline at end of file +lblYouDied={0},你死了!!! +lblSellFor=售价为 +lblUnsellableCount=无法出售({0}) +lblAutoSell=自动销售 +lblNoSell=不卖 +lbltoSell=出售({0}/{1}) +lbltoInventory=至库存 ({0}/{1}) +lblHideAutoSell=隐藏自动销售 +lblShowAutoSell=显示自动销售 +lblHideNoSell=隐藏不卖 +lblShowNoSell=显示不卖 +lblShowAll=显示全部 +lblHideCollection=隐藏收藏 +lblShowCollection=展会系列 \ No newline at end of file