Safe Haskell | None |
---|---|
Language | Haskell2010 |
Client monad for interacting with a human through UI.
Synopsis
- class MonadClient m => MonadClientUI m where
- clientPrintUI :: MonadClientUI m => Text -> m ()
- mapStartY :: Y
- getSession :: MonadClientUI m => m SessionUI
- putSession :: MonadClientUI m => SessionUI -> m ()
- displayFrames :: MonadClientUI m => LevelId -> Frames -> m ()
- connFrontendFrontKey :: MonadClientUI m => [KM] -> FrameForall -> m KM
- setFrontAutoYes :: MonadClientUI m => Bool -> m ()
- frontendShutdown :: MonadClientUI m => m ()
- printScreen :: MonadClientUI m => m ()
- chanFrontend :: MonadClientUI m => ClientOptions -> m ChanFrontend
- anyKeyPressed :: MonadClientUI m => m Bool
- discardPressedKey :: MonadClientUI m => m ()
- addPressedEsc :: MonadClientUI m => m ()
- revCmdMap :: MonadClientUI m => m (KM -> HumanCmd -> KM)
- getReportUI :: MonadClientUI m => m Report
- getLeaderUI :: MonadClientUI m => m ActorId
- getArenaUI :: MonadClientUI m => m LevelId
- viewedLevelUI :: MonadClientUI m => m LevelId
- leaderTgtToPos :: MonadClientUI m => m (Maybe Point)
- xhairToPos :: MonadClientUI m => m (Maybe Point)
- clearXhair :: MonadClientUI m => m ()
- clearAimMode :: MonadClientUI m => m ()
- scoreToSlideshow :: MonadClientUI m => Int -> Status -> m Slideshow
- defaultHistory :: MonadClientUI m => Int -> m History
- tellAllClipPS :: MonadClientUI m => m ()
- tellGameClipPS :: MonadClientUI m => m ()
- elapsedSessionTimeGT :: MonadClientUI m => Int -> m Bool
- resetSessionStart :: MonadClientUI m => m ()
- resetGameStart :: MonadClientUI m => m ()
- partActorLeader :: MonadClientUI m => ActorId -> ActorUI -> m Part
- partActorLeaderFun :: MonadClientUI m => m (ActorId -> Part)
- partPronounLeader :: MonadClient m => ActorId -> ActorUI -> m Part
- partAidLeader :: MonadClientUI m => ActorId -> m Part
- tryRestore :: MonadClientUI m => m (Maybe (StateClient, Maybe SessionUI))
- leaderSkillsClientUI :: MonadClientUI m => m Skills
- connFrontend :: MonadClientUI m => FrontReq a -> m a
- displayFrame :: MonadClientUI m => Maybe FrameForall -> m ()
- addPressedKey :: MonadClientUI m => KMP -> m ()
Client UI monad
class MonadClient m => MonadClientUI m where Source #
The monad that gives the client access to UI operations.
Assorted primitives
clientPrintUI :: MonadClientUI m => Text -> m () Source #
getSession :: MonadClientUI m => m SessionUI Source #
putSession :: MonadClientUI m => SessionUI -> m () Source #
displayFrames :: MonadClientUI m => LevelId -> Frames -> m () Source #
Push frames or delays to the frame queue. The frames depict
the lid
level.
connFrontendFrontKey :: MonadClientUI m => [KM] -> FrameForall -> m KM Source #
Write FrontKey
UI request to the frontend, read the reply,
set pointer, return key.
setFrontAutoYes :: MonadClientUI m => Bool -> m () Source #
frontendShutdown :: MonadClientUI m => m () Source #
printScreen :: MonadClientUI m => m () Source #
chanFrontend :: MonadClientUI m => ClientOptions -> m ChanFrontend Source #
Initialize the frontend chosen by the player via client options.
anyKeyPressed :: MonadClientUI m => m Bool Source #
discardPressedKey :: MonadClientUI m => m () Source #
addPressedEsc :: MonadClientUI m => m () Source #
getReportUI :: MonadClientUI m => m Report Source #
getLeaderUI :: MonadClientUI m => m ActorId Source #
getArenaUI :: MonadClientUI m => m LevelId Source #
viewedLevelUI :: MonadClientUI m => m LevelId Source #
leaderTgtToPos :: MonadClientUI m => m (Maybe Point) Source #
xhairToPos :: MonadClientUI m => m (Maybe Point) Source #
clearXhair :: MonadClientUI m => m () Source #
clearAimMode :: MonadClientUI m => m () Source #
scoreToSlideshow :: MonadClientUI m => Int -> Status -> m Slideshow Source #
defaultHistory :: MonadClientUI m => Int -> m History Source #
tellAllClipPS :: MonadClientUI m => m () Source #
tellGameClipPS :: MonadClientUI m => m () Source #
elapsedSessionTimeGT :: MonadClientUI m => Int -> m Bool Source #
resetSessionStart :: MonadClientUI m => m () Source #
resetGameStart :: MonadClientUI m => m () Source #
partActorLeader :: MonadClientUI m => ActorId -> ActorUI -> m Part Source #
The part of speech describing the actor or "you" if a leader of the client's faction. The actor may be not present in the dungeon.
partActorLeaderFun :: MonadClientUI m => m (ActorId -> Part) Source #
partPronounLeader :: MonadClient m => ActorId -> ActorUI -> m Part Source #
The part of speech with the actor's pronoun or "you" if a leader of the client's faction. The actor may be not present in the dungeon.
partAidLeader :: MonadClientUI m => ActorId -> m Part Source #
The part of speech describing the actor (designated by actor id and present in the dungeon) or a special name if a leader of the observer's faction.
tryRestore :: MonadClientUI m => m (Maybe (StateClient, Maybe SessionUI)) Source #
Try to read saved client game state from the file system.
leaderSkillsClientUI :: MonadClientUI m => m Skills Source #
Internal operations
connFrontend :: MonadClientUI m => FrontReq a -> m a Source #
Write a UI request to the frontend and read a corresponding reply.
displayFrame :: MonadClientUI m => Maybe FrameForall -> m () Source #
addPressedKey :: MonadClientUI m => KMP -> m () Source #