packages feed

animate 0.5.0 → 0.6.0

raw patch · 3 files changed

+11/−11 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Animate: instance Data.Aeson.Types.FromJSON.FromJSON Animate.SpriteClip
- Animate: instance Data.Aeson.Types.FromJSON.FromJSON delay => Data.Aeson.Types.FromJSON.FromJSON (Animate.SpriteSheetInfo delay)
- Animate: instance Data.Aeson.Types.ToJSON.ToJSON Animate.SpriteClip
- Animate: instance Data.Aeson.Types.ToJSON.ToJSON delay => Data.Aeson.Types.ToJSON.ToJSON (Animate.SpriteSheetInfo delay)
- Animate: instance GHC.Classes.Eq Animate.SpriteClip
- Animate: instance GHC.Classes.Eq delay => GHC.Classes.Eq (Animate.SpriteSheetInfo delay)
- Animate: instance GHC.Generics.Generic (Animate.SpriteSheetInfo delay)
- Animate: instance GHC.Generics.Generic Animate.SpriteClip
- Animate: instance GHC.Show.Show Animate.SpriteClip
- Animate: instance GHC.Show.Show delay => GHC.Show.Show (Animate.SpriteSheetInfo delay)
+ Animate: instance Data.Aeson.Types.FromJSON.FromJSON (Animate.SpriteClip key)
+ Animate: instance Data.Aeson.Types.FromJSON.FromJSON delay => Data.Aeson.Types.FromJSON.FromJSON (Animate.SpriteSheetInfo key delay)
+ Animate: instance Data.Aeson.Types.ToJSON.ToJSON (Animate.SpriteClip key)
+ Animate: instance Data.Aeson.Types.ToJSON.ToJSON delay => Data.Aeson.Types.ToJSON.ToJSON (Animate.SpriteSheetInfo key delay)
+ Animate: instance GHC.Classes.Eq (Animate.SpriteClip key)
+ Animate: instance GHC.Classes.Eq delay => GHC.Classes.Eq (Animate.SpriteSheetInfo key delay)
+ Animate: instance GHC.Generics.Generic (Animate.SpriteClip key)
+ Animate: instance GHC.Generics.Generic (Animate.SpriteSheetInfo key delay)
+ Animate: instance GHC.Show.Show (Animate.SpriteClip key)
+ Animate: instance GHC.Show.Show delay => GHC.Show.Show (Animate.SpriteSheetInfo key delay)
- Animate: SpriteClip :: Int -> Int -> Int -> Int -> Maybe (Int, Int) -> SpriteClip
+ Animate: SpriteClip :: Int -> Int -> Int -> Int -> Maybe (Int, Int) -> SpriteClip key
- Animate: SpriteSheet :: Animations key SpriteClip delay -> img -> SpriteSheet key img delay
+ Animate: SpriteSheet :: Animations key (SpriteClip key) delay -> img -> SpriteSheet key img delay
- Animate: SpriteSheetInfo :: FilePath -> Maybe Color -> [SpriteClip] -> Map Text [(FrameIndex, delay)] -> SpriteSheetInfo delay
+ Animate: SpriteSheetInfo :: FilePath -> Maybe Color -> [SpriteClip key] -> Map Text [(FrameIndex, delay)] -> SpriteSheetInfo key delay
- Animate: [$sel:scH:SpriteClip] :: SpriteClip -> Int
+ Animate: [$sel:scH:SpriteClip] :: SpriteClip key -> Int
- Animate: [$sel:scOffset:SpriteClip] :: SpriteClip -> Maybe (Int, Int)
+ Animate: [$sel:scOffset:SpriteClip] :: SpriteClip key -> Maybe (Int, Int)
- Animate: [$sel:scW:SpriteClip] :: SpriteClip -> Int
+ Animate: [$sel:scW:SpriteClip] :: SpriteClip key -> Int
- Animate: [$sel:scX:SpriteClip] :: SpriteClip -> Int
+ Animate: [$sel:scX:SpriteClip] :: SpriteClip key -> Int
- Animate: [$sel:scY:SpriteClip] :: SpriteClip -> Int
+ Animate: [$sel:scY:SpriteClip] :: SpriteClip key -> Int
- Animate: [$sel:ssAnimations:SpriteSheet] :: SpriteSheet key img delay -> Animations key SpriteClip delay
+ Animate: [$sel:ssAnimations:SpriteSheet] :: SpriteSheet key img delay -> Animations key (SpriteClip key) delay
- Animate: [$sel:ssiAlpha:SpriteSheetInfo] :: SpriteSheetInfo delay -> Maybe Color
+ Animate: [$sel:ssiAlpha:SpriteSheetInfo] :: SpriteSheetInfo key delay -> Maybe Color
- Animate: [$sel:ssiAnimations:SpriteSheetInfo] :: SpriteSheetInfo delay -> Map Text [(FrameIndex, delay)]
+ Animate: [$sel:ssiAnimations:SpriteSheetInfo] :: SpriteSheetInfo key delay -> Map Text [(FrameIndex, delay)]
- Animate: [$sel:ssiClips:SpriteSheetInfo] :: SpriteSheetInfo delay -> [SpriteClip]
+ Animate: [$sel:ssiClips:SpriteSheetInfo] :: SpriteSheetInfo key delay -> [SpriteClip key]
- Animate: [$sel:ssiImage:SpriteSheetInfo] :: SpriteSheetInfo delay -> FilePath
+ Animate: [$sel:ssiImage:SpriteSheetInfo] :: SpriteSheetInfo key delay -> FilePath
- Animate: data SpriteClip
+ Animate: data SpriteClip key
- Animate: data SpriteSheetInfo delay
+ Animate: data SpriteSheetInfo key delay
- Animate: readSpriteSheetInfoJSON :: FromJSON delay => FilePath -> IO (SpriteSheetInfo delay)
+ Animate: readSpriteSheetInfoJSON :: FromJSON delay => FilePath -> IO (SpriteSheetInfo key delay)

Files

animate.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           animate-version:        0.5.0+version:        0.6.0 synopsis:       Animation for sprites description:    Prototypical sprite animation with type-safety. category:       Game
library/Animate.hs view
@@ -60,7 +60,7 @@   keyName :: key -> Text  -- | Describe the boxed area of the 2d sprite inside a sprite sheet-data SpriteClip = SpriteClip+data SpriteClip key = SpriteClip   { scX :: Int   , scY :: Int   , scW :: Int@@ -68,12 +68,12 @@   , scOffset :: Maybe (Int, Int)   } deriving (Show, Eq, Generic) -instance ToJSON SpriteClip where+instance ToJSON (SpriteClip key) where   toJSON SpriteClip{scX,scY,scW,scH,scOffset} = case scOffset of     Nothing -> toJSON (scX, scY, scW, scH)     Just (ofsX, ofsY) -> toJSON (scX, scY, scW, scH, ofsX, ofsY) -instance FromJSON SpriteClip where+instance FromJSON (SpriteClip key) where   parseJSON v =     (do       (x,y,w,h) <- parseJSON v@@ -85,20 +85,20 @@  -- | Generalized sprite sheet data structure data SpriteSheet key img delay = SpriteSheet-  { ssAnimations :: Animations key SpriteClip delay+  { ssAnimations :: Animations key (SpriteClip key) delay   , ssImage :: img   } deriving (Generic)  -- | One way to represent sprite sheet information. --   JSON loading is included.-data SpriteSheetInfo delay = SpriteSheetInfo+data SpriteSheetInfo key delay = SpriteSheetInfo   { ssiImage :: FilePath   , ssiAlpha :: Maybe Color-  , ssiClips :: [SpriteClip]+  , ssiClips :: [SpriteClip key]   , ssiAnimations :: Map Text [(FrameIndex, delay)]   } deriving (Show, Eq, Generic) -instance ToJSON delay => ToJSON (SpriteSheetInfo delay) where+instance ToJSON delay => ToJSON (SpriteSheetInfo key delay) where   toJSON SpriteSheetInfo{ssiImage,ssiAlpha,ssiClips,ssiAnimations} = object     [ "image" .= ssiImage     , "alpha" .= ssiAlpha@@ -106,7 +106,7 @@     , "animations" .= ssiAnimations     ] -instance FromJSON delay => FromJSON (SpriteSheetInfo delay) where+instance FromJSON delay => FromJSON (SpriteSheetInfo key delay) where   parseJSON (Object o) = do     image <- o .: "image"     alpha <- o .: "alpha"@@ -229,7 +229,7 @@ readSpriteSheetInfoJSON   :: FromJSON delay   => FilePath -- ^ Path of the sprite sheet info JSON file-  -> IO (SpriteSheetInfo delay)+  -> IO (SpriteSheetInfo key delay) readSpriteSheetInfoJSON path = do   metaBytes <- BL.readFile path   case eitherDecode metaBytes of
package.yaml view
@@ -1,5 +1,5 @@ name: animate-version: '0.5.0'+version: '0.6.0' category: Game synopsis: Animation for sprites description: Prototypical sprite animation with type-safety.