Simplify lasers
This commit is contained in:
+5
-9
@@ -370,12 +370,8 @@ getMenuMouseContext :: ScreenLayer -> Universe -> MouseContext
|
||||
getMenuMouseContext screen u = case screen ^. scOptions of
|
||||
[] -> NoMouseContext
|
||||
_ -> fromMaybe MouseMenuCursor $ do
|
||||
let ymax = maybe 0 length $ screen ^? scSelectionList
|
||||
yi <-
|
||||
ldpVerticalSelection
|
||||
(u ^. uvConfig)
|
||||
optionListDisplayParams
|
||||
(u ^. uvWorld . input . mousePos)
|
||||
ymax <- length <$> screen ^? scSelectionList
|
||||
yi <- ldpVerticalSelection (u ^. uvConfig) menuDisplayParams (u ^. uvWorld . input . mousePos)
|
||||
guard (yi >= 0 && yi < ymax)
|
||||
return $ case u ^? uvScreenLayers . _head . scSelectionList . ix yi . siIsSelectable of
|
||||
Just True -> MouseMenuClick yi
|
||||
@@ -406,9 +402,9 @@ advanceScrollAmount =
|
||||
. (uvWorld . input . smoothScrollAmount %~ advanceSmoothScroll)
|
||||
|
||||
updatePastWorlds :: World -> World
|
||||
updatePastWorlds w = w & pastWorlds %~ (forceFoldable . take 100 . ((w ^. cWorld . lWorld) :))
|
||||
updatePastWorlds w = w
|
||||
& pastWorlds %~ (forceFoldable . take 100 . ((w ^. cWorld . lWorld) :))
|
||||
|
||||
--updatePastWorlds w = w & pastWorlds %~ (forceFoldable . take 600 . ((w ^. cWorld . lWorld) :))
|
||||
|
||||
doWorldEvents :: World -> World
|
||||
doWorldEvents w =
|
||||
@@ -421,7 +417,7 @@ updateLasers :: World -> World
|
||||
updateLasers w =
|
||||
w'
|
||||
& cWorld . lWorld . lasers .~ []
|
||||
& cWorld . lWorld . lasersToDraw .~ ls
|
||||
& cWorld . lWorld . flares <>~ concat ls
|
||||
where
|
||||
(w', ls) = mapAccumR updateLaser w (w ^. cWorld . lWorld . lasers)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user