123 keys1 = Set.fromList ["FEATURE_SIZE", "MAP", "MAPGEN", "MAZE_SIZE", "SEED", "TEMPLATE"] |
123 keys1 = Set.fromList ["FEATURE_SIZE", "MAP", "MAPGEN", "MAZE_SIZE", "SEED", "TEMPLATE"] |
124 keys2 = Set.fromList ["AMMO", "SCHEME", "SCRIPT", "THEME"] |
124 keys2 = Set.fromList ["AMMO", "SCHEME", "SCRIPT", "THEME"] |
125 sane = Set.null (keys1 Set.\\ Map.keysSet mParams) |
125 sane = Set.null (keys1 Set.\\ Map.keysSet mParams) |
126 && Set.null (keys2 Set.\\ Map.keysSet prms) |
126 && Set.null (keys2 Set.\\ Map.keysSet prms) |
127 && (not . null . drop 41 $ scheme) |
127 && (not . null . drop 41 $ scheme) |
128 && (not . null . drop 8 $ prms Map.! "AMMO") |
128 && (not . null . tail $ prms Map.! "AMMO") |
|
129 && ((B.length . head $ prms Map.! "AMMO") > 200) |
129 mapGenTypes = ["+rnd+", "+maze+", "+drawn+", "+perlin+"] |
130 mapGenTypes = ["+rnd+", "+maze+", "+drawn+", "+perlin+"] |
130 scriptName = head . fromMaybe ["Normal"] $ Map.lookup "SCRIPT" prms |
131 scriptName = head . fromMaybe ["Normal"] $ Map.lookup "SCRIPT" prms |
131 maybeScript = let s = scriptName in if s == "Normal" then [] else [eml ["escript Scripts/Multiplayer/", s, ".lua"]] |
132 maybeScript = let s = scriptName in if s == "Normal" then [] else [eml ["escript Scripts/Multiplayer/", s, ".lua"]] |
132 maybeMap = let m = mParams Map.! "MAP" in if m `elem` mapGenTypes then [] else [eml ["emap ", m]] |
133 maybeMap = let m = mParams Map.! "MAP" in if m `elem` mapGenTypes then [] else [eml ["emap ", m]] |
133 scheme = tail $ prms Map.! "SCHEME" |
134 scheme = tail $ prms Map.! "SCHEME" |