From 8082e9ef10a08c362adba26aff4f2e5140f6f7f0 Mon Sep 17 00:00:00 2001 From: stuebinm Date: Sat, 18 Dec 2021 17:19:48 +0100 Subject: badges are set on objects, not layers (and `url` is, too) --- lib/TiledAbstract.hs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'lib/TiledAbstract.hs') diff --git a/lib/TiledAbstract.hs b/lib/TiledAbstract.hs index 88dd2ee..948a91a 100644 --- a/lib/TiledAbstract.hs +++ b/lib/TiledAbstract.hs @@ -7,7 +7,7 @@ import Data.Proxy (Proxy) import Data.Text (Text) import qualified Data.Vector as V import Tiled (Layer (..), Property (..), PropertyValue (..), - Tile (..), Tiledmap (..), Tileset (..)) + Tile (..), Tiledmap (..), Tileset (..), Object(..)) class HasProperties a where getProperties :: a -> [Property] @@ -28,6 +28,10 @@ instance HasProperties Tile where adjustProperties f tile = tile { tileProperties = (fmap V.fromList . f) (getProperties tile) } +instance HasProperties Object where + getProperties = V.toList . fromMaybe mempty . objectProperties + adjustProperties f obj = obj + { objectProperties = (fmap V.fromList . f) (getProperties obj) } instance HasProperties Tiledmap where getProperties = fromMaybe mempty . tiledmapProperties -- cgit v1.2.3