| Portability | non-portable |
|---|---|
| Stability | provisional |
| Maintainer | Fumiaki Kinsohita <fumiexcel@gmail.com> |
| Safe Haskell | None |
Graphics.FreeGame.Simple
Description
The essentials of using free-game
- type Game = Free GameAction
- defaultGameParam :: GameParam
- runSimple :: GameParam -> world -> (world -> Game world) -> IO ()
- drawPicture :: MonadFree GameAction m => Picture -> m ()
- askInput :: MonadFree GameAction m => Key -> m Bool
- getMouseState :: MonadFree GameAction m => m MouseState
- embedIO :: MonadFree GameAction m => IO a -> m a
- quitGame :: MonadFree GameAction m => m a
- tick :: MonadFree GameAction m => m ()
- untickGame :: Game a -> Game (Game a)
- data Picture
- loadBitmapFromFile :: FilePath -> IO Bitmap
- data Vec2 = Vec2 !Float !Float
- loadFont :: FilePath -> IO Font
- text :: Font -> Float -> String -> Picture
- randomness :: (Random r, MonadFree GameAction m) => (r, r) -> m r
- module Graphics.FreeGame.Input
- module Graphics.FreeGame.Data.Color
Basic type
Run the game
defaultGameParam :: GameParamSource
640*480(windowed), 60fps
Arguments
| :: GameParam | |
| -> world | An initial world |
| -> (world -> Game world) | A computation yielding new world |
| -> IO () |
Run a Game by the given initial state and updating function.
In the Game monad
drawPicture :: MonadFree GameAction m => Picture -> m ()Source
Draw a Picture.
getMouseState :: MonadFree GameAction m => m MouseStateSource
Get the mouse's state.
quitGame :: MonadFree GameAction m => m aSource
Break the current computation.
tick :: MonadFree GameAction m => m ()Source
Finalize the current frame and refresh the screen.
About Picture
A 2D Picture.
Constructors
| BitmapPicture Bitmap | |
| Pictures [Picture] | A picture consist of some |
| IOPicture (IO Picture) | A picture that may have side effects. |
| Rotate Float Picture | Rotated picture by the given angle (in degrees, counterclockwise). |
| Scale Vec2 Picture | Scaled picture. |
| Translate Vec2 Picture | A picture translated by the given coordinate. |
| Colored Color Picture | Colored picture. |
data Vec2
Instances
Drawing texts
Utilities
randomness :: (Random r, MonadFree GameAction m) => (r, r) -> m rSource
Get a given range of value.
Reexports
module Graphics.FreeGame.Input
module Graphics.FreeGame.Data.Color