tracer/src/Types/NPCState.hs

31 lines
565 B
Haskell
Raw Normal View History

2018-08-10 06:58:26 +00:00
module Types.NPCState where
import Control.Concurrent.MVar (MVar)
import Linear (V2)
data NPCMoveState
= NPCWalking
{ npcWalkPath :: [V2 Int]
}
| NPCStanding
{ npcStandTime :: Double
, npcFuturePath :: MVar [V2 Int]
}
2018-09-07 21:39:53 +00:00
data NPCActionState
= ASWork
| ASToilet
| ASDrink
| ASEat
| ASRandWalk
deriving (Eq)
data NPCStats = NPCStats
{ statConcentration :: Double
, statBladder :: Double
, statThirst :: Double
, statHunger :: Double
, statFood :: Double
, statDrink :: Double
}