localize sector prompts

This commit is contained in:
Northmoc
2022-11-19 10:24:29 -05:00
parent 2f7ba8faa1
commit 06e9827464
13 changed files with 47 additions and 12 deletions

View File

@@ -588,8 +588,7 @@ public class PlayerControllerAi extends PlayerController {
} }
@Override @Override
public String chooseSector(Card assignee, String ai) { public String chooseSector(Card assignee, String ai, List<String> sectors) {
final List<String> sectors = Arrays.asList("Alpha", "Beta", "Gamma");
return Aggregates.random(sectors); return Aggregates.random(sectors);
} }

View File

@@ -1583,9 +1583,10 @@ public class GameAction {
String sector = p.getController().chooseSector(assignee, "Assign"); String sector = p.getController().chooseSector(assignee, "Assign");
assignee.assignSector(sector); assignee.assignSector(sector);
if (sb.length() == 0) { if (sb.length() == 0) {
sb.append(p).append(" assigns:\n"); sb.append(p).append(" ").append(Localizer.getInstance().getMessage("lblAssigns")).append("\n");
} }
sb.append(assignee).append(" ").append(sector).append("\n"); String creature = CardTranslation.getTranslatedName(assignee.getName()) + " (" + assignee.getId() + ")";
sb.append(creature).append(" ").append(sector).append("\n");
} }
if (sb.length() > 0) { if (sb.length() > 0) {
notifyOfValue(null, p, sb.toString(), p); notifyOfValue(null, p, sb.toString(), p);

View File

@@ -1,5 +1,6 @@
package forge.game.player; package forge.game.player;
import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -183,7 +184,11 @@ public abstract class PlayerController {
return chooseSomeType(kindOfType, sa, validTypes, invalidTypes, false); return chooseSomeType(kindOfType, sa, validTypes, invalidTypes, false);
} }
public abstract String chooseSector(Card assignee, String ai); public abstract String chooseSector(Card assignee, String ai, List<String> sectors);
public final String chooseSector(Card assignee, String ai) {
final List<String> sectors = Arrays.asList("Alpha", "Beta", "Gamma");
return chooseSector(assignee, ai, sectors);
}
public abstract Object vote(SpellAbility sa, String prompt, List<Object> options, ListMultimap<Object, Player> votes, Player forPlayer); public abstract Object vote(SpellAbility sa, String prompt, List<Object> options, ListMultimap<Object, Player> votes, Player forPlayer);

View File

@@ -494,8 +494,7 @@ public class PlayerControllerForTests extends PlayerController {
} }
@Override @Override
public String chooseSector(Card assignee, String ai) { public String chooseSector(Card assignee, String ai, List<String> sectors) {
final List<String> sectors = Arrays.asList("Alpha", "Beta", "Gamma");
return chooseItem(sectors); return chooseItem(sectors);
} }

View File

@@ -1231,6 +1231,8 @@ lblSelectANumber=Wähle eine Zahl
lblCut=Ausschneiden lblCut=Ausschneiden
lblCopy=Kopieren lblCopy=Kopieren
lblPaste=Einfügen lblPaste=Einfügen
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=Suche lblSearch=Suche
#InputBase.java #InputBase.java
@@ -1342,6 +1344,8 @@ lblThereNoCardInPlayerZone=Es sind kein Karten in {0} {1}
lblPutCardsOnTheTopLibraryOrGraveyard=Lege {0} oben auf Bibliothek oder Friedhof? lblPutCardsOnTheTopLibraryOrGraveyard=Lege {0} oben auf Bibliothek oder Friedhof?
lblLibrary=Bibliothek lblLibrary=Bibliothek
lblGraveyard=Friedhof lblGraveyard=Friedhof
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop=Oben drauf lblTop=Oben drauf
lblBottom=Unten drunter lblBottom=Unten drunter
lblNColorManaFromCard={0} {1} Mana von {2} lblNColorManaFromCard={0} {1} Mana von {2}

View File

@@ -1232,6 +1232,8 @@ lblSelectANumber=Select a number
lblCut=Cut lblCut=Cut
lblCopy=Copy lblCopy=Copy
lblPaste=Paste lblPaste=Paste
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=Search lblSearch=Search
#InputBase.java #InputBase.java
@@ -1344,6 +1346,8 @@ lblThereNoCardInPlayerZone=There are no cards in {0} {1}
lblPutCardsOnTheTopLibraryOrGraveyard=Put {0} on the top of library or graveyard? lblPutCardsOnTheTopLibraryOrGraveyard=Put {0} on the top of library or graveyard?
lblLibrary=Library lblLibrary=Library
lblGraveyard=Graveyard lblGraveyard=Graveyard
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop=Top lblTop=Top
lblBottom=Bottom lblBottom=Bottom
lblNColorManaFromCard={0} {1} mana from {2} lblNColorManaFromCard={0} {1} mana from {2}

View File

@@ -1231,6 +1231,8 @@ lblSelectANumber=Selecciona un número
lblCut=Cortar lblCut=Cortar
lblCopy=Copiar lblCopy=Copiar
lblPaste=Pegar lblPaste=Pegar
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=Buscar lblSearch=Buscar
#InputBase.java #InputBase.java
@@ -1342,6 +1344,8 @@ lblThereNoCardInPlayerZone=No hay cartas en {0} {1}
lblPutCardsOnTheTopLibraryOrGraveyard=¿Poner {0} en la parte superior de la biblioteca o en el cementerio? lblPutCardsOnTheTopLibraryOrGraveyard=¿Poner {0} en la parte superior de la biblioteca o en el cementerio?
lblLibrary=Biblioteca lblLibrary=Biblioteca
lblGraveyard=Cementerio lblGraveyard=Cementerio
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop=Superior lblTop=Superior
lblBottom=Fondo lblBottom=Fondo
lblNColorManaFromCard={0} {1} maná de {2} lblNColorManaFromCard={0} {1} maná de {2}

View File

@@ -1233,6 +1233,8 @@ lblSelectANumber=Sélectionner un numéro
lblCut=Couper lblCut=Couper
lblCopy=Copier lblCopy=Copier
lblPaste=Coller lblPaste=Coller
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=Rechercher lblSearch=Rechercher
#InputBase.java #InputBase.java

View File

@@ -1230,6 +1230,8 @@ lblSelectANumber=Seleziona un numero
lblCut=Taglia lblCut=Taglia
lblCopy=Copia lblCopy=Copia
lblPaste=Incolla lblPaste=Incolla
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=Ricerca lblSearch=Ricerca
#InputBase.java #InputBase.java
@@ -1342,6 +1344,8 @@ lblThereNoCardInPlayerZone=Non ci sono carte in {0} {1}
lblPutCardsOnTheTopLibraryOrGraveyard=Metti {0} in cima al grimorio o nel cimitero? lblPutCardsOnTheTopLibraryOrGraveyard=Metti {0} in cima al grimorio o nel cimitero?
lblLibrary=Grimorio lblLibrary=Grimorio
lblGraveyard=Cimitero lblGraveyard=Cimitero
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop=Cima lblTop=Cima
lblBottom=Fondo lblBottom=Fondo
lblNColorManaFromCard={0} {1} mana da {2} lblNColorManaFromCard={0} {1} mana da {2}

View File

@@ -1232,6 +1232,8 @@ lblSelectANumber=数字を選択してください
lblCut=切り取り lblCut=切り取り
lblCopy=コピー lblCopy=コピー
lblPaste=貼り付け lblPaste=貼り付け
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=検索 lblSearch=検索
#InputBase.java #InputBase.java
@@ -1343,6 +1345,8 @@ lblThereNoCardInPlayerZone={0} {1}にカードがありません
lblPutCardsOnTheTopLibraryOrGraveyard=ライブラリまたは墓地の一番上に{0}を置きますか? lblPutCardsOnTheTopLibraryOrGraveyard=ライブラリまたは墓地の一番上に{0}を置きますか?
lblLibrary=ライブラリー lblLibrary=ライブラリー
lblGraveyard=墓地 lblGraveyard=墓地
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop=タップ lblTop=タップ
lblBottom=ボトム lblBottom=ボトム
lblNColorManaFromCard={2}から {0} {1} のマナ lblNColorManaFromCard={2}から {0} {1} のマナ

View File

@@ -1260,6 +1260,8 @@ lblSelectANumber=Selecione um número
lblCut=Cortar lblCut=Cortar
lblCopy=Copiar lblCopy=Copiar
lblPaste=Colar lblPaste=Colar
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=Buscar lblSearch=Buscar
#InputBase.java #InputBase.java
@@ -1373,6 +1375,8 @@ lblThereNoCardInPlayerZone=Sem cartas em {0} {1}
lblPutCardsOnTheTopLibraryOrGraveyard=Colocar {0} no topo do grimório ou cemitério? lblPutCardsOnTheTopLibraryOrGraveyard=Colocar {0} no topo do grimório ou cemitério?
lblLibrary=Grimório lblLibrary=Grimório
lblGraveyard=Cemitério lblGraveyard=Cemitério
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop=Topo lblTop=Topo
lblBottom=Fundo lblBottom=Fundo
lblNColorManaFromCard={0} {1} mana de {2} lblNColorManaFromCard={0} {1} mana de {2}

View File

@@ -1232,6 +1232,8 @@ lblSelectANumber=选择一个数
lblCut=剪切 lblCut=剪切
lblCopy=复制 lblCopy=复制
lblPaste=粘贴 lblPaste=粘贴
#GameAction.java
lblAssigns=assigns:
#ListChooser.java #ListChooser.java
lblSearch=搜索 lblSearch=搜索
#InputBase.java #InputBase.java
@@ -1344,6 +1346,8 @@ lblThereNoCardInPlayerZone={0}的{1}中没有牌
lblPutCardsOnTheTopLibraryOrGraveyard=将{0}放到牌库顶还是坟场? lblPutCardsOnTheTopLibraryOrGraveyard=将{0}放到牌库顶还是坟场?
lblLibrary=牌库 lblLibrary=牌库
lblGraveyard=坟场 lblGraveyard=坟场
lblAssignSectorCreature=Assign {0} to a sector
lblChooseSectorEffect=Choose a sector
lblTop= lblTop=
lblBottom= lblBottom=
lblNColorManaFromCard={2}产{0}个{1}法术力 lblNColorManaFromCard={2}产{0}个{1}法术力

View File

@@ -1365,12 +1365,13 @@ public class PlayerControllerHuman extends PlayerController implements IGameCont
} }
@Override @Override
public String chooseSector(Card assignee, String ai) { public String chooseSector(Card assignee, String ai, List<String> sectors) {
final List<String> sectors = Arrays.asList("Alpha", "Beta", "Gamma"); String prompt;
// turn this into two separate localized prompts
String prompt = "Choose sector";
if (assignee != null) { if (assignee != null) {
prompt = prompt + " for " + assignee; String creature = CardTranslation.getTranslatedName(assignee.getName()) + " (" + assignee.getId() + ")";
prompt = Localizer.getInstance().getMessage("lblAssignSectorCreature", creature);
} else {
prompt = Localizer.getInstance().getMessage("lblChooseSectorEffect");
} }
return getGui().one(prompt, sectors); return getGui().one(prompt, sectors);
} }