Files
loop/src/Dodge/InputFocus.hs
T

13 lines
415 B
Haskell

module Dodge.InputFocus where
import Dodge.Data
import LensHelp
import Data.Maybe
inTermFocus :: World -> Bool
inTermFocus w = fromMaybe False $ do
tmid <- w ^? cWorld . hud . hudElement . subInventory . termID
hasfocus <- w ^? cWorld . terminals . ix tmid . tmInput . tiFocus
connectionstatus <- w ^? cWorld . terminals . ix tmid . tmStatus
return $ hasfocus && connectionstatus == TerminalReady