Movable tiles shown again for Civilian units

This commit is contained in:
Yair Morgenstern
2018-12-07 12:01:31 +02:00
parent 3a1f9af0fd
commit 4491ae1859
2 changed files with 15 additions and 9 deletions

View File

@ -25,7 +25,10 @@ class CityExpansionManager {
fun getCultureToNextTile(): Int {
val numTilesClaimed = cityInfo.tiles.size - 7
var cultureToNextTile = 6 * Math.pow(numTilesClaimed + 1.4813, 1.3)
if (cityInfo.civInfo.getBuildingUniques().contains("Cost of acquiring new tiles reduced by 25%")) cultureToNextTile *= 0.75 //Speciality of Angkor Wat
if (cityInfo.civInfo.getBuildingUniques().contains("Cost of acquiring new tiles reduced by 25%"))
cultureToNextTile *= 0.75 //Speciality of Angkor Wat
if(cityInfo.getBuildingUniques().contains("Culture and Gold costs of acquiring new tiles reduced by 25% in this city"))
cultureToNextTile *= 0.75 // Specialty of Krepost
if (cityInfo.civInfo.policies.isAdopted("Tradition")) cultureToNextTile *= 0.75
return Math.round(cultureToNextTile).toInt()
}
@ -42,10 +45,16 @@ class CityExpansionManager {
val baseCost = 50
val numTilesClaimed= cityInfo.tiles.size - 7
val distanceFromCenter = tileInfo.arialDistanceTo(cityInfo.getCenterTile())
var cost = baseCost * (distanceFromCenter-1) + numTilesClaimed*5
var cost = baseCost * (distanceFromCenter-1) + numTilesClaimed*5.0
if (cityInfo.civInfo.getBuildingUniques().contains("Cost of acquiring new tiles reduced by 25%"))
cost *= 0.75 //Speciality of Angkor Wat
if(cityInfo.getBuildingUniques().contains("Culture and Gold costs of acquiring new tiles reduced by 25% in this city"))
cost *= 0.75 // Specialty of Krepost
if(cityInfo.civInfo.getNation().unique=="All land military units have +1 sight, 50% discount when purchasing tiles")
cost /= 2
return cost
return cost.toInt()
}

View File

@ -220,16 +220,13 @@ class TileMapHolder(internal val worldScreen: WorldScreen, internal val tileMap:
val unitType = unit.type
val attackableTiles: List<TileInfo> = when {
unitType.isCivilian() -> unit.getDistanceToTiles().keys.toList()
unitType.isCivilian() -> listOf()
else -> UnitAutomation().getAttackableEnemies(unit, unit.getDistanceToTiles()).map { it.tileToAttack }
.filter { (UnCivGame.Current.viewEntireMapForDebug || playerViewableTilePositions.contains(it.position)) }
}
for (attackableTile in attackableTiles) {
if (unit.type.isCivilian()) tileGroups[attackableTile]!!.hideCircle()
else {
tileGroups[attackableTile]!!.showCircle(colorFromRGB(237, 41, 57))
tileGroups[attackableTile]!!.showCrosshair()
}
tileGroups[attackableTile]!!.showCircle(colorFromRGB(237, 41, 57))
tileGroups[attackableTile]!!.showCrosshair()
}
// Fadeout less relevant images if a military unit is selected