Safe Haskell | None |
---|---|
Language | Haskell2010 |
Abstract syntax human player commands.
- data CmdCategory
- categoryDescription :: CmdCategory -> Text
- data CmdArea
- areaDescription :: CmdArea -> Text
- type CmdTriple = ([CmdCategory], Text, HumanCmd)
- data HumanCmd
- = Macro [String]
- | ByArea [(CmdArea, HumanCmd)]
- | ByAimMode { }
- | ByItemMode { }
- | ComposeIfLocal HumanCmd HumanCmd
- | ComposeUnlessError HumanCmd HumanCmd
- | Compose2ndLocal HumanCmd HumanCmd
- | LoopOnNothing HumanCmd
- | Wait
- | Wait10
- | MoveDir Vector
- | RunDir Vector
- | RunOnceAhead
- | MoveOnceToXhair
- | RunOnceToXhair
- | ContinueToXhair
- | MoveItem [CStore] CStore (Maybe Part) Bool
- | Project [Trigger]
- | Apply [Trigger]
- | AlterDir [Trigger]
- | AlterWithPointer [Trigger]
- | Help
- | ItemMenu
- | MainMenu
- | GameDifficultyIncr
- | GameWolfToggle
- | GameFishToggle
- | GameScenarioIncr
- | GameRestart
- | GameExit
- | GameSave
- | Tactic
- | Automate
- | Clear
- | SortSlots
- | ChooseItem ItemDialogMode
- | ChooseItemMenu ItemDialogMode
- | ChooseItemProject [Trigger]
- | ChooseItemApply [Trigger]
- | PickLeader Int
- | PickLeaderWithPointer
- | MemberCycle
- | MemberBack
- | SelectActor
- | SelectNone
- | SelectWithPointer
- | Repeat Int
- | Record
- | History
- | MarkVision
- | MarkSmell
- | MarkSuspect
- | SettingsMenu
- | ChallengesMenu
- | Cancel
- | Accept
- | TgtClear
- | ItemClear
- | MoveXhair Vector Int
- | AimTgt
- | AimFloor
- | AimEnemy
- | AimItem
- | AimAscend Int
- | EpsIncr Bool
- | XhairUnknown
- | XhairItem
- | XhairStair Bool
- | XhairPointerFloor
- | XhairPointerEnemy
- | AimPointerFloor
- | AimPointerEnemy
- noRemoteHumanCmd :: HumanCmd -> Bool
- data Trigger
Documentation
data CmdCategory Source #
areaDescription :: CmdArea -> Text Source #
Abstract syntax of player commands.
noRemoteHumanCmd :: HumanCmd -> Bool Source #
Commands that are forbidden on a remote level, because they would usually take time when invoked on one, but not necessarily do what the player expects. Note that some commands that normally take time are not included, because they don't take time in aiming mode or their individual sanity conditions include a remote level check.