LambdaHack-0.9.5.0: A game engine library for tactical squad ASCII roguelike dungeon crawlers
Safe HaskellNone
LanguageHaskell2010

Game.LambdaHack.Common.Types

Description

Abstract identifiers for the main types in the engine. This is imported by modules that don't need to know the internal structure of the types. As a side effect, this prevents mutual dependencies among modules.

Synopsis

Documentation

data ItemId Source #

A unique identifier of an item in the dungeon.

Instances

Instances details
Enum ItemId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Eq ItemId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

(==) :: ItemId -> ItemId -> Bool #

(/=) :: ItemId -> ItemId -> Bool #

Ord ItemId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Show ItemId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Binary ItemId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

put :: ItemId -> Put

get :: Get ItemId

putList :: [ItemId] -> Put

data FactionId Source #

A unique identifier of a faction in a game.

Instances

Instances details
Enum FactionId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Eq FactionId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Ord FactionId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Show FactionId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Hashable FactionId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Binary FactionId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

put :: FactionId -> Put

get :: Get FactionId

putList :: [FactionId] -> Put

data LevelId Source #

Abstract level identifiers.

Instances

Instances details
Enum LevelId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Eq LevelId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

(==) :: LevelId -> LevelId -> Bool #

(/=) :: LevelId -> LevelId -> Bool #

Ord LevelId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Show LevelId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Hashable LevelId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Binary LevelId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

put :: LevelId -> Put

get :: Get LevelId

putList :: [LevelId] -> Put

data ActorId Source #

A unique identifier of an actor in the dungeon.

Instances

Instances details
Enum ActorId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Eq ActorId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

(==) :: ActorId -> ActorId -> Bool #

(/=) :: ActorId -> ActorId -> Bool #

Ord ActorId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Show ActorId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Binary ActorId Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

put :: ActorId -> Put

get :: Get ActorId

putList :: [ActorId] -> Put

data Container Source #

Item container type.

Constructors

CFloor LevelId Point 
CEmbed LevelId Point 
CActor ActorId CStore 
CTrunk FactionId LevelId Point

for bootstrapping actor bodies

Instances

Instances details
Eq Container Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Ord Container Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Show Container Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Generic Container Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Associated Types

type Rep Container :: Type -> Type

Methods

from :: Container -> Rep Container x

to :: Rep Container x -> Container

Binary Container Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

Methods

put :: Container -> Put

get :: Get Container

putList :: [Container] -> Put

type Rep Container Source # 
Instance details

Defined in Game.LambdaHack.Common.Types

type Rep Container = D1 ('MetaData "Container" "Game.LambdaHack.Common.Types" "LambdaHack-0.9.5.0-IfKZ3m76YlCDhiCPrOePIo" 'False) ((C1 ('MetaCons "CFloor" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 LevelId) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Point)) :+: C1 ('MetaCons "CEmbed" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 LevelId) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Point))) :+: (C1 ('MetaCons "CActor" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ActorId) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CStore)) :+: C1 ('MetaCons "CTrunk" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FactionId) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 LevelId) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Point)))))