Remove possiblity of displayed but non-focussed terminal

This commit is contained in:
2024-11-16 20:25:49 +00:00
parent 86f185c71e
commit a0431ff9a3
11 changed files with 16 additions and 39 deletions
+1 -10
View File
@@ -1,5 +1,4 @@
module Dodge.InputFocus (
inTermFocus,
inInvRegex,
inCloseRegex,
inSubInvRegex,
@@ -14,13 +13,6 @@ import Data.Maybe
import Dodge.Data.World
import LensHelp
inTermFocus :: World -> Bool
inTermFocus w = fromMaybe False $ do
tmid <- w ^? hud . hudElement . subInventory . termID
hasfocus <- w ^? cWorld . lWorld . terminals . ix tmid . tmInput . tiFocus
connectionstatus <- w ^? cWorld . lWorld . terminals . ix tmid . tmStatus
return $ hasfocus && connectionstatus == TerminalReady
--regexScope ::
-- (Applicative f) =>
-- World ->
@@ -75,9 +67,8 @@ inputFocus w = case w ^? hud . hudElement . subInventory of
Just (-1, _) -> Just $ hud . hudElement . subInventory . ciFilter . _Just
_ -> Nothing
Just DisplayTerminal{_termID = tmid} -> do
hasfocus <- w ^? cWorld . lWorld . terminals . ix tmid . tmInput . tiFocus
connectionstatus <- w ^? cWorld . lWorld . terminals . ix tmid . tmStatus
guard $ hasfocus && connectionstatus == TerminalReady
guard $ connectionstatus == TerminalReady
return $ cWorld . lWorld . terminals . ix tmid . tmInput . tiText
_ -> Nothing
where