39 lines
751 B
Haskell
39 lines
751 B
Haskell
{-# LANGUAGE DeriveGeneric #-}
|
|
{-# LANGUAGE DeriveAnyClass #-}
|
|
{-# LANGUAGE StrictData #-}
|
|
{-# LANGUAGE TemplateHaskell #-}
|
|
|
|
module Dodge.Data.Equipment.Misc where
|
|
|
|
import Flat
|
|
import Data.Aeson
|
|
import Data.Aeson.TH
|
|
import TH.Derive
|
|
import Data.Store
|
|
|
|
data EquipSite
|
|
= GoesOnHead
|
|
| GoesOnChest
|
|
| GoesOnBack
|
|
| GoesOnWrist
|
|
| GoesOnLegs
|
|
| GoesOnSpecial
|
|
deriving (Eq, Ord, Show, Read, Generic, Flat)
|
|
|
|
data EquipPosition
|
|
= OnHead
|
|
| OnChest
|
|
| OnBack
|
|
| OnLeftWrist
|
|
| OnRightWrist
|
|
| OnLegs
|
|
| OnSpecial
|
|
deriving (Eq, Ord, Show, Read, Generic, Flat)
|
|
|
|
instance ToJSONKey EquipPosition
|
|
|
|
instance FromJSONKey EquipPosition
|
|
|
|
deriveJSON defaultOptions ''EquipSite
|
|
deriveJSON defaultOptions ''EquipPosition
|