diff --git a/app/Main.hs b/app/Main.hs index 2ca918a54..755bffe0f 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -1,39 +1,39 @@ module Main where -import Loop -import Shader -import LoadConfig -import Dodge.Default -import Dodge.Data -import Dodge.Initialisation -import Dodge.Rooms -import Dodge.Layout -import Dodge.LoadSound -import Dodge.Update -import Dodge.Event -import Dodge.Render -import Dodge.Menu -import Dodge.Floor -import Dodge.LoadConfig -import Dodge.LoadSound -import Picture -import Picture.Render -import Picture.Preload -import Sound -import Preload -import Sound.Preload +import Dodge.Data +import Dodge.Default +import Dodge.Event +import Dodge.Floor +import Dodge.Initialisation +import Dodge.Layout +import Dodge.LoadConfig +import Dodge.LoadSound +import Dodge.Menu +import Dodge.Render +import Dodge.Rooms +import Dodge.Update +import LoadConfig +import Loop +import Picture +import Picture.Preload +import Picture.Render +import Preload +import Shader +import Sound +import Sound.Preload -import Control.Concurrent -import Control.Lens -import Foreign (Word32) +import Control.Concurrent +import Control.Lens +import Foreign (Word32) -import Control.Monad (when) - -import System.Random +import Control.Monad (void, when) -import qualified Data.Map as M +import System.Random + +import qualified Data.Map as M +import Graphics.Rendering.OpenGL hiding (color, rotate, scale, + translate) import qualified SDL -import qualified SDL.Mixer as Mix -import Graphics.Rendering.OpenGL hiding (color,scale,translate,rotate) +import qualified SDL.Mixer as Mix doPreload' :: IO (PreloadData a) doPreload' = do @@ -46,7 +46,7 @@ main :: IO () main = do (sizex,sizey) <- loadConfig keyConfig <- loadKeyConfig - setupLoop + setupLoop (sizex,sizey) (SDL.cursorVisible $= False >> doPreload' >>= resizeSpareFBO sizex sizey) (\x -> (SDL.cursorVisible $= True) >> cleanUpPreload x) @@ -59,16 +59,13 @@ main = do endTicks <- SDL.ticks let lastFrameTicks = _frameTimer preData - if (_debugMode w) then - renderFoldable - (_renderData preData) - (picToLTree Nothing . setLayer 1 . setDepth (-1) - . translate (-0.5) (-0.8) . scale 0.0005 0.0005 + when (_debugMode w) $ void $ renderFoldable + (_renderData preData) + (picToLTree Nothing . setLayer 1 . setDepth (-1) + . translate (-0.5) (-0.8) . scale 0.0005 0.0005 . text $ "ms/frame " ++ show (endTicks - lastFrameTicks) ) - else - -- ? Why (or rather how to avoid) - return endTicks + return $ preData & soundData .~ newSoundData & frameTimer .~ endTicks