Fix tests & clues (WIP)

This commit is contained in:
2024-06-25 09:49:44 +02:00
parent 4c7cc68024
commit 593939a082
8 changed files with 175 additions and 54 deletions

View File

@@ -23,7 +23,7 @@ import domain.HorizontalClue
import domain.ItemClass
import domain.NeighbourClue
import domain.OrderClue
import domain.SameRowClue
import domain.SameColumnClue
import domain.TripletClue
import domain.generateGame
import org.jetbrains.compose.resources.painterResource
@@ -80,7 +80,7 @@ fun PuzzleGrid(
fun PuzzleClues(
modifier: Modifier = Modifier,
horizontalClues: List<DisplayClue<HorizontalClue>>,
verticalClues: List<DisplayClue<SameRowClue<ItemClass<*>>>>
verticalClues: List<DisplayClue<SameColumnClue<ItemClass<*>, ItemClass<*>>>>
) {
Column(modifier = modifier) {
LazyVerticalGrid(
@@ -137,7 +137,7 @@ fun PuzzleClues(
fun HorizontalClue(modifier: Modifier = Modifier, clue: HorizontalClue) {
Column {
when (clue) {
is NeighbourClue<*> -> {
is NeighbourClue<*, *> -> {
DrawItem(modifier = Modifier.weight(1f), clue.a)
OutlinedCard(modifier = modifier.aspectRatio(1f).weight(1f)) {
Image(
@@ -148,7 +148,7 @@ fun HorizontalClue(modifier: Modifier = Modifier, clue: HorizontalClue) {
DrawItem(modifier = Modifier.weight(1f), clue.b)
}
is OrderClue<*> -> {
is OrderClue<*, *> -> {
DrawItem(modifier = Modifier.weight(1f), clue.left)
OutlinedCard(modifier = modifier.aspectRatio(1f).weight(1f)) {
Image(painter = painterResource(Res.drawable.order), contentDescription = null)
@@ -156,7 +156,7 @@ fun HorizontalClue(modifier: Modifier = Modifier, clue: HorizontalClue) {
DrawItem(modifier = Modifier.weight(1f), clue.right)
}
is TripletClue<*> -> {
is TripletClue<*, *, *> -> {
DrawItem(modifier = Modifier.weight(1f), clue.a)
DrawItem(modifier = Modifier.weight(1f), clue.b)
DrawItem(modifier = Modifier.weight(1f), clue.c)
@@ -166,7 +166,7 @@ fun HorizontalClue(modifier: Modifier = Modifier, clue: HorizontalClue) {
}
@Composable
fun VerticalClue(modifier: Modifier = Modifier, clue: SameRowClue<*>) {
fun VerticalClue(modifier: Modifier = Modifier, clue: SameColumnClue<*, *>) {
Column(modifier = modifier) {
DrawItem(modifier = Modifier.weight(1f), clue.a)
DrawItem(modifier = Modifier.weight(1f), clue.b)