From ae5a0d7506a0d723d31d5ec1ba33c5eab2b31f0d Mon Sep 17 00:00:00 2001 From: TheSaminator Date: Wed, 8 Jun 2022 11:52:12 -0400 Subject: [PATCH] Take subplot outcomes into account in battle records --- src/jsMain/kotlin/starshipfights/game/popup.kt | 2 +- .../starshipfights/data/admiralty/battle_records.kt | 3 +++ src/jvmMain/kotlin/starshipfights/game/server_game.kt | 3 +++ src/jvmMain/kotlin/starshipfights/info/views_user.kt | 8 ++++---- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/jsMain/kotlin/starshipfights/game/popup.kt b/src/jsMain/kotlin/starshipfights/game/popup.kt index 9ed0a7c..09172fb 100644 --- a/src/jsMain/kotlin/starshipfights/game/popup.kt +++ b/src/jsMain/kotlin/starshipfights/game/popup.kt @@ -503,7 +503,7 @@ sealed class Popup { style = "text-align:center" strong(classes = "heading") { - +victoryTitle(mySide, winner, subplotStatuses) + +"${victoryTitle(mySide, winner, subplotStatuses)}!" } } p { diff --git a/src/jvmMain/kotlin/starshipfights/data/admiralty/battle_records.kt b/src/jvmMain/kotlin/starshipfights/data/admiralty/battle_records.kt index bf7ce74..e90c09d 100644 --- a/src/jvmMain/kotlin/starshipfights/data/admiralty/battle_records.kt +++ b/src/jvmMain/kotlin/starshipfights/data/admiralty/battle_records.kt @@ -28,6 +28,9 @@ data class BattleRecord( val hostAdmiral: Id, val guestAdmiral: Id, + val hostEndingMessage: String, + val guestEndingMessage: String, + val winner: GlobalSide?, val winMessage: String, ) : DataDocument { diff --git a/src/jvmMain/kotlin/starshipfights/game/server_game.kt b/src/jvmMain/kotlin/starshipfights/game/server_game.kt index 82752cb..4be90be 100644 --- a/src/jvmMain/kotlin/starshipfights/game/server_game.kt +++ b/src/jvmMain/kotlin/starshipfights/game/server_game.kt @@ -229,6 +229,9 @@ private suspend fun onGameEnd(gameState: GameState, gameEnd: GameEvent.GameEnd, hostAdmiral = hostAdmiralId, guestAdmiral = guestAdmiralId, + hostEndingMessage = victoryTitle(GlobalSide.HOST, gameEnd.winner, gameEnd.subplotOutcomes), + guestEndingMessage = victoryTitle(GlobalSide.GUEST, gameEnd.winner, gameEnd.subplotOutcomes), + winner = gameEnd.winner, winMessage = gameEnd.message ) diff --git a/src/jvmMain/kotlin/starshipfights/info/views_user.kt b/src/jvmMain/kotlin/starshipfights/info/views_user.kt index d943a4b..b032b60 100644 --- a/src/jvmMain/kotlin/starshipfights/info/views_user.kt +++ b/src/jvmMain/kotlin/starshipfights/info/views_user.kt @@ -633,10 +633,10 @@ suspend fun ApplicationCall.admiralPage(): HTML.() -> Unit { } } td { - +when (record.winner) { - null -> "Stalemate" - recordRoles[record.id] -> "Victory" - else -> "Defeat" + +when (recordRoles[record.id]) { + GlobalSide.HOST -> record.hostEndingMessage + GlobalSide.GUEST -> record.guestEndingMessage + else -> "N/A" } } } -- 2.25.1