| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Game.LambdaHack.Content.FactionKind
Contents
Description
The type of kinds of factions present in a game, both human and computer-controlled.
Synopsis
- data FactionKind = FactionKind {
- fname :: Text
- ffreq :: Freqs FactionKind
- fteam :: TeamContinuity
- fgroups :: Freqs ItemKind
- fskillsOther :: Skills
- fcanEscape :: Bool
- fneverEmpty :: Bool
- fhiCondPoly :: HiCondPoly
- fhasGender :: Bool
- finitDoctrine :: Doctrine
- fspawnsFast :: Bool
- fhasPointman :: Bool
- fhasUI :: Bool
- finitUnderAI :: Bool
- fenemyTeams :: [TeamContinuity]
- falliedTeams :: [TeamContinuity]
- makeData :: [FactionKind] -> [GroupName FactionKind] -> [GroupName FactionKind] -> ContentData FactionKind
- type HiCondPoly = [HiSummand]
- type HiSummand = (HiPolynomial, [Outcome])
- type HiPolynomial = [(HiIndeterminant, Double)]
- data HiIndeterminant
- newtype TeamContinuity = TeamContinuity Int
- data Outcome
- teamExplorer :: TeamContinuity
- hiHeroLong :: HiCondPoly
- hiHeroMedium :: HiCondPoly
- hiHeroShort :: HiCondPoly
- hiDweller :: HiCondPoly
- victoryOutcomes :: [Outcome]
- deafeatOutcomes :: [Outcome]
- nameOutcomePast :: Outcome -> Text
- nameOutcomeVerb :: Outcome -> Text
- endMessageOutcome :: Outcome -> Text
- validateSingle :: FactionKind -> [Text]
- validateAll :: [FactionKind] -> ContentData FactionKind -> [Text]
Documentation
data FactionKind Source #
Properties of a particular faction.
Constructors
| FactionKind | |
Fields
| |
Instances
makeData :: [FactionKind] -> [GroupName FactionKind] -> [GroupName FactionKind] -> ContentData FactionKind Source #
type HiCondPoly = [HiSummand] Source #
Conditional polynomial representing score calculation for this faction.
type HiSummand = (HiPolynomial, [Outcome]) Source #
type HiPolynomial = [(HiIndeterminant, Double)] Source #
data HiIndeterminant Source #
Instances
| Binary HiIndeterminant Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods put :: HiIndeterminant -> Put Source # get :: Get HiIndeterminant Source # putList :: [HiIndeterminant] -> Put Source # | |||||
| Generic HiIndeterminant Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Associated Types
Methods from :: HiIndeterminant -> Rep HiIndeterminant x Source # to :: Rep HiIndeterminant x -> HiIndeterminant Source # | |||||
| Show HiIndeterminant Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind | |||||
| Eq HiIndeterminant Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods (==) :: HiIndeterminant -> HiIndeterminant -> Bool Source # (/=) :: HiIndeterminant -> HiIndeterminant -> Bool Source # | |||||
| type Rep HiIndeterminant Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind type Rep HiIndeterminant = D1 ('MetaData "HiIndeterminant" "Game.LambdaHack.Content.FactionKind" "LambdaHack-0.11.0.1-BLuOaw8nuizISmzkanqI8h" 'False) ((C1 ('MetaCons "HiConst" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "HiLoot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HiSprint" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "HiBlitz" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HiSurvival" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "HiKill" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "HiLoss" 'PrefixI 'False) (U1 :: Type -> Type)))) | |||||
newtype TeamContinuity Source #
Team continuity index. Starting with 1. See the comment for FactionId.
Constructors
| TeamContinuity Int |
Instances
| Binary TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods put :: TeamContinuity -> Put Source # get :: Get TeamContinuity Source # putList :: [TeamContinuity] -> Put Source # | |||||
| Enum TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods succ :: TeamContinuity -> TeamContinuity Source # pred :: TeamContinuity -> TeamContinuity Source # toEnum :: Int -> TeamContinuity Source # fromEnum :: TeamContinuity -> Int Source # enumFrom :: TeamContinuity -> [TeamContinuity] Source # enumFromThen :: TeamContinuity -> TeamContinuity -> [TeamContinuity] Source # enumFromTo :: TeamContinuity -> TeamContinuity -> [TeamContinuity] Source # enumFromThenTo :: TeamContinuity -> TeamContinuity -> TeamContinuity -> [TeamContinuity] Source # | |||||
| Generic TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Associated Types
Methods from :: TeamContinuity -> Rep TeamContinuity x Source # to :: Rep TeamContinuity x -> TeamContinuity Source # | |||||
| Show TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind | |||||
| Eq TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods (==) :: TeamContinuity -> TeamContinuity -> Bool Source # (/=) :: TeamContinuity -> TeamContinuity -> Bool Source # | |||||
| Ord TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods compare :: TeamContinuity -> TeamContinuity -> Ordering Source # (<) :: TeamContinuity -> TeamContinuity -> Bool Source # (<=) :: TeamContinuity -> TeamContinuity -> Bool Source # (>) :: TeamContinuity -> TeamContinuity -> Bool Source # (>=) :: TeamContinuity -> TeamContinuity -> Bool Source # max :: TeamContinuity -> TeamContinuity -> TeamContinuity Source # min :: TeamContinuity -> TeamContinuity -> TeamContinuity Source # | |||||
| type Rep TeamContinuity Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind type Rep TeamContinuity = D1 ('MetaData "TeamContinuity" "Game.LambdaHack.Content.FactionKind" "LambdaHack-0.11.0.1-BLuOaw8nuizISmzkanqI8h" 'True) (C1 ('MetaCons "TeamContinuity" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int))) | |||||
Outcome of a game.
Constructors
| Escape | the faction escaped the dungeon alive |
| Conquer | the faction won by eliminating all rivals |
| Defeated | the faction lost the game in another way |
| Killed | the faction was eliminated |
| Restart | game is restarted; the quitter quit |
| Camping | game is supended |
Instances
| Binary Outcome Source # | |||||
| Bounded Outcome Source # | |||||
| Enum Outcome Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Methods succ :: Outcome -> Outcome Source # pred :: Outcome -> Outcome Source # toEnum :: Int -> Outcome Source # fromEnum :: Outcome -> Int Source # enumFrom :: Outcome -> [Outcome] Source # enumFromThen :: Outcome -> Outcome -> [Outcome] Source # enumFromTo :: Outcome -> Outcome -> [Outcome] Source # enumFromThenTo :: Outcome -> Outcome -> Outcome -> [Outcome] Source # | |||||
| Generic Outcome Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind Associated Types
| |||||
| Show Outcome Source # | |||||
| Eq Outcome Source # | |||||
| Ord Outcome Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind | |||||
| type Rep Outcome Source # | |||||
Defined in Game.LambdaHack.Content.FactionKind type Rep Outcome = D1 ('MetaData "Outcome" "Game.LambdaHack.Content.FactionKind" "LambdaHack-0.11.0.1-BLuOaw8nuizISmzkanqI8h" 'False) ((C1 ('MetaCons "Escape" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Conquer" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Defeated" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "Killed" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Restart" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Camping" 'PrefixI 'False) (U1 :: Type -> Type)))) | |||||
victoryOutcomes :: [Outcome] Source #
deafeatOutcomes :: [Outcome] Source #
nameOutcomePast :: Outcome -> Text Source #
nameOutcomeVerb :: Outcome -> Text Source #
endMessageOutcome :: Outcome -> Text Source #
Internal operations
validateSingle :: FactionKind -> [Text] Source #
validateAll :: [FactionKind] -> ContentData FactionKind -> [Text] Source #
Validate game faction kinds together.