Refactor, try to limit dependencies

This commit is contained in:
2022-07-28 00:59:56 +01:00
parent 8aa5c17ab9
commit 160560af5f
418 changed files with 15104 additions and 13342 deletions
+12 -9
View File
@@ -1,18 +1,21 @@
module Dodge.StartNewGame where
import Dodge.Data
import Dodge.LevelGen
import Control.Lens
import Dodge.Data.Universe
import Dodge.LevelGen
import System.Random
startNewGame :: Universe -> Universe
startNewGame u = startSeedGame i u
where
i = fst $ randomR (0,maxBound) (_randGen (_uvWorld u))
i = fst $ randomR (0, maxBound) (_randGen (_uvWorld u))
startSeedGame :: Int -> Universe -> Universe
startSeedGame i u = u
& menuLayers .~ [WaitScreen (const "GENERATING...") 1]
& uvIOEffects .~ \_ -> do
w <- generateWorldFromSeed i
return $ u & menuLayers .~ [] & uvWorld .~ w
& savedWorlds . at LevelStartSlot ?~ w
startSeedGame i u =
u
& menuLayers .~ [WaitScreen (const "GENERATING...") 1]
& uvIOEffects .~ \_ -> do
w <- generateWorldFromSeed i
return $
u & menuLayers .~ [] & uvWorld .~ w
& savedWorlds . at LevelStartSlot ?~ w