|
@@ -130,6 +130,21 @@ toggleFlag::Cell -> Cell
|
|
|
toggleFlag (Covered n b flag) = Covered n b !flag
|
|
|
toggleFlag c = c
|
|
|
|
|
|
+loop::Int -> Int -> Int -> Grid -> IO ()
|
|
|
+loop i j n b@(Grid xs)
|
|
|
+ | won n b = putStrLn " Victory !"
|
|
|
+ | otherwise = do
|
|
|
+ putStrLn $ show $ Grid $ applyij ( const Selected ) i j xs
|
|
|
+ c <- getChar
|
|
|
+ case c of
|
|
|
+ ’i ’ -> loop (max (i - 1) 0) j n b
|
|
|
+ ’k ’ -> ...
|
|
|
+ ’j ’ -> ...
|
|
|
+ ’l ’ -> ...
|
|
|
+ ’f ’ -> ...
|
|
|
+ ’u ’ -> ...
|
|
|
+ otherwise -> loop i j n b
|
|
|
+
|
|
|
|
|
|
|
|
|
|