Cleanup (remove) _soundData, _musicData
This commit is contained in:
+3
-4
@@ -22,7 +22,6 @@ import Dodge.TestString
|
|||||||
import Dodge.Update
|
import Dodge.Update
|
||||||
--import qualified IntMapHelp as IM
|
--import qualified IntMapHelp as IM
|
||||||
import Loop
|
import Loop
|
||||||
import Music
|
|
||||||
--import Picture
|
--import Picture
|
||||||
import Preload
|
import Preload
|
||||||
import Preload.Render
|
import Preload.Render
|
||||||
@@ -121,7 +120,7 @@ playSoundUnlessRewinding u = case w ^. timeFlow of
|
|||||||
doSideEffects :: Universe -> IO Universe
|
doSideEffects :: Universe -> IO Universe
|
||||||
doSideEffects u = do
|
doSideEffects u = do
|
||||||
newPlayingSounds <- playSoundUnlessRewinding u
|
newPlayingSounds <- playSoundUnlessRewinding u
|
||||||
playSoundQueue (_loadedChunks . _soundData $ _preloadData u) (fmap _getSoundID $ u ^. uvSoundQueue)
|
playSoundQueue (_soundData $ _preloadData u) (fmap _getSoundID $ u ^. uvSoundQueue)
|
||||||
u' <- _uvIOEffects u u
|
u' <- _uvIOEffects u u
|
||||||
endTicks <- SDL.ticks
|
endTicks <- SDL.ticks
|
||||||
return $
|
return $
|
||||||
@@ -146,7 +145,7 @@ doPreload = do
|
|||||||
return
|
return
|
||||||
PreloadData
|
PreloadData
|
||||||
{ _renderData = rData
|
{ _renderData = rData
|
||||||
, _soundData = SoundData{_loadedChunks = lChunks}
|
, _soundData = lChunks
|
||||||
--, _musicData = MusicData{_loadedMusic = lMusic}
|
--, _musicData = MusicData{_loadedMusic = lMusic}
|
||||||
, _musicData = MusicData{_loadedMusic = undefined}
|
, _musicData = mempty
|
||||||
}
|
}
|
||||||
|
|||||||
+4
-4
@@ -3,14 +3,14 @@
|
|||||||
module Data.Preload where
|
module Data.Preload where
|
||||||
|
|
||||||
import Control.Lens
|
import Control.Lens
|
||||||
|
import Data.IntMap.Strict
|
||||||
import Data.Preload.Render
|
import Data.Preload.Render
|
||||||
import Music
|
import SDL.Mixer
|
||||||
import Sound.Data
|
|
||||||
|
|
||||||
data PreloadData = PreloadData
|
data PreloadData = PreloadData
|
||||||
{ _renderData :: RenderData
|
{ _renderData :: RenderData
|
||||||
, _soundData :: SoundData
|
, _soundData :: IntMap Chunk
|
||||||
, _musicData :: MusicData
|
, _musicData :: IntMap Chunk
|
||||||
}
|
}
|
||||||
|
|
||||||
makeLenses ''PreloadData
|
makeLenses ''PreloadData
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
module Music
|
|
||||||
( MusicData (..)
|
|
||||||
) where
|
|
||||||
import qualified SDL.Mixer as Mix
|
|
||||||
import qualified IntMapHelp as IM
|
|
||||||
|
|
||||||
newtype MusicData = MusicData
|
|
||||||
{ _loadedMusic :: IM.IntMap Mix.Music
|
|
||||||
}
|
|
||||||
+2
-2
@@ -2,15 +2,15 @@ module Preload (
|
|||||||
cleanUpPreload,
|
cleanUpPreload,
|
||||||
) where
|
) where
|
||||||
|
|
||||||
|
import qualified Data.IntMap.Strict as IM
|
||||||
import Data.Preload
|
import Data.Preload
|
||||||
import Preload.Render
|
import Preload.Render
|
||||||
import qualified SDL.Mixer as Mix
|
import qualified SDL.Mixer as Mix
|
||||||
import Sound.Data
|
|
||||||
|
|
||||||
cleanUpPreload :: PreloadData -> IO ()
|
cleanUpPreload :: PreloadData -> IO ()
|
||||||
cleanUpPreload pd = do
|
cleanUpPreload pd = do
|
||||||
cleanUpRenderPreload $ _renderData pd
|
cleanUpRenderPreload $ _renderData pd
|
||||||
cleanUpSoundPreload $ _soundData pd
|
cleanUpSoundPreload $ _soundData pd
|
||||||
|
|
||||||
cleanUpSoundPreload :: SoundData -> IO ()
|
cleanUpSoundPreload :: IM.IntMap Mix.Chunk -> IO ()
|
||||||
cleanUpSoundPreload _ = Mix.closeAudio >> putStrLn "Audio closed"
|
cleanUpSoundPreload _ = Mix.closeAudio >> putStrLn "Audio closed"
|
||||||
|
|||||||
+2
-2
@@ -52,9 +52,9 @@ In the update:
|
|||||||
4. remove sounds that have stopped playing from the map.
|
4. remove sounds that have stopped playing from the map.
|
||||||
-}
|
-}
|
||||||
playSoundAndUpdate
|
playSoundAndUpdate
|
||||||
:: Ord a => SoundData -> M.Map a Sound -> M.Map a Sound -> IO (M.Map a Sound)
|
:: Ord a => IM.IntMap Mix.Chunk -> M.Map a Sound -> M.Map a Sound -> IO (M.Map a Sound)
|
||||||
playSoundAndUpdate sData oldSounds newSounds
|
playSoundAndUpdate sData oldSounds newSounds
|
||||||
= updateSounds (_loadedChunks sData) (M.unionWith mergeSound oldSounds newSounds)
|
= updateSounds sData (M.unionWith mergeSound oldSounds newSounds)
|
||||||
|
|
||||||
mergeSound :: Sound -> Sound -> Sound
|
mergeSound :: Sound -> Sound -> Sound
|
||||||
mergeSound oldS newS
|
mergeSound oldS newS
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ import Data.Aeson.TH
|
|||||||
import Data.Int (Int16)
|
import Data.Int (Int16)
|
||||||
import Data.Word (Word8)
|
import Data.Word (Word8)
|
||||||
import Geometry.Data
|
import Geometry.Data
|
||||||
import qualified IntMapHelp as IM
|
|
||||||
import qualified SDL.Mixer as Mix
|
import qualified SDL.Mixer as Mix
|
||||||
|
|
||||||
data SoundStatus = SoundStatus
|
data SoundStatus = SoundStatus
|
||||||
@@ -33,10 +32,6 @@ data PlayStatus
|
|||||||
newtype SoundID = SoundID {_getSoundID :: Int}
|
newtype SoundID = SoundID {_getSoundID :: Int}
|
||||||
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
deriving (Eq, Ord, Show, Read) --Generic, Flat)
|
||||||
|
|
||||||
newtype SoundData = SoundData
|
|
||||||
{ _loadedChunks :: IM.IntMap Mix.Chunk
|
|
||||||
}
|
|
||||||
|
|
||||||
data ToPlaySound = ToPlaySound
|
data ToPlaySound = ToPlaySound
|
||||||
{ _toPlaySoundTime :: Maybe Int
|
{ _toPlaySoundTime :: Maybe Int
|
||||||
, _toPlaySoundStatus :: SoundStatus
|
, _toPlaySoundStatus :: SoundStatus
|
||||||
@@ -59,7 +54,6 @@ data Sound = Sound
|
|||||||
}
|
}
|
||||||
deriving (Eq, Ord, Show)
|
deriving (Eq, Ord, Show)
|
||||||
|
|
||||||
makeLenses ''SoundData
|
|
||||||
makeLenses ''Sound
|
makeLenses ''Sound
|
||||||
makeLenses ''SoundID
|
makeLenses ''SoundID
|
||||||
makeLenses ''SoundStatus
|
makeLenses ''SoundStatus
|
||||||
|
|||||||
Reference in New Issue
Block a user