From 20673407ec5a3515ebf882dbc6eadf45e737bf6d Mon Sep 17 00:00:00 2001 From: Tibo De Peuter Date: Sat, 15 Oct 2022 15:34:58 +0200 Subject: [PATCH] Synchronisatie --- src/Main.hs | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/Main.hs b/src/Main.hs index b1a6cde..94ea42f 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -164,14 +164,21 @@ flipCard target board -- TODO Maak deze lamdba mooier. | target `elem` (map firstOfThree (turned board)) = board -- Controleer al omgedraaid? | otherwise = board { - cards = showCard target $ cards board -- Toon de kaart in de lijst van kaarten. - , turned = flipped ++ turned board -- Voeg toe aan 'omgedraaide kaarten'. - } - where flipped = filter ((target ==).firstOfThree) $ cards board + cards = newCards -- Toon de kaart in de lijst van kaarten. + , turned = flipped ++ turned board -- Voeg toe aan 'omgedraaide kaarten'. + } + where newCards = showCard target $ cards board + flipped = filter ((target ==).firstOfThree) newCards -- Reset de laatste omgedraaide kaarten terug naar de `Hidden` status. resetTurned :: Board -> Board -resetTurned board = undefined +resetTurned board + | turned board == [] = board + | otherwise = board { + cards = hideCard target (cards board) + , turned = tail $ turned board + } + where target = (firstOfThree) $ head $ turned board -- Bereken het volgende bord op basis van de omgedraaide kaarten. -- Hint: We hebben de drie gevallen voor deze functie al voorzien.