Files
loop/src/Dodge/Data/CreatureEffect.hs
T

38 lines
961 B
Haskell

{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
module Dodge.Data.CreatureEffect where
import Data.Aeson
import Data.Aeson.TH
data CrImp = NoCrImp | TurnTowardCr Float -- turn amount
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data WdCrBl
= WdCrTrue
| WdCrBlfromCrBl CrBl
| WdCrNegate WdCrBl
| WdCrLOSTarget
| WdCrSafeDistFromTarget Float
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data CrBl = CrCanShoot | CrIsAiming | CrIsAnimate
| CrOpenAutoDoor
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data CrAc = CrTurnAround
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data CrWdAc
= CrWdBFSThenReturn Int
-- | ChooseMovementSpreadGun
| ChooseMovementLtAuto
deriving (Eq, Ord, Show, Read) --Generic, Flat)
deriveJSON defaultOptions ''CrImp
deriveJSON defaultOptions ''CrBl
deriveJSON defaultOptions ''WdCrBl
deriveJSON defaultOptions ''CrAc
deriveJSON defaultOptions ''CrWdAc