From d053b6873c7373f47da94d3c8543cb7edbf561d8 Mon Sep 17 00:00:00 2001 From: MokaStitcher Date: Sat, 14 Sep 2024 17:33:39 +0200 Subject: [PATCH 1/7] [qol] add missing error messages in starter UI --- src/locales/en/starter-select-ui-handler.json | 1 + src/ui/starter-select-ui-handler.ts | 34 +++++++++++++------ 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/src/locales/en/starter-select-ui-handler.json b/src/locales/en/starter-select-ui-handler.json index f578f128bee..13c366a54a4 100644 --- a/src/locales/en/starter-select-ui-handler.json +++ b/src/locales/en/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "Begin with these Pokémon?", "confirmExit": "Do you want to exit?", "invalidParty": "This is not a valid starting party!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "I", "gen2": "II", "gen3": "III", diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index 0e101d30ce7..c7f7a5ee7cf 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -38,7 +38,6 @@ import { Moves } from "#enums/moves"; import { Species } from "#enums/species"; import { Button } from "#enums/buttons"; import { EggSourceType } from "#app/enums/egg-source-types"; -import AwaitableUiHandler from "./awaitable-ui-handler"; import { DropDown, DropDownLabel, DropDownOption, DropDownState, DropDownType, SortCriteria } from "./dropdown"; import { StarterContainer } from "./starter-container"; import { DropDownColumn, FilterBar } from "./filter-bar"; @@ -1074,15 +1073,21 @@ export default class StarterSelectUiHandler extends MessageUiHandler { } } - showText(text: string, delay?: integer, callback?: Function, callbackDelay?: integer, prompt?: boolean, promptDelay?: integer) { + showText(text: string, delay?: integer, callback?: Function, callbackDelay?: integer, prompt?: boolean, promptDelay?: integer, moveToTop?: boolean) { super.showText(text, delay, callback, callbackDelay, prompt, promptDelay); - if (text?.indexOf("\n") === -1) { - this.starterSelectMessageBox.setSize(318, 28); - this.message.setY(-22); + const singleLine = text?.indexOf("\n") === -1; + + this.starterSelectMessageBox.setSize(318, singleLine ? 28 : 42); + + if (moveToTop) { + this.starterSelectMessageBox.setOrigin(0, 0); + this.starterSelectMessageBoxContainer.setY(0); + this.message.setY(4); } else { - this.starterSelectMessageBox.setSize(318, 42); - this.message.setY(-37); + this.starterSelectMessageBoxContainer.setY(this.scene.game.canvas.height / 6); + this.starterSelectMessageBox.setOrigin(0, 1); + this.message.setY(singleLine ? -22 : -37); } this.starterSelectMessageBoxContainer.setVisible(!!text?.length); @@ -1291,6 +1296,9 @@ export default class StarterSelectUiHandler extends MessageUiHandler { if (this.tryStart(true)) { success = true; } else { + // pressing enter with an empty party -> display message with the controls + this.tutorialActive = true; + this.showText(i18next.t("starterSelectUiHandler:emptyParty"), undefined, () => this.showText("", 0, () => this.tutorialActive = false), undefined, true); error = true; } } else if (button === Button.CANCEL) { @@ -1806,7 +1814,12 @@ export default class StarterSelectUiHandler extends MessageUiHandler { options.push({ label: `x${sameSpeciesEggCost} ${i18next.t("starterSelectUiHandler:sameSpeciesEgg")}`, handler: () => { - if (this.scene.gameData.eggs.length < 99 && (Overrides.FREE_CANDY_UPGRADE_OVERRIDE || candyCount >= sameSpeciesEggCost)) { + if (Overrides.FREE_CANDY_UPGRADE_OVERRIDE || candyCount >= sameSpeciesEggCost) { + if (this.scene.gameData.eggs.length >= 99) { + // Egg list full, show error message at the top of the screen and abort + this.showText(i18next.t("egg:tooManyEggs"), undefined, () => this.showText("", 0, () => this.tutorialActive = false), 2000, false, undefined, true); + return false; + } if (!Overrides.FREE_CANDY_UPGRADE_OVERRIDE) { starterData.candyCount -= sameSpeciesEggCost; } @@ -3531,9 +3544,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler { }, cancel, null, null, 19); }); } else { - const handler = this.scene.ui.getHandler() as AwaitableUiHandler; - handler.tutorialActive = true; - this.scene.ui.showText(i18next.t("starterSelectUiHandler:invalidParty"), null, () => this.scene.ui.showText("", 0, () => handler.tutorialActive = false), null, true); + this.tutorialActive = true; + this.showText(i18next.t("starterSelectUiHandler:invalidParty"), undefined, () => this.showText("", 0, () => this.tutorialActive = false), undefined, true); } return true; } From 35dd5e5dfed49d163a2ff896ac226496b4c17551 Mon Sep 17 00:00:00 2001 From: MokaStitcher Date: Wed, 18 Sep 2024 19:04:46 +0200 Subject: [PATCH 2/7] [loc] add placeholder loc entries --- src/locales/de/starter-select-ui-handler.json | 1 + src/locales/es/starter-select-ui-handler.json | 2 ++ src/locales/fr/starter-select-ui-handler.json | 1 + src/locales/it/starter-select-ui-handler.json | 1 + src/locales/ja/starter-select-ui-handler.json | 1 + src/locales/ko/starter-select-ui-handler.json | 1 + src/locales/pt_BR/starter-select-ui-handler.json | 1 + src/locales/zh_CN/starter-select-ui-handler.json | 1 + src/locales/zh_TW/starter-select-ui-handler.json | 1 + 9 files changed, 10 insertions(+) diff --git a/src/locales/de/starter-select-ui-handler.json b/src/locales/de/starter-select-ui-handler.json index e146d1bdcd9..709da26b050 100644 --- a/src/locales/de/starter-select-ui-handler.json +++ b/src/locales/de/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "Mit diesen Pokémon losziehen?", "confirmExit": "Willst du zurück?", "invalidParty": "Das ist kein gültiges Team!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "I", "gen2": "II", "gen3": "III", diff --git a/src/locales/es/starter-select-ui-handler.json b/src/locales/es/starter-select-ui-handler.json index 69cc937d4e3..551873aa055 100644 --- a/src/locales/es/starter-select-ui-handler.json +++ b/src/locales/es/starter-select-ui-handler.json @@ -1,6 +1,8 @@ { "confirmStartTeam": "¿Comenzar con estos Pokémon?", + "confirmExit": "Do you want to exit?", "invalidParty": "¡Este equipo no es válido!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "I", "gen2": "II", "gen3": "III", diff --git a/src/locales/fr/starter-select-ui-handler.json b/src/locales/fr/starter-select-ui-handler.json index 518329607bb..395d4117a84 100644 --- a/src/locales/fr/starter-select-ui-handler.json +++ b/src/locales/fr/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "Commencer avec ces Pokémon ?", "confirmExit": "Êtes-vous sûr·e de vouloir quitter ?", "invalidParty": "Cette équipe de départ est invalide !", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "1G", "gen2": "2G", "gen3": "3G", diff --git a/src/locales/it/starter-select-ui-handler.json b/src/locales/it/starter-select-ui-handler.json index 04137993d33..04133be93e9 100644 --- a/src/locales/it/starter-select-ui-handler.json +++ b/src/locales/it/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "Vuoi iniziare con questi Pokémon?", "confirmExit": "Vuoi tornare alla schermata principale?", "invalidParty": "Questo squadra iniziale non è valida!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "1ª", "gen2": "2ª", "gen3": "3ª", diff --git a/src/locales/ja/starter-select-ui-handler.json b/src/locales/ja/starter-select-ui-handler.json index cefc5322385..1f44f9e6bd1 100644 --- a/src/locales/ja/starter-select-ui-handler.json +++ b/src/locales/ja/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "この手持ちで 始めますか?", "confirmExit": "終了しますか?", "invalidParty": "手持ちは チャレンジの 条件で 認められない!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "1世代", "gen2": "2世代", "gen3": "3世代", diff --git a/src/locales/ko/starter-select-ui-handler.json b/src/locales/ko/starter-select-ui-handler.json index a8419800d9d..382c9a5281e 100644 --- a/src/locales/ko/starter-select-ui-handler.json +++ b/src/locales/ko/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "이 포켓몬들로 시작하시겠습니까?", "confirmExit": "나가시겠습니까?", "invalidParty": "스타팅 포켓몬 파티에 적합하지 않습니다!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "1세대", "gen2": "2세대", "gen3": "3세대", diff --git a/src/locales/pt_BR/starter-select-ui-handler.json b/src/locales/pt_BR/starter-select-ui-handler.json index 1d83e43f12c..0a559b11403 100644 --- a/src/locales/pt_BR/starter-select-ui-handler.json +++ b/src/locales/pt_BR/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "Começar com esses Pokémon?", "confirmExit": "Deseja sair?", "invalidParty": "Essa equipe de iniciais não é válida!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "G1", "gen2": "G2", "gen3": "G3", diff --git a/src/locales/zh_CN/starter-select-ui-handler.json b/src/locales/zh_CN/starter-select-ui-handler.json index 4851468ab7c..12fbf8791bd 100644 --- a/src/locales/zh_CN/starter-select-ui-handler.json +++ b/src/locales/zh_CN/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "使用这些宝可梦开始游戏吗?", "confirmExit": "确定要退出吗?", "invalidParty": "初始队伍不可用!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "I", "gen2": "II", "gen3": "III", diff --git a/src/locales/zh_TW/starter-select-ui-handler.json b/src/locales/zh_TW/starter-select-ui-handler.json index ad64a8d9743..655cfb2f838 100644 --- a/src/locales/zh_TW/starter-select-ui-handler.json +++ b/src/locales/zh_TW/starter-select-ui-handler.json @@ -2,6 +2,7 @@ "confirmStartTeam": "使用這些寶可夢開始嗎?", "confirmExit": "確定要退出嗎?", "invalidParty": "此為無效隊伍!", + "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", "gen1": "I", "gen2": "II", "gen3": "III", From 30856b046cdcd8f9d66b658362dadfe85247204d Mon Sep 17 00:00:00 2001 From: Lugiad Date: Wed, 18 Sep 2024 19:18:18 +0200 Subject: [PATCH 3/7] Update starter-select-ui-handler.json --- src/locales/fr/starter-select-ui-handler.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/locales/fr/starter-select-ui-handler.json b/src/locales/fr/starter-select-ui-handler.json index 395d4117a84..0f908102cc4 100644 --- a/src/locales/fr/starter-select-ui-handler.json +++ b/src/locales/fr/starter-select-ui-handler.json @@ -2,7 +2,7 @@ "confirmStartTeam": "Commencer avec ces Pokémon ?", "confirmExit": "Êtes-vous sûr·e de vouloir quitter ?", "invalidParty": "Cette équipe de départ est invalide !", - "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", + "emptyParty": "App. sur Espace ou Z pour ajouter un Pokémon à l’équipe.\nApp. sur Entrée ou Start pour commencer la partie.", "gen1": "1G", "gen2": "2G", "gen3": "3G", @@ -43,4 +43,4 @@ "locked": "Verrouillé", "disabled": "Désactivé", "uncaught": "Non-capturé" -} \ No newline at end of file +} From b1f0e15fd5052a2225e5da784af1c1c94f4d572d Mon Sep 17 00:00:00 2001 From: Lugiad Date: Wed, 18 Sep 2024 19:44:43 +0200 Subject: [PATCH 4/7] Update src/locales/pt_BR/starter-select-ui-handler.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: José Ricardo --- src/locales/pt_BR/starter-select-ui-handler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/locales/pt_BR/starter-select-ui-handler.json b/src/locales/pt_BR/starter-select-ui-handler.json index 0a559b11403..9979e0fdcd2 100644 --- a/src/locales/pt_BR/starter-select-ui-handler.json +++ b/src/locales/pt_BR/starter-select-ui-handler.json @@ -2,7 +2,7 @@ "confirmStartTeam": "Começar com esses Pokémon?", "confirmExit": "Deseja sair?", "invalidParty": "Essa equipe de iniciais não é válida!", - "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", + "emptyParty": "Aperte Espaço ou Z para adicionar Pokémon a sua equipe.\nAperte ENTER ou Start para começar o jogo.", "gen1": "G1", "gen2": "G2", "gen3": "G3", From 5c81a9518d7145c72727a76c00f9f6651a361c1f Mon Sep 17 00:00:00 2001 From: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Date: Wed, 18 Sep 2024 20:00:08 +0200 Subject: [PATCH 5/7] Update src/locales/de/starter-select-ui-handler.json --- src/locales/de/starter-select-ui-handler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/locales/de/starter-select-ui-handler.json b/src/locales/de/starter-select-ui-handler.json index 709da26b050..8a4be695ef8 100644 --- a/src/locales/de/starter-select-ui-handler.json +++ b/src/locales/de/starter-select-ui-handler.json @@ -2,7 +2,7 @@ "confirmStartTeam": "Mit diesen Pokémon losziehen?", "confirmExit": "Willst du zurück?", "invalidParty": "Das ist kein gültiges Team!", - "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", + "emptyParty": "Drücke die Leertaste oder Z, um Pokémon zu deinem Team hinzuzufügen. Drücke ENTER oder Start, um den Lauf zu beginnen.", "gen1": "I", "gen2": "II", "gen3": "III", From b862623f43a820a6640deb5cf97678c2cd1a5138 Mon Sep 17 00:00:00 2001 From: sodam <66295123+sodaMelon@users.noreply.github.com> Date: Thu, 19 Sep 2024 09:40:44 +0900 Subject: [PATCH 6/7] Update src/locales/ko/starter-select-ui-handler.json --- src/locales/ko/starter-select-ui-handler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/locales/ko/starter-select-ui-handler.json b/src/locales/ko/starter-select-ui-handler.json index 382c9a5281e..4e3bbb5fede 100644 --- a/src/locales/ko/starter-select-ui-handler.json +++ b/src/locales/ko/starter-select-ui-handler.json @@ -2,7 +2,7 @@ "confirmStartTeam": "이 포켓몬들로 시작하시겠습니까?", "confirmExit": "나가시겠습니까?", "invalidParty": "스타팅 포켓몬 파티에 적합하지 않습니다!", - "emptyParty": "Press Space or Z to add Pokémon to your party.\nPress ENTER or Start to start the run.", + "emptyParty": "포켓몬을 파티에 추가하려면 스페이스 바 또는 Z 키를 눌러주세요.\n시작하려면 엔터 키 또는 Start 버튼을 눌러주세요.", "gen1": "1세대", "gen2": "2세대", "gen3": "3세대", From d730d438872c4729aebf6c129e1cd76e3dfd44cb Mon Sep 17 00:00:00 2001 From: sodam <66295123+sodaMelon@users.noreply.github.com> Date: Thu, 19 Sep 2024 11:07:13 +0900 Subject: [PATCH 7/7] Update src/locales/ko/starter-select-ui-handler.json --- src/locales/ko/starter-select-ui-handler.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/locales/ko/starter-select-ui-handler.json b/src/locales/ko/starter-select-ui-handler.json index 4e3bbb5fede..dc893b32853 100644 --- a/src/locales/ko/starter-select-ui-handler.json +++ b/src/locales/ko/starter-select-ui-handler.json @@ -2,7 +2,7 @@ "confirmStartTeam": "이 포켓몬들로 시작하시겠습니까?", "confirmExit": "나가시겠습니까?", "invalidParty": "스타팅 포켓몬 파티에 적합하지 않습니다!", - "emptyParty": "포켓몬을 파티에 추가하려면 스페이스 바 또는 Z 키를 눌러주세요.\n시작하려면 엔터 키 또는 Start 버튼을 눌러주세요.", + "emptyParty": "포켓몬을 파티에 추가하려면 스페이스 바 또는 Z 키를 눌러주세요.\n시작하려면 엔터 키 또는 시작 버튼을 눌러주세요.", "gen1": "1세대", "gen2": "2세대", "gen3": "3세대",