Safe Haskell | None |
---|---|
Language | Haskell2010 |
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.
FactionKind | |
|
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
newtype TeamContinuity Source #
Team continuity index. Starting with 1. See the comment for FactionId
.
Instances
Outcome of a game.
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
Bounded Outcome Source # | |
Enum Outcome Source # | |
Eq Outcome Source # | |
Ord Outcome Source # | |
Defined in Game.LambdaHack.Content.FactionKind | |
Show Outcome Source # | |
Generic Outcome Source # | |
Binary Outcome Source # | |
type Rep Outcome Source # | |
Defined in Game.LambdaHack.Content.FactionKind type Rep Outcome = D1 ('MetaData "Outcome" "Game.LambdaHack.Content.FactionKind" "LambdaHack-0.11.0.0-inplace" '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.