diff options
author | Griffin Smith <grfn@gws.fyi> | 2021-06-19T19·40-0400 |
---|---|---|
committer | grfn <grfn@gws.fyi> | 2021-06-23T21·52+0000 |
commit | f0c167d361779512456c7d7a0185802f9910c8ce (patch) | |
tree | ddeb7454271ffadcf726e8d906a1d5e93df84670 /users/grfn/xanthous/src/Xanthous/Data/App.hs | |
parent | d8bd8e7eea5dcef4901bee14b8fe3027fd8605ac (diff) |
feat(xanthous): Add a command to describe an item in the inventory r/2680
Add a new DescribeInventory command, bound to I, to prompt for an item in the inventory (anywhere in the inventory, including wielded) and display a (new) panel describing it in detail. This description includes the description, the long description, and the item's physical properties (volume, density, and weight). Change-Id: Idc1a05ab16b4514728d42aa6b520f93bea807c07 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3227 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI
Diffstat (limited to 'users/grfn/xanthous/src/Xanthous/Data/App.hs')
-rw-r--r-- | users/grfn/xanthous/src/Xanthous/Data/App.hs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/users/grfn/xanthous/src/Xanthous/Data/App.hs b/users/grfn/xanthous/src/Xanthous/Data/App.hs index 0361d2a59ed5..a2cfcb8001cb 100644 --- a/users/grfn/xanthous/src/Xanthous/Data/App.hs +++ b/users/grfn/xanthous/src/Xanthous/Data/App.hs @@ -8,6 +8,7 @@ module Xanthous.Data.App import Xanthous.Prelude -------------------------------------------------------------------------------- import Test.QuickCheck +import Test.QuickCheck.Instances.Text () import Data.Aeson (ToJSON, FromJSON) -------------------------------------------------------------------------------- import Xanthous.Util.QuickCheck @@ -15,8 +16,13 @@ import Xanthous.Util.QuickCheck -- | Enum for "panels" displayed in the game's UI. data Panel - = InventoryPanel -- ^ A panel displaying the character's inventory - deriving stock (Show, Eq, Ord, Generic, Enum, Bounded) + = -- | A panel displaying the character's inventory + InventoryPanel + | -- | A panel describing an item in the inventory in detail + -- + -- The argument is the full description of the item + ItemDescriptionPanel Text + deriving stock (Show, Eq, Ord, Generic) deriving anyclass (NFData, CoArbitrary, Function, ToJSON, FromJSON) deriving Arbitrary via GenericArbitrary Panel |