25 lines
622 B
Haskell
25 lines
622 B
Haskell
{-# LANGUAGE TemplateHaskell #-}
|
|
{-# LANGUAGE StrictData #-}
|
|
module Dodge.LevelGen.LevelStructure where
|
|
import Dodge.LevelGen.Data
|
|
--import Dodge.Tree.Compose.Data
|
|
import Dodge.Data
|
|
|
|
--import Data.Tree
|
|
import qualified Data.IntMap.Strict as IM
|
|
import Control.Lens
|
|
--import System.Random
|
|
|
|
data GenWorld = GenWorld
|
|
{ _gWorld :: World
|
|
, _gPlacements :: IM.IntMap [(Placement,Int)]
|
|
, _gRooms :: IM.IntMap Room
|
|
}
|
|
worldToGenWorld :: IM.IntMap Room -> World -> GenWorld
|
|
worldToGenWorld rms w = GenWorld
|
|
{ _gWorld = w
|
|
, _gPlacements = IM.empty
|
|
, _gRooms = rms
|
|
}
|
|
makeLenses ''GenWorld
|