Skip to content
Snippets Groups Projects
Commit aa1e5ae5 authored by stuebinm's avatar stuebinm
Browse files

lint individual tile properties

parent ec9552b1
No related branches found
No related tags found
No related merge requests found
...@@ -128,13 +128,27 @@ checkTileset = do ...@@ -128,13 +128,27 @@ checkTileset = do
$ forbid "property \"tilesetCopyright\" for tilesets must be set." $ forbid "property \"tilesetCopyright\" for tilesets must be set."
-- check individual tileset properties -- check individual tileset properties
mapM_ checkTilesetProperty (fromMaybe [] $ tilesetProperties tileset) mapM_ checkTilesetProperty (fromMaybe mempty $ tilesetProperties tileset)
-- check individual tile definitions
mapM_ checkTile (fromMaybe mempty $ tilesetTiles tileset)
where where
checkTilesetProperty :: Property -> LintWriter Tileset checkTilesetProperty :: Property -> LintWriter Tileset
checkTilesetProperty p@(Property name _value) = case name of checkTilesetProperty p@(Property name _value) = case name of
"copyright" -> naiveEscapeProperty p "copyright" -> naiveEscapeProperty p
_ -> warn $ "unknown tileset property " <> prettyprint name _ -> warn $ "unknown tileset property " <> prettyprint name
checkTile :: Tile -> LintWriter Tileset
checkTile tile = do
-- TODO: refused doubled IDs?
mapM_ checkTileProperty (fromMaybe mempty $ tileProperties tile)
where checkTileProperty :: Property -> LintWriter Tileset
checkTileProperty p@(Property name _) = case name of
"collides" -> isBool p
_ -> warn $ "uknown tile property " <> prettyprint name
<> " in tile with global id "
<> showText (tileId tile)
-- | collect lints on a single map layer -- | collect lints on a single map layer
checkLayer :: LintWriter Layer checkLayer :: LintWriter Layer
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment