4.6.1-patch2

Fixed multiplayer games not starting because player ID was being lost on the way @SomeTroglodyte
This commit is contained in:
Yair Morgenstern 2023-04-13 23:58:41 +03:00
parent fd9284f8a3
commit 26d16fc1cc
5 changed files with 13 additions and 13 deletions

View File

@ -3,8 +3,8 @@ package com.unciv.build
object BuildConfig { object BuildConfig {
const val kotlinVersion = "1.8.0" const val kotlinVersion = "1.8.0"
const val appName = "Unciv" const val appName = "Unciv"
const val appCodeNumber = 847 const val appCodeNumber = 848
const val appVersion = "4.6.1-patch1" const val appVersion = "4.6.1-patch2"
const val gdxVersion = "1.11.0" const val gdxVersion = "1.11.0"
const val roboVMVersion = "2.3.1" const val roboVMVersion = "2.3.1"

View File

@ -531,7 +531,7 @@ open class UncivGame(val isConsoleMode: Boolean = false) : Game(), PlatformSpeci
companion object { companion object {
//region AUTOMATICALLY GENERATED VERSION DATA - DO NOT CHANGE THIS REGION, INCLUDING THIS COMMENT //region AUTOMATICALLY GENERATED VERSION DATA - DO NOT CHANGE THIS REGION, INCLUDING THIS COMMENT
val VERSION = Version("4.6.1-patch1", 847) val VERSION = Version("4.6.1-patch2", 848)
//endregion //endregion
lateinit var Current: UncivGame lateinit var Current: UncivGame

View File

@ -23,7 +23,6 @@ import com.unciv.models.stats.Stats
import com.unciv.models.translations.equalsPlaceholderText import com.unciv.models.translations.equalsPlaceholderText
import com.unciv.models.translations.getPlaceholderParameters import com.unciv.models.translations.getPlaceholderParameters
import com.unciv.utils.debug import com.unciv.utils.debug
import kotlin.collections.ArrayDeque
object GameStarter { object GameStarter {
// temporary instrumentation while tuning/debugging // temporary instrumentation while tuning/debugging
@ -293,8 +292,8 @@ object GameStarter {
// Resolve random players // Resolve random players
when { when {
it.chosenCiv != Constants.random -> it it.chosenCiv != Constants.random -> it
presetRandomNationsPool.isNotEmpty() -> Player(presetRandomNationsPool.removeLast(), it.playerType) presetRandomNationsPool.isNotEmpty() -> Player(presetRandomNationsPool.removeLast(), it.playerType, it.playerId)
randomNationsPool.isNotEmpty() -> Player(randomNationsPool.removeLast(), it.playerType) randomNationsPool.isNotEmpty() -> Player(randomNationsPool.removeLast(), it.playerType, it.playerId)
else -> null else -> null
} }
}.toCollection(chosenPlayers) }.toCollection(chosenPlayers)

View File

@ -6,7 +6,6 @@ import com.unciv.logic.civilization.PlayerType
class Player( class Player(
var chosenCiv: String = Constants.random, var chosenCiv: String = Constants.random,
var playerType: PlayerType = PlayerType.AI var playerType: PlayerType = PlayerType.AI,
) : IsPartOfGameInfoSerialization { var playerId:String = ""
var playerId = "" ) : IsPartOfGameInfoSerialization
}

View File

@ -23,6 +23,7 @@ import com.unciv.models.ruleset.unit.BaseUnit
import com.unciv.models.stats.Stat import com.unciv.models.stats.Stat
import com.unciv.models.translations.tr import com.unciv.models.translations.tr
import com.unciv.ui.audio.SoundPlayer import com.unciv.ui.audio.SoundPlayer
import com.unciv.ui.components.ColorMarkupLabel
import com.unciv.ui.components.ExpanderTab import com.unciv.ui.components.ExpanderTab
import com.unciv.ui.components.UncivTooltip.Companion.addTooltip import com.unciv.ui.components.UncivTooltip.Companion.addTooltip
import com.unciv.ui.components.extensions.addBorder import com.unciv.ui.components.extensions.addBorder
@ -401,7 +402,7 @@ class CityConstructionsTable(private val cityScreen: CityScreen) {
for (unique in constructionButtonDTO.construction.getMatchingUniquesNotConflicting(UniqueType.CostsResources)){ for (unique in constructionButtonDTO.construction.getMatchingUniquesNotConflicting(UniqueType.CostsResources)){
val color = if (constructionButtonDTO.rejectionReason?.type == RejectionReasonType.ConsumesResources) val color = if (constructionButtonDTO.rejectionReason?.type == RejectionReasonType.ConsumesResources)
Color.RED else Color.WHITE Color.RED else Color.WHITE
resourceTable.add(unique.params[0].toLabel(fontColor = color)).expandX().left().padLeft(5f) resourceTable.add(ColorMarkupLabel(unique.params[0], color)).expandX().left().padLeft(5f)
resourceTable.add(ImageGetter.getResourcePortrait(unique.params[1], 15f)).padBottom(1f) resourceTable.add(ImageGetter.getResourcePortrait(unique.params[1], 15f)).padBottom(1f)
} }
constructionTable.add(resourceTable).expandX().left() constructionTable.add(resourceTable).expandX().left()
@ -425,8 +426,9 @@ class CityConstructionsTable(private val cityScreen: CityScreen) {
pickConstructionButton.color.a = 0.9f pickConstructionButton.color.a = 0.9f
icon.color.a = 0.5f icon.color.a = 0.5f
if (constructionButtonDTO.rejectionReason.type != RejectionReasonType.ConsumesResources) { if (constructionButtonDTO.rejectionReason.type != RejectionReasonType.ConsumesResources) {
pickConstructionButton.add(constructionButtonDTO.rejectionReason.errorMessage pickConstructionButton.add(
.toLabel(Color.RED).apply { wrap = true }) ColorMarkupLabel(constructionButtonDTO.rejectionReason.errorMessage, Color.RED)
.apply { wrap = true })
.colspan(pickConstructionButton.columns) .colspan(pickConstructionButton.columns)
.width(cityScreen.stage.width/4).fillX().left().padTop(2f) .width(cityScreen.stage.width/4).fillX().left().padTop(2f)
} }