free-game 1.1.78 → 1.1.79
raw patch · 4 files changed
+39/−6 lines, 4 filesdep ~OpenGLRawdep ~mtlPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: OpenGLRaw, mtl
API changes (from Hackage documentation)
- FreeGame.Instances: instance (Affine m, Monad m, Error e) => Affine (ErrorT e m)
- FreeGame.Instances: instance (FreeGame m, Monad m, Error e) => FreeGame (ErrorT e m)
- FreeGame.Instances: instance (FromFinalizer m, Monad m, Error e) => FromFinalizer (ErrorT e m)
- FreeGame.Instances: instance (Keyboard m, Monad m, Error e) => Keyboard (ErrorT e m)
- FreeGame.Instances: instance (Local m, Monad m, Error e) => Local (ErrorT e m)
- FreeGame.Instances: instance (Mouse m, Monad m, Error e) => Mouse (ErrorT e m)
- FreeGame.Instances: instance (Picture2D m, Monad m, Error e) => Picture2D (ErrorT e m)
+ FreeGame: clipBitmap :: Bitmap -> Box V2 Int -> Bitmap
+ FreeGame.Data.Bitmap: bitmapHash :: Bitmap -> Int
+ FreeGame.Data.Bitmap: bitmapImage :: Bitmap -> Image PixelRGBA8
+ FreeGame.Instances: instance (Affine m, Monad m) => Affine (ExceptT e m)
+ FreeGame.Instances: instance (FreeGame m, Monad m) => FreeGame (ExceptT e m)
+ FreeGame.Instances: instance (FromFinalizer m, Monad m) => FromFinalizer (ExceptT e m)
+ FreeGame.Instances: instance (Keyboard m, Monad m) => Keyboard (ExceptT e m)
+ FreeGame.Instances: instance (Local m, Monad m) => Local (ExceptT e m)
+ FreeGame.Instances: instance (Mouse m, Monad m) => Mouse (ExceptT e m)
+ FreeGame.Instances: instance (Picture2D m, Monad m) => Picture2D (ExceptT e m)
- FreeGame.Data.Bitmap: Bitmap :: (Image PixelRGBA8) -> Int -> Bitmap
+ FreeGame.Data.Bitmap: Bitmap :: Image PixelRGBA8 -> Int -> Bitmap
Files
- FreeGame.hs +1/−0
- FreeGame/Data/Bitmap.hs +2/−2
- FreeGame/Instances.hs +33/−1
- free-game.cabal +3/−3
FreeGame.hs view
@@ -41,6 +41,7 @@ bitmapSize, readBitmap, cropBitmap, + clipBitmap, loadBitmaps, loadBitmapsWith, writeBitmap,
FreeGame/Data/Bitmap.hs view
@@ -22,9 +22,9 @@ -- * Bitmap operations ,cropBitmap + ,clipBitmap -- * V2 ,sizeBitmap - ,clipBitmap ) where import qualified Codec.Picture as C @@ -36,7 +36,7 @@ import Control.Applicative import Data.Hashable -data Bitmap = Bitmap (C.Image C.PixelRGBA8) Int +data Bitmap = Bitmap { bitmapImage :: C.Image C.PixelRGBA8, bitmapHash :: Int } -- | Get the size of the 'Bitmap'. bitmapSize :: Bitmap -> (Int, Int)
FreeGame/Instances.hs view
@@ -9,7 +9,11 @@ import Control.Monad.Trans.Cont import Control.Monad.Trans.Maybe import Control.Monad.Trans.List +#if MIN_VERSION_transformers(0,4,0) +import Control.Monad.Trans.Except +#else import Control.Monad.Trans.Error +#endif import Control.Monad.Trans.Identity import qualified Control.Monad.State.Lazy as Lazy import qualified Control.Monad.State.Strict as Strict @@ -97,7 +101,11 @@ MK_AFFINE(_COMMA_ Monad m, IdentityT m, mapIdentityT) MK_AFFINE(_COMMA_ Monad m, MaybeT m, mapMaybeT) MK_AFFINE(_COMMA_ Monad m, ListT m, mapListT) +#if MIN_VERSION_transformers(0,4,0) +MK_AFFINE(_COMMA_ Monad m, ExceptT e m, mapExceptT) +#else MK_AFFINE(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, mapErrorT) +#endif MK_AFFINE(_COMMA_ Monad m, ContT r m, mapContT) MK_PICTURE_2D(_COMMA_ Functor m, F m, Church.liftF, hoistF) @@ -113,7 +121,11 @@ MK_PICTURE_2D(_COMMA_ Monad m, IdentityT m, lift, mapIdentityT) MK_PICTURE_2D(_COMMA_ Monad m, MaybeT m, lift, mapMaybeT) MK_PICTURE_2D(_COMMA_ Monad m, ListT m, lift, mapListT) +#if MIN_VERSION_transformers(0,4,0) +MK_PICTURE_2D(_COMMA_ Monad m, ExceptT e m, lift, mapExceptT) +#else MK_PICTURE_2D(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, lift, mapErrorT) +#endif MK_PICTURE_2D(_COMMA_ Monad m, ContT r m, lift, mapContT) MK_LOCAL(_COMMA_ Functor m, F m, Church.liftF) @@ -129,7 +141,11 @@ MK_LOCAL(_COMMA_ Monad m, IdentityT m, lift) MK_LOCAL(_COMMA_ Monad m, MaybeT m, lift) MK_LOCAL(_COMMA_ Monad m, ListT m, lift) +#if MIN_VERSION_transformers(0,4,0) +MK_LOCAL(_COMMA_ Monad m, ExceptT e m, lift) +#else MK_LOCAL(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, lift) +#endif MK_LOCAL(_COMMA_ Monad m, ContT r m, lift) MK_KEYBOARD(_COMMA_ Functor m, F m, Church.liftF) @@ -145,7 +161,11 @@ MK_KEYBOARD(_COMMA_ Monad m, IdentityT m, lift) MK_KEYBOARD(_COMMA_ Monad m, MaybeT m, lift) MK_KEYBOARD(_COMMA_ Monad m, ListT m, lift) +#if MIN_VERSION_transformers(0,4,0) +MK_KEYBOARD(_COMMA_ Monad m, ExceptT e m, lift) +#else MK_KEYBOARD(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, lift) +#endif MK_KEYBOARD(_COMMA_ Monad m, ContT r m, lift) MK_MOUSE(_COMMA_ Functor m, F m, liftF) @@ -161,7 +181,11 @@ MK_MOUSE(_COMMA_ Monad m, IdentityT m, lift) MK_MOUSE(_COMMA_ Monad m, MaybeT m, lift) MK_MOUSE(_COMMA_ Monad m, ListT m, lift) +#if MIN_VERSION_transformers(0,4,0) +MK_MOUSE(_COMMA_ Monad m, ExceptT e m, lift) +#else MK_MOUSE(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, lift) +#endif MK_MOUSE(_COMMA_ Monad m, ContT r m, lift) MK_FROM_FINALIZER(_COMMA_ Functor m, F m, liftF) @@ -176,7 +200,11 @@ MK_FROM_FINALIZER(_COMMA_ Monad m, IdentityT m, lift) MK_FROM_FINALIZER(_COMMA_ Monad m, MaybeT m, lift) MK_FROM_FINALIZER(_COMMA_ Monad m, ListT m, lift) +#if MIN_VERSION_transformers(0,4,0) +MK_FROM_FINALIZER(_COMMA_ Monad m, ExceptT e m, lift) +#else MK_FROM_FINALIZER(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, lift) +#endif MK_FROM_FINALIZER(_COMMA_ Monad m, ContT r m, lift) MK_FREE_GAME(_COMMA_ Functor m, F m, liftF) @@ -191,5 +219,9 @@ MK_FREE_GAME(_COMMA_ Monad m, IdentityT m, lift) MK_FREE_GAME(_COMMA_ Monad m, MaybeT m, lift) MK_FREE_GAME(_COMMA_ Monad m, ListT m, lift) +#if MIN_VERSION_transformers(0,4,0) +MK_FREE_GAME(_COMMA_ Monad m, ExceptT e m, lift) +#else MK_FREE_GAME(_COMMA_ Monad m _COMMA_ Error e, ErrorT e m, lift) -MK_FREE_GAME(_COMMA_ Monad m, ContT r m, lift)+#endif +MK_FREE_GAME(_COMMA_ Monad m, ContT r m, lift)
free-game.cabal view
@@ -1,5 +1,5 @@ name: free-game -version: 1.1.78 +version: 1.1.79 synopsis: Create games for free description: free-game defines a monad that integrates features to create 2D games. @@ -62,9 +62,9 @@ JuicyPixels, JuicyPixels-util == 0.1.*, linear >= 1.0 && < 2, - mtl >= 2.1, + mtl >= 2.1 && <3, OpenGL == 2.9.*, - OpenGLRaw == 1.4.*, + OpenGLRaw >= 1.3 && < 1.6, random == 1.*, reflection == 1.*, template-haskell,