CityStats

class CityStats(cityInfo: CityInfo)

Holds and calculates Stats for a city.

No field needs to be saved, all are calculated on the fly, so its field in CityInfo is @Transient and no such annotation is needed here.

Constructors

CityStats
Link copied to clipboard
fun CityStats(cityInfo: CityInfo)

Functions

constructionMatchesFilter
Link copied to clipboard
private fun constructionMatchesFilter(construction: IConstruction, filter: String): Boolean
equals
Link copied to clipboard
open operator fun equals(other: Any?): Boolean
getBuildingMaintenanceCosts
Link copied to clipboard
private fun getBuildingMaintenanceCosts(citySpecificUniques: Sequence<Unique>): Float
getGrowthBonusFromPoliciesAndWonders
Link copied to clipboard
private fun getGrowthBonusFromPoliciesAndWonders(): Float
getScienceConversionRate
Link copied to clipboard
fun getScienceConversionRate(): Float
getStatPercentBonusesFromGoldenAge
Link copied to clipboard
private fun getStatPercentBonusesFromGoldenAge(isGoldenAge: Boolean): Stats
getStatPercentBonusesFromNationUnique
Link copied to clipboard
private fun getStatPercentBonusesFromNationUnique(currentConstruction: IConstruction): Stats
getStatPercentBonusesFromPuppetCity
Link copied to clipboard
private fun getStatPercentBonusesFromPuppetCity(): Stats
getStatPercentBonusesFromRailroad
Link copied to clipboard
private fun getStatPercentBonusesFromRailroad(): Stats
getStatPercentBonusesFromUniques
Link copied to clipboard
private fun getStatPercentBonusesFromUniques(currentConstruction: IConstruction, uniqueSequence: Sequence<Unique>): Stats
getStatPercentBonusesFromUnitSupply
Link copied to clipboard
private fun getStatPercentBonusesFromUnitSupply(): Stats
getStatsFromCityStates
Link copied to clipboard
private fun getStatsFromCityStates(): Stats
getStatsFromProduction
Link copied to clipboard
private fun getStatsFromProduction(production: Float): Stats
getStatsFromSpecialists
Link copied to clipboard
private fun getStatsFromSpecialists(specialists: Counter<String>): Stats
getStatsFromTradeRoute
Link copied to clipboard
private fun getStatsFromTradeRoute(): Stats
getStatsFromUniquesBySource
Link copied to clipboard
private fun getStatsFromUniquesBySource(): StatMap
getStatsOfSpecialist
Link copied to clipboard
fun getStatsOfSpecialist(specialistName: String): Stats
hasExtraAnnexUnhappiness
Link copied to clipboard
fun hasExtraAnnexUnhappiness(): Boolean
hashCode
Link copied to clipboard
open fun hashCode(): Int
isConnectedToCapital
Link copied to clipboard
fun isConnectedToCapital(roadType: RoadStatus): Boolean
renameStatmapKeys
Link copied to clipboard
private fun renameStatmapKeys(statMap: StatMap)
toString
Link copied to clipboard
open fun toString(): String
update
Link copied to clipboard
fun update(currentConstruction: IConstruction = cityInfo.cityConstructions.getCurrentConstruction(), updateTileStats: Boolean = true)

Does not update tile stats - instead, updating tile stats updates this

updateBaseStatList
Link copied to clipboard
private fun updateBaseStatList(statsFromBuildings: Stats)
updateCityHappiness
Link copied to clipboard
fun updateCityHappiness(statsFromBuildings: Stats)
updateFinalStatList
Link copied to clipboard
private fun updateFinalStatList(currentConstruction: IConstruction, citySpecificUniques: Sequence<Unique>)
updateFoodEaten
Link copied to clipboard
private fun updateFoodEaten()
updateStatPercentBonusList
Link copied to clipboard
private fun updateStatPercentBonusList(currentConstruction: IConstruction, localBuildingUniques: Sequence<Unique>)
updateTileStats
Link copied to clipboard
fun updateTileStats()

Properties

baseStatList
Link copied to clipboard
var baseStatList: LinkedHashMap<String, Stats>
cityInfo
Link copied to clipboard
val cityInfo: CityInfo
currentCityStats
Link copied to clipboard
var currentCityStats: Stats
finalStatList
Link copied to clipboard
var finalStatList: LinkedHashMap<String, Stats>
foodEaten
Link copied to clipboard
var foodEaten: Float = 0f
happinessList
Link copied to clipboard
var happinessList: LinkedHashMap<String, Float>
statPercentBonusList
Link copied to clipboard
var statPercentBonusList: LinkedHashMap<String, Stats>
statsFromTiles
Link copied to clipboard
var statsFromTiles: Stats

Sources

jvm source
Link copied to clipboard