diff --git a/src/Main.hs b/src/Main.hs index 65425ac..fd52df1 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -26,7 +26,7 @@ main = do chan <- newBChan 1 forkIO $ forever $ do writeBChan chan Tick - threadDelay 70000 + threadDelay $ (optTime options) * 10000 g <- initGame let buildVty = V.mkVty V.defaultConfig initialVty <- buildVty diff --git a/src/Options.hs b/src/Options.hs index 719fc08..2cd5981 100644 --- a/src/Options.hs +++ b/src/Options.hs @@ -13,6 +13,7 @@ data Options = Options { optWidth :: Int , optGenerations :: Int , optHeight :: Int + , optTime :: Int } deriving Show -- the default options for the program @@ -24,6 +25,7 @@ defaultOptions w h = Options { optWidth = w , optGenerations = 40 , optHeight = h + , optTime = 7 } -- the avaliable options @@ -38,6 +40,9 @@ options = , Option ['h'] ["height"] (ReqArg (\t opts -> opts { optHeight = (read t) }) "HEIGHT") "term height" + , Option ['t'] ["time"] + (ReqArg (\t opts -> opts { optTime = (read t) }) "TIME") + "delay time" ] -- parse the options into the structure