LambdaHack-0.8.3.0: A game engine library for tactical squad ASCII roguelike dungeon crawlers

Safe HaskellNone
LanguageHaskell2010

Game.LambdaHack.Client.State

Description

Client-specific game state components.

Synopsis

Documentation

data StateClient Source #

Client state, belonging to a single faction.

Constructors

StateClient 

Fields

data BfsAndPath Source #

Pathfinding distances to all reachable positions of an actor and a shortest paths to some of the positions.

Instances
Show BfsAndPath Source # 
Instance details

Defined in Game.LambdaHack.Client.State

data TgtAndPath Source #

Actor's target and a path to it, if any.

Constructors

TgtAndPath 

Fields

Instances
Show TgtAndPath Source # 
Instance details

Defined in Game.LambdaHack.Client.State

Generic TgtAndPath Source # 
Instance details

Defined in Game.LambdaHack.Client.State

Associated Types

type Rep TgtAndPath :: * -> * #

Binary TgtAndPath Source # 
Instance details

Defined in Game.LambdaHack.Client.State

type Rep TgtAndPath Source # 
Instance details

Defined in Game.LambdaHack.Client.State

type Rep TgtAndPath = D1 (MetaData "TgtAndPath" "Game.LambdaHack.Client.State" "LambdaHack-0.8.3.0-5WMRdylEY9jFLqYScFUab7" False) (C1 (MetaCons "TgtAndPath" PrefixI True) (S1 (MetaSel (Just "tapTgt") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 Target) :*: S1 (MetaSel (Just "tapPath") NoSourceUnpackedness NoSourceStrictness DecidedStrict) (Rec0 AndPath)))

emptyStateClient :: FactionId -> StateClient Source #

Initial empty game client state.

updateTarget :: ActorId -> (Maybe Target -> Maybe Target) -> StateClient -> StateClient Source #

Update target parameters within client state.

getTarget :: ActorId -> StateClient -> Maybe Target Source #

Get target parameters from client state.

updateLeader :: ActorId -> State -> StateClient -> StateClient Source #

Update picked leader within state. Verify actor's faction.