Copyright | (c) Henry J. Wylde, 2015 |
---|---|
License | BSD3 |
Maintainer | public@hjwylde.com |
Safe Haskell | None |
Language | Haskell2010 |
Engine functions.
- validateCommand :: MonadError [Message] m => MonadState Game m => Command -> m ()
- applyCommand :: (MonadError [Message] m, MonadState Game m, MonadWriter [Message] m) => Command -> m ()
- checkGameOver :: (MonadState Game m, MonadWriter [Message] m) => m ()
- startGame :: MonadError [Message] m => Text -> [Player] -> m Game
- isGameOver :: MonadState Game m => m Bool
- getPlayerVote :: MonadState Game m => Player -> m (Maybe Text)
- defaultFilePath :: MonadIO m => m FilePath
- writeGame :: MonadIO m => Game -> m ()
- readGame :: MonadIO m => m Game
- deleteGame :: MonadIO m => m ()
- doesGameExist :: MonadIO m => m Bool
- createPlayers :: MonadIO m => [Text] -> m [Player]
- doesPlayerExist :: MonadState Game m => Text -> m Bool
- randomiseRoles :: MonadIO m => Int -> m [Role]
Command
validateCommand :: MonadError [Message] m => MonadState Game m => Command -> m () Source
applyCommand :: (MonadError [Message] m, MonadState Game m, MonadWriter [Message] m) => Command -> m () Source
checkGameOver :: (MonadState Game m, MonadWriter [Message] m) => m () Source
Game
Manipulating
isGameOver :: MonadState Game m => m Bool Source
getPlayerVote :: MonadState Game m => Player -> m (Maybe Text) Source
Reading and writing
defaultFilePath :: MonadIO m => m FilePath Source
deleteGame :: MonadIO m => m () Source
doesGameExist :: MonadIO m => m Bool Source
Player
createPlayers :: MonadIO m => [Text] -> m [Player] Source
doesPlayerExist :: MonadState Game m => Text -> m Bool Source
Role
randomiseRoles :: MonadIO m => Int -> m [Role] Source