From 83b3bbcd9b4023dc78428f947854eae094382be5 Mon Sep 17 00:00:00 2001 From: nek0 Date: Tue, 5 May 2020 00:54:47 +0200 Subject: [PATCH] hunt warnings --- src/Object.hs | 7 ------- src/Object/ActionTime.hs | 1 - src/Object/Computer.hs | 3 +-- src/Object/Copier.hs | 3 --- src/Object/Door.hs | 24 ++++++++++++++++++------ 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/Object.hs b/src/Object.hs index 98d7633..804ae24 100644 --- a/src/Object.hs +++ b/src/Object.hs @@ -3,14 +3,7 @@ {-# LANGUAGE FlexibleInstances #-} module Object where -import Affection as A - -import Control.Monad (when) - import Data.Ecstasy -import Data.Maybe - -import Linear -- internal imports diff --git a/src/Object/ActionTime.hs b/src/Object/ActionTime.hs index 4fcdc8f..7c43bcd 100644 --- a/src/Object/ActionTime.hs +++ b/src/Object/ActionTime.hs @@ -16,7 +16,6 @@ instance ActionTime ObjType ObjState where 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 diff --git a/src/Object/Computer.hs b/src/Object/Computer.hs index 5f4812a..635593d 100644 --- a/src/Object/Computer.hs +++ b/src/Object/Computer.hs @@ -6,7 +6,6 @@ module Object.Computer where import Affection as A -import Control.Monad (when) import Control.Monad.IO.Class (MonadIO(..)) import Data.Ecstasy @@ -19,7 +18,7 @@ import Linear import Types -import Object.ActionTime +import Object.ActionTime () computerObjectAction :: (Monad m, MonadIO m) diff --git a/src/Object/Copier.hs b/src/Object/Copier.hs index 1330eb8..cc1cae2 100644 --- a/src/Object/Copier.hs +++ b/src/Object/Copier.hs @@ -10,11 +10,8 @@ import Control.Monad (when) import Control.Monad.IO.Class import Data.Ecstasy -import Data.Maybe import Data.String (IsString(..)) -import Linear - import Types copierObjectAction diff --git a/src/Object/Door.hs b/src/Object/Door.hs index 8c4a12d..d646f6c 100644 --- a/src/Object/Door.hs +++ b/src/Object/Door.hs @@ -7,19 +7,24 @@ module Object.Door where import Affection as A import Control.Monad (when) +import Control.Monad.IO.Class (MonadIO) import Data.Ecstasy import Data.Maybe import Data.String -import Linear - -- internal imports import Types -import Object.ActionTime +import Object.ActionTime () +doorObjectAction :: (Eq a, IsString a, MonadIO m) + => Double + -> ObjType + -> a + -> Ent + -> SystemT Entity m () doorObjectAction dt t@ObjDoor s@"open" ent = do emap (anEnt ent) $ do mtime <- queryMaybe objStateTime @@ -39,8 +44,15 @@ doorObjectAction dt t@ObjDoor s@"open" ent = do doorObjectAction _ _ _ _ = return () -doorObjectTransition t@ObjDoor s _ ent (Just aent) = do - clearance <- head <$> efor (anEnt aent) (query clearanceLvl) +doorObjectTransition :: (MonadIO m, Eq a, IsString a) + => ObjType + -> a + -> p + -> Ent + -> Maybe Ent + -> SystemT Entity m (Entity 'SetterOf) +doorObjectTransition t@ObjDoor _ _ ent (Just aent) = do + curClearance <- head <$> efor (anEnt aent) (query clearanceLvl) e <- efor (anEnt ent) $ do dir <- query rot oclear <- query clearanceLvl @@ -52,7 +64,7 @@ doorObjectTransition t@ObjDoor s _ ent (Just aent) = do fromString (show ent) ) -- liftIO $ A.logIO A.Debug ("door clearance: " ++ show oclear ++ ", entity clearance: " ++ show clearance) - if clearance >= oclear + if curClearance >= oclear then do liftIO $ A.logIO A.Verbose