LambdaHack-0.2.10: A roguelike game engine in early and active development

Safe HaskellNone

Game.LambdaHack.Client.AtomicSemCli

Description

Semantics of client UI response to atomic commands. See https://github.com/kosmikus/LambdaHack/wiki/Client-server-architecture.

Synopsis

Documentation

cmdAtomicSemCli :: MonadClient m => CmdAtomic -> m ()

Effect of atomic actions on client state is calculated in the global state before the command is executed. Clients keep a subset of atomic commands sent by the server and add their own. The result of this function is the list of commands kept for each command received.

cmdAtomicFilterCli :: MonadClient m => CmdAtomic -> m [CmdAtomic]

Clients keep a subset of atomic commands sent by the server and add some of their own. The result of this function is the list of commands kept for each command received.

drawCmdAtomicUI :: MonadClientUI m => Bool -> CmdAtomic -> m ()

Visualization of atomic actions for the client is perfomed in the global state after the command is executed and after the client state is modified by the command.