tracer/src/Object/ActionTime.hs
2019-10-28 18:20:34 +01:00

26 lines
596 B
Haskell

{-# LANGUAGE TypeSynonymInstances #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
module Object.ActionTime where
import Affection as A
import Data.String
-- internal imports
import Types
instance ActionTime ObjType ObjState where
actionTime ObjCopier "copying" = 5
actionTime ObjComputer "off" = 0
actionTime ObjComputer "on" = 20
actionTime ObjComputer "hack" = 20
actionTime ObjComputer "hack" = 20
actionTime ObjDoor "open" = 2
actionTime o s = A.log
Error
(fromString (show o) <> ": " <> fromString s <> ": has not a time")
0