Files
loop/src/Dodge/Data/ForegroundShape.hs
T
2022-08-21 10:58:19 +01:00

29 lines
666 B
Haskell

{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.ForegroundShape where
import Data.Binary
import Flat
import LinearHelp ()
import Control.Lens
import Data.Aeson
import Data.Aeson.TH
import Geometry
import ShapePicture
data ForegroundShape = ForegroundShape
{ _fsID :: Int
, _fsPos :: Point2
, _fsDir :: Float
, _fsRad :: Float -- This should probably be a bounding box
, _fsSPic :: SPic
}
deriving (Eq, Ord, Show, Read, Generic, Flat)
instance Binary ForegroundShape
makeLenses ''ForegroundShape
deriveJSON defaultOptions ''ForegroundShape