diff options
author | Joffrey Bion <joffrey.bion@booking.com> | 2020-08-12 01:45:05 +0200 |
---|---|---|
committer | Joffrey Bion <joffrey.bion@booking.com> | 2020-08-12 01:45:05 +0200 |
commit | 07ea64c3b9e5a9a6ac4831baf542d44c820b9148 (patch) | |
tree | 977a4a3267f011d6bcf60c3724c0b7f1cbba3e1a | |
parent | Change font to Acme for token counts (diff) | |
download | seven-wonders-07ea64c3b9e5a9a6ac4831baf542d44c820b9148.tar.gz seven-wonders-07ea64c3b9e5a9a6ac4831baf542d44c820b9148.tar.bz2 seven-wonders-07ea64c3b9e5a9a6ac4831baf542d44c820b9148.zip |
Display only victory military points on the board next to victory tokens
The count displayed used to be the total combined number of points including defeat tokens,
but this is a bit confusing as we can see both types of tokens next to each other.
4 files changed, 9 insertions, 5 deletions
diff --git a/sw-common-model/src/commonMain/kotlin/org/luxons/sevenwonders/model/boards/Boards.kt b/sw-common-model/src/commonMain/kotlin/org/luxons/sevenwonders/model/boards/Boards.kt index 333883b6..e080b929 100644 --- a/sw-common-model/src/commonMain/kotlin/org/luxons/sevenwonders/model/boards/Boards.kt +++ b/sw-common-model/src/commonMain/kotlin/org/luxons/sevenwonders/model/boards/Boards.kt @@ -35,6 +35,7 @@ data class Production( @Serializable data class Military( val nbShields: Int, + val victoryPoints: Int, val totalPoints: Int, val nbDefeatTokens: Int ) diff --git a/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/boards/Military.kt b/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/boards/Military.kt index a4cb4ee8..0b81f29d 100644 --- a/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/boards/Military.kt +++ b/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/boards/Military.kt @@ -9,7 +9,10 @@ internal class Military( var nbShields = 0 private set - var totalPoints = 0 + val totalPoints + get() = victoryPoints + lostPointsPerDefeat * nbDefeatTokens + + var victoryPoints = 0 private set var nbDefeatTokens = 0 @@ -21,11 +24,10 @@ internal class Military( internal fun victory(age: Age) { val wonPoints = wonPointsPerVictoryPerAge[age] ?: throw UnknownAgeException(age) - totalPoints += wonPoints + victoryPoints += wonPoints } internal fun defeat() { - totalPoints -= lostPointsPerDefeat nbDefeatTokens++ } diff --git a/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/converters/Boards.kt b/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/converters/Boards.kt index 0d8369ac..ba07ce3a 100644 --- a/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/converters/Boards.kt +++ b/sw-engine/src/main/kotlin/org/luxons/sevenwonders/engine/converters/Boards.kt @@ -87,7 +87,8 @@ internal fun Resources.toCountedResourcesList(): List<CountedResource> = .map { (type, count) -> CountedResource(count, type) } .sortedBy { it.type } -internal fun InternalMilitary.toApiMilitary(): ApiMilitary = ApiMilitary(nbShields, totalPoints, nbDefeatTokens) +internal fun InternalMilitary.toApiMilitary(): ApiMilitary = + ApiMilitary(nbShields, victoryPoints, totalPoints, nbDefeatTokens) internal fun InternalScience.toApiScience(): ApiScience = ApiScience( diff --git a/sw-ui/src/main/kotlin/org/luxons/sevenwonders/ui/components/game/Board.kt b/sw-ui/src/main/kotlin/org/luxons/sevenwonders/ui/components/game/Board.kt index 30efc894..011ce732 100644 --- a/sw-ui/src/main/kotlin/org/luxons/sevenwonders/ui/components/game/Board.kt +++ b/sw-ui/src/main/kotlin/org/luxons/sevenwonders/ui/components/game/Board.kt @@ -113,7 +113,7 @@ private fun RBuilder.wonderComponent(wonder: ApiWonder, military: Military) { this.alt = "Wonder ${wonder.name}" } } - victoryPoints(military.totalPoints) { + victoryPoints(military.victoryPoints) { css { position = Position.absolute top = 25.pct // below the wonder name |