Cleanup warnings
This commit is contained in:
+14
-17
@@ -8,12 +8,12 @@ module Dodge.Update
|
||||
import Dodge.Data
|
||||
import Dodge.Data.Menu
|
||||
import Dodge.World.Trigger.Data
|
||||
import Dodge.Config.Data
|
||||
--import Dodge.Config.Data
|
||||
import Dodge.Base
|
||||
import Dodge.WallCreatureCollisions
|
||||
import Dodge.LevelGen.Block
|
||||
import Dodge.Update.Camera
|
||||
import Dodge.Update.UsingInput
|
||||
--import Dodge.Update.UsingInput
|
||||
import Dodge.SoundLogic
|
||||
import Dodge.Inventory
|
||||
import Dodge.Initialisation
|
||||
@@ -29,6 +29,7 @@ import qualified Data.IntMap.Strict as IM
|
||||
import qualified Data.Map as M
|
||||
import Control.Lens
|
||||
|
||||
update :: World -> World
|
||||
update = update' . pushSideEffects
|
||||
|
||||
pushSideEffects :: World -> World
|
||||
@@ -40,7 +41,7 @@ pushSideEffects w = w
|
||||
For most menus the only way to change the world is using event handling. -}
|
||||
update' :: World -> World
|
||||
update' w = case _menuLayers w of
|
||||
(WaitMessage s i: ls)
|
||||
(WaitMessage s i: _)
|
||||
| i < 1 -> w & doubleArgumentFor _worldEvents
|
||||
| otherwise -> w & menuLayers %~ ( (WaitMessage s (i-1) :) . tail )
|
||||
(GameOverMenu : _) -> updateParticles
|
||||
@@ -99,6 +100,7 @@ updateTriggers w
|
||||
where
|
||||
cr = _creatures w IM.! 0 & crPos .~ (0,0)
|
||||
|
||||
updateSoundQueue :: World -> World
|
||||
updateSoundQueue = set soundQueue [] . set sounds M.empty
|
||||
|
||||
updateLightSources :: World -> World
|
||||
@@ -106,6 +108,7 @@ updateLightSources w = set tempLightSources (catMaybes tlss) w'
|
||||
where
|
||||
(w',tlss) = mapAccumR (\a b -> _tlsUpdate b a b) w $ _tempLightSources w
|
||||
|
||||
updateProjectiles :: World -> World
|
||||
updateProjectiles w = IM.foldr' _pjUpdate w $ _projectiles w
|
||||
{-
|
||||
Apply internal particle updates, delete 'Nothing's. -}
|
||||
@@ -126,7 +129,7 @@ updateWalls :: World -> World
|
||||
updateWalls w = IM.foldr (fromMaybe id . (^? doorMech)) w (_walls w)
|
||||
|
||||
ppEvents :: World -> World
|
||||
ppEvents w = IM.foldr (\pp w -> _ppEvent pp pp w) w $ _pressPlates w
|
||||
ppEvents w = IM.foldr (\pp w' -> _ppEvent pp pp w') w $ _pressPlates w
|
||||
|
||||
updateSeenWalls :: World -> World
|
||||
updateSeenWalls w = foldr markSeen w wallsToUpdate
|
||||
@@ -136,10 +139,10 @@ updateSeenWalls w = foldr markSeen w wallsToUpdate
|
||||
$ nRays 20
|
||||
markSeen i = set (walls . ix i . wlSeen) True
|
||||
|
||||
setTestStringIO :: IO World -> IO World
|
||||
setTestStringIO = fmap (\ w -> set testString (show $ s w) w)
|
||||
where
|
||||
s w = (-.-) <$> (w ^? creatures . ix 0 . crPos) <*> (w ^? creatures . ix 0 . crOldPos)
|
||||
--setTestStringIO :: IO World -> IO World
|
||||
--setTestStringIO = fmap (\ w -> set testString (show $ s w) w)
|
||||
-- where
|
||||
-- s w = (-.-) <$> (w ^? creatures . ix 0 . crPos) <*> (w ^? creatures . ix 0 . crOldPos)
|
||||
|
||||
checkEndGame :: World -> World
|
||||
checkEndGame w
|
||||
@@ -158,7 +161,7 @@ moveCloud :: Cloud -> World -> World
|
||||
moveCloud c w = _clEffect c c . theUpdate $ w
|
||||
where
|
||||
newVel = 0.95 *.* springVels
|
||||
springVels = IM.foldr' (clClSpringVel c w) (_clVel c) (cloudsNearPoint oldPos w)
|
||||
springVels = IM.foldr' (clClSpringVel c) (_clVel c) (cloudsNearPoint oldPos w)
|
||||
oldPos = _clPos c
|
||||
newPos = oldPos +.+ newVel
|
||||
hitWl = collideCircWalls' oldPos newPos 5 $ wallsNearPoint newPos w
|
||||
@@ -169,8 +172,8 @@ moveCloud c w = _clEffect c c . theUpdate $ w
|
||||
& clouds . ix (_clID c) . clVel .~ finalVel
|
||||
& clouds . ix (_clID c) . clPos .~ finalPos
|
||||
|
||||
clClSpringVel :: Cloud -> World -> Cloud -> Point2 -> Point2
|
||||
clClSpringVel a w b v
|
||||
clClSpringVel :: Cloud -> Cloud -> Point2 -> Point2
|
||||
clClSpringVel a b v
|
||||
| ida == idb = v
|
||||
| dist pa pb < radDist = v +.+ 0.1 *.* safeNormalizeV (pa -.- pb)
|
||||
| otherwise = v
|
||||
@@ -218,10 +221,4 @@ visibleWalls p1 p2 ws
|
||||
$ IM.toList ws
|
||||
where
|
||||
f (i,wl) = (uncurry intersectSegSeg' (_wlLine wl) p1 p2, (i,wl))
|
||||
takeUntil h xs =
|
||||
let (ys,zs) = span h xs
|
||||
in ys ++ tf zs
|
||||
where
|
||||
tf (x:_) = [x]
|
||||
tf _ = []
|
||||
|
||||
|
||||
Reference in New Issue
Block a user