Files
loop/src/Dodge/Data/Item/HeldDelay.hs
T
2022-08-21 21:23:59 +01:00

33 lines
701 B
Haskell

{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.Item.HeldDelay where
import Flat
import Control.Lens
import Data.Aeson
import Data.Aeson.TH
data UseDelay -- should just be Delay
= NoDelay
| FixedRate
{ _rateMax :: Int
, _rateTime :: Int
}
| VariableRate
{ _rateMax :: Int
, _rateTime :: Int
, _rateMaxMax :: Int
, _rateMinMax :: Int
}
| WarmUpNoDelay
{ _warmTime :: Int
, _warmMax :: Int
}
deriving (Eq, Ord, Show, Read, Generic, Flat)
makeLenses ''UseDelay
deriveJSON defaultOptions ''UseDelay