mirror of
https://github.com/yairm210/Unciv.git
synced 2025-02-13 12:27:40 +07:00
Resolved #8050 - "Occurs at temperature between [amount] and [amount] and humidity between [amount] and [amount]" now applicable to resources
This commit is contained in:
parent
d1225377e0
commit
1b8c98eed3
@ -83,7 +83,13 @@ open class TileInfo : IsPartOfGameInfoSerialization {
|
||||
var terrainUniqueMap = UniqueMap()
|
||||
private set
|
||||
|
||||
@Transient
|
||||
/** Between 0.0 and 1.0 - For map generation use only */
|
||||
var humidity:Double? = null
|
||||
|
||||
@Transient
|
||||
/** Between -1.0 and 1.0 - For map generation use only */
|
||||
var temperature:Double? = null
|
||||
|
||||
var naturalWonder: String? = null
|
||||
var resource: String? = null
|
||||
|
@ -12,7 +12,6 @@ import com.unciv.logic.map.TileInfo
|
||||
import com.unciv.logic.map.TileMap
|
||||
import com.unciv.models.Counter
|
||||
import com.unciv.models.metadata.GameParameters
|
||||
import com.unciv.models.metadata.GameSetupInfo
|
||||
import com.unciv.models.ruleset.Ruleset
|
||||
import com.unciv.models.ruleset.tile.ResourceType
|
||||
import com.unciv.models.ruleset.tile.Terrain
|
||||
@ -534,6 +533,8 @@ class MapGenerator(val ruleset: Ruleset) {
|
||||
tile.baseTerrain = firstLandTerrain.name
|
||||
debug("applyHumidityAndTemperature: No terrain found for temperature: %s, humidity: %s", temperature, humidity)
|
||||
}
|
||||
tile.humidity = humidity
|
||||
tile.temperature = temperature
|
||||
tile.setTerrainTransients()
|
||||
}
|
||||
}
|
||||
|
@ -1443,7 +1443,12 @@ class MapRegions (val ruleset: Ruleset){
|
||||
if (tile.resource == null &&
|
||||
tile.getLastTerrain().name in resource.terrainsCanBeFoundOn &&
|
||||
!tile.getBaseTerrain().hasUnique(UniqueType.BlocksResources, conditionalTerrain) &&
|
||||
!resource.hasUnique(UniqueType.NoNaturalGeneration, conditionalTerrain)) {
|
||||
!resource.hasUnique(UniqueType.NoNaturalGeneration, conditionalTerrain) &&
|
||||
resource.getMatchingUniques(UniqueType.TileGenerationConditions).none {
|
||||
tile.temperature!! < it.params[0].toDouble() || tile.temperature!! > it.params[1].toDouble()
|
||||
|| tile.humidity!! < it.params[2].toDouble() || tile.humidity!! > it.params[3].toDouble()
|
||||
}
|
||||
) {
|
||||
if (ratioProgress >= 1f &&
|
||||
!(respectImpacts && tileData[tile.position]!!.impacts.containsKey(impactType))) {
|
||||
tile.setTileResource(resource, majorDeposit)
|
||||
|
@ -527,7 +527,7 @@ enum class UniqueType(val text: String, vararg targets: UniqueTarget, val flags:
|
||||
HasQuality("Considered [terrainQuality] when determining start locations", UniqueTarget.Terrain, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
|
||||
NoNaturalGeneration("Doesn't generate naturally", UniqueTarget.Terrain, UniqueTarget.Resource, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
TileGenerationConditions("Occurs at temperature between [amount] and [amount] and humidity between [amount] and [amount]", UniqueTarget.Terrain, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
TileGenerationConditions("Occurs at temperature between [amount] and [amount] and humidity between [amount] and [amount]", UniqueTarget.Terrain, UniqueTarget.Resource, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
OccursInChains("Occurs in chains at high elevations", UniqueTarget.Terrain, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
OccursInGroups("Occurs in groups around high elevations", UniqueTarget.Terrain, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
MajorStrategicFrequency("Every [amount] tiles with this terrain will receive a major deposit of a strategic resource.", UniqueTarget.Terrain, flags = UniqueFlag.setOfHiddenToUsers),
|
||||
|
@ -1420,7 +1420,7 @@ Simple unique parameters are explained by mouseover. Complex parameters are expl
|
||||
??? example "Occurs at temperature between [amount] and [amount] and humidity between [amount] and [amount]"
|
||||
Example: "Occurs at temperature between [3] and [3] and humidity between [3] and [3]"
|
||||
|
||||
Applicable to: Terrain
|
||||
Applicable to: Terrain, Resource
|
||||
|
||||
??? example "Occurs in chains at high elevations"
|
||||
Applicable to: Terrain
|
||||
|
Loading…
Reference in New Issue
Block a user