Minor cleanup

This commit is contained in:
2021-11-15 02:16:17 +00:00
parent e93fa10a97
commit 59dc24aff6
5 changed files with 21 additions and 17 deletions
+8 -1
View File
@@ -16,6 +16,7 @@ import Dodge.Room.Link
import Geometry
import qualified IntMapHelp as IM
import Tile
import Dodge.RandomHelp
import Data.List (nubBy)
import Data.Traversable
@@ -25,6 +26,7 @@ import Data.Foldable
import qualified Control.Foldl as L
import Data.Maybe
import Data.Function
import Control.Monad.State
generateLevelFromRoomList :: [Room] -> World -> World
generateLevelFromRoomList gr' w
@@ -45,7 +47,12 @@ generateLevelFromRoomList gr' w
pairPath = concatMap _rmPath rs
zs = map fromIntegral $ randomRs (0,63::Int) $ _randGen w
rs = map doRoomShift rs'
rs' = zipWith addTile zs gr'
rs' = mapM shuffleRoomPos (zipWith addTile zs gr') & evalState $ _randGen w
shuffleRoomPos :: RandomGen g => Room -> State g Room
shuffleRoomPos rm = do
newPos <- shuffle $ _rmPos rm
return $ rm & rmPos .~ newPos
placeWires :: (World,[Room])-> World
placeWires (w,rms) = foldr placeRoomWires w rms