Safe Haskell | None |
---|---|
Language | Haskell2010 |
Hacks that haven't found their home yet.
Synopsis
- data FactionId
- data LevelId
- data ActorId
- data Container
- data CStore
- data SLore
- data ItemDialogMode
- data GroupName a
- data Tactic
- toGroupName :: Text -> GroupName a
- describeTactic :: Tactic -> Text
- makePhrase :: [Part] -> Text
- makeSentence :: [Part] -> Text
- squashedWWandW :: [Part] -> (Part, Person)
- normalLevelBound :: (Int, Int)
- appDataDir :: IO FilePath
- xM :: Int -> Int64
- xD :: Double -> Double
- minusM :: Int64
- minusM1 :: Int64
- oneM :: Int64
- tenthM :: Int64
Game object identifiers
A unique identifier of a faction in a game.
Instances
Enum FactionId Source # | |
Defined in Game.LambdaHack.Common.Misc succ :: FactionId -> FactionId # pred :: FactionId -> FactionId # fromEnum :: FactionId -> Int # enumFrom :: FactionId -> [FactionId] # enumFromThen :: FactionId -> FactionId -> [FactionId] # enumFromTo :: FactionId -> FactionId -> [FactionId] # enumFromThenTo :: FactionId -> FactionId -> FactionId -> [FactionId] # | |
Eq FactionId Source # | |
Ord FactionId Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Show FactionId Source # | |
Binary FactionId Source # | |
Hashable FactionId Source # | |
Defined in Game.LambdaHack.Common.Misc |
Abstract level identifiers.
Instances
Enum LevelId Source # | |
Eq LevelId Source # | |
Ord LevelId Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Show LevelId Source # | |
Binary LevelId Source # | |
Hashable LevelId Source # | |
Defined in Game.LambdaHack.Common.Misc |
A unique identifier of an actor in the dungeon.
Instances
Enum ActorId Source # | |
Eq ActorId Source # | |
Ord ActorId Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Show ActorId Source # | |
Binary ActorId Source # | |
Item containers
Item container type.
CFloor LevelId Point | |
CEmbed LevelId Point | |
CActor ActorId CStore | |
CTrunk FactionId LevelId Point | for bootstrapping actor bodies |
Instances
Actor's item stores.
Instances
Bounded CStore Source # | |
Enum CStore Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Eq CStore Source # | |
Ord CStore Source # | |
Read CStore Source # | |
Show CStore Source # | |
Generic CStore Source # | |
Binary CStore Source # | |
NFData CStore Source # | |
Defined in Game.LambdaHack.Common.Misc | |
type Rep CStore Source # | |
Defined in Game.LambdaHack.Common.Misc type Rep CStore = D1 (MetaData "CStore" "Game.LambdaHack.Common.Misc" "LambdaHack-0.8.0.0-F0O84Ns8lID9eizm4mHo10" False) ((C1 (MetaCons "CGround" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "COrgan" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "CEqp" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "CInv" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "CSha" PrefixI False) (U1 :: * -> *)))) |
Item slot and lore categories.
Instances
Bounded SLore Source # | |
Enum SLore Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Eq SLore Source # | |
Ord SLore Source # | |
Read SLore Source # | |
Show SLore Source # | |
Generic SLore Source # | |
Binary SLore Source # | |
NFData SLore Source # | |
Defined in Game.LambdaHack.Common.Misc | |
type Rep SLore Source # | |
Defined in Game.LambdaHack.Common.Misc type Rep SLore = D1 (MetaData "SLore" "Game.LambdaHack.Common.Misc" "LambdaHack-0.8.0.0-F0O84Ns8lID9eizm4mHo10" False) ((C1 (MetaCons "SItem" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "SOrgan" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "STrunk" PrefixI False) (U1 :: * -> *))) :+: (C1 (MetaCons "STmp" PrefixI False) (U1 :: * -> *) :+: (C1 (MetaCons "SBlast" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "SEmbed" PrefixI False) (U1 :: * -> *)))) |
data ItemDialogMode Source #
Instances
Assorted
Instances
Eq (GroupName a) Source # | |
Ord (GroupName a) Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Read (GroupName a) Source # | |
Show (GroupName a) Source # | |
IsString (GroupName a) Source # | |
Defined in Game.LambdaHack.Common.Misc fromString :: String -> GroupName a # | |
Generic (GroupName a) Source # | |
Binary (GroupName a) Source # | |
NFData (GroupName a) Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Hashable (GroupName a) Source # | |
Defined in Game.LambdaHack.Common.Misc | |
type Rep (GroupName a) Source # | |
Defined in Game.LambdaHack.Common.Misc |
Tactic of non-leader actors. Apart of determining AI operation,
each tactic implies a skill modifier, that is added to the non-leader skills
defined in fskillsOther
field of Player
.
TExplore | if enemy nearby, attack, if no items, etc., explore unknown |
TFollow | always follow leader's target or his position if no target |
TFollowNoItems | follow but don't do any item management nor use |
TMeleeAndRanged | only melee and do ranged combat |
TMeleeAdjacent | only melee (or wait) |
TBlock | always only wait, even if enemy in melee range |
TRoam | if enemy nearby, attack, if no items, etc., roam randomly |
TPatrol | find an open and uncrowded area, patrol it according
to sight radius and fallback temporarily to |
Instances
Bounded Tactic Source # | |
Enum Tactic Source # | |
Defined in Game.LambdaHack.Common.Misc | |
Eq Tactic Source # | |
Ord Tactic Source # | |
Show Tactic Source # | |
Generic Tactic Source # | |
Binary Tactic Source # | |
NFData Tactic Source # | |
Defined in Game.LambdaHack.Common.Misc | |
type Rep Tactic Source # | |
Defined in Game.LambdaHack.Common.Misc type Rep Tactic = D1 (MetaData "Tactic" "Game.LambdaHack.Common.Misc" "LambdaHack-0.8.0.0-F0O84Ns8lID9eizm4mHo10" False) (((C1 (MetaCons "TExplore" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "TFollow" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "TFollowNoItems" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "TMeleeAndRanged" PrefixI False) (U1 :: * -> *))) :+: ((C1 (MetaCons "TMeleeAdjacent" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "TBlock" PrefixI False) (U1 :: * -> *)) :+: (C1 (MetaCons "TRoam" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "TPatrol" PrefixI False) (U1 :: * -> *)))) |
toGroupName :: Text -> GroupName a Source #
describeTactic :: Tactic -> Text Source #
makePhrase :: [Part] -> Text Source #
Re-exported English phrase creation functions, applied to default irregular word sets.
makeSentence :: [Part] -> Text Source #
Re-exported English phrase creation functions, applied to default irregular word sets.
squashedWWandW :: [Part] -> (Part, Person) Source #
Apply the WWandW
constructor, first representing repetitions
as CardinalWs
.
The parts are not sorted, only grouped, to keep the order.
The internal structure of speech parts is compared, not their string
rendering, so some coincidental clashes are avoided (and code is simpler).
normalLevelBound :: (Int, Int) Source #
Level bounds.
appDataDir :: IO FilePath Source #
Personal data directory for the game. Depends on the OS and the game,
e.g., for LambdaHack under Linux it's ~/.LambdaHack/
.
Orphan instances
Binary NominalDiffTime Source # | |
NFData Part Source # | |
NFData Person Source # | |
NFData Polarity Source # | |
(Enum k, Binary k) => Binary (EnumSet k) Source # | |
Enum k => Keyed (EnumMap k) Source # | |
Zip (EnumMap k) Source # | |
Enum k => ZipWithKey (EnumMap k) Source # | |
Enum k => Indexable (EnumMap k) Source # | |
Enum k => Lookup (EnumMap k) Source # | |
Enum k => Adjustable (EnumMap k) Source # | |
Enum k => FoldableWithKey (EnumMap k) Source # | |
Enum k => TraversableWithKey (EnumMap k) Source # | |
traverseWithKey :: Applicative f => (Key (EnumMap k) -> a -> f b) -> EnumMap k a -> f (EnumMap k b) # mapWithKeyM :: Monad m => (Key (EnumMap k) -> a -> m b) -> EnumMap k a -> m (EnumMap k b) # | |
(Enum k, Binary k, Binary e) => Binary (EnumMap k e) Source # | |
(Hashable k, Eq k, Binary k, Binary v) => Binary (HashMap k v) Source # | |
(Enum k, Hashable k, Hashable e) => Hashable (EnumMap k e) Source # | |