aeson-tiled-0.0.2.0: src/Codec/Tiled/Tileset/Transformations.hs
module Codec.Tiled.Tileset.Transformations where
import GHC.Generics (Generic)
import Codec.Tiled.Aeson (FromJSON(..), ToJSON(..), genericParseJSON, genericToJSON)
data Transformations = Transformations
{ hFlip :: Maybe Bool -- ^ Tiles can be flipped horizontally
, vFlip :: Maybe Bool -- ^ Tiles can be flipped vertically
, rotate :: Maybe Bool -- ^ Tiles can be rotated in 90-degree increments
, preferUntransformed :: Maybe Bool -- ^ Whether untransformed tiles remain preferred, otherwise transformed tiles are used to produce more variations
}
deriving (Eq, Show, Generic)
instance FromJSON Transformations where
parseJSON = genericParseJSON
instance ToJSON Transformations where
toJSON = genericToJSON