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

Safe Haskell | None
Language | Haskell2010

Game.LambdaHack.Client.UI.EffectDescription

Contents

- Internal operations

Description

Description of effects.

Synopsis

- data DetailLevel
  - = DetailLow
  - | DetailMedium
  - | DetailHigh
  - | DetailAll
- defaultDetailLevel :: DetailLevel
- effectToSuffix :: DetailLevel -> Effect -> Text
- detectToObject :: DetectKind -> Text
- detectToVerb :: DetectKind -> Text
- skillName :: Skill -> Text
- skillDesc :: Skill -> Text
- skillToDecorator :: Skill -> Actor -> Int -> Text
- skillsInDisplayOrder :: [Skill]
- kindAspectToSuffix :: Aspect -> Text
- aspectToSentence :: Aspect -> Maybe Text
- affixDice :: Dice -> Text
- describeToolsAlternative :: [[(Int, GroupName ItemKind)]] -> Text
- describeCrafting :: [(Int, GroupName ItemKind)] -> [(Int, GroupName ItemKind)] -> Effect -> (Text, Text, Text)
- wrapInParens :: Text -> Text
- conditionToObject :: Condition -> Text
- activationFlagToObject :: ActivationFlag -> Text
- slotToSentence :: EqpSlot -> Text
- tmodToSuff :: Text -> ThrowMod -> Text
- affixBonus :: Int -> Text
- wrapInChevrons :: Text -> Text

# Documentation

data DetailLevel Source #

Constructors

DetailLow |
DetailMedium |
DetailHigh |
DetailAll |

#### Instances

Instances details

Binary DetailLevel Source # |
Instance details Defined in Game.LambdaHack.Client.UI.EffectDescription Methods put :: DetailLevel -> Put Source # get :: Get DetailLevel Source # putList :: [DetailLevel] -> Put Source #
Bounded DetailLevel Source # |
Instance details Defined in Game.LambdaHack.Client.UI.EffectDescription Methods minBound :: DetailLevel Source # maxBound :: DetailLevel Source #
Enum DetailLevel Source # |

Instance details

Defined in Game.LambdaHack.Client.UI.EffectDescription

Methods

succ :: DetailLevel -> DetailLevel Source #

pred :: DetailLevel -> DetailLevel Source #

toEnum :: Int -> DetailLevel Source #

fromEnum :: DetailLevel -> Int Source #

enumFrom :: DetailLevel -> [DetailLevel] Source #

enumFromThen :: DetailLevel -> DetailLevel -> [DetailLevel] Source #

enumFromTo :: DetailLevel -> DetailLevel -> [DetailLevel] Source #

enumFromThenTo :: DetailLevel -> DetailLevel -> DetailLevel -> [DetailLevel] Source #

Generic DetailLevel Source # |

Instance details

Defined in Game.LambdaHack.Client.UI.EffectDescription

Associated Types

type Rep DetailLevel |

Instance details

Defined in Game.LambdaHack.Client.UI.EffectDescription

type Rep DetailLevel = D1 ('MetaData "DetailLevel" "Game.LambdaHack.Client.UI.EffectDescription" "LambdaHack-0.11.0.1-BLuOaw8nuizISmzkanqI8h" 'False) ((C1 ('MetaCons "DetailLow" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DetailMedium" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DetailHigh" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DetailAll" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: DetailLevel -> Rep DetailLevel x Source #

to :: Rep DetailLevel x -> DetailLevel Source #

Show DetailLevel Source # |
Instance details Defined in Game.LambdaHack.Client.UI.EffectDescription Methods showsPrec :: Int -> DetailLevel -> ShowS Source # show :: DetailLevel -> String Source # showList :: [DetailLevel] -> ShowS Source #
Eq DetailLevel Source # |
Instance details Defined in Game.LambdaHack.Client.UI.EffectDescription Methods (==) :: DetailLevel -> DetailLevel -> Bool Source # (/=) :: DetailLevel -> DetailLevel -> Bool Source #
Ord DetailLevel Source # |

Instance details

Defined in Game.LambdaHack.Client.UI.EffectDescription

Methods

compare :: DetailLevel -> DetailLevel -> Ordering Source #

(<) :: DetailLevel -> DetailLevel -> Bool Source #

(<=) :: DetailLevel -> DetailLevel -> Bool Source #

(>) :: DetailLevel -> DetailLevel -> Bool Source #

(>=) :: DetailLevel -> DetailLevel -> Bool Source #

max :: DetailLevel -> DetailLevel -> DetailLevel Source #

min :: DetailLevel -> DetailLevel -> DetailLevel Source #

type Rep DetailLevel Source # |

Instance details

Defined in Game.LambdaHack.Client.UI.EffectDescription

type Rep DetailLevel = D1 ('MetaData "DetailLevel" "Game.LambdaHack.Client.UI.EffectDescription" "LambdaHack-0.11.0.1-BLuOaw8nuizISmzkanqI8h" 'False) ((C1 ('MetaCons "DetailLow" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DetailMedium" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DetailHigh" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DetailAll" 'PrefixI 'False) (U1 :: Type -> Type)))

defaultDetailLevel :: DetailLevel Source #

effectToSuffix :: DetailLevel -> Effect -> Text Source #

Suffix to append to a basic content name if the content causes the effect.

We show absolute time in seconds, not `moves`, because actors can have different speeds (and actions can potentially take different time intervals). We call the time taken by one player move, when walking, a `move`. `Turn` and `clip` are used mostly internally, the former as an absolute time unit. We show distances in `steps`, because one step, from a tile to another tile, is always 1 meter. We don't call steps `tiles`, reserving that term for the context of terrain kinds or units of area.

detectToObject :: DetectKind -> Text Source #

detectToVerb :: DetectKind -> Text Source #

skillName :: Skill -> Text Source #

skillDesc :: Skill -> Text Source #

skillToDecorator :: Skill -> Actor -> Int -> Text Source #

skillsInDisplayOrder :: [Skill] Source #

kindAspectToSuffix :: Aspect -> Text Source #

aspectToSentence :: Aspect -> Maybe Text Source #

affixDice :: Dice -> Text Source #

describeToolsAlternative :: [[(Int, GroupName ItemKind)]] -> Text Source #

describeCrafting :: [(Int, GroupName ItemKind)] -> [(Int, GroupName ItemKind)] -> Effect -> (Text, Text, Text) Source #

wrapInParens :: Text -> Text Source #

# Internal operations

conditionToObject :: Condition -> Text Source #

activationFlagToObject :: ActivationFlag -> Text Source #

slotToSentence :: EqpSlot -> Text Source #

tmodToSuff :: Text -> ThrowMod -> Text Source #

affixBonus :: Int -> Text Source #

wrapInChevrons :: Text -> Text Source #