diff --git a/core/src/com/unciv/logic/civilization/CivilizationInfo.kt b/core/src/com/unciv/logic/civilization/CivilizationInfo.kt index f5ca68091f..6ecc4c129d 100644 --- a/core/src/com/unciv/logic/civilization/CivilizationInfo.kt +++ b/core/src/com/unciv/logic/civilization/CivilizationInfo.kt @@ -6,6 +6,7 @@ import com.unciv.Constants import com.unciv.JsonParser import com.unciv.UncivGame import com.unciv.logic.GameInfo +import com.unciv.logic.UncivShowableException import com.unciv.logic.automation.NextTurnAutomation import com.unciv.logic.city.CityInfo import com.unciv.logic.civilization.diplomacy.DiplomacyFlags @@ -245,7 +246,9 @@ class CivilizationInfo { for (unit in gameInfo.ruleSet.units.values) if (unit.replaces == baseUnitName && unit.uniqueTo == civName) return unit - return gameInfo.ruleSet.units[baseUnitName]!! + val baseUnit = gameInfo.ruleSet.units[baseUnitName] + if (baseUnit == null) throw UncivShowableException("Unit $baseUnitName doesn't seem to exist!") + return baseUnit } fun meetCivilization(otherCiv: CivilizationInfo) { diff --git a/core/src/com/unciv/ui/trade/DiplomacyScreen.kt b/core/src/com/unciv/ui/trade/DiplomacyScreen.kt index 01a71c2c07..970af9da7d 100644 --- a/core/src/com/unciv/ui/trade/DiplomacyScreen.kt +++ b/core/src/com/unciv/ui/trade/DiplomacyScreen.kt @@ -32,7 +32,7 @@ class DiplomacyScreen(val viewingCiv:CivilizationInfo):CameraStageBaseScreen() { init { onBackButtonClicked { UncivGame.Current.setWorldScreen() } - val splitPane = SplitPane(ScrollPane(leftSideTable), ScrollPane(rightSideTable), false, skin) + val splitPane = SplitPane(ScrollPane(leftSideTable), rightSideTable, false, skin) splitPane.splitAmount = 0.2f updateLeftSideTable() @@ -73,10 +73,10 @@ class DiplomacyScreen(val viewingCiv:CivilizationInfo):CameraStageBaseScreen() { } } - fun updateRightSide(otherCiv: CivilizationInfo){ + fun updateRightSide(otherCiv: CivilizationInfo) { rightSideTable.clear() - if(otherCiv.isCityState()) rightSideTable.add(getCityStateDiplomacyTable(otherCiv)) - else rightSideTable.add(getMajorCivDiplomacyTable(otherCiv)) + if (otherCiv.isCityState()) rightSideTable.add(getCityStateDiplomacyTable(otherCiv)) + else rightSideTable.add(ScrollPane(getMajorCivDiplomacyTable(otherCiv))).height(stage.height) } fun setTrade(civ: CivilizationInfo): TradeTable {