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/Entities/Item.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/Entities/Item.hs')
-rw-r--r-- | users/grfn/xanthous/src/Xanthous/Entities/Item.hs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/users/grfn/xanthous/src/Xanthous/Entities/Item.hs b/users/grfn/xanthous/src/Xanthous/Entities/Item.hs index 6647c42731fa..eadd62569663 100644 --- a/users/grfn/xanthous/src/Xanthous/Entities/Item.hs +++ b/users/grfn/xanthous/src/Xanthous/Entities/Item.hs @@ -10,6 +10,7 @@ module Xanthous.Entities.Item , newWithType , isEdible , weight + , fullDescription ) where -------------------------------------------------------------------------------- import Xanthous.Prelude @@ -61,3 +62,15 @@ isEdible = Raw.isEdible . view itemType -- density of its material weight :: Item -> Grams weight item = (item ^. density) |*| (item ^. volume) + +-- | Describe the item in full detail +fullDescription :: Item -> Text +fullDescription item = unlines + [ item ^. itemType . Raw.description + , "" + , item ^. itemType . Raw.longDescription + , "" + , "volume: " <> tshow (item ^. volume) + , "density: " <> tshow (item ^. density) + , "weight: " <> tshow (weight item) + ] |