2014-02-09 20:18:03 +01:00
|
|
|
module Map.Creation
|
|
|
|
where
|
|
|
|
|
|
|
|
import Map.Types
|
|
|
|
|
2014-04-22 11:27:07 +02:00
|
|
|
-- | Generate a new Map of given Type and Size
|
|
|
|
--
|
|
|
|
-- TODO:
|
|
|
|
-- 1. Should take Size -> Type -> Playmap
|
|
|
|
-- 2. plug together helper-functions for that terraintype
|
2014-02-09 20:18:03 +01:00
|
|
|
newMap :: Int -> Int -> PlayMap
|
|
|
|
newMap = undefined
|
2014-04-22 11:27:07 +02:00
|
|
|
|
|
|
|
|
|
|
|
-- | Basic Terrain-Generator. Will not implement "abnormal" Stuff for given Biome
|
|
|
|
-- (like Deserts on Grass-Islands or Grass on Deserts)
|
|
|
|
--
|
|
|
|
-- TODO: Implement Desert-Generator
|
|
|
|
heightToTerrain :: MapType -> YCoord -> TileType
|
|
|
|
heightToTerrain GrassIslandMap y
|
|
|
|
| y < 0.1 = Ocean
|
|
|
|
| y < 1 = Beach
|
|
|
|
| y < 5 = Grass
|
|
|
|
| y < 10 = Hill
|
|
|
|
| otherwise = Mountain
|
|
|
|
heightToTerrain _ _ = undefined
|
|
|
|
|
|
|
|
type Seed = (XCoord, ZCoord)
|
|
|
|
|
|
|
|
-- | Add lakes on generated Map from (possible) Seeds noted before.
|
|
|
|
--
|
|
|
|
-- TODO: implement and erode terrain on the way down.
|
2014-04-23 11:23:24 +02:00
|
|
|
addLakes :: PlayMap -> [Seed] -> PlayMap
|
2014-04-22 11:27:07 +02:00
|
|
|
addLakes m s = undefined
|