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

Game.LambdaHack.Content.ModeKind

Description

The type of game modes.

Synopsis

Documentation

data ModeKind Source #

Game mode specification.

Constructors

ModeKind 

Fields

Instances

Instances details
Show ModeKind Source # 
Instance details

Defined in Game.LambdaHack.Content.ModeKind

type Caves = [([Int], [GroupName CaveKind])] Source #

Requested cave groups for particular level intervals.

type Roster = [(GroupName FactionKind, [(Int, Dice, GroupName ItemKind)])] Source #

The specification of factions and of levels, numbers and groups of their initial members.

Internal operations

validateSingle :: ContentData FactionKind -> ModeKind -> [Text] Source #

Catch invalid game mode kind definitions.

validateAll :: [ModeKind] -> ContentData ModeKind -> [Text] Source #

Validate game mode kinds together.

validateSingleRoster :: ContentData FactionKind -> Caves -> Roster -> [Text] Source #

Checks, in particular, that there is at least one faction with fneverEmpty or the game would get stuck as soon as the dungeon is devoid of actors.