update some dialog translation, KeyBoardDialog

This commit is contained in:
Anthony Calosa
2025-07-22 08:58:12 +08:00
parent 9a6ebce85a
commit 5aea2e5bbe
15 changed files with 75 additions and 24 deletions

View File

@@ -24,7 +24,7 @@ public class GameLauncher {
if (SharedLibraryLoader.isMac) {
Configuration.GLFW_LIBRARY_NAME.set("glfw_async");
}
//increase MemoryStack to 1MB, default is 64
//increase MemoryStack to 1MB, default is 64kb
Configuration.STACK_SIZE.set(1024);
Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration();
ApplicationListener start = Forge.getApp(new Lwjgl3Clipboard(), new Main.DesktopAdapter(switchOrientationFile),//todo get totalRAM && isTabletDevice

View File

@@ -100,13 +100,18 @@ public class TileMapScene extends HudScene {
}
if (WorldSave.getCurrentSave().getPlayer().hasAnnounceFantasy()) {
WorldSave.getCurrentSave().getPlayer().clearAnnounceFantasy();
MapStage.getInstance().showDeckAwardDialog("{BLINK=WHITE;RED}Chaos Mode!{ENDBLINK}\n" +
"Enemy will use Preconstructed or Random Generated Decks. Genetic AI Decks will be available to some enemies on Hard difficulty.",
MapStage.getInstance().showDeckAwardDialog("{BLINK=WHITE;RED}" +
Forge.getLocalizer().getMessage("lblMode") + " " +
Forge.getLocalizer().getMessage("lblChaos") + "{ENDBLINK}\n" +
Forge.getLocalizer().getMessage("lblChaosModeDescription"),
WorldSave.getCurrentSave().getPlayer().getSelectedDeck(), this::initializeDialogs);
} else if (WorldSave.getCurrentSave().getPlayer().hasAnnounceCustom()) {
WorldSave.getCurrentSave().getPlayer().clearAnnounceCustom();
MapStage.getInstance().showDeckAwardDialog("{GRADIENT}Custom Deck Mode!{ENDGRADIENT}\n" +
"Some enemies will use Genetic AI Decks randomly.", WorldSave.getCurrentSave().getPlayer().getSelectedDeck(), this::initializeDialogs);
MapStage.getInstance().showDeckAwardDialog("{GRADIENT}" +
Forge.getLocalizer().getMessage("lblMode") + " " +
Forge.getLocalizer().getMessage("lblCustom") + "{ENDGRADIENT}\n" +
Forge.getLocalizer().getMessage("lblCustomModeDescription"),
WorldSave.getCurrentSave().getPlayer().getSelectedDeck(), this::initializeDialogs);
} else {
initializeDialogs();
}

View File

@@ -482,8 +482,7 @@ public class GameHUD extends Stage {
Current.player().addShards(-data.shardsNeeded);
ConsoleCommandInterpreter.getInstance().command(data.commandOnUse);
AdventureQuestController.instance().updateItemUsed(data);
});
button.setStyle(Controls.getTextButtonStyle("menu"));
}, "menu");
abilityButtonMap.add(button);
}
}

View File

@@ -135,7 +135,9 @@ public abstract class GameStage extends Stage {
dialog.clearListeners();
TextraButton ok = Controls.newTextButton("OK", this::hideDialog);
ok.setVisible(false);
TypingLabel L = Controls.newTypingLabel("{GRADIENT=CYAN;WHITE;1;1}Strange magical energies flow within this place...{ENDGRADIENT}\nAll opponents get:\n" + effectData.getDescription());
TypingLabel L = Controls.newTypingLabel("{GRADIENT=CYAN;WHITE;1;1}" +
Forge.getLocalizer().getMessage("lblEffectDialogDescription") + "{ENDGRADIENT}\n" +
Forge.getLocalizer().getMessage("lblEffectDataHeader") + "\n" + effectData.getDescription());
L.setWrap(true);
L.setTypingListener(new TypingAdapter() {
@Override

View File

@@ -820,7 +820,7 @@ public class MapStage extends GameStage {
dialog.clearListeners();
TextraButton ok = Controls.newTextButton("OK", this::hideDialog);
ok.setVisible(false);
TypingLabel L = Controls.newTypingLabel("{GRADIENT=RED;WHITE;1;1}Defeated and unable to continue, you use the last of your power to escape the area.");
TypingLabel L = Controls.newTypingLabel("{GRADIENT=RED;WHITE;1;1}" + Forge.getLocalizer().getMessage("lblDefeatedDescription"));
L.setWrap(true);
L.setTypingListener(new TypingAdapter() {
@Override

View File

@@ -302,6 +302,10 @@ public class Controls {
}
static public TextraButton newTextButton(String text, Runnable func) {
return newTextButton(text, func, "");
}
static public TextraButton newTextButton(String text, Runnable func, String styleName) {
TextraButton ret = newTextButton(text);
ret.addListener(new ClickListener() {
@Override
@@ -314,7 +318,8 @@ public class Controls {
}
}
});
if (!styleName.isEmpty())
ret.setStyle(getTextButtonStyle(styleName));
return ret;
}

View File

@@ -123,11 +123,11 @@ public class KeyBoardDialog extends Dialog {
key0 = Controls.newTextButton("0", () -> kbLabel.setText(kbLabel.getText()+"0"));
keyDot = Controls.newTextButton(".", () -> kbLabel.setText(kbLabel.getText()+"."));
keyComma = Controls.newTextButton(",", () -> kbLabel.setText(kbLabel.getText()+","));
keyShift = Controls.newTextButton("Aa", this::shiftKey);
keyBackspace = Controls.newTextButton("<<", () -> kbLabel.setText(removeLastChar(String.valueOf(kbLabel.getText()))));
keySpace = Controls.newTextButton("SPACE", () -> kbLabel.setText(kbLabel.getText()+" "));
keyOK = Controls.newTextButton("OK", this::setKeyboardDialogText);
keyAbort = Controls.newTextButton("Abort", this::abortKeyInput);
keyShift = Controls.newTextButton("\u2191", this::shiftKey);
keyBackspace = Controls.newTextButton("\u2190", () -> kbLabel.setText(removeLastChar(String.valueOf(kbLabel.getText()))));
keySpace = Controls.newTextButton("_____", () -> kbLabel.setText(kbLabel.getText()+" "));
keyOK = Controls.newTextButton("[+OK]", this::setKeyboardDialogText);
keyAbort = Controls.newTextButton("[+Exit]", this::abortKeyInput);
this.getContentTable().add(kbLabel).width(220).height(20).colspan(10).expandX().align(Align.center);
this.getButtonTable().row();
this.getButtonTable().add(key1).width(20).height(20);

View File

@@ -3033,7 +3033,7 @@ lblLoyalty=Loyaltät
lblStandard=Standard
lblChaos=Chaos
lblPile=Haufen
lblCustom=angepaßt
lblCustom=Angepaßt
lblStarterEdition=Beginner-Ausgabe
lblElf=Elf
lblMetathran=Metathran
@@ -3521,3 +3521,8 @@ cbAITimeout=AI Time-out
nlAITimeout=Zeitüberschreitung in Sekunden für AI, wenn die zu spielenden Zauber berechnet und Angreifer deklariert werden
lblAddDeck=Hinzufügen
lblMaxDeckCountReached=Sie haben bereits die maximale Anzahl an Kartendecks erstellt
lblChaosModeDescription=Der Gegner verwendet vorgefertigte oder zufällig generierte Decks. Genetische AI-Decks stehen einigen Gegnern im Schwierigkeitsgrad „Schwer“ zur Verfügung.
lblCustomModeDescription=Einige Feinde verwenden zufällig genetische AI-Decks.
lblEffectDialogDescription=An diesem Ort fließen seltsame magische Energien...
lblEffectDataHeader=Alle Gegner erhalten:
lblDefeatedDescription=Sie sind besiegt und können nicht weitermachen. Mit letzter Kraft versuchen Sie, aus dem Gebiet zu entkommen.

View File

@@ -3268,3 +3268,8 @@ cbAITimeout=AI Timeout
nlAITimeout=Time-out in seconds for AI when computing for spells to play and declaring attackers
lblAddDeck=Add
lblMaxDeckCountReached=You've already created the maximum amount of decks
lblChaosModeDescription=Enemy will use Preconstructed or Random Generated Decks. Genetic AI Decks will be available to some enemies on Hard difficulty.
lblCustomModeDescription=Some enemies will use Genetic AI Decks randomly.
lblEffectDialogDescription=Strange magical energies flow within this place...
lblEffectDataHeader=All opponents get:
lblDefeatedDescription=Defeated and unable to continue, you use the last of your power to escape the area.

View File

@@ -3525,3 +3525,8 @@ cbAITimeout=AI Se acabó el tiempo
nlAITimeout=Tiempo de espera en segundos para AI al calcular los hechizos a jugar y declarar atacantes
lblAddDeck=Añadir
lblMaxDeckCountReached=Ya has creado la cantidad máxima de mazos
lblChaosModeDescription=El enemigo usará mazos preconstruidos o generados aleatoriamente. Algunos enemigos tendrán mazos de AI genética en dificultad Difícil.
lblCustomModeDescription=Algunos enemigos usarán Decks de AI Genéticos aleatoriamente.
lblEffectDialogDescription=Extrañas energías mágicas fluyen dentro de este lugar...
lblEffectDataHeader=Todos los oponentes obtienen:
lblDefeatedDescription=Derrotado e incapaz de continuar, utilizas lo último de tu poder para escapar del área.

View File

@@ -3526,3 +3526,8 @@ cbAITimeout=AI Temps mort
nlAITimeout=Délai d'attente en secondes pour AI lors du calcul des sorts à jouer et de la déclaration des attaquants
lblAddDeck=Ajouter
lblMaxDeckCountReached=Vous avez déjà créé le montant maximum
lblChaosModeDescription=Les ennemis utiliseront des decks préconstruits ou générés aléatoirement. Certains ennemis pourront utiliser des decks AI génétiques en difficulté Difficile.
lblCustomModeDescription=Certains ennemis utiliseront des decks d'AI génétique de manière aléatoire.
lblEffectDialogDescription=D'étranges énergies magiques circulent dans ce lieu...
lblEffectDataHeader=Tous les adversaires obtiennent:
lblDefeatedDescription=Vaincu et incapable de continuer, vous utilisez le reste de votre pouvoir pour vous échapper de la zone.

View File

@@ -3524,3 +3524,8 @@ cbAITimeout=AI Tempo scaduto
nlAITimeout=Timeout in secondi per AI durante il calcolo degli incantesimi da giocare e la dichiarazione degli attaccanti
lblAddDeck=Aggiungere
lblMaxDeckCountReached=Hai già creato il numero massimo di mazzi
lblChaosModeDescription=I nemici useranno mazzi precostruiti o generati casualmente. I mazzi AI genetica saranno disponibili per alcuni nemici a difficoltà Difficile.
lblCustomModeDescription=Alcuni nemici useranno i Deck IA genetica in modo casuale.
lblEffectDialogDescription=In questo luogo fluiscono strane energie magiche...
lblEffectDataHeader=Tutti gli avversari ottengono:
lblDefeatedDescription=Sconfitto e impossibilitato a proseguire, usi le ultime energie che ti restano per fuggire dalla zona.

View File

@@ -3520,3 +3520,8 @@ cbAITimeout=AI タイムアウト
nlAITimeout=プレイする呪文を計算し、攻撃者を宣言するときの AI のタイムアウト (秒単位)
lblAddDeck=追加
lblMaxDeckCountReached=すでに最大額を作成しました
lblChaosModeDescription=敵は構築済みデッキまたはランダム生成デッキを使用します。難易度「ハード」では、一部の敵はジェネティックAIデッキを使用することができます。
lblCustomModeDescription=一部の敵はランダムに Genetic AI デッキを使用します。
lblEffectDialogDescription=この場所には不思議な魔力が流れている。。。
lblEffectDataHeader=対戦相手全員が得るもの:
lblDefeatedDescription=敗北し、続行不可能となったあなたは、最後の力を振り絞ってそのエリアから脱出します。

View File

@@ -3610,3 +3610,8 @@ cbAITimeout=AI Tempo esgotado
nlAITimeout=Tempo limite em segundos para AI ao calcular feitiços para jogar e declarar atacantes
lblAddDeck=Adicionar
lblMaxDeckCountReached=Você já criou a quantidade máxima de decks
lblChaosModeDescription=O inimigo usará Decks Pré-construídos ou Gerados Aleatoriamente. Decks de AI Genética estarão disponíveis para alguns inimigos na dificuldade Difícil.
lblCustomModeDescription=Alguns inimigos usarão Decks de AI Genética aleatoriamente.
lblEffectDialogDescription=Estranhas energias mágicas fluem dentro deste lugar...
lblEffectDataHeader=Todos os oponentes recebem:
lblDefeatedDescription=Derrotado e incapaz de continuar, você usa o que resta de seu poder para escapar da área.

View File

@@ -3511,3 +3511,8 @@ cbAITimeout=AI 暂停
nlAITimeout=计算要播放的咒语并宣布攻击者时AI 超时(以秒为单位)
lblAddDeck=添加
lblMaxDeckCountReached=你已经创建了最大数量的卡牌组
lblChaosModeDescription=敌人将使用预构筑或随机生成的卡组。部分敌人在困难难度下可以使用基因AI卡组。
lblCustomModeDescription=一些敌人会随机使用基因 AI 卡组。
lblEffectDialogDescription=奇怪的魔法能量在这个地方流动。。。
lblEffectDataHeader=所有对手获得:
lblDefeatedDescription=你被击败了,无法继续前进,你用尽最后的力量逃离了该区域。