Safe Haskell | None |
---|---|
Language | Haskell2010 |
Game.LambdaHack.Client.MonadClient
Description
Basic client monad and related operations.
- class MonadStateRead m => MonadClient m where
- debugPrint :: MonadClient m => Text -> m ()
- saveClient :: MonadClient m => m ()
- saveName :: FactionId -> Bool -> String
- restoreGame :: MonadClient m => m (Maybe (State, StateClient))
- removeServerSave :: MonadClient m => m ()
- rndToAction :: MonadClient m => Rnd a -> m a
Basic client monad
class MonadStateRead m => MonadClient m where Source #
Minimal complete definition
getClient, getsClient, modifyClient, putClient, liftIO, saveChanClient
Methods
getClient :: m StateClient Source #
getsClient :: (StateClient -> a) -> m a Source #
modifyClient :: (StateClient -> StateClient) -> m () Source #
putClient :: StateClient -> m () Source #
liftIO :: IO a -> m a Source #
saveChanClient :: m (ChanSave (State, StateClient)) Source #
Instances
MonadClient (CliImplementation resp req) Source # | |
Assorted primitives
debugPrint :: MonadClient m => Text -> m () Source #
saveClient :: MonadClient m => m () Source #
restoreGame :: MonadClient m => m (Maybe (State, StateClient)) Source #
removeServerSave :: MonadClient m => m () Source #
Assuming the client runs on the same machine and for the same user as the server, move the server savegame out of the way.
rndToAction :: MonadClient m => Rnd a -> m a Source #
Invoke pseudo-random computation with the generator kept in the state.