LambdaHack-0.6.0.0: A game engine library for roguelike dungeon crawlers

Safe HaskellNone
LanguageHaskell2010

Game.LambdaHack.SampleImplementation.SampleMonadServer

Contents

Description

The main game action monad type implementation. Just as any other component of the library, this implementation can be substituted. This module should not be imported anywhere except in Action to expose the executor to any code using the library.

Synopsis

Documentation

executorSer :: COps -> KeyKind -> DebugModeSer -> IO () Source #

Run an action in the IO monad, with undefined state.

Internal operations

data SerState Source #

Constructors

SerState 

Fields

newtype SerImplementation a Source #

Server state transformation monad.

Instances

Monad SerImplementation Source # 
Functor SerImplementation Source # 
Applicative SerImplementation Source # 
MonadStateRead SerImplementation Source # 

Methods

getsState :: (State -> a) -> SerImplementation a Source #

MonadStateWrite SerImplementation Source # 
MonadAtomic SerImplementation Source #

The game-state semantics of atomic commands as computed on the server.

MonadServer SerImplementation Source # 
MonadServerReadRequest SerImplementation Source #