Add Read/Show instance for Creature
This commit is contained in:
@@ -4,17 +4,20 @@ module Dodge.Data.Creature.Misc
|
||||
( module Dodge.Data.Creature.Misc
|
||||
, module Dodge.Data.CamouflageStatus
|
||||
) where
|
||||
import Dodge.Data.FloatFunction
|
||||
import Dodge.Data.CamouflageStatus
|
||||
import Sound.Data
|
||||
import Geometry.Data
|
||||
import Color
|
||||
import Control.Lens
|
||||
|
||||
data CreatureStatistics = CreatureStatistics
|
||||
{ _strength :: Int
|
||||
, _dexterity :: Int
|
||||
, _intelligence :: Int
|
||||
}
|
||||
deriving (Eq,Ord,Show)
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data Vocalization
|
||||
= Mute
|
||||
| Vocalization
|
||||
@@ -23,19 +26,24 @@ data Vocalization
|
||||
,_vcMaxCoolDown :: Int
|
||||
,_vcCoolDown :: Int
|
||||
}
|
||||
deriving (Eq,Ord,Show)
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data CrMvType
|
||||
= NoMvType
|
||||
| MvWalking { _mvSpeed :: Float }
|
||||
| CrMvType
|
||||
{ _mvSpeed :: Float
|
||||
, _mvTurnRad :: Float -> Float
|
||||
, _mvTurnRad :: FloatFloat
|
||||
, _mvTurnJit :: Float
|
||||
, _mvAimSpeed :: Float -> Float
|
||||
, _mvAimSpeed :: FloatFloat
|
||||
}
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data HumanoidAI = YourAI | ChaseAI | InanimateAI | SpreadGunAI | PistolAI
|
||||
| LtAutoAI | LauncherAI | SwarmAI | AutoAI | FlockArmourChaseAI | MiniGunAI
|
||||
| LongAI | MultGunAI
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data CreatureType
|
||||
= Humanoid
|
||||
{ _skinHead :: Color
|
||||
@@ -47,7 +55,11 @@ data CreatureType
|
||||
| Lampoid {_lampHeight :: Float, _lampColor :: Point3, _lampLSID :: Maybe Int}
|
||||
| Turretoid
|
||||
| NonDrawnCreature
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
data BarrelType = PlainBarrel | ExplosiveBarrel
|
||||
deriving (Eq,Ord,Show,Read)
|
||||
|
||||
makeLenses ''CreatureStatistics
|
||||
makeLenses ''Vocalization
|
||||
makeLenses ''CrMvType
|
||||
|
||||
Reference in New Issue
Block a user