canMove functie toegevoegd
Wat gaat er gebeuren als er een kaart alleen staat?
This commit is contained in:
parent
7bdf511b8f
commit
e81fe92deb
1 changed files with 6 additions and 4 deletions
10
src/Main.hs
Executable file → Normal file
10
src/Main.hs
Executable file → Normal file
|
@ -108,7 +108,7 @@ shuffleList l = shuffle' l (length l) (mkStdGen seed)
|
||||||
-- Genereer een lijst met n verschillende kleuren.
|
-- Genereer een lijst met n verschillende kleuren.
|
||||||
-- Hint: Je kan gebruikmaken van de generateColor-functie.
|
-- Hint: Je kan gebruikmaken van de generateColor-functie.
|
||||||
generateColors :: Int -> [Color]
|
generateColors :: Int -> [Color]
|
||||||
generateColors n = map (generateColor . fromIntegral . (360 `div` n *)) [1..n]
|
generateColors n = map (generateColor.fromIntegral.(div 360 n *)) [1..n]
|
||||||
|
|
||||||
-- Genereer een lijst van n kaarten (n/2 kleurenparen).
|
-- Genereer een lijst van n kaarten (n/2 kleurenparen).
|
||||||
generateShuffledCards :: Int -> [Card]
|
generateShuffledCards :: Int -> [Card]
|
||||||
|
@ -119,20 +119,22 @@ generateShuffledCards n = map (\(x,y) -> (x,y,Hidden)) $ zip (zip [1..n] [1..n])
|
||||||
colors_once = generateColors (n `div` 2)
|
colors_once = generateColors (n `div` 2)
|
||||||
|
|
||||||
-- Controleer of een positie op het spelbord een kaart bevat.
|
-- Controleer of een positie op het spelbord een kaart bevat.
|
||||||
-- Om de kaarten van het huidige speelbord op te vragen, gebruik 'cards initBoard'
|
-- Om de kaarten van het huidige speelbord op te vragen, gebruik
|
||||||
|
-- 'cards initBoard'
|
||||||
hasCard :: Coordinate -> Bool
|
hasCard :: Coordinate -> Bool
|
||||||
hasCard c0 = any (\(c1,_,_) -> c1 == c0) $ cards initBoard
|
hasCard c0 = any (\(c1,_,_) -> c1 == c0) $ cards initBoard
|
||||||
|
|
||||||
-- Controleer of de selector vanaf een gegeven locatie in een
|
-- Controleer of de selector vanaf een gegeven locatie in een
|
||||||
-- gegeven richting kan bewegen.
|
-- gegeven richting kan bewegen.
|
||||||
canMove :: Coordinate -> Direction -> Bool
|
canMove :: Coordinate -> Direction -> Bool
|
||||||
canMove coord direction = undefined
|
canMove (w, h) (dw, dh) = hasCard $ (w + dw, h + dh)
|
||||||
|
|
||||||
-- Beweeg de selector in een gegeven richting.
|
-- Beweeg de selector in een gegeven richting.
|
||||||
move :: Board -> Direction -> Board
|
move :: Board -> Direction -> Board
|
||||||
move board direction = undefined
|
move board direction = undefined
|
||||||
|
|
||||||
-- Verander de status van een kaart op een gegeven positie -- wanneer de posities overeenkomen.
|
-- Verander de status van een kaart op een gegeven positie
|
||||||
|
-- wanneer de posities overeenkomen.
|
||||||
changeCard :: Coordinate -> CardStatus -> Card -> Card
|
changeCard :: Coordinate -> CardStatus -> Card -> Card
|
||||||
changeCard c s card = undefined
|
changeCard c s card = undefined
|
||||||
|
|
||||||
|
|
Reference in a new issue