swarm-0.5.0.0: 2D resource gathering game with programmable robots
LicenseBSD-3-Clause
Safe HaskellSafe-Inferred
LanguageHaskell2010

Swarm.TUI.Model.Goal

Description

A UI-centric model for Objective presentation.

Synopsis

Documentation

data GoalStatus Source #

These are intended to be used as keys in a map of lists of goals.

Constructors

Upcoming

Goals in this category have other goals as prerequisites. However, they are only displayed if the "previewable" attribute is true.

Active

Goals in this category may be pursued in parallel. However, they are only displayed if the "hidden" attribute is false.

Completed

A goal's programmatic condition, as well as all its prerequisites, were completed. This is a "latch" mechanism; at some point the conditions required to meet the goal may no longer hold. Nonetheless, the goal remains "completed".

Failed

A goal that can no longer be achieved. If this goal is not an "optional" goal, then the player also "loses" the scenario.

Note that currently the only way to "fail" a goal is by way of a negative prerequisite that was completed.

Instances

Instances details
ToJSON GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

ToJSONKey GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Bounded GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Enum GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Generic GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Associated Types

type Rep GoalStatus :: Type -> Type #

Show GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Eq GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Ord GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

type Rep GoalStatus Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

type Rep GoalStatus = D1 ('MetaData "GoalStatus" "Swarm.TUI.Model.Goal" "swarm-0.5.0.0-6qXEbhCmuXA4wRndqqhBu" 'False) ((C1 ('MetaCons "Upcoming" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Active" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Completed" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Failed" 'PrefixI 'False) (U1 :: Type -> Type)))

data GoalTracking Source #

Constructors

GoalTracking 

Fields

Instances

Instances details
ToJSON GoalTracking Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Generic GoalTracking Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

Associated Types

type Rep GoalTracking :: Type -> Type #

ToSample GoalTracking Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

type Rep GoalTracking Source # 
Instance details

Defined in Swarm.TUI.Model.Goal

type Rep GoalTracking = D1 ('MetaData "GoalTracking" "Swarm.TUI.Model.Goal" "swarm-0.5.0.0-6qXEbhCmuXA4wRndqqhBu" 'False) (C1 ('MetaCons "GoalTracking" 'PrefixI 'True) (S1 ('MetaSel ('Just "announcements") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Announcement]) :*: S1 ('MetaSel ('Just "goals") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CategorizedGoals)))

data GoalDisplay Source #

Constructors

GoalDisplay 

Fields