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

Safe HaskellNone







type KYX = (Either [KM] SlotChar, (Y, X, X)) Source #

A key or an item slot label at a given position on the screen.

type OKX = (Overlay, [KYX]) Source #

An Overlay of text with an associated list of keys or slots that activated when the specified screen position is pointed at. The list should be sorted wrt rows and then columns.

data Slideshow Source #

A list of active screenfulls to be shown one after another. Each screenful has an independent numbering of rows and columns.

wrapOKX :: Y -> X -> X -> [(KM, String)] -> OKX Source #

splitOverlay :: X -> Y -> Report -> [KM] -> OKX -> Slideshow Source #

splitOKX :: X -> Y -> AttrLine -> [KM] -> OKX -> [OKX] Source #

highSlideshow Source #


:: X

width of the display area

-> Y

height of the display area

-> ScoreTable

current score table

-> Int

position of the current score in the table

-> Text

the name of the game mode

-> TimeZone

the timezone where the game is run

-> Slideshow 

Generate a slideshow with the current and previous scores.

Internal operations

keysOKX :: Y -> X -> X -> [KM] -> OKX Source #

showTable :: TimeZone -> Int -> ScoreTable -> Int -> Int -> [AttrLine] Source #

Show a screenful of the high scores table. Parameter entries is the number of (3-line) scores to be shown.

showNearbyScores :: TimeZone -> Int -> ScoreTable -> Int -> [[AttrLine]] Source #

Produce a couple of renderings of the high scores table.