summaryrefslogtreecommitdiff
path: root/lib/Tiled.hs
diff options
context:
space:
mode:
authorstuebinm2021-12-18 17:52:25 +0100
committerstuebinm2021-12-18 17:52:25 +0100
commitaa897bb7e2ae257c2680521e6b1c1cad1237df53 (patch)
tree0ae2e1582349d4cf79f941bfb647acb2417c854b /lib/Tiled.hs
parent96a3cc24b3b62e2e88b0d31e66204c16d20f2aa9 (diff)
fixed parsing of tiled objects
(points behave slightly differntly than I thought)
Diffstat (limited to '')
-rw-r--r--lib/Tiled.hs33
1 files changed, 10 insertions, 23 deletions
diff --git a/lib/Tiled.hs b/lib/Tiled.hs
index fa876ee..c5abb21 100644
--- a/lib/Tiled.hs
+++ b/lib/Tiled.hs
@@ -121,32 +121,19 @@ instance ToJSON Point where
-- | all kinds of objects that can occur in object layers, even
-- | those that we don't want to allow.
-data Object = ObjectPoint
+data Object = ObjectRectangle
{ objectId :: Int
, objectName :: Maybe String
, objectProperties :: Maybe (Vector Property)
, objectVisible :: Maybe Bool
, objectX :: Double
, objectY :: Double
- , objectHeight :: Double
- , objectWidth :: Double
, objectRotation :: Double
, objectGid :: Maybe GlobalId
- , objectType :: Text
- , objectPoint :: Bool
- }
- | ObjectRectangle
- { objectId :: Int
- , objectName :: Maybe String
- , objectProperties :: Maybe (Vector Property)
- , objectVisible :: Maybe Bool
- , objectX :: Double
- , objectY :: Double
- , objectRotation :: Double
- , objectGid :: Maybe GlobalId
- , objectWidth :: Double
- , objectHeight :: Double
+ , objectWidth :: Maybe Double
+ , objectHeight :: Maybe Double
, objectEllipse :: Maybe Bool
+ , objectPoint :: Maybe Bool
, objectType :: Text
}
| ObjectPolygon
@@ -158,8 +145,8 @@ data Object = ObjectPoint
, objectY :: Double
, objectRotation :: Double
, objectGid :: Maybe GlobalId
- , objectWidth :: Double
- , objectHeight :: Double
+ , objectWidth :: Maybe Double
+ , objectHeight :: Maybe Double
, objectType :: Text
, objectPolygon :: Vector Point
}
@@ -172,9 +159,9 @@ data Object = ObjectPoint
, objectY :: Double
, objectRotation :: Double
, objectGid :: Maybe GlobalId
- , objectWidth :: Double
+ , objectWidth :: Maybe Double
+ , objectHeight :: Maybe Double
, objectType :: Text
- , objectHeight :: Double
, objectPolyline :: Vector Point
}
| ObjectText
@@ -187,8 +174,8 @@ data Object = ObjectPoint
, objectRotation :: Double
, objectGid :: Maybe GlobalId
, objectText :: A.Value
- , objectWidth :: Double
- , objectHeight :: Double
+ , objectWidth :: Maybe Double
+ , objectHeight :: Maybe Double
, objectEllipse :: Maybe Bool
, objectType :: Text
} deriving (Eq, Generic, Show)