mirror of
https://github.com/yairm210/Unciv.git
synced 2025-02-20 19:56:51 +01:00
Moved removeImprovement up to the GameStarter, which is the only place it's needed
This commit is contained in:
parent
cefd92e7ce
commit
85e1476efb
|
|
@ -118,13 +118,17 @@ object GameStarter {
|
|||
for (civ in gameInfo.civilizations.filter { !it.isBarbarian() }) {
|
||||
val startingLocation = startingLocations[civ]!!
|
||||
|
||||
civ.placeUnitNearTile(startingLocation.position, Constants.settler, removeImprovement = true)
|
||||
civ.placeUnitNearTile(startingLocation.position, getWarriorEquivalent(civ), removeImprovement = true)
|
||||
fun placeNearStartingPosition(unitName:String) {
|
||||
val newUnit = civ.placeUnitNearTile(startingLocation.position, unitName)
|
||||
if (newUnit != null) newUnit.currentTile.improvement = null
|
||||
}
|
||||
placeNearStartingPosition(Constants.settler)
|
||||
placeNearStartingPosition(getWarriorEquivalent(civ))
|
||||
|
||||
if (!civ.isPlayerCivilization() && civ.isMajorCiv()) {
|
||||
for (unit in gameInfo.getDifficulty().aiFreeUnits) {
|
||||
val unitToAdd = if (unit == "Warrior") getWarriorEquivalent(civ) else unit
|
||||
civ.placeUnitNearTile(startingLocation.position, unitToAdd, removeImprovement = true)
|
||||
placeNearStartingPosition(unitToAdd)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -482,8 +482,8 @@ class CivilizationInfo {
|
|||
addNotification("A [$greatPersonName] has been born in [${city.name}]!", city.location, Color.GOLD)
|
||||
}
|
||||
|
||||
fun placeUnitNearTile(location: Vector2, unitName: String, removeImprovement: Boolean = false): MapUnit? {
|
||||
return gameInfo.tileMap.placeUnitNearTile(location, unitName, this, removeImprovement = removeImprovement)
|
||||
fun placeUnitNearTile(location: Vector2, unitName: String): MapUnit? {
|
||||
return gameInfo.tileMap.placeUnitNearTile(location, unitName, this)
|
||||
}
|
||||
|
||||
fun addCity(location: Vector2) {
|
||||
|
|
|
|||
|
|
@ -124,8 +124,7 @@ class TileMap {
|
|||
fun placeUnitNearTile(
|
||||
position: Vector2,
|
||||
unitName: String,
|
||||
civInfo: CivilizationInfo,
|
||||
removeImprovement: Boolean = false
|
||||
civInfo: CivilizationInfo
|
||||
): MapUnit? {
|
||||
val unit = gameInfo.ruleSet.units[unitName]!!.getMapUnit(gameInfo.ruleSet)
|
||||
|
||||
|
|
@ -159,8 +158,6 @@ class TileMap {
|
|||
return null // we didn't actually create a unit...
|
||||
}
|
||||
|
||||
// Remove the tile improvement, e.g. when placing the starter units (so they don't spawn on ruins/encampments)
|
||||
if (removeImprovement) unitToPlaceTile.improvement = null
|
||||
// only once we know the unit can be placed do we add it to the civ's unit list
|
||||
unit.putInTile(unitToPlaceTile)
|
||||
unit.currentMovement = unit.getMaxMovement().toFloat()
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user