Cleanup
This commit is contained in:
@@ -371,7 +371,7 @@ drawTerminalDisplay cfig tm =
|
|||||||
f =
|
f =
|
||||||
map toselitm . displayTermInput
|
map toselitm . displayTermInput
|
||||||
. reverse
|
. reverse
|
||||||
. take getMaxLinesTM
|
-- . take getMaxLinesTM
|
||||||
$ _tmDisplayedLines tm
|
$ _tmDisplayedLines tm
|
||||||
displayTermInput = case _tmStatus tm of
|
displayTermInput = case _tmStatus tm of
|
||||||
TerminalOff -> id
|
TerminalOff -> id
|
||||||
|
|||||||
+2
-11
@@ -490,7 +490,6 @@ pbFlicker pt =
|
|||||||
|
|
||||||
zoneClouds :: World -> World
|
zoneClouds :: World -> World
|
||||||
zoneClouds w = w & clZoning .~ foldl' (flip zoneCloud) mempty (w ^. cWorld . lWorld . clouds)
|
zoneClouds w = w & clZoning .~ foldl' (flip zoneCloud) mempty (w ^. cWorld . lWorld . clouds)
|
||||||
|
|
||||||
zoneDusts :: World -> World
|
zoneDusts :: World -> World
|
||||||
zoneDusts w = w & dsZoning .~ foldl' (flip zoneDust) mempty (w ^. cWorld . lWorld . dusts)
|
zoneDusts w = w & dsZoning .~ foldl' (flip zoneDust) mempty (w ^. cWorld . lWorld . dusts)
|
||||||
|
|
||||||
@@ -506,24 +505,16 @@ tmUpdate tm w = fromMaybe w $ do
|
|||||||
(TLine _ tls g) ->
|
(TLine _ tls g) ->
|
||||||
w & pointTermParams
|
w & pointTermParams
|
||||||
%~ ( (tmFutureLines %~ tail)
|
%~ ( (tmFutureLines %~ tail)
|
||||||
. (tmDisplayedLines %~ (map displayTerminalLineString tls ++))
|
. (tmDisplayedLines %~ take getMaxLinesTM . (map displayTerminalLineString tls ++))
|
||||||
|
-- . (tmDisplayedLines %~ (map displayTerminalLineString tls ++))
|
||||||
)
|
)
|
||||||
& doTmWdWd g tm
|
& doTmWdWd g tm
|
||||||
where
|
where
|
||||||
-- Just (TerminalLineEffect _ eff) ->
|
|
||||||
-- w
|
|
||||||
-- & pointTermParams . tmFutureLines %~ tail
|
|
||||||
-- & doTmWdWd eff tm
|
|
||||||
|
|
||||||
pointTermParams = cWorld . lWorld . terminals . ix (_tmID tm)
|
pointTermParams = cWorld . lWorld . terminals . ix (_tmID tm)
|
||||||
|
|
||||||
setOldPos :: Creature -> Creature
|
setOldPos :: Creature -> Creature
|
||||||
setOldPos cr = cr & crOldPos .~ _crPos cr
|
setOldPos cr = cr & crOldPos .~ _crPos cr
|
||||||
|
|
||||||
-- hack
|
|
||||||
--updateRandGen :: World -> World
|
|
||||||
--updateRandGen = randGen %~ (snd . (uniform :: StdGen -> (Int,StdGen)))
|
|
||||||
|
|
||||||
--doRewind :: World -> World
|
--doRewind :: World -> World
|
||||||
--doRewind w = case w ^. cwTime . maybeWorld of
|
--doRewind w = case w ^. cwTime . maybeWorld of
|
||||||
-- Just' cw ->
|
-- Just' cw ->
|
||||||
|
|||||||
@@ -107,16 +107,10 @@ updateMouseHeldInGame cfig w = case w ^. input . mouseContext of
|
|||||||
OverInvDrag k mmouseover ab bn -> doDrag 30 k mmouseover ab bn w
|
OverInvDrag k mmouseover ab bn -> doDrag 30 k mmouseover ab bn w
|
||||||
_ -> w
|
_ -> w
|
||||||
|
|
||||||
doDrag ::
|
doDrag :: Int -> Int -> Maybe (Int, Int) -> Maybe (Int, Int) -> Maybe (Int, Int) -> World -> World
|
||||||
Int ->
|
--doDrag 0 _ _ _ _ w = w
|
||||||
Int ->
|
|
||||||
Maybe (Int, Int) ->
|
|
||||||
Maybe (Int, Int) ->
|
|
||||||
Maybe (Int, Int) ->
|
|
||||||
World ->
|
|
||||||
World
|
|
||||||
doDrag 0 _ _ _ _ w = w
|
|
||||||
doDrag n k mmouseover ab bn w = fromMaybe w $ do
|
doDrag n k mmouseover ab bn w = fromMaybe w $ do
|
||||||
|
guard (n /= 0) -- > 0 ?
|
||||||
ss <- w ^? hud . hudElement . diSections . ix k . ssItems
|
ss <- w ^? hud . hudElement . diSections . ix k . ssItems
|
||||||
x <- mmouseover
|
x <- mmouseover
|
||||||
is <- w ^? hud . hudElement . diSelection . _Just . _3
|
is <- w ^? hud . hudElement . diSelection . _Just . _3
|
||||||
@@ -255,11 +249,7 @@ updateMouseClickInGame cfig w = case w ^. input . mouseContext of
|
|||||||
f (x, y) = (x, y, mempty)
|
f (x, y) = (x, y, mempty)
|
||||||
selsec = w ^? hud . hudElement . diSelection . _Just . _1
|
selsec = w ^? hud . hudElement . diSelection . _Just . _1
|
||||||
|
|
||||||
endRegex ::
|
endRegex :: Int -> World -> Maybe (Int, Int, IS.IntSet) -> Maybe (Int, Int, IS.IntSet)
|
||||||
Int ->
|
|
||||||
World ->
|
|
||||||
Maybe (Int, Int, IS.IntSet) ->
|
|
||||||
Maybe (Int, Int, IS.IntSet)
|
|
||||||
endRegex i w = fromMaybe id $ do
|
endRegex i w = fromMaybe id $ do
|
||||||
sss <- w ^? hud . hudElement . diSections
|
sss <- w ^? hud . hudElement . diSections
|
||||||
let j = fromMaybe 0 $ do
|
let j = fromMaybe 0 $ do
|
||||||
@@ -268,10 +258,7 @@ endRegex i w = fromMaybe id $ do
|
|||||||
return k
|
return k
|
||||||
return $ ssSetCursor (ssLookupDown i j) sss
|
return $ ssSetCursor (ssLookupDown i j) sss
|
||||||
|
|
||||||
endCombineRegex ::
|
endCombineRegex :: World -> Maybe (Int, Int, IS.IntSet) -> Maybe (Int, Int, IS.IntSet)
|
||||||
World ->
|
|
||||||
Maybe (Int, Int, IS.IntSet) ->
|
|
||||||
Maybe (Int, Int, IS.IntSet)
|
|
||||||
endCombineRegex w = fromMaybe id $ do
|
endCombineRegex w = fromMaybe id $ do
|
||||||
sss <- w ^? hud . hudElement . subInventory . ciSections
|
sss <- w ^? hud . hudElement . subInventory . ciSections
|
||||||
let j = fromMaybe 0 $ do
|
let j = fromMaybe 0 $ do
|
||||||
@@ -424,13 +411,13 @@ updateKeysTextInputTerminal tmid u =
|
|||||||
| otherwise = id
|
| otherwise = id
|
||||||
|
|
||||||
updateKeyInGame :: Universe -> Scancode -> Int -> Universe
|
updateKeyInGame :: Universe -> Scancode -> Int -> Universe
|
||||||
updateKeyInGame uv sc pt = case pt of
|
updateKeyInGame uv sc = \case
|
||||||
0 -> updateInitialPressInGame uv sc
|
0 -> updateInitialPressInGame uv sc
|
||||||
x | x >= 30 -> updateLongPressInGame uv sc
|
x | x >= 30 -> updateLongPressInGame uv sc
|
||||||
_ -> uv
|
_ -> uv
|
||||||
|
|
||||||
updateInitialPressInGame :: Universe -> Scancode -> Universe
|
updateInitialPressInGame :: Universe -> Scancode -> Universe
|
||||||
updateInitialPressInGame uv sc = case sc of
|
updateInitialPressInGame uv = \case
|
||||||
ScancodeSpace -> over uvWorld spaceAction uv
|
ScancodeSpace -> over uvWorld spaceAction uv
|
||||||
ScancodeP -> pauseGame uv
|
ScancodeP -> pauseGame uv
|
||||||
ScancodeF -> over uvWorld youDropItem uv
|
ScancodeF -> over uvWorld youDropItem uv
|
||||||
@@ -443,7 +430,7 @@ updateInitialPressInGame uv sc = case sc of
|
|||||||
_ -> uv
|
_ -> uv
|
||||||
|
|
||||||
updateLongPressInGame :: Universe -> Scancode -> Universe
|
updateLongPressInGame :: Universe -> Scancode -> Universe
|
||||||
updateLongPressInGame uv sc = case sc of
|
updateLongPressInGame uv = \case
|
||||||
ScancodeF -> over uvWorld youDropItem uv
|
ScancodeF -> over uvWorld youDropItem uv
|
||||||
ScancodeSpace -> over uvWorld spaceAction uv
|
ScancodeSpace -> over uvWorld spaceAction uv
|
||||||
_ -> uv
|
_ -> uv
|
||||||
@@ -484,12 +471,10 @@ doRegexInput inp i sss msel filts
|
|||||||
|
|
||||||
updateBackspaceRegex :: World -> World
|
updateBackspaceRegex :: World -> World
|
||||||
updateBackspaceRegex w = case di ^? subInventory of
|
updateBackspaceRegex w = case di ^? subInventory of
|
||||||
Just NoSubInventory{}
|
Just NoSubInventory{} | secfocus (-1) 0 ->
|
||||||
| secfocus (-1) 0 ->
|
|
||||||
w & hud . hudElement %~ trybackspace (-1) diInvFilter diInvFilter diSelection
|
w & hud . hudElement %~ trybackspace (-1) diInvFilter diInvFilter diSelection
|
||||||
& worldEventFlags . at InventoryChange ?~ ()
|
& worldEventFlags . at InventoryChange ?~ ()
|
||||||
Just NoSubInventory{}
|
Just NoSubInventory{} | secfocus 2 3 ->
|
||||||
| secfocus 2 3 ->
|
|
||||||
w & hud . hudElement %~ trybackspace 2 diCloseFilter diCloseFilter diSelection
|
w & hud . hudElement %~ trybackspace 2 diCloseFilter diCloseFilter diSelection
|
||||||
& worldEventFlags . at InventoryChange ?~ ()
|
& worldEventFlags . at InventoryChange ?~ ()
|
||||||
Just CombineInventory{} ->
|
Just CombineInventory{} ->
|
||||||
@@ -511,12 +496,10 @@ updateBackspaceRegex w = case di ^? subInventory of
|
|||||||
|
|
||||||
updateEnterRegex :: World -> World
|
updateEnterRegex :: World -> World
|
||||||
updateEnterRegex w = case w ^? hud . hudElement . subInventory of
|
updateEnterRegex w = case w ^? hud . hudElement . subInventory of
|
||||||
Just NoSubInventory{}
|
Just NoSubInventory{} | secfocus [-1, 0, 1] ->
|
||||||
| secfocus [-1, 0, 1] ->
|
|
||||||
w & hud . hudElement . diSelection ?~ (-1, 0, mempty)
|
w & hud . hudElement . diSelection ?~ (-1, 0, mempty)
|
||||||
& hud . hudElement . diInvFilter %~ enterregex
|
& hud . hudElement . diInvFilter %~ enterregex
|
||||||
Just NoSubInventory{}
|
Just NoSubInventory{} | secfocus [2, 3] ->
|
||||||
| secfocus [2, 3] ->
|
|
||||||
w & hud . hudElement . diSelection ?~ (2, 0, mempty)
|
w & hud . hudElement . diSelection ?~ (2, 0, mempty)
|
||||||
& hud . hudElement . diCloseFilter %~ enterregex
|
& hud . hudElement . diCloseFilter %~ enterregex
|
||||||
Just CombineInventory{} ->
|
Just CombineInventory{} ->
|
||||||
@@ -524,9 +507,8 @@ updateEnterRegex w = case w ^? hud . hudElement . subInventory of
|
|||||||
& hud . hudElement . subInventory . ciSelection ?~ (-1, 0, mempty)
|
& hud . hudElement . subInventory . ciSelection ?~ (-1, 0, mempty)
|
||||||
_ -> w
|
_ -> w
|
||||||
where
|
where
|
||||||
di = w ^. hud . hudElement
|
|
||||||
secfocus xs = fromMaybe False $ do
|
secfocus xs = fromMaybe False $ do
|
||||||
i <- di ^? diSelection . _Just . _1
|
i <- w ^? hud . hudElement . diSelection . _Just . _1
|
||||||
return $ i `elem` xs
|
return $ i `elem` xs
|
||||||
enterregex = (<|> Just "")
|
enterregex = (<|> Just "")
|
||||||
|
|
||||||
@@ -545,15 +527,16 @@ spaceAction w = case w ^. hud . hudElement of
|
|||||||
_ -> w & hud . hudElement . subInventory .~ NoSubInventory
|
_ -> w & hud . hudElement . subInventory .~ NoSubInventory
|
||||||
|
|
||||||
getCloseObj :: World -> Maybe (Either FloorItem Button)
|
getCloseObj :: World -> Maybe (Either FloorItem Button)
|
||||||
getCloseObj w = getSelectedCloseObj w <|> firstcitem <|> firstcbut
|
getCloseObj w = getSelectedCloseObj w <|> topcitem <|> topcbut
|
||||||
where
|
where
|
||||||
firstcitem = do
|
topcitem = do
|
||||||
k' <- (w ^? hud . hudElement . diSections . ix 3 . ssItems) >>= (fmap fst . IM.lookupMin)
|
k' <- (w ^? hud . hudElement . diSections . ix 3 . ssItems)
|
||||||
|
>>= (fmap fst . IM.lookupMin)
|
||||||
NInt k <- w ^? hud . closeItems . ix k'
|
NInt k <- w ^? hud . closeItems . ix k'
|
||||||
fmap Left $ w ^? cWorld . lWorld . floorItems . unNIntMap . ix k
|
Left <$> w ^? cWorld . lWorld . floorItems . unNIntMap . ix k
|
||||||
firstcbut = do
|
topcbut = do
|
||||||
k <- w ^? hud . closeButtons . ix 0
|
k <- w ^? hud . closeButtons . ix 0
|
||||||
fmap Right $ w ^? cWorld . lWorld . buttons . ix k
|
Right <$> w ^? cWorld . lWorld . buttons . ix k
|
||||||
|
|
||||||
tryCombine :: (Int, Int) -> World -> World
|
tryCombine :: (Int, Int) -> World -> World
|
||||||
tryCombine (i, j) w = fromMaybe w $ do
|
tryCombine (i, j) w = fromMaybe w $ do
|
||||||
@@ -568,5 +551,4 @@ tryCombine (i, j) w = fromMaybe w $ do
|
|||||||
maybeExitCombine :: World -> World
|
maybeExitCombine :: World -> World
|
||||||
maybeExitCombine w
|
maybeExitCombine w
|
||||||
| ButtonRight `M.member` (w ^. input . mouseButtons) = w
|
| ButtonRight `M.member` (w ^. input . mouseButtons) = w
|
||||||
| otherwise =
|
| otherwise = w & hud . hudElement . subInventory .~ NoSubInventory
|
||||||
w & hud . hudElement . subInventory .~ NoSubInventory
|
|
||||||
|
|||||||
Reference in New Issue
Block a user