Cleanup (remove) _soundData, _musicData

This commit is contained in:
2025-06-03 09:08:13 +01:00
parent e952f2abea
commit 8da3e75ac5
6 changed files with 11 additions and 27 deletions
+3 -4
View File
@@ -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
View File
@@ -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
-9
View File
@@ -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
View File
@@ -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
View File
@@ -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
-6
View File
@@ -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