From 2b8fefe67596e435ca7fdb39082130d483df45c9 Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Sun, 26 Nov 2017 19:39:50 +0200 Subject: [PATCH] ImprovementPickerScreen is now a regular PickerScreen Researched techs now don't display 'turns to research' --- .../ImprovementPickerScreen.java | 49 +++++-------------- .../game/pickerscreens/TechPickerScreen.java | 3 +- .../models/gamebasics/TileImprovement.java | 8 +-- 3 files changed, 18 insertions(+), 42 deletions(-) diff --git a/core/src/com/unciv/game/pickerscreens/ImprovementPickerScreen.java b/core/src/com/unciv/game/pickerscreens/ImprovementPickerScreen.java index bc1a8b23f0..01b46d8a56 100644 --- a/core/src/com/unciv/game/pickerscreens/ImprovementPickerScreen.java +++ b/core/src/com/unciv/game/pickerscreens/ImprovementPickerScreen.java @@ -14,30 +14,15 @@ import com.unciv.game.UnCivGame; import com.unciv.models.gamebasics.GameBasics; import com.unciv.models.gamebasics.TileImprovement; -public class ImprovementPickerScreen extends CameraStageBaseScreen { +public class ImprovementPickerScreen extends PickerScreen { TileImprovement SelectedImprovement; public ImprovementPickerScreen(final UnCivGame game, final com.unciv.civinfo.TileInfo tileInfo) { super(game); - Table buttonTable = new Table(); - TextButton closeButton =new TextButton("Close", skin); - closeButton.addListener(new ClickListener(){ - @Override - public void clicked(InputEvent event, float x, float y) { - game.setScreen(new com.unciv.game.CityScreen(game)); - dispose(); - } - }); -// closeButton.getLabel().setFontScale(0.7f); - buttonTable.add(closeButton).width(stage.getWidth()/4); + rightSideButton.setText("Pick improvement"); - final Label improvementDescription = new Label("",skin); - buttonTable.add(improvementDescription).width(stage.getWidth()/2).pad(5); - improvementDescription.setFontScale(game.settings.labelScale); - - final TextButton pickImprovementButton = new TextButton("Pick improvement",skin); - pickImprovementButton.addListener(new ClickListener(){ + rightSideButton.addListener(new ClickListener(){ @Override public void clicked(InputEvent event, float x, float y) { tileInfo.StartWorkingOnImprovement(SelectedImprovement); @@ -45,12 +30,10 @@ public class ImprovementPickerScreen extends CameraStageBaseScreen { dispose(); } }); -// pickImprovementButton.getLabel().setFontScale(0.7f); - pickImprovementButton.setTouchable(Touchable.disabled); - pickImprovementButton.setColor(Color.GRAY); - buttonTable.add(pickImprovementButton).width(stage.getWidth()/4); - Table buildingsTable = new Table(); + rightSideButton.setTouchable(Touchable.disabled); + rightSideButton.setColor(Color.GRAY); + for(final TileImprovement improvement : GameBasics.TileImprovements.values()) { if(!tileInfo.CanBuildImprovement(improvement)) continue; TextButton TB = new TextButton(improvement.Name+"\r\n"+improvement.TurnsToBuild+" turns", skin); @@ -58,22 +41,14 @@ public class ImprovementPickerScreen extends CameraStageBaseScreen { @Override public void clicked(InputEvent event, float x, float y) { SelectedImprovement = improvement; - pickImprovementButton.setTouchable(Touchable.enabled); - pickImprovementButton.setText("Construct "+improvement.Name); - pickImprovementButton.setColor(Color.WHITE); - improvementDescription.setText(improvement.GetDescription()); + rightSideButton.setTouchable(Touchable.enabled); + rightSideButton.setText("Construct "+improvement.Name); + rightSideButton.setColor(Color.WHITE); + descriptionLabel.setText(improvement.GetDescription()); } }); - buildingsTable.add(TB).pad(10); - buildingsTable.row(); + topTable.add(TB).pad(10); + topTable.row(); } - ScrollPane scrollPane = new ScrollPane(buildingsTable); - scrollPane.setSize(stage.getWidth(),stage.getHeight()*0.9f); - - - SplitPane splitPane = new SplitPane(scrollPane, buttonTable, true, skin); - splitPane.setSplitAmount(0.9f); - splitPane.setFillParent(true); - stage.addActor(splitPane); } } \ No newline at end of file diff --git a/core/src/com/unciv/game/pickerscreens/TechPickerScreen.java b/core/src/com/unciv/game/pickerscreens/TechPickerScreen.java index 5c1685321c..c791cad1c2 100644 --- a/core/src/com/unciv/game/pickerscreens/TechPickerScreen.java +++ b/core/src/com/unciv/game/pickerscreens/TechPickerScreen.java @@ -47,7 +47,8 @@ public class TechPickerScreen extends PickerScreen { if (TechsToResearch.contains(techName)) { TB.setText(TB.getText() + " (" + TechsToResearch.indexOf(techName) + ")"); } - TB.setText(TB.getText() + "\r\n" + game.civInfo.TurnsToTech(techName) + " turns"); + + if(!civTech.IsResearched(techName)) TB.setText(TB.getText() + "\r\n" + game.civInfo.TurnsToTech(techName) + " turns"); } } diff --git a/core/src/com/unciv/models/gamebasics/TileImprovement.java b/core/src/com/unciv/models/gamebasics/TileImprovement.java index b7b6e954c6..28383853f0 100644 --- a/core/src/com/unciv/models/gamebasics/TileImprovement.java +++ b/core/src/com/unciv/models/gamebasics/TileImprovement.java @@ -19,11 +19,11 @@ public class TileImprovement extends NamedStats implements ICivilopedia { @Override public String GetDescription() { StringBuilder stringBuilder = new StringBuilder(); - stringBuilder.append(new FullStats(this)+"\r\n"); - if(!TerrainsCanBeBuiltOn.isEmpty()) stringBuilder.append("Can be built on " + com.unciv.models.gamebasics.StringUtils.join(", ", TerrainsCanBeBuiltOn)); + if(!new FullStats(this).toString().isEmpty()) stringBuilder.append(new FullStats(this)+"\r\n"); + if(!TerrainsCanBeBuiltOn.isEmpty()) stringBuilder.append("Can be built on " + StringUtils.join(", ", TerrainsCanBeBuiltOn)); HashMap> statsToResourceNames = new HashMap>(); - for(com.unciv.models.gamebasics.TileResource tr : GameBasics.TileResources.values()){ + for(TileResource tr : GameBasics.TileResources.values()){ if(!tr.Improvement.equals(Name)) continue; String statsString = tr.ImprovementStats.toString(); if(!statsToResourceNames.containsKey(statsString)) @@ -31,7 +31,7 @@ public class TileImprovement extends NamedStats implements ICivilopedia { statsToResourceNames.get(statsString).add(tr.Name); } for(String statsString : statsToResourceNames.keySet()){ - stringBuilder.append("\r\n"+statsString+" for "+ com.unciv.models.gamebasics.StringUtils.join(", ",statsToResourceNames.get(statsString))); + stringBuilder.append("\r\n"+statsString+" for "+ StringUtils.join(", ",statsToResourceNames.get(statsString))); } if(TechRequired!=null) stringBuilder.append("\r\nTech required: "+TechRequired);