From f1a8bdc1312f1a1d701c72d14fa5b4ab1eda359c Mon Sep 17 00:00:00 2001 From: hundun Date: Sun, 26 Feb 2023 22:48:52 +0800 Subject: [PATCH] update GameDictionary --- .../DefaultSkinWithFreeType.json | 6 ++--- .../idledemo/logic/DemoGameDictionary.java | 9 ++++++++ build.gradle | 2 +- .../ui/screen/menu/LanguageSwitchBoard.java | 22 ++++++++++++++----- .../framework/util/text/IGameDictionary.java | 2 ++ 5 files changed, 32 insertions(+), 9 deletions(-) diff --git a/IdleDemo-game/core/assets/skins/DefaultSkinWithFreeType/DefaultSkinWithFreeType.json b/IdleDemo-game/core/assets/skins/DefaultSkinWithFreeType/DefaultSkinWithFreeType.json index 3f7681b..7ca1f8b 100644 --- a/IdleDemo-game/core/assets/skins/DefaultSkinWithFreeType/DefaultSkinWithFreeType.json +++ b/IdleDemo-game/core/assets/skins/DefaultSkinWithFreeType/DefaultSkinWithFreeType.json @@ -47,7 +47,7 @@ "font": "MiSans-Bold.ttf", "size": 16, "mono": false, - "color": "MIKU_COLOR", + "color": "black", "gamma": 1.8, "renderCount": 2, "borderWidth": 0, @@ -112,7 +112,7 @@ }, "com.badlogic.gdx.scenes.scene2d.ui.List$ListStyle": { "default": { - "font": "default-font", + "font": "MiSans-Bold", "fontColorSelected": "white", "fontColorUnselected": "white", "selection": "selection" @@ -139,7 +139,7 @@ }, "com.badlogic.gdx.scenes.scene2d.ui.SelectBox$SelectBoxStyle": { "default": { - "font": "default-font", + "font": "MiSans-Bold", "fontColor": "white", "background": "default-select", "scrollStyle": "default", diff --git a/IdleDemo-game/core/src/main/java/hundun/gdxgame/idledemo/logic/DemoGameDictionary.java b/IdleDemo-game/core/src/main/java/hundun/gdxgame/idledemo/logic/DemoGameDictionary.java index ad9a11c..70a7563 100644 --- a/IdleDemo-game/core/src/main/java/hundun/gdxgame/idledemo/logic/DemoGameDictionary.java +++ b/IdleDemo-game/core/src/main/java/hundun/gdxgame/idledemo/logic/DemoGameDictionary.java @@ -1,6 +1,7 @@ package hundun.gdxgame.idledemo.logic; import java.util.List; +import java.util.Map; import hundun.gdxgame.gamelib.base.util.JavaFeatureForGwt; import hundun.gdxgame.idleshare.gamelib.framework.util.text.IGameDictionary; @@ -89,4 +90,12 @@ public List getMemuScreenTexts(Language language) { return JavaFeatureForGwt.arraysAsList("IdleDemo", "New Game", "Continue", "Language", "Take effect after restart"); } } + + @Override + public Map getLanguageShowNameMap() { + return JavaFeatureForGwt.mapOf( + Language.CN, "中文", + Language.EN, "English" + ); + } } diff --git a/build.gradle b/build.gradle index 6412482..be66331 100644 --- a/build.gradle +++ b/build.gradle @@ -32,7 +32,7 @@ allprojects { gdxFreeTypeGwtVersion = '1.9.10.1' gwtFrameworkVersion = '2.8.2' - hundunLibVersion = '55fef3b76d' + hundunLibVersion = '236a579777' raeleusStripeVersion = '1.4.1' } diff --git a/idleshare/core/src/hundun/gdxgame/idleshare/core/starter/ui/screen/menu/LanguageSwitchBoard.java b/idleshare/core/src/hundun/gdxgame/idleshare/core/starter/ui/screen/menu/LanguageSwitchBoard.java index 27f056f..d7202a6 100644 --- a/idleshare/core/src/hundun/gdxgame/idleshare/core/starter/ui/screen/menu/LanguageSwitchBoard.java +++ b/idleshare/core/src/hundun/gdxgame/idleshare/core/starter/ui/screen/menu/LanguageSwitchBoard.java @@ -1,7 +1,10 @@ package hundun.gdxgame.idleshare.core.starter.ui.screen.menu; +import java.util.Map; import java.util.function.Consumer; import java.util.function.Function; +import java.util.stream.Collectors; +import java.util.stream.Stream; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.scenes.scene2d.ui.ImageButton; @@ -25,8 +28,9 @@ public class LanguageSwitchBoard, T_SAVE> ex BaseIdleMenuScreen parent; @Getter - SelectBox selectBox; + SelectBox selectBox; Label restartHintLabel; + private Map languageShowNameMap; LanguageSwitchBoard(BaseIdleMenuScreen parent, Language[] values, @@ -37,19 +41,27 @@ public class LanguageSwitchBoard, T_SAVE> ex ) { this.parent = parent; this.setBackground(DrawableFactory.getSimpleBoardBackground()); - + this.languageShowNameMap = parent.getGame().getIdleGameplayExport().getGameDictionary().getLanguageShowNameMap(); this.add(new Label(startText, parent.getGame().getMainSkin())); this.selectBox = new SelectBox<>(parent.getGame().getMainSkin()); - selectBox.setItems(values); - selectBox.setSelected(current); + selectBox.setItems(Stream.of(values) + .map(it -> languageShowNameMap.get(it)) + .collect(Collectors.toList()) + .toArray(new String[] {}) + ); + selectBox.setSelected(languageShowNameMap.get(current)); selectBox.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { restartHintLabel.setVisible(true); - onSelect.accept(selectBox.getSelected()); + Language language = languageShowNameMap.entrySet().stream() + .filter(x -> x.getValue().equals(selectBox.getSelected())) + .findFirst() + .get().getKey(); + onSelect.accept(language); } }); this.add(selectBox).row(); diff --git a/idleshare/gamelib/src/hundun/gdxgame/idleshare/gamelib/framework/util/text/IGameDictionary.java b/idleshare/gamelib/src/hundun/gdxgame/idleshare/gamelib/framework/util/text/IGameDictionary.java index 253e04a..139a8f2 100644 --- a/idleshare/gamelib/src/hundun/gdxgame/idleshare/gamelib/framework/util/text/IGameDictionary.java +++ b/idleshare/gamelib/src/hundun/gdxgame/idleshare/gamelib/framework/util/text/IGameDictionary.java @@ -1,6 +1,7 @@ package hundun.gdxgame.idleshare.gamelib.framework.util.text; import java.util.List; +import java.util.Map; /** * @author hundun @@ -13,4 +14,5 @@ public interface IGameDictionary { String constructionIdToShowName(Language language, String constructionId); String constructionIdToDetailDescroptionConstPart(Language language, String constructionId); List getMemuScreenTexts(Language language); + Map getLanguageShowNameMap(); }