Files
loop/src/Dodge/Data/Item/Misc.hs
T
2022-08-21 22:41:19 +01:00

45 lines
1.0 KiB
Haskell

{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.Item.Misc where
import Control.Lens
import Data.Aeson
import Data.Aeson.TH
import Geometry.Data
data ItemDimension = ItemDimension
{ _dimRad :: Float
, _dimCenter :: Point3
, _dimAttachPos :: Point3
}
deriving (Eq, Show, Read) --Generic, Flat)
data ItemPortage
= HeldItem
{ _handlePos :: Float
, _muzPos :: Float
}
| WornItem
| NoPortage
deriving (Eq, Show, Read) --Generic, Flat)
--data ItemValue = ItemValue
-- { _ivInt :: Int
-- , _ivType :: ItemValueType
-- }
-- deriving (Eq, Show, Read) --Generic, Flat)
--
--data ItemValueType = MundaneItem | ArtefactItem
-- deriving (Eq, Show, Read) --Generic, Flat)
makeLenses ''ItemDimension
makeLenses ''ItemPortage
--makeLenses ''ItemValue
deriveJSON defaultOptions ''ItemDimension
deriveJSON defaultOptions ''ItemPortage
--deriveJSON defaultOptions ''ItemValue
--deriveJSON defaultOptions ''ItemValueType