From c7c2cd74fe638924c98565d93fc98626f9ca8ef4 Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Fri, 23 Aug 2024 16:53:07 +0800 Subject: [PATCH] Update NewGameScene - Hint TextButton -> ImageButton - add Random Avatar Listener - update NameGenerator Listener - update disabled Menu text - use AsyncAudio for Android --- forge-gui-android/src/forge/app/Main.java | 4 +- .../forge/adventure/scene/NewGameScene.java | 54 ++++++++++++++---- .../src/forge/adventure/stage/GameHUD.java | 8 +-- .../res/adventure/common/skin/ui_skin.json | 5 ++ .../res/adventure/common/skin/ui_skin.png | Bin 17658 -> 17803 bytes .../res/adventure/common/ui/new_game.json | 20 +++---- .../common/ui/new_game_portrait.json | 26 ++++----- 7 files changed, 78 insertions(+), 39 deletions(-) diff --git a/forge-gui-android/src/forge/app/Main.java b/forge-gui-android/src/forge/app/Main.java index ba243981c01..de4e9f9a10d 100644 --- a/forge-gui-android/src/forge/app/Main.java +++ b/forge-gui-android/src/forge/app/Main.java @@ -51,6 +51,7 @@ import com.badlogic.gdx.Version; import com.badlogic.gdx.backends.android.AndroidApplication; import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration; import com.badlogic.gdx.backends.android.AndroidAudio; +import com.badlogic.gdx.backends.android.AsynchronousAndroidAudio; import com.getkeepsafe.relinker.ReLinker; import de.cketti.fileprovider.PublicFileProvider; import forge.Forge; @@ -122,7 +123,8 @@ public class Main extends AndroidApplication { @Override public AndroidAudio createAudio(Context context, AndroidApplicationConfiguration config) { - return super.createAudio(context, config); + return new AsynchronousAndroidAudio(context, config); + //return super.createAudio(context, config); } @Override diff --git a/forge-gui-mobile/src/forge/adventure/scene/NewGameScene.java b/forge-gui-mobile/src/forge/adventure/scene/NewGameScene.java index a0dd409be82..8e59d5cb972 100644 --- a/forge-gui-mobile/src/forge/adventure/scene/NewGameScene.java +++ b/forge-gui-mobile/src/forge/adventure/scene/NewGameScene.java @@ -3,12 +3,12 @@ package forge.adventure.scene; import com.badlogic.gdx.scenes.scene2d.Actor; import com.badlogic.gdx.scenes.scene2d.InputEvent; import com.badlogic.gdx.scenes.scene2d.ui.Image; +import com.badlogic.gdx.scenes.scene2d.ui.ImageButton; import com.badlogic.gdx.scenes.scene2d.ui.TextField; import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener; import com.badlogic.gdx.scenes.scene2d.utils.ClickListener; import com.badlogic.gdx.scenes.scene2d.utils.TextureRegionDrawable; import com.badlogic.gdx.utils.Array; -import com.github.tommyettinger.textra.TextraButton; import com.github.tommyettinger.textra.TextraLabel; import forge.Forge; import forge.adventure.data.DialogData; @@ -48,17 +48,17 @@ public class NewGameScene extends MenuScene { private final TextraLabel starterEditionLabel; private final Array custom; private final TextraLabel colorLabel; - private final TextraButton difficultyHelp; + private final ImageButton difficultyHelp; private DialogData difficultySummary; - private final TextraButton modeHelp; + private final ImageButton modeHelp; private DialogData modeSummary; + private final Random rand = new Random(); private final Array modes = new Array<>(); private NewGameScene() { super(Forge.isLandscapeMode() ? "ui/new_game.json" : "ui/new_game_portrait.json"); - gender = ui.findActor("gender"); selectedName = ui.findActor("nameField"); selectedName.setText(NameGenerator.getRandomName(gender.getCurrentIndex() > 0 ? "Female" : "Male", "Any", "")); @@ -127,13 +127,12 @@ public class NewGameScene extends MenuScene { modeNames[i] = modes.get(i).getName(); mode.setTextList(modeNames); - gender.setTextList(new String[]{Forge.getLocalizer().getMessage("lblMale"), Forge.getLocalizer().getMessage("lblFemale")}); + gender.setTextList(new String[]{Forge.getLocalizer().getMessage("lblMale") + "[%120][CYAN] \u2642", + Forge.getLocalizer().getMessage("lblFemale") + "[%120][MAGENTA] \u2640"}); gender.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { - //gender should be either Male or Female - String val = gender.getCurrentIndex() > 0 ? "Female" : "Male"; - selectedName.setText(NameGenerator.getRandomName(val, "Any", "")); + nameTT = 0.8f; super.clicked(event, x, y); } }); @@ -150,6 +149,13 @@ public class NewGameScene extends MenuScene { } }); race = ui.findActor("race"); + race.addListener(new ClickListener() { + @Override + public void clicked(InputEvent event, float x, float y) { + avatarTT = 0.7f; + super.clicked(event, x, y); + } + }); race.addListener(event -> NewGameScene.this.updateAvatar()); race.setTextList(HeroListData.getRaces()); difficulty = ui.findActor("difficulty"); @@ -167,9 +173,7 @@ public class NewGameScene extends MenuScene { difficulty.setTextList(diffList); difficulty.setCurrentIndex(startingDifficulty); - Random rand = new Random(); - avatarIndex = rand.nextInt(); - updateAvatar(); + generateAvatar(); gender.setCurrentIndex(rand.nextInt()); colorId.setCurrentIndex(rand.nextInt()); race.setCurrentIndex(rand.nextInt()); @@ -189,6 +193,34 @@ public class NewGameScene extends MenuScene { return object; } + float avatarT = 1f, avatarTT = 1f; + float nameT = 1f, nameTT = 1f; + @Override + public void act(float delta) { + super.act(delta); + if (avatarT > avatarTT) { + avatarTT += (delta / 0.5f); + generateAvatar(); + } else { + avatarTT = avatarT; + } + if (nameT > nameTT) { + nameTT += (delta / 0.5f); + generateName(); + } else { + nameTT = nameT; + } + } + private void generateAvatar() { + avatarIndex = rand.nextInt(); + updateAvatar(); + } + private void generateName() { + //gender should be either Male or Female + String val = gender.getCurrentIndex() > 0 ? "Female" : "Male"; + selectedName.setText(NameGenerator.getRandomName(val, "Any", "")); + } + boolean started = false; public boolean start() { diff --git a/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java b/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java index 091106d08c7..b73035b0c22 100644 --- a/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java +++ b/forge-gui-mobile/src/forge/adventure/stage/GameHUD.java @@ -694,8 +694,8 @@ public class GameHUD extends Stage { setVisibility(shards, visible); setVisibility(money, visible); setVisibility(blank, visible); - setDisabled(exitToWorldMapActor, !MapStage.getInstance().isInMap(), "[%120][+ExitToWorldMap]", "---"); - setDisabled(bookmarkActor, !MapStage.getInstance().isInMap(), "[%120][+Bookmark]", "---"); + setDisabled(exitToWorldMapActor, !MapStage.getInstance().isInMap(), "[%120][+ExitToWorldMap]", "\uFF0F"); + setDisabled(bookmarkActor, !MapStage.getInstance().isInMap(), "[%120][+Bookmark]", "\uFF0F"); setAlpha(avatarborder, visible); setAlpha(avatar, visible); setAlpha(deckActor, visible); @@ -810,8 +810,8 @@ public class GameHUD extends Stage { public boolean act(float v) { if (exitDungeon) { MapStage.getInstance().exitDungeon(); - setDisabled(exitToWorldMapActor, true, "[%120][+ExitToWorldMap]", "---"); - setDisabled(bookmarkActor, true, "[%120][+Bookmark]", "---"); + setDisabled(exitToWorldMapActor, true, "[%120][+ExitToWorldMap]", "\uFF0F"); + setDisabled(bookmarkActor, true, "[%120][+Bookmark]", "\uFF0F"); } return true; } diff --git a/forge-gui/res/adventure/common/skin/ui_skin.json b/forge-gui/res/adventure/common/skin/ui_skin.json index 823c89333bb..4a2bb85a668 100644 --- a/forge-gui/res/adventure/common/skin/ui_skin.json +++ b/forge-gui/res/adventure/common/skin/ui_skin.json @@ -458,6 +458,11 @@ "down": "right_down", "focused": "right_f" }, + "roundhint": { + "up": "unpressedround", + "down": "pressedround", + "focused": "unpressedround" + }, "item_frame": { "imageCheckedOver": "item_frame_selected_hover", "up": "item_frame", diff --git a/forge-gui/res/adventure/common/skin/ui_skin.png b/forge-gui/res/adventure/common/skin/ui_skin.png index f11f48b346b979f640bfb65fd4af3f4b1b1da1c9..67ddef59216cf023419b55f8ebf12700b7e77cac 100644 GIT binary patch literal 17803 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 literal 17658 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 diff --git a/forge-gui/res/adventure/common/ui/new_game.json b/forge-gui/res/adventure/common/ui/new_game.json index b5449cf0f3a..8fabf16c6f5 100644 --- a/forge-gui/res/adventure/common/ui/new_game.json +++ b/forge-gui/res/adventure/common/ui/new_game.json @@ -65,14 +65,14 @@ "yOffset": 8 }, { - "type": "TextButton", + "type": "ImageButton", "name": "difficultyHelp", - "text": "[GOLD]?", + "style": "roundhint", "selectable": true, - "width": 16, - "height": 16, + "width": 12, + "height": 15, "x": 145, - "yOffset": -16 + "yOffset": -17 }, { "type": "Label", @@ -93,14 +93,14 @@ "yOffset": 8 }, { - "type": "TextButton", + "type": "ImageButton", "name": "modeHelp", - "text": "[GOLD]?", + "style": "roundhint", "selectable": true, - "width": 16, - "height": 16, + "width": 12, + "height": 15, "x": 145, - "yOffset": -16 + "yOffset": -17 }, { "type": "Label", diff --git a/forge-gui/res/adventure/common/ui/new_game_portrait.json b/forge-gui/res/adventure/common/ui/new_game_portrait.json index b6bf4453c41..a04cfe2b010 100644 --- a/forge-gui/res/adventure/common/ui/new_game_portrait.json +++ b/forge-gui/res/adventure/common/ui/new_game_portrait.json @@ -35,7 +35,7 @@ "width": 128, "height": 24, "x": 16, - "y": 140 + "y": 148 }, { "type": "Label", @@ -65,14 +65,14 @@ "yOffset": 8 }, { - "type": "TextButton", + "type": "ImageButton", "name": "difficultyHelp", - "text": "[GOLD]?", + "style": "roundhint", "selectable": true, - "width": 24, - "height": 24, - "x": 72, - "yOffset": -24 + "width": 12, + "height": 15, + "x": 80, + "yOffset": -17 }, { "type": "Label", @@ -93,14 +93,14 @@ "yOffset": 8 }, { - "type": "TextButton", + "type": "ImageButton", "name": "modeHelp", - "text": "[GOLD]?", + "style": "roundhint", "selectable": true, - "width": 24, - "height": 24, - "x": 72, - "yOffset": -24 + "width": 12, + "height": 15, + "x": 80, + "yOffset": -17 }, { "type": "Label",