Subplot fix 2
authorTheSaminator <TheSaminator@users.noreply.github.com>
Sat, 11 Jun 2022 13:41:53 +0000 (09:41 -0400)
committerTheSaminator <TheSaminator@users.noreply.github.com>
Sat, 11 Jun 2022 13:41:53 +0000 (09:41 -0400)
src/commonMain/kotlin/net/starshipfights/game/game_subplots.kt

index a407335731154a4a964b8f528b68185e5f95d4b0..165709d05f51ee08701980608876860e2c168f2f 100644 (file)
@@ -142,8 +142,8 @@ sealed class Subplot {
                        if (gameState.ships[againstShip] != null) return gameState
                        
                        val enemyShips = gameState.ships.values.filter { it.owner == forPlayer.other }
-                       val highestEnemyShipTier = enemyShips.maxOf { it.ship.shipType.weightClass }
-                       val enemyShipsOfHighestTier = enemyShips.filter { it.ship.shipType.weightClass == highestEnemyShipTier }
+                       val highestEnemyShipTier = enemyShips.maxOf { it.ship.shipType.weightClass.tier }
+                       val enemyShipsOfHighestTier = enemyShips.filter { it.ship.shipType.weightClass.tier == highestEnemyShipTier }
                        
                        val vendettaShip = enemyShipsOfHighestTier.random().id
                        return gameState.modifySubplotData(Vendetta(forPlayer, vendettaShip, SubplotOutcome.UNDECIDED))
@@ -181,8 +181,8 @@ sealed class Subplot {
                        if (gameState.ships[againstShip] != null) return gameState
                        
                        val myShips = gameState.ships.values.filter { it.owner == forPlayer }
-                       val highestShipTier = myShips.maxOf { it.ship.shipType.weightClass }
-                       val shipsNotOfHighestTier = myShips.filter { it.ship.shipType.weightClass != highestShipTier }.ifEmpty { myShips }
+                       val highestShipTier = myShips.maxOf { it.ship.shipType.weightClass.tier }
+                       val shipsNotOfHighestTier = myShips.filter { it.ship.shipType.weightClass.tier != highestShipTier }.ifEmpty { myShips }
                        
                        val arkancideShip = shipsNotOfHighestTier.random().id
                        return gameState.modifySubplotData(PlausibleDeniability(forPlayer, arkancideShip, SubplotOutcome.UNDECIDED))
@@ -220,8 +220,8 @@ sealed class Subplot {
                        if (gameState.ships[onBoardShip] != null) return gameState
                        
                        val enemyShips = gameState.ships.values.filter { it.owner == forPlayer.other }
-                       val lowestEnemyShipTier = enemyShips.minOf { it.ship.shipType.weightClass }
-                       val enemyShipsNotOfLowestTier = enemyShips.filter { it.ship.shipType.weightClass != lowestEnemyShipTier }.ifEmpty { enemyShips }
+                       val lowestEnemyShipTier = enemyShips.minOf { it.ship.shipType.weightClass.tier }
+                       val enemyShipsNotOfLowestTier = enemyShips.filter { it.ship.shipType.weightClass.tier != lowestEnemyShipTier }.ifEmpty { enemyShips }
                        
                        val informantShip = enemyShipsNotOfLowestTier.random().id
                        return gameState.modifySubplotData(RecoverInformant(forPlayer, informantShip, SubplotOutcome.UNDECIDED, null))